ฉันไม่คิดว่าเขาหมายถึง "การออกแบบไม่ดี" มากเท่ากับ "การปฏิบัติที่ไม่ดี" โดยทั่วไปแล้วเว็บแอปพลิเคชันควรไร้สัญชาติเท่าที่จะเป็นไปได้ แม้ว่าตัวอย่างเช่นคุณอาจจำเป็นต้องทราบข้อมูลผู้ใช้เพื่อให้สิทธิ์ในการดูหน้าเว็บข้อมูลนั้นสามารถบันทึกไว้ในเครื่องไคลเอนต์ในรูปแบบของคุกกี้และเซิร์ฟเวอร์จะตรวจสอบข้อมูลผู้ใช้ทุกครั้ง
นั่นจะเหมาะ แต่คุณไม่สามารถนับจำนวนลูกค้าที่สามารถบันทึกคุกกี้ได้เสมอ นอกจากนี้ยังเกี่ยวข้องกับการตรวจสอบความถูกต้องของผู้ใช้ในแบบไร้รัฐซึ่งอาจเกี่ยวข้องกับการสืบค้นข้อมูลจากฐานข้อมูลสำหรับการร้องขอหน้าอย่างง่าย บ่อยครั้งที่มันง่ายกว่าที่จะบันทึกข้อมูลดังกล่าวในเซสชัน
อย่างไรก็ตามเมื่อคุณข้าม Rubicon แล้วโปรแกรมเมอร์จำนวนมากถูกล่อลวงให้บันทึกข้อมูลการตรวจสอบไม่เพียง แต่ในเซสชั่น แต่สิ่งอื่น ๆ อีกมากมายเช่นกัน นี่เป็นรูปแบบการต่อต้านและมีแนวโน้มที่จะทำให้เว็บแอปพลิเคชันของคุณขึ้นอยู่กับสถานะซึ่งเป็นสิ่งที่ควรหลีกเลี่ยงตั้งแต่แรก
โปรแกรมเมอร์บางคนอาจใช้เทคโนโลยีเช่น Spring (ถ้าคุณใช้ Java) เพื่อแก้ให้หายยุ่งสิ่งอื่น ๆ จะยุ่งเหยิงของการพึ่งพา แต่ฉันจะยืนยันว่ามันทำให้ง่ายต่อการสร้างการพึ่งพามากกว่ากำจัดพวกเขา เทคโนโลยีดังกล่าวจะช่วยพัฒนาคุณไม่ทำให้รูปแบบการต่อต้านของคุณมีปัญหาน้อยลง
ดังนั้นกฎข้อที่ดีคือถ้าคุณสามารถเขียนมันไร้สัญชาติมันอาจเป็นความคิดที่ดีกว่าที่จะทำเช่นนั้นหรือคุณเสี่ยงที่จะตกอยู่ในกับดักนี้ เห็นได้ชัดว่าคุณกำลังจะเข้าสู่สถานการณ์ที่จำเป็นต้องทำเช่นนี้ แต่โดยทั่วไปแล้วคุณควรบันทึกข้อมูลที่อาจจะยากต่อการขอข้อมูลซ้ำ