رتبه موضوع:
  • 0 رای - 0 میانگین
  • 1
  • 2
  • 3
  • 4
  • 5
کد نویسی استاندارد: آشنایی اولیه و ذکر مثال هایی در PHP و جاوااسکریپت
#2
«علامت استاندارد همچنان نشانه مرغوبیت کالاست» :)

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

در این مقاله قصد داریم به ادامه استانداردهای گفته شده در مقاله قبل بپردازیم. پس در ادامه با ما باشید.

فراخوانی فاکنشن ها

بین نام فانکشن ها (function) و پرانتزهای آنها نباید اسپیس وجود داشته باشد. پارامترهای اول و آخر به پرانتزها می چسپند و کاما همیشه با پارامتر بعد از خود یک اسپیس فاصله دارد. مانند زیر:

$var = foo($bar, $baz, $quux);

همان طور که در بالا می بینید یک اسپیس در دو طرف علامت مساوی وجود دارد. البته گاهی برای خوانایی بهتر مانند زیر عمل می کنند که صحیح است:

$short = foo($bar);
$long_variable = foo($baz);


اعلان فانکشن ها

«موفقیت بیشتر با رعایت یکسری فانکشن ها و اصول اخلاقی بدست می آید تا آنکه به ذات انسان ها وابسته باشد.»
An Wang

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

function funstuff_system($field) {
$system["description"] = t("This module inserts funny text into posts randomly.");
return $system[$field];
}


آرایه ها (Arrays)

$some_array = array('hello', 'world', 'foo' => 'bar');

در صورتی که آرایه بزرگ است. به صورت زیر عمل کنید:

$form['title'] = array(
'#type' => 'textfield',
'#title' => t('Title'),
'#size' => 60,
'#maxlength' => 128,
'#description' => t('The title of your node.'),
);

(در کد بالا، بعد از آخرین مقدار (انتهای خط یکی مانده به آخر)، می توان علامت کاما را نگذاشت)

Quotes

توصیه می شود - تا آنجا که ممکن است - به جای استفاده از علامت (\):

'He\'s a good person.'

"He is a \"GOOD\" person."

