استراتيجيات واعية لتطوير البرمجيات ذات الجودة. فكر كمهندس معماري خبير وأنشئ برامج عالية الجودة باستخدام أنماط ومبادئ التصميم.
Suggested by: Coursera (What is Coursera?)
No prior knowledge required
No unnecessary risks
في سلسلة الدورات التدريبية المتخصصة في تصميم البرمجيات والهندسة المعمارية، ستتعلم كيفية تطبيق مبادئ التصميم والأنماط والهندسة المعمارية لإنشاء تطبيقات وأنظمة برمجية قابلة لإعادة الاستخدام ومرنة. سوف تتعلم كيفية التعبير عن وتوثيق التصميم والهندسة المعمارية لنظام برمجي باستخدام التدوين المرئي.
ستساعدك الأمثلة العملية والفرص لتطبيق معرفتك على تطوير مهارات البحث عن عمل والتدريب ذي الصلة في صناعة البرمجيات.
يتضمن المشروع النهائي تطبيق Android قائمًا على Java، والذي ستقوم بتحريره وتطويره خلال الدورات الأربع للتخصص. وسيتطور التطبيق من تطبيق لمستخدم واحد يحفظ البيانات محليًا، إلى تطبيق متعدد المستخدمين يحفظ البيانات عن بعد. ستتلقى في كل دورة تدريبية قاعدة تعليمات برمجية بلغة Java كنقطة بداية وسيتعين عليك توثيق محتوى جديد وتنفيذه باستخدام المعرفة التي اكتسبتها في الدورة.
ستجد برامج تعليمية لمساعدتك على فهم قاعدة التعليمات البرمجية الأولية وتعلم أساسيات تطوير Android.
تأخذ هذه الدورة مبتدئي Java إلى المستوى التالي من خلال تغطية التحليل والتصميم الموجه للكائنات. سوف تكتشف كيفية إنشاء برامج معيارية ومرنة وقابلة لإعادة الاستخدام من خلال تطبيق مبادئ وإرشادات التصميم الموجهة للكائنات. يمكنك أيضًا توصيل هذه التصميمات باستخدام تدوين مرئي يسمى لغة النمذجة الموحدة (UML).
في المشروع النهائي، ستواجه تحديًا لتطبيق معرفتك بالتصميم الموجه للكائنات من خلال تطوير قاعدة كود Java والوثوق بها لتطبيق Android باستخدام مستندات UML المناسبة.
تعمل هذه الدورة على توسيع نطاق التحليل والتصميم الموجه للكائنات من خلال دمج أنماط التصميم لإنشاء تطبيقات تفاعلية. من خلال مراجعة أنماط التصميم المعمول بها، سوف تكتسب المعرفة الأساسية لتطبيقات البرامج الأكثر تعقيدًا. وأخيرًا، ستتعرف على تصميمات البرامج التي بها مشكلات من خلال الرجوع إلى دليل Code Smells Guide.
في المشروع النهائي، ستواجه تحديًا يتمثل في إعادة تصميم تطبيق Android موجود قائم على Java لتنفيذ مجموعة من أنماط التصميم. قم أيضًا بفحص قاعدة تعليمات Javascript المحددة بحثًا عن روائح التعليمات البرمجية.
الطريقة التي يتم بها ترتيب مكونات البرنامج – الإجراءات الفرعية، والفئات، والوظائف، وما إلى ذلك – والتفاعلات بينها، تسمى الهندسة المعمارية. ستتعلم في هذه الدورة كيفية تمثيل هذه البنيات، سواء في UML أو في الأدوات المرئية الأخرى. سنقدم البنى الأكثر شيوعًا وميزاتها ومعضلاتها. سنتحدث عن كيفية تقييم الهندسة المعمارية، وما الذي يجعل الهندسة المعمارية جيدة، وكيف يمكن تحسين الهندسة المعمارية. سنتحدث أيضًا عن كيفية تأثير البنية على عملية تطوير البرمجيات.
في المشروع النهائي، ستقوم بتوثيق تطبيق Android المستند إلى Java باستخدام مخططات UML وتقييم بنية التطبيق باستخدام طريقة تحليل المعضلات المعمارية (ATAM).
استنادًا إلى فهم الأنماط المعمارية، ستقوم بمراجعة بنيات تطبيقات الويب، ثم استكشاف أساسيات البنية الموجهة نحو الخدمة (SOA) في طريقتين: خدمات الويب (WS*) وهندسة نقل الحالة التمثيلية (REST). في المشروع النهائي، ستتصل بتطبيق Android يستند إلى Java باستخدام Elasticsearch، وهي خدمة ويب مزودة بواجهة برمجة تطبيقات REST (API).



