أهلا وسهلا بك زائرنا الكريم في JO1R FORUM | منتديات شباب و صبايا الأردن، لكي تتمكن من المشاركة ومشاهدة جميع أقسام المنتدى وكافة الميزات ، يجب عليك إنشاء حساب جديد بالتسجيل بالضغط هنا أو تسجيل الدخول اضغط هنا إذا كنت عضواً .

< درس > مفاجأة ..ترجمة مقال ( 20 طريقة لحفظ حياة “القطط” وتعلم بى إتش بى ) .... الجزء الأول

( 20 طريقة لحفظ حياة “القطط” وتعلم بى اتش بى ) الجزء الأول هناك مقولة انجليزية قديمة تعود إلى القرن الثامن عشر تقول ” قطة تموت عندما لا يتبع مبرمج ا



29-06-2011 08:20 مساءً
معلومات الكاتب ▼
تاريخ الإنضمام : 16-07-2007
رقم العضوية : 46
المشاركات : 1,315
الجنس :
قوة السمعة : 429,537,324
( 20 طريقة لحفظ حياة “القطط” وتعلم بى اتش بى ) الجزء الأول



هناك مقولة انجليزية قديمة تعود إلى القرن الثامن عشر


تقول ” قطة تموت عندما لا يتبع مبرمج ال بى اتش بى (أفضل الممارسات) .. طبعا هذا ليس صحيحاً "


2k27tl


ولكن تابع المقال فقط وسترى


“من الممكن أن تتحول تجربتك مع بى اتش بى إلى تجربة رهيبة .ومن هذا المنطلق . فإن هذه النصائح ستعلمكم كيفية إتباع أفضل الممارسات .والحفاظ على الحياة.. حياة القطط “


0. برمج معظم الوقت بقدر ما تستطيع .


هل درست لغة أجنبية في المدرسة ؟ دراسة علم الكلام. ودراسة الأفعال وكيف تصرف الأفعال ….

ما مقدار استخدامك لهذه اللغة الآن ؟
لو كانت إجابتك هي ” لا استخدمها” . فأنا متأكد أنك نسيتها نظرا لحقيقة أنك لم تستخدم اللغة فعليا – أنت فقط درستها . ولكن إن كان بإمكانك عمل محادثة . فذاك لأنه من المحتمل أنك قضيت بعض الوقت خارج المدرسة تتحدث هذه اللغة . أو انك قضيت بعض الوقت في الخارج أو كنت في وظيفة وكانت هذه اللغة مطلوبة.
أيا كان السبب ، فإنك تذكرت اللغة لأنك قد استخدمتها في الحياة الفعلية ، ووضعتها في محادثاتك الخاصة

“بى أتش بى هى لغة أجنبية تمام كـ الأسبانية أو الفرنسية . ومن أجل أن تكون معتاد عليها يجب عليك أن تستخدمها خارج الدراسة , الدروس والمشاريع ممتازة لتعلم الأساسيات ، ولكن ما لم تطبق تلك المفاهيم على مشاريعك ، فسيصعب عليك أن تضع المفاهيم في مكانها الصحيح وأيضا في ذاكرتك.”




لذا , لا تقلق إن كنت لا تعرف “ما يكفى” لبناء مشروع . فعند اختيارك مشروع معين , فسيكون لديك سبب ملزم للبحث وتطبيق المفاهيم .

فعندما تبرمج معظم الوقت وخصوصا إذا كان مع هدف فسيكون من الصعب نسيان الدروس

1. تعرف على دليل بى اتش بى

أي قائمة لـ نصائح المبتدئين تحتوى على هذه النصيحة ، وهذا لسبب وجيه.


“إن تعلم كيفية تصفح وثائق بى اتش بى هو الشيء الوحيد الأكثر إفادة لك كمبرمج”


فإذا نظرتم إلى مواقعي الأكثر تصفحا فسيكون دليل بى اتش بى هو الأعلى في القائمة . وأنا لا أشك أن ذلك سيتغير طالما بى اتش بى هى اللغة التي استخدمها

