هذه سلسلة عن اهم معماريات بناء البرمجيات خلال سنة 2019 من واقع ما عُرض في المؤتمرات و ما صدرت بشأنه من كتب او مقالات
لماذا نحتاج الى معمارية او Architecture للأنظمة او ماهي البرامج التي تحتاج حقاً إلى معمارية ؟ إذا كانت برامجك بسيطة او تريدها ان تخدمك لفترة قصيرة او كان عدد مستخدميها محدود فلست بحاجة لمعمارية غير التي تستخدمها حتى من دون ان تعرف اسمها.
لكن إن كنت تبني نظام تتوقع ان يكون له عشرات الالاف
من المستخدمين او لديك نظام غير محدود المزايا و تحتاج لأن تضيف له مزايا اكثر مع الوقت او كنت تخطط للعمل في شركات لديها انظمة مشابهة فالموضوع يهمك.
من المستخدمين او لديك نظام غير محدود المزايا و تحتاج لأن تضيف له مزايا اكثر مع الوقت او كنت تخطط للعمل في شركات لديها انظمة مشابهة فالموضوع يهمك.
الSoftware Architect هو مسؤولة اكثر منها مسمى وظيفي فقد تكون مبرمج و في نفس الوقت Architect لكن عليك وقتها التفكير بطريقتين , فالمبرمج في العادة عقله ثنائي يهمه ان يبني نظام "يعمل" في مقابل نظام "لا يعمل" لكن عقل المعماري يزيد على ذلك في كونه يدخل في مقايضات كثيرة trade-offs.
فقد تضحي بالسرعة في مقابل الثبات و قد تضحي بالدقة في سبيل التواجد. لديك اشياء كثيرة للمقايضة و من الصعب او المستحيل تحقيق كل المميزات من ثبات و سرعة و قابلية للتوسع و الصيانة بنفس الجودة إن كان ايضاً يهمك التكلفة و سرعة الوصول للسوق.
المعمارية الاكثر شهرة هي الLayered , حيث تبني النظام حول او فوق قاعدة البيانات , تبني جداولك ثم تبني كلاسات تحاكي تلك الجداول , هذه المعمارية هي الأسرع و قد تكون الأنسب اذا كان وقتك محدود حيث قد تصادفك مستقبلاً مشاكل كأن يصبح الكود معقداً او قد يتم تخطي بعض الطبقات
المعمارية الأخرى هي الEvent-driven architecture فالأصل ان اي نظام هو عبارة عن معالج أحداث , ضغط المستخدم هنا , او قام بإدخال بيانات هنا ففي هذه المعمارية تستقبل هذه الاحداث في مكان واحد ثم تحيلها إلى اجزاء البرنامج المعنية بالمعالجة حسب الحدث.
لدينا ايضا الMicroservices architecture ان تقسم نظامك إلى عدة اجزاء من انظمة صغيرة حسب طبيعة عملها , قد يكون كل جزء بلغة مختلفة و قاعدة بيانات مستقلة و يتم التعامل معها من خلال API
تكلمت عن معماريات مثل Clean Architecture و الServerless Architecture ايضا كتبت عن الMicro Frontend و استعرضنا بعض معماريات الشركات الكبيرة مثل قوقل و تويتر و اوبر و غيرها.
من الغد بإذن الله سنبدأ من الصفر , هنا و في مدونتي الجديدة اتمنى سنة جديدة عامرة بالنجاح للجميع و طابت اوقاتكم.