کدنویسی با بک‌گراند Dark یا Light؟

کدنویسی با بک‌گراند Dark یا Light؟

یکی از سؤالاتی که ذهن دولوپرهای مبتدی را همواره به خود مشغول می‌کند، این است که در شروع کار در ویرایشگر کد یا IDE خود از تم Dark (بک‌گراند تیره با نوشته‌های روشن) یا Light (بک‌گراند روشن با نوشته‌های تیره) استفاده کنند. پیرامون این موضوع از دههٔ ۱۹۸۰ میلادی تاکنون بحث‌های زیادی صورت گرفته و همواره اختلاف نظرهایی پیرامون این موضوع وجود داشته اما آمار و ارقام حاکی از آنند که اکثر دولوپرها ترجیح می‌دهند تا از بک‌گراند تیره استفاده کنند. آنچه در این پست قصد داریم مورد بررسی قرار دهیم، نتایج آماری هر یک از این دو رویکرد است.

در سال ۱۹۸۰، دو محقق به نام‌های Bauer و Cavonius تحقیقی پیرامون این موضوع انجام دادند تحت عنوان Improving the legibility of visual display units through contrast reversal که نتیجهٔ این تحقیق حاکی از آن است که «کاراکترهای تیره روی بک‌گراند روشن به مراتب بهتر از کاراکترهای روشن روی بک‌گراند تیره هستند». در این تحقیق مشخص شد کسانی که متنی با کاراکترهای تیره را مطالعه کردند، ۲۶٪ دقت بیشتری داشتند (البته لازم به ذکر است افرادی که آستیکمات هستند -چیزی در حدود ۵۰٪ افراد- با دشواری بیشتری می‌توانند متون روشن روی بک‌گراند تیره را مطالعه کنند). 

بر اساس تحقیقات Jason Harrison، شاید بتوان گفت یکی از دلایل چنین دقت بیشتری این باشد که وقتی از کاراکترهای تیره روی بک‌گراند روشن استفاده می‌کنیم، با کوچک شدن مردمک چشم به منظور جلوگیری از وارد شدن نور روشن زیاد، فوکوس (تمرکز) کمی بالاتر می‌رود. با توجه به اینکه در چنین شرایطی چشمان‌مان متمرکزتر شده‌اند، ساختار کاراکترهای تیرهٔ متن روی بک‌گراند روشن راحت‌تر خوانده می‌شوند اما این در حالی است که در حین استفاده از کاراکترهای روشن روی بک‌گراند تیره، مردمک چشم بازتر شده تا نور بیشتری وارد قرنیه شود اما همین مسأله منجر به کمی تیره به نظر رسیدن کاراکترها می‌شود.

آنچه مسلم است این که به غیر از این موارد علمی، باید یکسری فاکتورهای محیطی مثل نور محیط، میزان وضوح تصویر مانیتور و مهم‌تر از همه سلیقهٔ برنامه‌نویس را هم مد نظر قرار داد. بسیاری از محیط‌های توسعهٔ یکپارچهٔ نرم‌افزار (IDE) به صورت پیش‌فرض، تِم سفید رنگی دارند اما این در حالی است که بسیاری از توسعه‌دهندگان ترجیح می‌دهند تا از تِم‌های تیره استفاده کنند.

باتوجه به اینکه یک برنامه‌نویس تمام وقت بیش از ۱۰ الی ۱۵ ساعت در روز کدنویسی می‌کند، به نظر می‌رسد که تِم‌های تیره رنگ نه تنها چشم آنها را کمتر اذیت می‌کنند، بلکه مغز ایشان را نیز دیرتر خسته می‌کنند. شاید پس از تغییر تِم ویرایشگر کد از روشن به تیره، در چند روز اول کمی سردرگم و گیج شویم، اما پس از عادت کردن به تِم تیره رنگ، سوئیچ کردن به تِم روشن دیگر بسیار سخت خواهد بود!