في البداية.. الدليل ليس صعبا كما يبدو – ولكن يبدو أنة سيكون صعب فى التصفح ، ويمكن أن يكون غريبا فى بعض الأحيان ومع ذلك ، فستعتاد علية سريعاً.
ومن أفضل الأشياء التي تريد أن تعرفها عن دليل بى اتش بى هو أن معظم الدوال يمكن إيجادها باستخدام هذه النمط في شريط العنوان PHP: Manual Quick Reference
على سبيل المثال عند البحث عن strpos() أكتب PHP: strpos - Manual
و كذلك array_key_exists() أكتب PHP: array_key_exists - Manual
قراءة التعليقات
من السهل تجاوز التعليق ، ولكن من اجل مصلحتك يفضل النظر إليها.
إذا حصلت على نتيجة غير متوقعة من دالة ما ، فهناك فرصة أن شخصا ما أكتشفها ووضحها في التعليقات.
ويمكنك أيضا الاستفادة من النصائح والأفكار الجيدة من مجتمع التطوير عن طريق قراءة التعليقات

2. الاستفادة من المجتمعات الضخمة لـ بى اتش بى على الانترنت


بالإضافة لدليل بى اتش بى ، هناك مجتمعات رائعة للمطورين في جميع أنحاء شبكة الانترنت ،وبعض أفضل المواقع من مفضلتي هم
www.StackOverflow.com و منتدى www.W3Schools.com
بالإضافة إلى ذلك ، تويتر هو مكان ممتاز لوضع أسئلتك. فإذا كان وسمك #PHP فمن المرجح أن يقوم شخص ما في المجتمع بتقديم المساعدة لك .

“تذكر : عندما تتحسن مهاراتك ، فيفضل المساعدة في تطوير المجتمع ،فا مجتمعات المطورين تحتاج المساعدة من الجميع ، وأنة لن يمر وقت طويل قبل أن يكون لديك القدرة على الإجابة على الأسئلة الأخرى للمبتدئين. فلا تتجاهلهم”


3. لا تؤجل تطبيق أفضل الممارسات لوقت لاحق


كما تعلمت ، فستسمع الكثير من “أفضل الممارسات” فى مجال البرمجة ، أشياء مثل

prepared statements and PEAR coding standards
فلا تؤجل تعلم هذه الأشياء فقط لأنها تبدو صعبة

“إذا كان هناك شئ اسمه “أفضل الممارسات” ، فذلك ليس معناه أننا “المطورين” تجمعنا معاً وقلنا “كيف نجعل حياة المبتدئين صعبة؟” .”



إن أفضل الممارسات الموجودة تجعل برنامجك آمن،سريع، ويمكن التحكم فيه ، تعلمهم في أقرب وقت ممكن ، وفى الواقع ، فلا تكمل تعليمك بالطريقة الخطأ ، تعلم أفضل الممارسات أولا


4. لا تؤجل تطبيق أفضل الممارسات لاحقا


أردت التأكد فقط من أنك رأيت هذا


“فعلا أنا أعنى ذلك ، لا تتسرع وتأخذ الطريق الأسرع . في كل مرة عندنا تنتهك أفضل الممارسات لأن الطريق الصحيح يبدو “صعبا للغاية” فأنت كأنك ترمى قطة في بئر جاف”


لهذا إذا كنت لن تفعل ذلك لنفسك ، أو لمشاريعك الخاصة، أو لأصحابك ، أو للمجتمع ككل ، فعلى الأقل تذكر القطط .



5. أجعل الكود يصف نفسه


الأغراء ، فا مبكرا ، تريد أن تصبح ماهرا بالمتغيرات وأسماء الوظائف. ربما قرأت مقالا عن الأداء , أو رأيت كود ينجز الكثير من العمل في سطرين فقط.

ربما تريد إنشاء الكود بشكل خاص بك ، أو سمعت أنى أكرة ذلك وتريد فقط أن تضايقني.
مهما كانت إغراءاتك الخاصة ، قاومها بـ أي شكل من الأشكال .

أنظر إلى المثال القادم

