زیبایی در سادگی است!


نقل قول زیبایی از افلاطون که من فکر می‌کنم باید تمام توسعه دهندگان نرم افزار بدانند و در قلبشان نگه دارند این است:

زیبایی سبک، توازن، بخشندگی و وزن خوب به سادگی‌اش بستگی دارد.

در یک جمله خلاصه‌ای از ارزش‌هایی است که ما به‌عنوان توسعه دهنده نرم افزار باید آرزویش را داشته باشیم.

مواردی که باید کوشش کنیم در برنامه‌مان بگنجانیم:

  • خوانایی
  • قابلیت استفاده طولانی مدت
  • امکان پیشرفت
  • زیرکی در کیفیت و زیبایی

افلاطون به ما می‌گوید عامل حقیقی برای این موارد زیبایی است.

برنامه زیبا چیست؟

در واقع این یک سؤال خصوصی است. درک زیبایی به گذشته و سابقه افراد بستگی دارد. کسانی که در زمینه هنر تحصیل کرده‌اند نسبت به آنان که در رشته‌های علمی درس خوانده‌اند درک متفاوتی (یا حداقل نزدیکی) از زیبایی دارند.

هنرمندان نرم افزار را با یک اثر هنری مقایسه می‌کنند و گرایش بیشتری به زیبایی دارند. در حالی که دانشمندان ترجیح می‌دهند درباره تناسب و نسبیت طلایی صحبـت کنند و آن را به فرمول محدود کنند. طبق تجربه من، سادگی پایه تمام بحث‌های طرفین است. ادامه خواندن زیبایی در سادگی است!

اصول کار برنامه عمل‌گرا


برنامه عمل‌گرا اخیراً از سهیم شدن در مسیر اصلی انجمن برنامه نویسی بهره‌مند شده است. بخشی از آن به خاطر ویژگی ناشی از نمونه کار است که توسط صنعتی برای خودنمایی در موقعیت خوبی قرار گرفته است.

اگرچه امر مهمی ست اما دلیل نمی‌شود که این مورد به شما درباره برنامه عمل‌گرا آگاهی دهد.

تسلط بر نمونه کار برنامه عمل‌گرا به‌صورت خوبی می‌تواند کیفیت کدی که در سایر زمینه‌ها می‌نویسید را بالا برد. اگر چگونگی عمل نمونه کار را متوجه شوید، طرح شما در مرتبه بالاتری از قابلیت جایگزینی ارائه خواهد شد.

قابلیت جایگزینی یک ویژگی مطلوب است و به این نکته اشاره دارد که بازده عمل استوار نتیجه یکسانی با دادن ورودی یکسان را در پی دارد. صرف نظر از اینکه کی و کجا خواسته می‌شوند. این ارزیابی خیلی کم – در واقع هیچ – به اثرات جانبی کیفیت ناپایدار، بستگی دارد.

یک دلیل کاستی در کدهای الزامی بی‌ثباتی است. کسانی که این مطلب را می‌خوانند دلیل اینکه چرا برخی از ارزش‌ها آن‌چنان‌که انتظار می‌رود در شرایط خاص عمل نمی‌کند را بررسی می‌نمایند. معنای محسوس می‌تواند کمک کند کاستی دسیسه آمیز را سبک کند یا حداقل موقعیت آن را محدود کند. اما مقصر اصلی در واقع ممکن است آینده نگری برای طرح‌ها باشد که با بی‌ثباتی بی‌اندازه بکار گرفته می‌شوند. ادامه خواندن اصول کار برنامه عمل‌گرا

برنامه‌ای را که می‌نویسید مرور کنید!


بهتر است که برنامه‌ای را که می‌نویسید مرور کنید. می‌پرسید چرا؟

این عمل کیفیت برنامه را بالا برده و از خطاها می‌کاهد. اما ضرورتاً برای دلایلی که شما فکر می‌کنید، نیست. به این دلیل که ممکن است برنامه نویسان از مرور برنامه خاطرهٔ خوشی نداشته باشند، بیشتر آن‌ها تمایلی به این کار ندارند.

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

ممکن است برخی سازمان‌ها به چنین مرحله استواری نیاز داشته باشند اما اکثرشان احتیاج ندارند. در بیشتر سازمان‌ها چنین شیوه‌ای ضد تولیدی است. مرور شونده‌ها احساس می‌کنند به‌طور مشروط مورد قضاوت قرار می‌گیرند. مرورگران به زمان برای خواندن برنامه و به‌روز کردن با تمام جزئیات سیستم نیاز دارند. آن‌ها به‌سرعت می‌توانند به یک گره در این روند تبدیل شوند و فرآیند رو به انحطاط برود. ادامه خواندن برنامه‌ای را که می‌نویسید مرور کنید!