الأمن السيبراني

كيفية اختيار معايير الترميز: أفضل الممارسات التنمية


تضمن معايير الترميز رمزًا محدثًا مفهومًا يحتوي على أدنى أخطاء. كما أنها تعزز التعاون وتقليل الديون التقنية.

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

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

ما هي معايير الترميز ، ولماذا هي مهمة؟

معايير الترميز هي القواعد والمبادئ التوجيهية وأفضل الممارسات التي يتبعها المطورون عند كتابة التطبيقات. إنهم يلعبون دورًا مهمًا في مشاريع التنمية الناجحة.

هذه المعايير تعمل على تحسين الكود مباشرة بعدة طرق. كما أنها تسهل الممارسات المجاورة مثل التعاون ، وتجهيز أعضاء الفريق الجدد ومراقبة الجودة. تعزز معايير الترميز المشروع على النحو التالي:

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

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

كيفية اختيار معايير الترميز

يجب على الفرق إنشاء أو تبني معايير تساعدهم على تحقيق الركائز الخمسة التالية لجودة الرمز.

الصيانة

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

مصداقية

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

كفاءة

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

قابلية القراءة

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

قابلية الاستخدام

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

10 ترميز أفضل الممارسات والاتفاقيات

تحدد المعايير أفضل الممارسات والاتفاقيات الترميز. يمكن أن تنطبق معظم الاتفاقيات التالية على أي مشروع تطوير.

1) تسمية الاتفاقيات

يغطي أسماء المتغير والثابت والوظيفة والفئة والمكونات لتوفير الاتساق والفهم الواضح. بعض أفضل ممارسات اتفاقية التسمية تتضمن ما يلي:

مثال تسمية الاتفاقيات ومعايير القضية قم بتضمين ما يلي:

اسم الاتفاقية مثال الاستخدام الشائع لغة (ق)

قضية كباب

محتوى العينة

فصول CSS ، سمات HTML

HTML ، CSS

قضية الأفعى

sample_content

وظائف ، المتغيرات

بيثون ، ج ، روبي

قضية باسكال

عينة

الفصول ، والأنواع

بيثون ، جافا ، ج#

قضية الجمال

عينة

وظائف ، المتغيرات ، عناوين URL

JavaScript ، Java ، C#

https://www.youtube.com/watch؟v=mtqowqforqe

2) المسافة البادئة والتنسيق

يحدد قواعد علامات التبويب والمساحة البيضاء وأطوال الخط ووضع الشخصية. تتضمن بعض أفضل ممارسات المسافة البادئة والتنسيق ما يلي:

  • المسافات البادئة المتسقة – عادة اثنين أو أربعة مساحات.
  • المسافات أو علامات التبويب – ولكن ليس كلاهما.
  • الدعامة والأقواس وضع.

3) التعليق

يوفر الوضوح للتعليق على إنشاء وثائق موجزة ودقيقة. تشمل بعض أفضل الممارسات للتعليق ما يلي:

  • تشرح التعليقات المكونات المعقدة وليست ضرورية لكتل ​​التعليمات البرمجية البسيطة.
  • توفر التعليقات المنطق أو الأساس المنطقي ، وإعطاء سياق الرمز.

4) تنظيم الكود والهيكل

يحدد بناء الكود الكلي للاتساق والمنطق والكفاءة. تتضمن بعض أفضل الممارسات لهيكل الرمز ما يلي:

  • حدود طول الخط – ما بين 80 و 120 حرفًا أمر شائع.
  • الوظائف والأساليب القصيرة والمكتوية ذاتيا التي تركز على مهمة واحدة.
  • هيكل الدليل المنطقي المنظم لمكونات الكود مع تسمية متسقة.

5) معالجة الأخطاء

يغطي ممارسات الخطأ والتخفيف. تتضمن أفضل الممارسات لمعالجة الأخطاء ما يلي:

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

6) مبادئ البرمجة العامة

يؤكد الكود القابل لإعادة الاستخدام والبساطة. تتضمن أمثلة مبادئ البرمجة العامة ما يلي:

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

7) التحكم في الإصدار

مجموعة فعالة تحكم الإصدار ، تقنيات التفرع والرمز لتجنب الالتباس والتكامل غير المقصود للرمز غير المختبر أو غير جاهز. تشمل بعض أفضل الممارسات للتحكم في الإصدار ما يلي:

  • باستخدام مستودع رمز ، مثل github.
  • باستخدام أدوات التحكم في التعليمات البرمجية ، مثل GIT.
  • باستخدام زيادات إصدار واضحة.