رمز PHP:
1 $a = b(jason.lengstorf@copterlabs.com);
2 $c = explode(@, $a);
3 $d = $c[1];
4 echo The email address , $a, belongs to the domain , $d,.;
5 function b($e) { return htmlentities($e, ENT_QUOTES); }

هل فهمت ما يعنيه هذا ؟
بالطبع ، يمكن معرفة هذا ، ولكن لماذا تفرض على من يعمل على كودك أن يقضى وقت من 1-5 دقائق يحك فى راسة ، لمحاولة معرفة ما يخزنه المتغير “سى”
لذلك دعنا نأخذ الكود ونجعله أوضح .

رمز PHP:
1 $email = sanitize_string(jason.lengstorf@copterlabs.com);
2 $email_pieces = explode(@, $email);
3 $domain = $email_pieces[1];
4 echo The email address , $email, belongs to the domain , $domain, .;
5 function sanitize_string($string) { return htmlentities($string, ENT_QUOTES); }

هناك أفضل من ذلك. الأن مع نظرة عابرة للكود , يمكنك معرفة ما يحدث بشكل عام , وليس هناك حك في الرأس ولا شتائم والاهم من ذلك ، لا يوجد اختلاف حقيقي.
بالتأكيد ، يمكنك حفظ بعض البايت مع الأسماء القصيرة للمتغيرات . ولكن بصراحة أذا كنت تقلل الحجم فقط لحفظ 2 ملى ثانية من وقت تنفيذ البرنامج
فهذه مشكلة أخرى تماما

6. أضف تعليق على أي شئ يحتاج تفكير لمعرفته


التعليقات في الواقع ليست علامة للمبتدئ , في الواقع ، كلما أرى المزيد والمزيد من الأكواد التي ليست لي ، بدأت في التفكير أن التعليقات علامة المبرمجين المتخصصين ، فيبدو أنهم الوحيدين الذين يفعلون ذلك.



إذا كان الكود يصف نفسه ، فلن يتطلب الكثير من التعليقات ، لكن ، مهما كانت المتغيرات وأسماء الدوال واضحة ، فسيكون لديك دائما أماكن حيث الإجراءات المتخذة ليست واضحة .

عندما يحدث ذلك ، ضع تعليق هناك.

“أذا كان عليك أن تتوقف وتفكر لثوان قليلة في ما تحتاجه لجعل البرنامج يعمل بطريقة صحيحة ، فمن المحتمل أن يكون هذا مكان جيدا لملاحظة سريعة.”


أنظر إلى ما يلي:

رمز PHP:
1 $pieces = explode(., $image_name);
2 $extension = array_pop($pieces)

ماذا يفعل ذلك ؟ هل توقفت وفكرت فى الأمر ؟ هل مازلت لا تعرف على وجه اليقين ماهو المخزن في $extension ?
أنظر مرة أخيرة ولكن مع تعليق واحد

