نود و هفت چیزی که هر برنامه‌نویسی باید بداند: ساده زیباست


جمله‌ای از افلاطون وجود دارد با این مظمون که «هارمونی، زیبایی ظاهری، ظرافت و موزون بودن همه و همه به سادگی بستگی دارند.» و این جمله اگر توسط برنامه نویسان به کار گرفته شود، مزایای بسیار زیادی برای ایشان در بر خواهد داشت که از آن جمله می‌توان به خوانایی بیشتر کدها، نگهداری راحت‌تر اسکریپت ها، افزایش سرعت کدنویسی و در نهایت کیفیت بالاتر کدهای نوشته شده اشاره کرد و تمامی این موارد -و حتی موارد بیشتر- جز با به کارگیری دیدگاه افلاطون یعنی همان سادگی امکان‌پذیر نیست.

حال می بایست به این سؤال پاسخ دهیم که به چه نوع کدی صفت زیبا اطلاق می گردد. این سؤال بسیار انتزاعی است چرا که مفهوم زیبایی چیزی کاملاً نسبی است. درکی که هنرمندان از زیبایی دارند به مراتب متفاوت تر از مهندسان یا برنامه نویسان است. لذا نیاز است تا مسئله ی زیبایی در برنامه نویسی را کمی بشکافیم!

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

لیست نظرات
کاربر میهمان
دیدگاه شما چیست؟
کاربر میهمان
محسن
محسن
جمله خیلی معروف هست که می گه "Simplicity is power" احتمالا در کد نویسی هم کاربرد داره
هرچقدر کد ساده تر و گویاتر باشه نه تنها می تونه نشون دهنده میزان تجربه و حرفه ای بودن دولوپر باشه، بلکه اگر فرد دیگری هم بخواد از اون سورس کد استفاده کنه کار راحت تر و سریعتر پیش میره
همینطور خیلی وقت ها پیش میاد به دلیل کدنویسی نامرتب و بد خود دولوپورهم بعد از یک ماه که مثلا می خواد فیچر جدید به پروژه اضافه کنه یا تغییری بده، با مشکل مواجه میشه


جمله ""Simplicity is power" هم از نقاش معروف آمریکایی "Bill Jensen" هست، که کاملش رو در ادامه می نویسم
Simplicity is power. the power to do less of what doesn\'t matter and more of what does
Insight
Insight
ساده و خوانا نوشتن سورس کد یکی از مهارت هایی ست که برنامه نویسان مبتدی و حرفه ای رو از هم متمایز میکنه. خیلی از برنامه نویسانی که به تازگی کار خودشون رو شروع کردن،‌ تصور میکنن اگه کدی که مینویسن با استایل خودشون نوشته بشه و مسئله از یک روش پیچیده حل بشه، اونها برنامه نویس اصطلاحا خفنی هستن! در صورتی که پس از گذشت مدتی متوجه میشن که تبعیت از قوانین و ساده فکر کردن به یک موضوع بسیار مفیدتره.
سورس کد یک نرم افزار باید همیشه در حال بهبود و بهینه تر شدن بشه (یک اثر ادبی نیست که یک شخص فقط اون رو بخونه و لذت ببره!) و سادگی باعث پیشرفت میشه.
Ali
Ali
فکر می کنم این مطالب برای مبتدی ها خیلی موثر واقع می شن.
لطفا به کارتون ادامه بدین.