حالت (رابط کاربری) کیست؟ توضیح بده.
در طراحی رابط کاربری ، یک حالت ، یک تنظیم متمایز در یک برنامه‌ی رایانه‌ای یا هر رابط فیزیکی ماشین است که در آن ورودی یکسان کاربر ، نتایج ادراکی دگرگونی نسبت به نتایج برامده از آن در تنظیمات دیگر ایجاد می‌کند. اجزای رابط مودال دربرگیرنده‌ی کلیدهای Caps lock و Insert در صفحه کلید استاندارد رایانه هستند که هر دو معمولاً تایپ کاربر را پس از فشرده شدن در حالت متفاوتی قرار می‌دهند و پس از فشرده شدن مجدد، آن را به حالت عادی برمی‌گردانند.رابطی که از هیچ حالتی کاربری نمی‌کند، به عنوان رابط "بدون حالت" شناخته می‌شود. رابط‌های بدون حالت از "خطاهای حالت"، از خطای کاربر در دادن فرمان یک مود به مود دیگر پیشگیری می کند اینگونه که چون مودهای مختلفی وجود ندازد اساسا این خطا ناممکن می‌شود. تعریف.جف راسکین در کتاب خود "با عنوان «رابط انسانی» (The Humane Interface)" ، حالت‌داشتن را اینگونه تعریف می‌کند:«یک رابط انسان و ماشین در رابطه با یک حرکت معین، زمانی مودال است که (1) وضعیت کنونی رابط، محل توجه کاربر نباشد و (2) رابط، بسته به وضعیت کنونی سامانه، یکی از چندین پاسخ گوناگون را به حرکت اجرا کند.» (صفحه 42)از نگاه راسکین و طبق تعریف او، یک رابط کاربری مادامی که کاربر کاملاً از وضعیت فعلی آن آگاه باشد، مودال نیست. راسکین از این به عنوان "محل توجه" (از کلمه لاتین "locus" به معنای "مکان" یا "موقعیت") یاد می‌کند. معمولاً اگر تغییر وضعیت به طور هدفمند بدست کاربر آغاز شده باشد، یا اگر سامانه سیگنال‌های قوی برای اطلاع کاربر از تغییر وضعیت در مکانی که همکنش رخ می‌دهد، ارسال کند، کاربر از وضعیت سامانه آگاه است. اگر جایگاه توجه کاربر به ناحیه دیگری تغییر کند، وضعیت رابط کاربری ممکن است نشان دهنده یک حالت باشد زیرا کاربر دیگر از آن آگاه نیست.لری تسلر حالت‌ها را به عنوان «حالتی از رابط کاربری که برای مدت زمانی طول می‌کشد، به هیچ شیء ویژه‌ای مرتبط نیست و نقشی جز قرار دادن تفسیر روی ورودی کنشگر ندارد» تعریف کرد. نمونه‌ها.مودال.چندین نمونه از نرم‌افزارها به عنوان "مودال" یا با کاربری از حالت‌های رابط کاربری توصیف شده‌اند:بدون حالت.لری تسلر در PARC با کاربری از بازخوردهای جمع‌آوری‌شده از یک آزمایش کاربری با سیلویا آدامز تازه استخدام‌شده، بینش‌هایی را برای یک پردازشگر نوشتار بدون مدل ابداع کرد، که در آن از او خواسته شده بود تا برخی حرکات را برای اصلاح علائم تصحیح روی نوشتار دیجیتال، به‌صورت دستی انجام دهد . این آزمایش، بیل انگلیش، مدیر تسلر، را از مشکلات رابط کاربری مودال پیشین‌شان متقاعد کرد.خطاهای حالت.حالت‌ها بیشتر در طراحی رابط کاربری مورد انتقاد قرار می‌گیرند، زیرا احتمالاً وقتی کاربر فراموش می‌کند رابط کاربری در چه وضعیتی است، عملی را انجام می‌دهد که مناسب حالت دیگری است و پاسخی غیرمنتظره و نامطلوب دریافت می‌کند، "خطاهای حالت" ایجاد می‌کنند. یک خطای حالت می‌تواند کاملاً تکان‌دهنده و گیج‌کننده باشد، زیرا کاربر با نقض ناگهانی انتظارات کاربری خود کنار می‌آید.اگر تغییری در وضعیت سامانه بدون توجه رخ دهد (که بدست سامانه یا بدست شخص دیگری، مانند کاربری که پیشتر از دستگاه کاربری می‌کرده است، آغاز شود)، یا اگر پس از مدتی کاربر تغییر وضعیت را فراموش کند، مشکلاتی رخ می‌دهد. یکی دیگر از مشکلات رایج، تغییر ناگهانی وضعیت است که فعالیت کاربر را مختل می‌کند، مانند سرقت تمرکز . در چنین شرایطی، به راحتی ممکن است اتفاق بیفتد که کاربر برخی عملیات را با در نگاه گرفتن وضعیت قدیمی انجام دهد، در حالی که مغز هنوز سیگنال‌های نشان دهنده تغییر وضعیت را به طور کامل پردازش نکرده است.ارزیابی.حالت‌ها برای جلب توجه کامل کاربر و وادار کردن او به پذیرش محتوای موجود در آنها در نگاه گرفته شده‌اند، به ویژه هنگامی که تأیید حیاتی از سوی کاربر مورد نیاز است. این کاربرد اخیر به دلیل ناکارآمدی در کاربرد مورد نگاهش (محافظت در برابر خطاها در اقدامات مخرب) به دلیل عادت کردن، مورد انتقاد قرار گرفته است. در واقع، برگشت‌پذیر کردن عمل (ارائه گزینه "لغو") توصیه می‌شود. اگرچه حالت‌ها می‌توانند در کاربردهای خاص برای محدود کردن عملیات خطرناک یا نامطلوب موفق باشند، به ویژه هنگامی که حالت به طور فعال بدست کاربر به عنوان "یک شبه حالت" حفظ می‌شود.حالت‌ها گاهی زمان‌ها برای نمایش اطلاعات مربوط به کاری که به خوبی در جریان بصری اصلی جای نمی‌گیرند، کاربری می‌شوند. حالت‌ها همچنین می‌توانند به عنوان قراردادهای کاملاً شناخته شده، مانند ابزارهای نقاشی، عمل کنند. طرفداران مودال ممکن است استدلال کند که بسیاری از فعالیت‌های رایج، جنبه‌ی کیفی دارند و کاربران با آنها سازگار می‌شوند. نمونه‌ای از همکنش کیفی، رانندگی وسایل نقلیه موتوری است. راننده ممکن است از اینکه با فشار دادن پدال گاز، وسیله نقلیه به سمت جلو شتاب نمی‌گیرد، شگفت‌زده شود، به احتمال زیاد به این دلیل که وسیله نقلیه در حالت عملیاتی مانند پارک، خلاص یا دنده عقب قرار گرفته است. رابط‌های کیفی برای جلوگیری از خطاهای حالت مانند این، نیاز به آموزش و تجربه دارند.جف راسکین، متخصص رابط کاربری، به شدت با حالت‌ها مخالفت کرد و نوشت: «حالت‌ها منبع قابل توجهی از خطاها، سردرگمی، محدودیت‌های غیرضروری و پیچیدگی در رابط‌ها هستند.» بعداً او خاطرنشان می‌کند: «همکارم، دکتر جیمز وینتر، می‌نویسد: «تصادفی نیست که فحش دادن با #&amp;%!#$&amp; نشان داده می‌شود؛ این کاری است که «ماشین تحریر هنگام تایپ اعداد با دکمه Caps Lock انجام می‌داد.» راسکین کتاب خود "«رابط انسانی»" را به توصیف اصول رابط کاربری بدون حالت برای رایانه‌ها اختصاص داد. این اصول در سامانه‌های Canon Cat و Archy پیاده‌سازی شدند.برخی از طراحان رابط کاربری اخیراً گام‌هایی برای آشکارتر و کاربرپسندتر کردن پنجره‌های مودال برداشته‌اند، به این صورت که با تیره کردن پس‌زمینه پشت پنجره یا اجازه دادن به هر کلیک ماوس در خارج از پنجره مودال برای بسته شدن اجباری پنجره - طرحی به نام Lightbox - خطر خطاهای مودال را کاهش می‌دهند. جیکوب نیلسن به عنوان یکی از مزایای پنجره‌های مودال، افزایش آگاهی کاربر را بیان می‌کند. "وقتی چیزی نیاز به اصلاح دارد، بهتر است مطمئن شوید که کاربر از آن مطلع است." برای این هدف، طراحی Lightbox تضاد بصری قوی بین پنجره و بقیه عناصر بصری ایجاد می‌کند. با این حال، اگرچه چنین روشی ممکن است خطر همکنش‌ها اشتباه سهوی را کاهش دهد، ولی این مشکل را حل نمی‌کند که پنجره مودال مانع کاربری از ویژگی‌های عادی برنامه می‌شود و بنابراین کاربر را از انجام هرگونه اقدامی برای رفع مشکل یا حتی از پیمایش صفحه برای مشاهده اطلاعاتی که باید به درستی از بین گزینه‌های ارائه شده بدست پنجره مودال انتخاب کند، باز می‌دارد و هیچ کاری برای کاهش ناامیدی کاربر از افتادن در بن‌بستی که نمی‌تواند بدون عواقب کم و بیش مخرب از آن فرار کند، انجام نمی‌دهد.لری تسلر ، از زیراکس پارک و اپل رایانه ، آنقدر از حالت‌های رانندگی نوشتارفر بود که یک پلاک شخصی‌سازی‌شده برای ماشینش گرفت که روی آن نوشته شده بود: «NO MODES». او از نخستین دهه ۱۹۸۰ تا زمان مرگش در سال ۲۰۲۰ از این پلاک روی ماشین‌های گوناگون کاربری می‌کرد. او به همراه دیگران، سال‌ها از عبارت «Don't Mode Me In» به عنوان شعاری برای حذف یا کاهش حالت‌های رانندگی کاربری می‌کرد. بروس وایمن، طراح یک میز چند لمسی برای نمایشگاه هنری موزه هنر دنور استدلال می‌کند که رابط‌های کاربری برای چندین کاربر همزمان باید بدون مدل باشند تا از تمرکز روی هر کاربر واحد جلوگیری شود. توصیه‌های طراحی.در صورت امکان اجتناب کنید.در صورت امکان، جایگزین‌هایی برای حالت‌هایی مانند فرمان undo و سطل بازیافت توصیه می‌شود. دونالد نورمن، محقق HCI، استدلال می‌کند که بهترین راه برای جلوگیری از خطاهای حالت، علاوه بر نشانه‌های واضح از وضعیت، کمک به کاربران برای ساخت یک مدل ذهنی دقیق از سامانه است که به آنها امکان پیش‌بینی دقیق حالت را می‌دهد. این موضوع، برای مثال، بدست برخی از تابلوهای ایست در تقاطع‌های جاده‌ای نشان داده می‌شود. یک راننده ممکن است با دیدن یک تابلو ایست چهار طرفه در نزدیکی خانه‌اش، فرض کند که تقاطع‌های مشابه نیز چهار طرفه خواهند بود. اگر فقط دو طرفه باشد، راننده می‌تواند در صورت عدم مشاهده خودروهای دیگر، از آن عبور کند. به خصوص اگر دید مسدود باشد، یک خودرو می‌تواند از آن عبور کند و به اولین خودرو از پهلو برخورد کند. یک طراحی بهبود یافته با گنجاندن یک نمودار کوچک که نشان می‌دهد کدام یک از مسیرها دارای تابلو ایست هستند و کدام یک نیستند، این مشکل را کاهش می‌دهد و در نتیجه آگاهی موقعیتی رانندگان را بهبود می‌بخشد.جایگذاری شایسته.کنترل‌های مودال بهتر است در جایی جای گیرند که تمرکز در جریان کار باشد. برای نمونه، یک پنجره مودال می‌تواند در کنار عنصر کنترل گرافیکی قرار گیرد که فعال‌سازی آن را فعال می‌کند. کنترل‌های مودال می‌توانند مختل‌کننده باشند، بنابراین باید تلاش‌هایی برای کاهش ظرفیت آنها برای مسدود کردن کار کاربر انجام شود. پس از انجام کاری که حالت برای آن فعال شده است، یا پس از یک عمل لغو مانند کلید Escape ، بازگشت به حالت پیشین هنگام رد شدن یک حالت، تأثیر منفی را کاهش می‌دهد.کوازیمودس.در کتاب "«رابط انسانی»" ، جف راسکین از چیزی که آن را "«شبه حالت‌ها»" می‌نامید، دفاع کرد. این حالت‌ها حالت‌هایی هستند که فقط از طریق برخی اقدامات مداوم از سوی کاربر در جای خود نگه داشته می‌شوند. چنین حالت‌هایی "، حالت‌های فنری" نیز نامیده می‌شوند. اصطلاح "شبه حالت" ترکیبی از پیشوند لاتین "«شبه-" » (که به معنای "تقریباً" ، "تا حدی" ) و کلمه انگلیسی « mode » است.کلیدهای تغییر دهنده روی کلیدبرگ، مانند کلید Shift ، کلید Alt و کلید Control ، همگی نمونه‌هایی از یک رابط شبه وجهی هستند.مادامی که کاربر در حال انجام یک عمل آگاهانه، مانند فشار دادن یک کلید و نگه داشتن آن در حین فراخوانی یک فرمان، باشد، برنامه وارد آن حالت می‌شود. اگر عمل مداوم بدون اجرای فرمان متوقف شود، برنامه به وضعیت خنثی باز می‌گردد.مزیت ادعایی این تکنیک این است که کاربر هنگام فراخوانی یک فرمان، نیازی به یادآوری وضعیت فعلی برنامه ندارد: همان عمل همیشه همان نتیجه درک شده را ایجاد می‌کند. رابطی که فقط از شبه‌حالت‌ها کاربری می‌کند و هیچ حالت کاملی ندارد، طبق تعریف راسکین، همچنان بدون مدل است.ویژگی StickyKeys با سریالی کردن ضربات کلیدهای اصلاح‌کننده با کلیدهای معمولی، یک حالت شبه‌حالت را به یک حالت تبدیل می‌کند، به گونه‌ای که نیازی به فشردن همزمان آنها نباشد. بدین سان، افزایش احتمال خطای حالت تا حد زیادی با بهبود دسترسی برای کاربران دارای معلولیت جسمی جبران می‌شود.