تجربیات کاری – قسمت اول: Back Button ها

خب میخوام از حالا به بعد تو مجموعه پست هایی شروع کنم به نوشتن تجربیات کاری و شخصی در پروژه های نرم افزاری و … ای که داشتم. خب میتونه مباحث گسترده ای رو شامل بشه از UI تا DB تا Server و … . ولی چیزی که مهمه اینه که من از تجربیات بقیه آدم ها خیلی استفاده کردم و ازشون کلی چیز یاد گرفتم. شاید حق و درست این باشه من هم اگر تجربه ناچیز و خرد دارم در اختیار بقیه بزارم تا این چرخه برای همیشه به همین زیبایی و خوبی باقی بمونه و قطع کننده زنجیر نباشم! پس دیگه اضافه گویی نکنم و بریم سر اصل مطلب


یکی از تجربیات پروژه اخیرم که در حوزه پزشکی بود، باعث شد این موضوع خیلی مورد توجه قرار بگیره چون مخاطبان و log رفتارهاشون این موضوع رو برامون بولد کرده بود. یکی از چیزهای خیلی مهمی که از طریق آمار و رفتار کاربران متوجه شدیم نحوه رفتارشون با دکمه های Back بود. مثلا تو وب شما دکمه back مرورگر رو دارید یا دکمه های back روی کیبرد یا حتی موس. و توی موبایل های اندرویدی معمولا یا دکمه های سخت افزاری یا جدیدا نرم افزاری برای back زدن دارید و در ios هم به شیوه خودش.

اما چیزی که مهم بود رفتار کاربرا در قبال این دکمه ها بود. شما به عنوان برنامه نویس یا توسعه دهنده و همچنین به عنوان طراح ui موظف هستید سناریو ها و مواردی که متناسب با مخاطب نرم افزارتون، مرتبط با بحث دکمه back پیش بیاد رو پیش بینی یا بررسی کنید و بهبود بدینش.

مثلا ما تو پروژه مون متوجه شدیم بالای ۹۰ درصد مخاطب هامون از گوشی به سامانه دسترسی پیدا میکنند. و بعد از اون متوجه شدیم برای جابجایی بین صفحات و یا حتی بستن یک Modal ساده یا حتی یک Collapse ساده، از دکمه بک به جای فشردن X روی اون بخش استفاده میکردن. این ممکن بود که مخاطبی به خاطر زدن back و نگرفتن نتیجه مطلوبش از عملکرد نرم افزار ما، اون رو کنار بزاره. پس در اولین قدم شروع کردیم و به پیاده سازی سناریو های مختلف back زدن توی وب و موبایل فکر کردیم تا بتونیم طیف زیادی از رفتارهای کاربران رو پوشش بدیم. اما چطور این کار رو کردیم ؟

کافیه با مستندات مرورگر ها و api هاشون (لینک) و event های مختلفشون کار کنید تا منطق کارشون رو متوجه بشید تا بتونید بر اساس نیازتون بازنویسی بکنیدش. کاری که ما کردیم این بود که عملکرد دکمه back رو از مرورگر گرفتیم و خودمون با توجه شرایط مخاطب، پاسخ مناسب رو میدادیم. مثلا اگر کاربری تو یک صفحه ای modal ویژگی های محصول رو باز میکرد ما میدونستیم که اگر back بزنه باید modal فقط بسته بشه و بقیه المان های صفحه دست نخورده باقی بمونن. همینطور این برای منو های همبرگری و انواع چیزهایی که میشه باز و بسته کردشون یا … صدق میکنه. البته باز هم بستگی به مخاطب و مدل نرم افزار داره و هیچ چیز مطلق و کلی ای وجود نداره.

 

این نمونه کدی هست که مثلا برای این پروژه نوشتیم  که سه تا چیز رو همیشه  موقع back زدن در مرورگر چک میکنه ( منو – مودال – آکاردئون):

من تا قبل از این پروژه زیاد به این موضوع توجه نداشتم اما بعد از مورد پیش اومده تقریبا هر نرم افزاری که باهاش برمیخورم رو عملکرد back اش رو تست میکنم تا ببینم برنامه نویس و طراح محترمش چیجوری فکر میکردن یا اصلا نمیکردن 🙂

 

 

پاسخ دهید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *