شما اینجایید
خانه > برنامه نویسی > آشنایی با کدنویسی استاندارد

آشنایی با کدنویسی استاندارد

برنامه نویسی

آشنایی با کدنویسی استاندارد

در این مقاله قصد داریم راجع به «کدنویسی استاندارد» صحبت کنیم. به دو مثال زیر توجه کنید:

از نظر ماشین ھا کدھای بالا ھیچ فرقی با یکدیگر ندارند. اما برای ما انسان ھا از نظر ظاھری متفاوت ھستند. شما کدامیک را ترجیح می دھید؟ و به چه دلیل؟ در ادامه مطلب با ما باشید تا تصمیم بگیریم کدام بھتر است و چرا.

استانداردھا و رسوم کدنویسی، گایدلاین ھا (راھنما و دستورالعمل) برای زبان ھای برنامه نویسی ھستند که شیوه ھای خاصی برای کدنویسی را توصیه می کنند. این گایدلاین ھا توصیه ھایی برای کامنت گذاری، فاصله گذاری، تعریف و نام گذاری متغیرها (variable)، چگونگی فضاھای خالی و … دارند.

بسیار توصیه می شود که برنامه نویسان نرم افزارھا حتما از این استانداردھا استفاده کنند تا کدھایشان به آسانی توسط سایرین خوانده شود.

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

خوب بودن بر اساس استاندارد عامیانه ای که از خوبی داریم، کار آسانی است. باید مقداری احترام را با افکار جالب مخلوط کرده و کمی شیطنت به مقدار لازم اضافه کنید.
اقتباس شده از اسکار وایلد (١٩٠٠ – ١٨۵۴)

چرا کدنویسی استاندارد اھمیت دارد؟

گرچه استاندارد نویسی در ابتدا مشکل است و بیھوده به نظر می رسد، اما زمانی که نرم افزارتان بزرگ شود و حجم آن به چند ھزار خط در چند صد فایل برسد، فواید آن مشخص می شود. بعضی از این فواید عبارتند از:

  • برنامه نویسان به راحتی می توانند روی کدھایی که توسط دیگران نوشته شده کار کنند. زیرا کدھا به روشی نوشته شده اند که ھر یک از برنامه نویسان با آن آشنا است.
  • اگر شخص جدیدی وارد تیم پروژه شود، به راحتی می تواند با کدھا کار کند (به شرطی که با کدنویسی استاندارد آشنایی داشته باشد.)
  • رعایت استانداردھا گاھی از ایجاد اشتباه در کدنویسی نیز جلوگیری می کند.

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

indent گذاری و فضای سفید

زمانی که روی مشکلی کار می کنم، ھرگز راجع به زیبایی کد فکر نمی کنم. فقط روی حل مشکل تمرکز می کنم. اما زمانی که مشکل حل شد، اگر راه حل زیبا نبود می دانم که آن راه اشتباه است.

R. Buckminster Fuller

ایندنت گذاری با دو اسپیس (Space) انجام می شود، نه با تب (Tab) مانند زیر:

ھمان طور که می بینید کلمه Code نسبت به متن اطراف با دو اسپیس جلوتر آمده. در صورتی که خود نرم افزار کد نویسی تان این کار را با تب انجام می دھد، به تنظیمات آن بروید. معمولا تمامی آنھا تنظیمی برای جایگزینی تب با دو اسپیس دارند.

اپراتورھا (Operators) در کدنویسی استاندارد

تمام اپراتورھای باینری (اپراتورھایی که بین دو مقدار (Value) می آیند)، مانند +, -, =, !=, ==, > و غیره،برای راحت تر خوانده شدن، باید قبل و بعد از خود اسپیس داشته باشند. برای مثال بنویسیم

و ننویسیم

اپراتورھای Unary (آنھایی که فقط روی یک مقدار عمل می کنند)، مانند ++ نباید ھیچ فاصله ای با متغیر یا عدد کناریشان داشته باشند.

Casting

در یک کست یک اسپیس بین (نوع) و متغیر قرار دھید. مانند زیر:

 Control Structures در کدنویسی استاندارد

که شامل if, for, while, switch و غیره ھستند باید به شیوه زیر نوشته شوند:

ھمان طور که در مثال بالا می بینید کلمات «if» و «elseif» یک اسپیس از پرانتز بعد از خود فاصله دارند تا با فراخوانی یک فاکنشن متفاوت باشند. فراخوانی یک فانکشن مانند مثال زیر:

ھمیشه از علامت ھای آکولاد {} استفاده کنید. حتی زمانی که لازم نباشند. مثال زیر در جاوااسکریپت صحیح است اما استاندارد نیست:

کد بالا برای کسی که با این روش آشنایی ندارد، کمی گیج به نظر می رسد. استاندارد این است که ھمیشه از آکولاد استفاده کنید زیرا خوانایی کد را افزایش و احتمالا خطا را کاھش می دھد.

کامنت گذاری در کدنویسی استاندارد

کامنت گذاری در کدنویسی استاندارد نقش مهمی دارد. تمام فایل ھا باید در بالای کد کامنتی مشابه زیر داشته باشند. این کامنت برای نرم افزارھای مدیریت نسخه حیاتی است.

در این خط در ابتدا نام فایل قرار دارد. سپس ورژن آن (برای شروع ورژن را 1.0 بگذارید.) سپس زمانی که شما فایل را ساخته اید را وارد کنید. سپس نام خودتان را وارد کنید.

در ابتدای ھر فایل یا فانکشن پیچیده ای باید از بلاک کامنت گذاری روش داکسیجن استفاده شود. مثلا:

به این سیستم کامنت گذاری « بلاک کدنویسی، روش داکسیجن » می گویند. متون را می توانید به زبان انگلیسی یا پنگلیش بنویسید. تمام قسمت ھای گیج کننده کد باید با روش ھای کد گذاری تک خطی توضیح داده شوند. مانند زیر:

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

Rich Cook

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

پاسخ دهید

13 + دو =

Top