مشروع لجزء iOS من دورة Mobdev ، يتكون من تطبيق الطقس في الهدف C المصنوع من Xcode .
مع تطبيق Myweather يمكنك:





يعتمد التطبيق على نموذج MVC : M Odel ، V Iew ، C Ontroller.
النموذج مسؤول عن تحديد بيانات التطبيق.
فصول المدينة ومدينة القائمة والرماة المتوقعة هي نموذج التطبيق. قررت استخدام فئة توقعات لإدارة عدم التزامن لالتقاط معلومات الطقس عبر API Open.meteo وضمان استخدام تطبيق سلس للمستخدم.
يتم استخدام API عبر تسلسل JSON .
تعرض المشاهدات البيانات الواردة في النموذج و "التقاط" تفاعل المستخدم مع التطبيق ، وحدات التحكم هي دماغ التطبيق: فهي توفر الرابط بين العرض والنموذج ، وإدارة مدخلات المستخدم المرسلة بواسطة العرض وإرسال أي تحديثات إلى النموذج.
يتيح لك استخدام وحدة تحكم uinavigation إدارة استخدام طرق عرض متعددة بسرعة وبشكل حدسي باستخدام بنية المكدس (Lifo Logic).

هناك 4 وحدات تحكم عرض:
تنفذ هذا العرض تسجيل ماناجير لاستخلاص الموقع الحالي للمستخدم ويسجل وحدة التحكم في الاستماع إلى الإخطارات التي أرسلها فئة التنبؤ بمجرد الانتهاء من طلب معلومات الطقس عبر API لتحديث العرض.
عند بدء العرض (الطريقة " ViewDidloaded ") ، يسترجع وحدة التحكم عبر الملف قائمة المدن المفضلة (3 صفائف تتعامل مع أسماء وخطوط الطول) ، التي سيتم إرسالها عبر التالية إلى وحدات التحكم (إذا لم تكن هناك ملفات ، فهي إنشاء).
تتيح لك الأزرار الموجودة على شريط التنقل بدء Segues لوحدات التحكم في العرض المعنية.

يتم عرض النتائج على uableview الديناميكي مع قسم وعدد من الصفوف يساوي عدد نتائج البحث. هناك مستمع يلتقط النقر على خلية TableView التي تسمح لك بإرسال إشعار إلى MyWeatherTableViewController الذي يخصص طلبًا للتنبؤ بإظهار الطقس.
بمجرد اكتمال العملية ، يتلقى SearchCityViewController بدوره إشعارًا للبث من مكدس NavigationController.
NB : يمكن استبدال عملية تبادل الإخطار هذه بتنفيذ مندوب (من خلال تحديد بروتوكول) من ViewController الذي يشير إلى اختيار المدينة.

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

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