8) إدارة التبعية

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

  • ثابت المسح الضوئي الضعف باستخدام أدوات الأمان الآلية.
  • الإصدار تعلق وقفلات لتحديد إصدارات التبعيات عبر بيئات مختلفة.
  • التقليم التبعية لمراجعة التبعيات غير المستخدمة أو الزائدة عن الحاجة.

9) الوثائق

تتضمن بعض أفضل الممارسات لتوثيق البرامج ما يلي:

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

10) الأمن

يعالج حماية الكود من نقاط الضعف والهجمات. تتضمن بعض أفضل الممارسات لأمن الكود ما يلي:

  • التحقق من صحة المدخلات والمصادقة.
  • مكتبات كود آمنة.
  • يتحقق الأمن المنتظم لتحديد وتخفيف نقاط الضعف.

أمثلة على معايير الترميز

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

أدلة نمط خاصة باللغة

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

  • HTML/CSS. دليل نمط Google HTML/CSS العروض قواعد الترميز النظيف والتصميم في HTML و CSS. W3Schools يوفر اتفاقيات HTML و CSS مع أمثلة عملية.
  • بيثون. مقترحات Python Enhancements 8 (PEP8) ، أسلوب بيثون الرسمي مرشد، أغطية اتفاقيات مثل المسافة البادئة وطول الخط وتسمية الاتفاقيات للغة.
  • جافا سكريبت. دليل نمط Airbnb هو معيار الصناعة أكثر معروف لأدلة JavaScript وتفاعلها. توفر اتفاقيات ترميز جافا سكريبت W3SCHOOLS التسمية قواعد بالنسبة للمتغيرات ، فإن قواعد المساحة البيضاء وممارسات البرمجة الأخرى التي تجعل رمز JavaScript أكثر قابلية للقراءة والصيانة.
  • ج#. اتفاقيات Microsoft Common C# يوصي أنماط لتسمية رمز التنظيم والتنسيق ، وكذلك أدوات لفرض تلك المعايير. على سبيل المثال ، يوصي الدليل باستخدام ملف EditorConfig للسماح لبيئة التطوير المتكاملة تلقائيًا بفرض إرشادات النمط.

المعايير الخاصة بالصناعة

تأكد من التحقيق في المعايير الخاصة بالصناعة أيضًا. توفر العديد من الصناعات معايير وأفضل الممارسات.

تعتمد صناعة الرعاية الصحية على المعايير والمبادئ التوجيهية التالية:

  • IEC 62304. المعيار الدولي ل دورة حياة برنامج الجهاز الطبي، بما في ذلك متطلبات التطوير والتحقق والتحقق من الصحة وممارسات الترميز الآمنة.
  • إرشادات الأمن السيبراني قبل التسويق FDA. إرشادات الأمن السيبراني لتصميم وتطوير وصيانة الأجهزة الطبية. يتضمن التوجيه ممارسات الترميز الآمنة.

لا تملك الصناعة المصرفية والمالية نفس أنواع المعايير المحددة مثل الرعاية الصحية ولكنها تعترف وتستخدم أفضل الممارسات المختلفة. الأمثلة على النحو التالي:

  • إطار تطوير البرمجيات الآمن NIST. تكامل الممارسات الآمنة في جميع مراحل عملية التطوير. ومن الأمثلة على ذلك مراجعات التعليمات البرمجية والاختبار والالتزام بأفضل الممارسات المشتركة.
  • ممارسات الترميز الآمنة OWASP. تشمل بعض مجالات التركيز في هذا المعيار التحقق من صحة المدخلات ، مبدأ أقل امتياز التحكم في الوصول ، والإعدادات الافتراضية الآمنة ، ومراجعات التعليمات البرمجية والاختبار.

يخلق قانون Gramm-Leach-Bliley حاجة تنظيمية لتدابير أمنية في صناعة التمويل ، والتي تدفع بشكل غير مباشر اعتماد معايير الترميز الآمنة.

يمتلك Damon Garn Cogspinner Cooction ويوفر خدمات الكتابة والتحرير المستقلة. لقد كتب أدلة دراسة Comptia المتعددة ، بما في ذلك Linux+ و Cloud Essentials+ و Server+ أدلة ، ويساهم على نطاق واسع في Informa TechTarget ، ومدونات المكدس الجديدة و Comptia.



Source link

زر الذهاب إلى الأعلى