آنچه مسلم است اینکه اگر هم علاقمند به استفاده از بک‌گراندهای تیره هستید، هرگز نباید از بک‌گراندهای سیاه خالص (000#) با رنگ فونت سفید خالص (fff#) استفاده کنید چرا که بسیار آزار‌دهنده است (زیرا در چنین تنظیماتی، کنتراست بسیار بالا است). رنگ تیرهٔ بک‌گراند باید خیلی آزار‌دهنده نباشد و شاید یکی از دلایلی که نرم‌افزارهایی همچون ویژوال استودیو، اندروید استودیو، فتوشاپ و … به جای رنگ تیرهٔ خالص، از نوعی خاکستری استفاده می‌کنند همین باشد.

علاوه بر این، شاید یکسری دلایل غیرعلمی را هم بتوان به دلایل محبوبیت تِم‌های تیره رنگ نسبت داد که برخی از مهم‌ترین آنها عبارتند از:
- خیلی از دولوپرها پیشینهٔ کار با محیط DOS را دارند که مشکی بوده است.
- استفاده از تِم‌های تیره رنگ، یک حس «خفن» بودن، «حرفه‌ای» بودن، «هکر» بودن و … به برخی دولوپرها می‌دهد!
- خیلی از برنامه‌نویسان هستند که شبیه به خفاش هستند؛ به عبارت دیگر، روزها خواب هستند و شب‌ها بیدار! لذا در محیط تیرهٔ شب استفاده از تِم‌های تیره رنگ کنتراست کمتری با محیط پیرامون ایجاد کرده و بالتبع خستگی چشم‌ها کمتر می‌شود.
- رنگ دیفالت ویرایشگرهای کدی همچون vim یا ترمینال لینوکس/مک، تیره است و بسیاری دلایل دیگر.

اکنون اگر مجاب شده‌اید که تِم‌های تیره برای کدنویسی مناسب‌تر هستند، می‌توانید به سایت Dracula مراجعه نموده و بسته به ویرایشگر کدی که استفاده می‌کنید، تِمی تیره دانلود نمایید.

همچنین نرم‌افزار دیگری که در این رابطه می‌تواند مثرثمر واقع گردد، f.lux است. کاری که این نرم‌افزار انجام می‌دهد این است که محیط سیستم شما را بسته به ساعات روز، روشن‌تر یا تیره‌تر می‌سازد و همین مسأله منجر به این خواهد شد تا شما با کدنویسی در ساعات مختلف روز، کمتر دچار خستگی شوید (برای آشنایی بیشتر با این ابزار، به مقالهٔ f.lux: محافظ چشمان شما در مقابل اشعه‌های مانیتور مراجعه نمایید).

جالب است بدانید که قضیهٔ نگاه کردن به مانیتور، رنگ پس‌زمینه و … آن‌قدر مهم بوده که در سال ۲۰۰۷ شرکتی تحت عنوان GUNNAR Optiks تأسیس شده که تخصص آن ارائهٔ عینک‌های اختصاصی برای گیمرها، طراحان سایت و برنامه‌نویسان است. به نقل از این سایت:

عینک‌های Gunnar کنتراست محیط با صفحهٔ مانیتور رو متعادل ساخته، چشم‌ها رو دیرتر خسته می‌کنن و در نهایت راندمان برنامه‌نویسان رو بالاتر می‌برن.

در این مقاله سعی کردیم تا هم از لحاظ علمی و هم تجربی، به مقولهٔ تِم انتخابی برای کدنویسی نگاه کنیم اما آنچه مسلم است این که انتخاب تِم محیط برنامه‌نویسی یک تصمیم کاملاً شخصی است و بسته به پیشینهٔ کدنویسی، محیط کار و بسیاری فاکتورهای دیگر می‌تواند از فردی به فرد دیگر متغیر باشد.

حال نوبت شما است تا تجربیات خود را در این رابطه با ما به اشتراک بگذارید. شما از چه تِمی برای کدنویسی استفاده کنید؟ آیا تجربهٔ کدنویسی با هر دو تِم روشن و تیره را داشته‌اید؟ اگر این طور است، کدامیک را ترجیح می دهید و چرا؟ نظرات، دیدگاه‌ها و تجربیات خود را با ما و سایر کاربران سکان آکادمی به اشتراک بگذراید.