ابزار سایت

استانداردهای_کدنویسی

تفاوت‌ها

تفاوت دو نسخهٔ متفاوت از صفحه را مشاهده می‌کنید.

پیوند به صفحه‌ی تفاوت‌ها

استانداردهای_کدنویسی [2019/01/15 12:45] (فعلی)
خط 1: خط 1:
 +====== فصل 3- استاندارد‌های کدنویسی ======
 +هدف از این بخش ارائه استانداردهایی برای شیوه کدنویسی در موتوشاب است که باید در هنگام توسعه افزونه و یا هسته موتوشاب مورد توجه قرار گیرد.
 +برای نوشتن یک افزونه مناسب و قابل قبول می‌بایست کدها شبیه به سایر کدهای موتوشاب نوشته شوند. اگرچه همه قوانین در این سند لحاظ نشده‌اند اما جزییاتی مانند قابلیت خوانایی ، قابلیت حمل ​ و سازگاری ​ باید مدنظر قرار گیرند.
 +
 +===== 3-1- استانداردهای عمومی =====
 +
 +همواره باید از شکل کامل برچسب کد PHP استفاده شود. به مثال زیر توجه شود:
 +
 +#;;
 +<code php>
 +<?php
 +
 +?>
 +</​code>​
 +#;;
 +
 +برای فایل‌هایی که فقط شامل کد PHP هستند برچسب بستن (?>) باید حذف شود.
 +
 +include_once و require_once تابع نیستند؛ بنابراین همانند مثال زیر پرانتز نباید اطراف عنوان نام فایل باشد.
 +
 +#;;
 +<code php>
 +
 +//RIGHT
 +require_once '​header.php';​
 +//WRONG
 +require_once('​header.php'​);​
 +
 +</​code>​
 +#;;
 +
 +
 +
 +==== 3-1-1- حاشیه‌گذاری (Indenting) ====
 +
 +به جای استفاده از تب ، از چهار فاصله ​ به منظور حاشیه‌گذاری استفاده شود.
 +
 +==== 3-1-2- قرارداد نام‌گذاری ​ ====
 +
 +**نام فایل‌ها:​** نام فایل‌ها می‌بایست با حروف کوچک بوده و کلمات از طریق کاراکتر «_» جدا شوند؛ مانند base_dao.php و my_super_class.php.
 +
 +**نام کلاس‌ها:​** نام کلاس‌ها می‌بایست با حرف بزرگ آغاز شده و در صورتی که عنوان چندکلمه‌ای باشد حرف ابتدایی هر کلمه بزرگ باشد.
 +
 +#;;
 +<code php>
 +
 +class MySuperClass
 +{
 +    //code here
 +}
 +class PREFIX_MySuperClass
 +{
 +    //code here
 +}
 +
 +</​code>​
 +#;;
 +
 +**نام توابع:​‌** نام توابع مشابه نام کلاس بوده با این تفاوت که حرف ابتدایی کوچک است.
 +
 +#;;
 +<code php>
 +
 +function connect()
 +function camelCaseFunction()
 +function fooBar()
 +</​code>​
 +#;;
 +
 +
 +**متغیرها:​** متغیرها نیز مشابه توابع نام‌گذاری می‌شوند.
 +#;;
 +<code php>
 +
 +public ​   $myVar;
 +private ​  ​$hisVar;​
 +protected $x;
 +</​code>​
 +#;;
 +
 +**ثوابت:​** ثوابت می‌بایست تماماً با حروف بزرگ نوشته شده و کلمات توسط کاراکتر «_» از یک‌دیگر جدا شوند.
 +
 +#;;
 +<code php>
 +
 +define("​MY_MEGA_CONSTANT",​ "Hello world"​);​
 +</​code>​
 +#;;
 +
  
استانداردهای_کدنویسی.txt · آخرین ویرایش: 2019/01/15 12:45