لاحظت اثناء اطلاعي على عدد من الدروس باللغة الانجليزية ان لغة الجافا دائما تدرس بطريقة علمية وتخضع لمعايير هندسة البرمجيات اكثر من غيرها ، لماذا ؟
لماذا مبرمجي جافا دائما محترفين في هندسة البرمجيات؟
صحيح، فهي لغة ليست بالبسيطة أو السهلة بل لغة قوية ومتوسطة المستوى أي ليس بها الكثير من التجريد، لأسباب منها:
- لغة جافا لغة كائنية التوجه (OOP)، وتعتبر OOP من أهم أساسيات هندسة البرمجيات، ففي OOP، يتم تقسيم البرنامج إلى كائنات، وكل كائن له خصائصه وسماته وسلوكياته، مما يجعل البرامج المكتوبة بلغة جافا أكثر قابلية للفهم والصيانة والتحديث.
- متعددة المنصات لأن الجافا تدعم فكرة "Write Once, Run Anywhere"، مما يعني أن الكود يمكن كتابته مرة واحدة وتشغيله على أي نظام تشغيل يدعم الجافا، الأمر الذي يسهم في تبسيط إدارة التطبيقات وتطويرها.
- تتميز بأدائها الجيد وقدرتها على التعامل مع تطبيقات كبيرة ومعقدة، حيث تم تصميم الجافا لتكون قوية وموثوقة، مما يجعلها مناسبة لتطوير تطبيقات معقدة وتتطلب دقة وأداء جيد، أي تفرض الكثير من المفاهيم والمعايير الهندسية في طريقة كتابة الشفرة وتصميم التطبيقات، وذلك يشمل مفاهيم مثل البرمجة الكائنية وإدارة الذاكرة الآلية وتنظيم الكود.
- تدعم البرمجة الموجهة نحو المكونات (component-oriented programming)، وهي تقنية هندسة برمجيات تعتمد على تقسيم البرنامج إلى مكونات مستقلة عن بعضها البعض، وبالتالي البرامج المكتوبة بلغة جافا أكثر قابلية لإعادة الاستخدام والتوسع.
- لديها مجموعة واسعة من المكتبات والأدوات التي تدعم هندسة البرمجيات، مثل مكتبة JDBC للوصول إلى قواعد البيانات ومكتبة JUnit لاختبار البرامج.
- تحظى بشعبية كبيرة في تطبيقات الأعمال والويب، وهي المجالات التي تتطلب تطبيقات عالية الجودة وقابلة للتطوير.
أعتقد أن تدريس لغة الجافا بطريقة علمية يعزى ذلك إلى شيوع استخدامها في مشاريع كبيرة ومعقدة، حيث تعتمد اللغة بشكل كبير على مفاهيم هندسة البرمجيات والبرمجة الشيئية مما يشجع على فهم قواعد ومبادئ هندسة البرمجيات من خلال مجتمع كبير من المطورين والموارد التعليمية المتاحة، مما يسهم في بناء تطبيقات قوية ومستدامة في البيئات الأعمال.
تمثل الجافا لغة برمجة قوية وقابلة للتعلم، مما يسهل فهمها وتطبيقها لأغراض مختلفة، كما انه هناك تركيز على معايير هندسة البرمجيات في دروس جافا إلى الرغبة في تعزيز الأسلوب الهندسي في كتابة البرمجيات.
و بصفتي بالفعل تعلمت هذه اللغة فأرى البرمجة بها أكثر تنظيما ويمكن الاعتماد عليها في تطوير برمجيات ذات جودة عالية.
تحتاج التركيز في تعلم الجافا و ذلك راجع إلى طبيعة استخدامها الشائعة في تطوير تطبيقات المؤسسات والبرامج الضخمة، و يتطلب تطوير تلك التطبيقات فهما دقيقا لمفاهيم هندسة البرمجيات.
هناك عدة أسباب لتدريس لغة الجافا بهذه الطريقة، وهذه بعضا منها:
- فلسفة "Write Once, Run Anywhere": هذه الفلسفة تعني أن اللغة مستقلة بحد ذاتها ويمكن تشغيل الكود المكتوب بلغة جافا أين ماأردت، وذلك باستخدام Java Virtual Machine.
- البرمجة غرضية التوجه (OOP): أي أن اللغة تدعم مفاهيم ال OOP من أصلها، وليست كلغات أخرى تدعم هذه المفاهيم كاضافة. هذه المفاهيم تشمل التغليف والوراثة وغيرها.
- ادارة الذاكرة: تقوم لغة الجافا بادارة الذاكرة وعملية ال garbage collection بشكل تلقائي، مما يساعد المطورين ويريحهم من التفكير في هذه الامور التي تعد متدنية المستوى low level
التعليقات