كيف تصنع برامج جيدة؟

كيف تصنع برامج جيدة؟ IMS بلوق
فريق IMS Kai-Uwe Schiffer
المساهمة المسجلة بواسطة: كاي-أوي شيفر

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

كيف تصنع برامج جيدة؟ بصرف النظر عن حقيقة أن المرأة أيضا يجعل البرمجيات الجيدة (على الأقل هنا مع IMSالسؤال ليس من السهل الإجابة عليه. لأن البرنامج معقد. وبرنامج جيد؟ من المفارقات ، أنها أقل تعقيدا. خلقهم هو أكثر تعقيدا. لأن هناك الكثير مما يجب عمله للبرامج الجيدة من مجرد كتابة الكود.

فكر أولا

يشبه إلى حد كبير استخدام البرنامج مثل أي مكان آخر في الحياة: فكر أولاً ، ثم تصرف - وبالطبع كود. للحفاظ على الشفرة نظيفة ومرنة قدر الإمكان ، يجب وضع الكثير من الاعتبارات قبل كل تطور:

  • ما الذي يجب أن يفعله البرنامج؟
  • ما هو جوهر الحل؟
  • ما العناصر التي تحتاج إلى برمجة قوية قدر الإمكان؟
  • ما العناصر التي تحتاج إلى برمجة بمرونة قدر الإمكان؟
  • ما يجب أن تكون متصلا ، وقراءة في ، أمضى؟
  • كيف أفضل دمج العناصر المختلفة في وحدة وظيفية؟

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

الرأس كأداة

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

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

اللغات

سواء C # ، جافا ، بيثون ، HTML5، Basic، Ruby - الذي يريد البرنامج ، يجب أن يعرف لغته (لغاته). يشبه في عطلة: لا توجد كلمات دون كلمات. المعرفة اللغوية هي بالتالي الابتدائية. لا أستطيع التعبير عن ما لا أعرفه. لا أستطيع برمجة ما لا أستطيع التعبير عنه.

التعرف على الأنماط

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

التفكير المجرد

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

المنطق مع وبدون الرياضيات

هنا هي الكلمة الرئيسية لذكرها: المنطق. من يريد البرنامج ، يجب أن يكون قادرًا على التفكير المنطقي ، لأنه قبل كل شيء هناك دائمًا السؤال: ما الإجراء الذي له عواقب؟ يمكن تعلم الهيكل الأساسي للتفكير المنطقي في المدرسة في مجال الرياضيات ، وهو ما يمكن أن يكون مهمًا لمطوري البرمجيات - ولكن ليس إلزاميًا ، لأنه على الرغم من أن التفكير متشابه ، فإنه ليس هو نفسه. وهناك أيضًا منطق معقد ، على سبيل المثال ، في الفلسفة (وليس فقط في منطق لودفيج فيتجنشتاين Tractatus logico philosophicus).

مبادئ التصميم

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

بعض الأمثلة هي:

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

يتم استدعاء أكبر في هذا السياق حتى يومنا هذا: لا تكتب كتلة متجانسة. أكبر القيام يعني وفقا لذلك: كتابة منظم والوحدات الوظيفية ذات مغزى.

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

لذلك:

لا يوجد شيء جيد ، ما عدا ذلك ، كما يقولون. وهذا ينطبق أيضا على البرمجيات - أكثر تعقيدا ، وأكثر من ذلك. وماذا عن البرنامج الجيد؟

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

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

ربما هذا هو السبب وراء نجاح IMSWARE في السوق.

 

مع أطيب التحيات

ksc Wie macht man gute Software » RIB IMS

PS تطوير البرمجيات هو الشيء الخاص بك؟ ثم إلقاء نظرة على لنا عروض العمل الحالية أكثر ...

 

تقييمك؟

متوسط 4.9 / 5. عدد الأصوات: 8

كن أول من يقيِّم :-)

عظيم ، شكرا جزيلا لك!

ربما تريد متابعتنا على ...

نأسف لأنك لم تحب هذا المنشور.

كيف يمكننا تحسين ذلك؟

أخبار بلوق
القراءة السابقة
IMS في ServParc في يونيو 2019
القراءة القادمة
الاجتماع السنوي ال 51 ل ATA