از (' و ") به جای یکدیگر استفاده کنید:

"He's a good person."

'He is a "GOOD" person.'

استرینگ ها (Strings)

بهتر است همیشه بین نقطه (در PHP) یا + (در جاوااسکریپت) و استرینگ یک اسپیس فاصله باشد. مانند زیر:

<?php
$string = 'Foo' . $bar;
$string = $bar . 'foo';
$string = bar() . 'foo';
$string = 'foo' . 'bar';
?>

البته در PHP زمانی که از دابل کووت (“) استفاده می کنید، می توان به صورت زیر نیز عمل کرد:

<?php
$string = "Foo $bar";
?>

می توان برای جلوگیری از خطا های احتمالی از علامت آکولاد به صورت زیر استفاده کرد:

<?php
$string = "<div class='article-{$id}'>There is {$num} block{$s}.</div>";

$id = 3;
$num = 5;
$s = 's';
echo $string; // <div class='article-3'>There is 5 blocks.</div>

$id = 4;
$num = 1;
$s = '';
echo $string; // <div class='article-4'>There is 1 block.</div>
?>

در کد بالا، در خط دوم یک متغیر تعریف شده است که بر حسب مقدارهای (id، num و s) جملات متفاوتی را می سازد.

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

<?php
$string = "<div class='article-".$id."'>There is ".$num." block".$s.".</div>";
?>


Semicolons

گذاشتن نقطه ویرگول در انتهای جمله، در بعضی موارد اختیاری است (مانند جاوااسکرپیت یا مثال زیر در پی اچ پی)

<?php print $tax ?>

برای خوانایی بهتر و جلوگیری از خطاهای احتمالی توصیه می شود همیشه در انتهای جمله نقطه ویرگول بگذارید:

<?php print $tax; ?>


Example URLs

هنگامی که یک آدرس مثالی را می نویسید، از «example.com» استفاده کنید.

عادت های نام گذاری

«نام من باند است. جیمز باند.»
یان فلمینگ (نویسنده داستان های جیمز باند)

اهمیت زیادی دارد که نام های معنی دار برای فانکشن هایتان بگذارید. نامی مانند ()getAverageHeight یا ()get_avg_height اطلاعات بسیار بیشتری نسبت به ()calculate می دهد.

- هر چه محدوده استفاده از یک متغیر کوچک تر باشد نام آن نیز می تواند کوچکتر باشد. برای مثال اشکالی ندارد اگر در یک لوپِ for از متغیری با نام i به عنوان یک شمارش گر استفاده کنیم. مثال زیر:

for (i; i<9; i++) {
print i;
}

پس به عنوان یک قانون سر انگشتی: هر متغیری بامش بیش، برفش بیشتر و اسمش درازتر.

- بعضی از نام ها، مخفف های استاندارد و شناخته شده دارند، برای مثال max. پس زمانی که می نویسید maxLength عین این است که نوشته باشید maximumLength، فقط در این میان چند حرف کمتر تایپ کرده اید.

- نام هایی که با _ (underscore) و __ (two underscores) شروع می شوند برای فانکشن های از قبل تعریف شده کنار گذاشته می شوند و نباید چنین نام هایی بگذارید.

- در نام های چند حرفی دو روش معمول وجود دارد. استفاده از _ و حروف بزرگ. در PHP نام متغیرها و فانکشن ها را به این صورت (get_max_length) نام گذاری می کنیم.
در جاوااسکریپت کلمات را به صورت camel case (که گاهی StudlyCaps هم گفته می شد) نام گذاری می کنیم (getMaxLength).

- در روش camel case اگر یکی از قسمت ها، تمام حروف آن بزرگ است، باید به صورت زیر نوشته شود:

getHtmlPage // not getHTMLPage

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

موارد زیر خاص جاوااسکریپت هستند

تمام متغیرها در جاوااسکریپت باید با var اعلام شوند. به دو دلیل:
- متغیرهایی که با var اعلام نشوند، به صورت پیش فرض گلوبال خواهند بود.
- هنگام پیدا شدن باگ، باگ ها بسیار مبهم خواهند بود و حل آنها بسیار مشکل.

«اگر عیب یابی (debug) هنر حذف کردن باگ ها باشد، پس برنامه نویسی باید هنر ایجاد باگ باشد.»
نامشخص

می توانید از روش علامت گذاری مجارستانی (Hungarian notation method) استفاده کنید که یک روش نام گذاری است.

نام متغیری که مقدار آن Boolean است با b شروع می شود:

bIsRegistered

نام متغیرهایی که مقدار آنها عدد یا شماره است با c یا n (ابتدای حروف count و number) شروع می شوند:

cElements
nTages

نام متغیرهایی که مقدار آنها string است با s شروع می شود:

sFirstName

نام آرایه (Array) ها با a یا arr شروع می شود:

aNames
asNames

مثال دوم یک آرایه است که مقادیر آن string هستند. پس در ابتدای آن هم a داریم و هم s.

اندکس هر آرایه را با i شروع می کنیم:

aNames[iName]

row یا column هر table یک دیتابیس را با r یا c شروع می کنیم:

cAddress

حالت گلوبال یا member را با _g و _m نشان می دهیم: g_sName

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

کسی که کتاب های مفید نمی خواند با کسی که سواد خواندن ندارد، فرقی نمی کند.
Mark Twain
[عکس: <a href=www.Mojsazan.com.gif]" class="mycode_img" />
پاسخ
سپاس شده توسط


پیام‌های این موضوع
RE: کد نویسی استاندارد: آشنایی اولیه و ذکر مثال هایی در PHP و جاوااسکریپت - توسط مهرداد عباسی - 02-03-2013, 11:38 PM

موضوعات مشابه ...
موضوع نویسنده پاسخ بازدید آخرین ارسال
  چرا هزینه های برنامه نویسی بالاست؟ مهرداد عباسی 0 2,666 04-21-2015, 04:58 AM
آخرین ارسال: مهرداد عباسی
  چرا هزینه های برنامه نویسی بالاست؟ مهدی ابراهیمی 0 3,599 06-27-2014, 11:34 PM
آخرین ارسال: مهدی ابراهیمی
  میوه فروشی بهتر است یا برنامه نویسی؟؟؟؟؟؟؟؟ مهرداد عباسی 11 15,752 02-17-2014, 05:05 PM
آخرین ارسال: مهدی ابراهیمی
Question انتخاب یک زبان جامع برنامه نویسی موبایل - اپلیکیشن - وب - هوش digicom 19 25,855 08-25-2013, 07:10 PM
آخرین ارسال: مهدی ابراهیمی
  آشنایی با نسخه بندی و چرخه انتشار نرم افزارها مهرداد عباسی 0 2,844 07-28-2013, 02:45 AM
آخرین ارسال: مهرداد عباسی
  خودآموز برنامه نویسی در ۱۰ سال علیرضا حر 0 3,750 06-21-2013, 05:16 AM
آخرین ارسال: علیرضا حر
  برنامه نویسی لینوکس aliye 5 7,155 02-22-2013, 03:31 PM
آخرین ارسال: Beni_Vanda
  کدام زبان برنامه‌ نویسی را یاد بگیریم؟ (راهنمای انتخاب زبان برنامه نویسی) مهرداد عباسی 0 4,053 09-22-2012, 07:06 PM
آخرین ارسال: مهرداد عباسی
  تاریخچه زبان های برنامه نویسی مهرداد عباسی 0 2,878 09-20-2012, 11:08 PM
آخرین ارسال: مهرداد عباسی
  مقایسه بین دو زبان برنامه نویسی؟ rector 6 9,187 08-14-2012, 03:10 PM
آخرین ارسال: kakolokia

پرش به انجمن:


کاربران در حال بازدید این موضوع: 1 مهمان