আমি "খারাপ অনুশীলন" হিসাবে "ব্যাড ডিজাইন" এতটাই বোঝাতে পারি বলে আমি মনে করি না। সাধারণভাবে বলতে গেলে, একটি ওয়েব অ্যাপ্লিকেশনটি যতটা সম্ভব সম্ভব রাষ্ট্রহীন হওয়া উচিত। তথাপি, উদাহরণস্বরূপ, পৃষ্ঠা দেখার অনুমোদন দেওয়ার জন্য আপনার ব্যবহারকারীর তথ্য জানতে হতে পারে, সেই তথ্যটি কুকি আকারে ক্লায়েন্ট মেশিনে সংরক্ষণ করা যেতে পারে এবং সার্ভারটি প্রতিটি সময় প্রতিটি তথ্যই বৈধতা দেয়।
এটি আদর্শ হতে পারে তবে আপনি সর্বদা ক্লায়েন্টকে কুকিগুলি সংরক্ষণ করতে সক্ষম হবেন তা নির্ভর করতে পারবেন না। তদ্ব্যতীত, এটি একটি রাষ্ট্রবিহীন ফ্যাশনে ব্যবহারকারীকে বৈধতা দেওয়ার সাথে জড়িত, যা কোনও সাধারণ পৃষ্ঠার অনুরোধের জন্য ডেটাবেস থেকে সম্ভাব্য তথ্য অনুসন্ধানের সাথে জড়িত। প্রায়শই সময় সেশনে এ জাতীয় তথ্য সংরক্ষণ করা সহজ।
যাইহোক, একবার আপনি রুবিকন অতিক্রম করার পরে, প্রচুর প্রোগ্রামার কেবলমাত্র সেশনে প্রমাণীকরণের তথ্যই নয়, পাশাপাশি অন্যান্য অনেকগুলি জিনিস সংরক্ষণ করার জন্য প্রলুব্ধ হন। এটি একটি অ্যান্টি-প্যাটার্ন এবং আপনার ওয়েব অ্যাপ্লিকেশনটিকে রাষ্ট্রের উপর অত্যধিক নির্ভরশীল করে তোলার দিকে ঝুঁকছে, যা প্রথমে এড়ানো উচিত ছিল তা অবিকল।
কিছু প্রোগ্রামাররা স্প্রিংয়ের মতো প্রযুক্তিতে (যদি আপনি জাভা ব্যবহার করছেন) এর উপর নির্ভর করে যা অন্যথায় নির্ভরতার গণ্ডগোল হয়ে উঠতে পারে তবে আমি যুক্তি দিয়ে বলি যে এগুলি কেবল তাদের নির্মূল করার পরিবর্তে নির্ভরতা তৈরি করা সহজ করে তোলে। এই জাতীয় প্রযুক্তিগুলির আপনার উন্নতিতে সহায়তা করা উচিত, আপনার অ্যান্টি-প্যাটার্নটিকে কোনও সমস্যার কম নয়।
অতএব, থাম্বের একটি ভাল নিয়ম হ'ল আপনি যদি এটি রাষ্ট্রবিহীন লিখতে পারেন তবে এটি করা সম্ভবত ভাল ধারণা বা আপনি এই ফাঁদে পড়ার ঝুঁকিপূর্ণ। স্পষ্টতই আপনি এমন পরিস্থিতিতে পড়তে যাচ্ছেন যার জন্য এটি প্রয়োজন, তবে সাধারণভাবে বলতে গেলে আপনার কেবলমাত্র সেই তথ্যটি সংরক্ষণ করা উচিত যা অন্যথায় পুনরুদ্ধার করা কঠিন।