Saud | سعود الانصاري
Saud | سعود الانصاري

@Alansaricodez

19 تغريدة 6 قراءة Mar 03, 2023
❗️ابرز ما تعلمته من كتاب Clean Code❗️
سأستمر بتحديث هذا الثريد مع كل فصل اقرأه واكتب اهم ما ذكر به
ضع تفضيل على التغريدة اذا كنت مهتم بهدا الكتاب🙏🏼
قبل البدء بالفصل الأول، يهدف الكتاب إلى تعليم المبرمجين كيفية كتابة كود أفضل
الهدف هو المساعدة في إنشاء كود يسهل قراءته من قبل البشر وأيضا سهل الصيانة والتصحيح إذا لزم الأمر
هل انت جاهز؟ هيا بنا نبدأ👇🏼
♦️الفصل 1: كود نظيف
يتحدث هذا القصل بشكل عام بأهمية كتابة كود نظيف وعملي ويحث المبرمجين على السعي للتحسن وامثلة عن معنى الكود النظيف من اهم الشخصيات في عالم البرمجة
فشلت الكثير من الشركات بسبب الكود السيئ
وضربت مثال بشركة فشلت بسبب إضافة الكثير من الميزات features إلى الكود، مما ادى الى ظهور العديد من الاخطاء والاعطال في البرنامج
ما هو الكود النظيف؟
يوجد الكثير من المعاني الخاصة بالكود النظيف، ابرز ما قاله شخصيات البرمجة الاشهر انه يجب ان يكون:
- كود فعال وبسيط
- سهل القراءة
- يسهل على الناس تحسينه
- يدل على أن المبرمج يهتم
- لا يوجد ازدواجية
- يحتوي على عدد كيانات اقل (الفئات والطرق والوظائف...)
♦️الفصل ٢: الاسماء
الأسماء موجودة في كل مكان في البرامج، نقوم بتسمية متغيراتنا ووظائفنا وفئاتنا وحزمنا وغيرها
اليك عدة قواعد لانشاء اسماء جيدة:
1️⃣ استخدم الأسماء التي تكشف النية
2️⃣ تجنب المعلومات المضللة
3️⃣ قم بعمل تمييزات ذات مغزى
4️⃣ استخدم الأسماء التي يمكن نطقها
5️⃣ استخدم أسماء قابلة للبحث
6️⃣ تجنب الخرائط الذهنية
الان لنشرح باختصار كل نقطة:
1️⃣ استخدم الأسماء التي تكشف النية:
من السهل القول أن الأسماء يجب أن تكشف النية
يستغرق اختيار الأسماء الجيدة وقتًا ولكنه يوفر أكثر مما يتطلبه الأمر، لذا اعتن بأسمائك وقم بتغييرها عندما تجد أسماء أفضل
سيكون كل من يقرأ التعليمات البرمجية الخاصة بك (بما فيهم أنت) أكثر سعادة إذا قمت بذلك
مثال:
بدلا من تسمية متغير ما
Int s;
سيكون من الافضل اظهار معنى لهذا المتغير:
Int SizeOfArray;
2️⃣ تجنب المعلومات المضللة:
يجب على المبرمجين تجنب ترك أدلة خاطئة تحجب معنى الكود
يجب أن نتجنب الكلمات التي تختلف معانيها الثابتة عن المعنى المقصود
لا تشير إلى مجموعة حسابات ك accountList إلا إذا كانت فعلاً قائمة
كلمة list تعني شيئًا خاصًا للمبرمجين، إذا لم تكن الحسابات مع القائمة في الواقع ، فقد يؤدي ذلك إلى استنتاجات خاطئة ، لذا فإن BunchOfAccounts أو accountGroup وحتى accounts العادية فقط سيكون أفضل
3️⃣ قم بعمل تمييزات ذات مغزى:
نظرًا لأنه لا يمكنك استخدام نفس الاسم للإشارة إلى شيئين مختلفين في نفس المجال فقد تميل إلى تغيير اسم واحد بطريقة عشوائية
ميّز الأسماء بطريقة يعرف القارئ ما تقدمه الاختلافات
4️⃣ استخدم الأسماء التي يمكن نطقها:
إذا كنت لا تستطيع نقط الاسماء التي اخترتها ، فلا يمكنك مناقشتها دون أن تبدو مثل الأحمق
مثال:
5️⃣ استخدم أسماء قابلة للبحث:
تواجه الأسماء المكونة من حرف واحد والثوابت الرقمية مشكلة معينة تتمثل في عدم سهولة تحديد موقعها عبر نص
تفضيلي الكاتب: عدم استخدام الأسماء المكونة من حرف واحد إلا كمتغيرات محلية local داخل methods قصيرة
6️⃣ تجنب الخرائط الذهنية:
لا ينبغي للقراء أن يترجموا عقليًا أسماءك إلى أسماء أخرى يعرفونها بالفعل
تنشأ هذه المشكلة عمومًا من اختيار عدم استخدام مصطلحات مجال المشكلة أو شروط مجال الحل
أصعب شيء في اختيار الأسماء الجيدة هو أنها تتطلب مهارات وصفية جيدة وخلفية ثقافية مشتركة
هذه مسألة تعليمية وليست تقنية أو تجارية أو مسألة إدارية. نتيجة لذلك ، لا يتعلم الكثير من الأشخاص في هذا المجال القيام بذلك جيدًا
هل اعجبك هذا الثريد؟ وهل تريد مني كتابة المزيد مما اتعلمه من هذا الكتاب؟
@abo_bebars_426 سأضع*

جاري تحميل الاقتراحات...