আপনার ডেটা টেবিলের জন্য একটি সাধারণ এম্পটি স্টেট ব্যবহার করবেন না
বেশিরভাগ ডেটা টেবিল একটি মাত্র মেসেজ নিয়ে আসে: "No data."
ডিজাইন রিভিউতে এটি ঠিক মনে হলেও, প্রোডাকশনে এটি সাপোর্ট টিকিট তৈরি করে।
একটি খালি টেবিল তিনটি ভিন্ন বিষয় নির্দেশ করে। প্রতিটি ক্ষেত্রে একটি নির্দিষ্ট ডিজাইন, নির্দিষ্ট টেক্সট এবং একটি নির্দিষ্ট অ্যাকশন প্রয়োজন।
এখানে তিনটি ক্ষেত্র রয়েছে যা আপনাকে আলাদাভাবে ডিজাইন করতে হবে:
১. প্রথম ব্যবহার (এখনো কোনো ডেটা নেই) ব্যবহারকারী নতুন। তারা জানতে চায় এই টেবিলটি কী কাজ করে এবং কীভাবে শুরু করতে হয়। • লক্ষ্য: ব্যবহারকারীকে অনবোর্ড (Onboard) করা। • টেক্সট: টেবিলের উদ্দেশ্য ব্যাখ্যা করুন। • অ্যাকশন: প্রথম আইটেম তৈরি করার বা ডেটা ইমপোর্ট করার জন্য একটি বাটন প্রদান করুন। • এড়িয়ে চলুন: "No data"-এর মতো একটি অচল বা অর্থহীন মেসেজ।
২. ফিল্টার করা খালি অবস্থা (ডেটা আছে কিন্তু ফিল্টারের কারণে দেখা যাচ্ছে না) ব্যবহারকারী এমন ফিল্টার প্রয়োগ করেছেন যার ফলে কোনো ফলাফল আসছে না। তারা প্রায়ই মনে করেন যে টুলটি কাজ করছে না। • লক্ষ্য: ব্যবহারকারীকে তার ডেটা খুঁজে পেতে সাহায্য করা। • টেক্সট: স্পষ্টভাবে উল্লেখ করুন কোন ফিল্টারগুলো সক্রিয় আছে। • অ্যাকশন: সব ফিল্টার মুছে ফেলার বা সেগুলো এডিট করার জন্য একটি বাটন দিন। • এড়িয়ে চলুন: একটি সাধারণ মেসেজ যা সক্রিয় ফিল্টারগুলোকে উপেক্ষা করে।
৩. লোড-ব্যর্থতা (রিকোয়েস্টটি ব্যর্থ হয়েছে) সার্ভার থেকে এরর (error) এসেছে অথবা নেটওয়ার্ক সংযোগ বিচ্ছিন্ন হয়েছে। • লক্ষ্য: ব্যবহারকারীকে সমস্যা কাটিয়ে উঠতে সাহায্য করা। • টেক্সট: লোড ব্যর্থ হয়েছে তা ব্যাখ্যা করুন এবং একটি টাইমস্ট্যাম্প বা এরর কোড দেখান। • অ্যাকশন: একটি রিট্রাই (retry) বাটন দিন। • এড়িয়ে চলুন: সমস্যাটি আসলে একটি টেকনিক্যাল এরর হওয়া সত্ত্বেও ব্যবহারকারীকে "No data" বলা।
কেন টিমগুলো এতে ব্যর্থ হয়:
- তারা প্রক্রিয়ার অনেক শেষের দিকে এম্পটি স্টেট ডিজাইন করে।
- তারা শুধুমাত্র ডেমো ডেটা দিয়ে টেস্ট করে, তাই তারা কখনোই এম্পটি স্টেট দেখে না।
- তারা এম্পটি স্টেটকে একটি এজ কেস (edge case) হিসেবে বিবেচনা করে।
বাস্তবে, এম্পটি স্টেট হলো অত্যন্ত গুরুত্বপূর্ণ মুহূর্ত। একটি ভালো এম্পটি স্টেট ব্যবহারকারীকে কয়েক মিনিটের মধ্যে শূন্য থেকে মূল্যায়নের (value) পর্যায়ে নিয়ে যেতে পারে। আর একটি খারাপ এম্পটি স্টেট তাদের বিভ্রান্ত এবং হতাশ করে তোলে।
আপনার টেবিল কম্পোনেন্টটি এমনভাবে তৈরি করুন যাতে এটি এই পরিস্থিতিগুলো আলাদাভাবে সামলাতে পারে। এগুলো এখন ডিজাইন করতে খুব সামান্যই খরচ হবে, কিন্তু পরবর্তীতে এটি প্রচুর সাপোর্ট টাইম বাঁচিয়ে দেবে।