رمز PHP:
1 // Get the extension off the image filename
2 $pieces = explode(., $image_name); $extension = array_pop($pieces

ا

لآن ، حتى لو كنت لا تعرف كيف أو لماذا يعمل هذا الكود ، ستعرف على الأقل أن $extension تشير تحديدا إلى امتداد صورة . فهذا سيحفظ وقت أي مطور أخر ،فالتعليق يستحق منك مجهود العشر ثواني الذي أخدهكما هو الحال مع معظم الأشياء ، الاعتدال هو مفتاح الحل.فأنت تخاطر بعدم ترك تعليقات قليلة وهذا قد يؤدى إلى وضع المطور التالي في حيرة من أمره بسبب عدم فهم الجمل البرمجية ، وقد يؤدى هذا عرضا إلى كسر الكود ، وهذا شئ محبط جدا للمطور وهو أن لا يستطيع فهم الكود.

“الاعتدال هو الحل”


7- تعلم (docblock) وتعلم كيفية استخدامه .


إذا كان هناك شئ وحيد مؤكد يفعله جميع المطورين وثابتين علية ، أعتقد أنة سيكون استخدام معاير (docblock) للتعليق.

هناك بعض الأسباب القوية التي جعلتني أدعم (docblock)

يتطلب مبدئيا أن تفكر في ” لماذا وما هذا ” لكل ملف ووظيفة وإجراء والخ .

يعطى وصفا واضحا لكل الأنواع المتوقعة للقيم ويعطيك نتيجة صحيحة للوظائف والإجراءات
يقدم وصفا سريعا لما يفعله الكود.
عندما يتم إدخاله مع أي بيئة من بيئات التطوير التي تدعم (docblock)

يجعل الكود واضحا ويسمح لك برؤية وصف الكود والمخرجات لأي من الوظائف والإجراءات.



هذه النصيحة تصنف في مستوى أعلى للمبتدئين ، لكنى أضعها فى أفضل الممارسات التي يجب تعلمها في أسرع وقت ممكن. “لك مطلق الحرية في تركها” ولكن قبل أن تفعل ذلك ، تذكر القطط D:

يظهر (docblock) أفضل ما فيه عندما يوثق فئة
رمز PHP:
01 /**
02 * A simple class to get the sum or difference of $_foo and a value
03 *
04 * @author Jason Lengstorf
05 * @copyright 2011 Copter Labs
06 * @license http://www.opensource.org/licenses/mit-license.html
07 */
08 class CopterLabs_Test
09
{
10 /**
11 * The value to use in addition and subtraction
12 * @var int
13 */
14 private $_foo = 0;
15 /**
16 * Adds a value to $_foo and returns the sum *
17 * @param int $add_me The value to add to $_foo
18 * @return int The sum of $_foo and $add_me
19 */
20 public function add_to_foo( $add_me=0 )
21 {
22 return $this->_foo += $add_me;
23 }
24 /**
25 * Subtracts a value from $_foo and returns the difference



26 * @param int $subtract_me The value to subtract from $_foo
27 * @return int The difference of $_foo and $subtract_me
28 */
29 public function subtract_from_foo( $subtract_me=0 )
30 {
31 return $this->_foo -= $subtract_me;
32 }
33 }

في البداية قد يبدو مربكاً ، ولكن يستحق الفائدة التي حصلنا عليها .

أنظر إلى هذا الكود بعد استخدام (docblock) في (NetBeans)


20-tips_ide-code-hinting


8. لا تكن مبالغا في استخدام بيئات التطوير


إذا كنت لا تعرف ما أقصده ، سترى قريبا هذا النوع من التفكير لدى المطورين


يخبرونك بأن “المبرمجين الحقيقيين لا يستخدمون بيئات التطوير”


فإذا كنت تريد إعجاب الناس . أو الشهرة فإن رفض استخدام أي شئ غير محرر النصوص (Emacs) لكتابة لبرامجك لن يفعل لك ذلك وأيضا لن يمنحك صديقة أو سيثبت أنك هاكر ،


ومع ذلك ، علق لافتة على جبهتك لتحذر زملائك في العمل مكتوب عليها “أنا هذا الرجل”.


لا تكون هذا الرجل


“لا حرج في استخدام برنامج ليسهل عليك قراءة لكود والتحقق من الخطأ والخ .”


اختيارك في استخدام بيئة تطوير معينة ، راجع لك شخصيا ، فانا شخصيا أحب (NetBeans) . لقد سمعت عن العديد من بيئات التطوير ، وقد كنت أستخدم (Eclipse) قبل الانتقال لـ (NetBeans)


فأي كان اختيارك ، فسوف ترى سرعة في أدائك وسهولة في تصحيح أخطائك . كذلك ، كما قمت بزيادة المكتبات لبرنامج ، فسيكون لديك وصف جيد للكود بما أنك تستخدم أيضا (Docblock) أليس كذلك ؟


لا تظن أن بيئات التطوير غير جيدة – مهما قال لك “هذا الرجل”.


...............................

ترجم من قبل "محمد فوزى" من فريق عمل " سبوت لاير "


المقال الأصلى

إنتظرو الجزء الثانى قريبا ....
توقيع :OMRAN
ohgod

اضافة رد جديد اضافة موضوع جديد




الكلمات الدلالية
لا يوجد كلمات دلالية ..









الساعة الآن 01:02 PM