هل يجب علي استخدام Swift أو Objective-C لتعلم تطوير تطبيقات iOS؟
نشرت: 2017-02-04ليس من السهل دائمًا تحديد ما إذا كنت تريد استخدام Objective-C أو Swift لمشروع ما لأن هناك عوامل هائلة يجب مراعاتها في كل مرة تبدأ فيها مشروعًا جديدًا. مناقشة هذا الموضوع لأنه السؤال الأكثر شيوعًا الذي طرحه معظم متعلمي تطوير تطبيقات iOS.
يعتمد اختيار اللغة الصحيحة والأنسب على سياق المشروع والفريق وتفضيله ، والولاء إلى لغة برمجة واحدة. بدلاً من التأرجح في الهدف- C أو علم Swift ، فإننا ندرس جميع جوانب المشروع التي تشير إلى لغة واحدة على الأخرى مثل نطاق المشروع والحجم وتكوين الفريق والاعتبارات التقنية.
في عام 2014 ، أصدرت شركة Apple لغة برمجة جديدة تمامًا Swift فاجأت المجتمع بأكمله. في العامين الماضيين ، كرر فريق Swift الأساسي بشكل سريع ، وأصدر العديد من الإصدارات من اللغة مما أثار إعجاب المجتمع وصدمته.
بالنسبة للمطورين الحاليين ، فإن Swift لها آثار مثيرة للاهتمام وقد قدمت أيضًا بعض التعقيد للقادمين الجدد الذين يتطلعون إلى تعلم تطوير iOS. إنه خيار جيد لجميع المطورين ، الذين يعرفون بالفعل تطوير Mac أو iOS ويريدون تعلم - والمساعدة في تشكيل - لغة جديدة.
ومع ذلك ، هناك العديد من المطورين ، الذين أرادوا فقط التجربة ، لا يريدون الحصول على وظيفة مطور iOS ولا يمانعون في التعامل مع الأخطاء الإضافية أثناء التعلم لأنهم ربما يكونون مهتمين بتعلمها أيضًا.
لماذا يجب أن تتعلم Swift؟
لتوضيح أساسيات البرمجة ، تعد Swift لغة أسهل كثيرًا للعمل معها بينما يتجاوز عمر Objective-C 30 عامًا ويتم كتابته في وقت كان يجب فيه وضع اعتبارات مختلفة فيما يتعلق بكيفية تفاعلنا مع أجهزة الكمبيوتر.
كل هذه العوامل مهمة للغاية لمعرفة وفهم اليوم لأنها يمكن أن تجعل تعلم أساسيات البرمجة أمرًا شاقًا. علاوة على ذلك ، فإن أساسيات البرمجة أسهل بكثير في الفهم باستخدام Swift من Objective-C. دعنا نلقي نظرة على الأسباب المختلفة التي تجعلك تتعلم Swift؟
آمن
في وقت إطلاق Swift ، ادعت شركة Apple أنها آمنة وحديثة وقوية في حين أن الحداثة وقوة لغة البرمجة تعني القليل للمبتدئين تمامًا والأمان مهم بشكل أساسي.
أصعب شيء هو عدم معرفة الخطأ الذي حدث عند تعلم كيفية البرمجة. حسنًا ، هناك العديد من الفوائد من اكتشاف ذلك من نفسك والتعلم منه ؛ ومع ذلك ، فإن عدم وجود ردود فعل مناسبة يمكن أن يؤجل البعض.
باستخدام Swift ، يمكنك منع ظهور فئة كاملة من الأخطاء أو الأخطاء وإبلاغنا بشكل متكرر بما نقوم به من أخطاء. بالإضافة إلى ذلك ، تعد Swift أكثر أمانًا وستفيدك بجعل تجربة كتابة التعليمات البرمجية أقل إحباطًا.
بيئة تفاعلية للغاية
بصرف النظر عن Swift ، أطلقت Apple أيضًا بيئتي تشفير أكثر تفاعلية ، مما يساعد المبتدئين على تعلم كيفية البرمجة. هناك ملاعب Xcode وهي بيئة لمساعدة جميع المبتدئين على تعلم كيفية البرمجة.
هناك Xcode Playgrounds وهي بيئة وجزء من تطبيق Mac يسمى Xcode وتمكنك من تعلم واستكشاف Swift وإنشاء نماذج أولية لأجزاء من تطبيقك وتطوير بيئات التعلم للآخرين.
يمكنك أيضًا العثور على تطبيق iPad يسمى Swift Playgrounds ، والذي يوفر نفس البيئة التفاعلية مثل Xcode Playgrounds ، ولكن بطريقة أكثر استقصائية ، مما يتيح لك الاستفادة من أجهزة iPad الخاصة بك.
أفضل شيء في Swift هو أنه أكثر جاذبية من أي شيء آخر ويقدم ردود فعل فورية ، مما يجعل المفهوم بأكمله سهل التعلم. هذا النوع من البيئة ليس رائعًا بالنسبة لـ Swift ، ولكن تقوم Apple ببعض الأشياء الرائعة باستخدام تطبيق iPad ، مما يجعل التعلم لجميع المبتدئين أمرًا سهلاً.
عصري
Swift هي اللغة الحديثة للغاية التي تأتي مع جوانب غنية ، مما يسمح للمبتدئين بالقراءة والكتابة بسهولة من Objective-C. على الويب ، يمكنك رؤيتها مكتوبة ولا يهم لأن كل شيء أسهل كثيرًا في الفهم بمجرد أن تكون لديك خبرة كافية به.
ليس من السهل معرفة المفاهيم دون التعثر في قراءة التعليمات البرمجية. لن تتعطل برامجك لأنك نسيت فاصلة منقوطة في نهاية السطر.
هذه أشياء ثانوية بمجرد أن تعتاد عليها ؛ ومع ذلك ، فمن المؤكد أنها مفيدة أن يجلبها Swift للمبتدئين. تعتبر Swift حديثة للغاية وستخفض السياج أمام العديد من الأشخاص ، مما يجعل التركيز على المفاهيم أمرًا بسيطًا للغاية.
باختصار ، تعلم وفهم أساسيات البرمجة هي الخطوة الأولى في رحلتك لتعلم تطوير iPhone. الحداثة والأمان اللذان توفرهما اللغات كلها تساهم في خفض حاجز الدخول.
لماذا نتعلم Objective-C؟
تدريجيًا ، ستتغير الإجابة مع مرور السنين وستقوم Swift بعمل المزيد من الطرق في المجتمع ؛ ومع ذلك ، هناك شيء واحد فقط يجب معرفته حول Objective-C لأنها كانت لغة الأمر الواقع لتطوير iOS لمدة 10 سنوات تقريبًا. علاوة على ذلك ، إذا كنت تريد أن تصبح مطور MacOS ، فإن Objective-C كان الخيار الأول منذ الثمانينيات.
باختصار ، تم تطوير كل شيء في iOS SDK في Objective-C وهو يعمل بشكل ممتاز مع نموذج البرمجة Objective-C. على الرغم من أنك تكتب رمزًا في Swift ، إلا أنك ستتفاعل مع المكونات المكتوبة جميعها في Objective-C. مكتبات وإطارات العمل التابعة لجهات خارجية موجودة بشكل أساسي في Objective-C نظرًا لأن Objective-C كان موجودًا لفترة أطول.
علاوة على ذلك ، فإن الغالبية العظمى من موارد التعلم مثل منشورات المدونات والكتب ومقاطع الفيديو الخاصة بالمؤتمرات والمزيد ، كلها موجودة في Objective-C ؛ لذلك ، إذا قمت بتشغيل الإنترنت للحصول على مساعدة لبعض المشكلات الغامضة ، فهناك فرص كبيرة لقراءة كود Objective-C. مجتمع Swift هو مجتمع قوي وهناك العديد من الموارد في Swift ، لذلك لا تشعر أنك ستواجه صعوبة في الحصول على المساعدة.

إذا قررت أن تكون مطور iOS جادًا ، فمن المهم قراءة وكتابة كود Objective-C أيضًا. السبب الرئيسي وراء ذلك هو أنه إذا حصلت على وظيفة كمطور iOS أو تلقيت مشروعًا قديمًا ، فسيتم كتابة كل الكود في Objective-C.
ومع ذلك ، فإن الأدوات التي نستخدمها لتطوير iOS ليست مُحسّنة لـ Swift وهي تصل إلى هناك ، ولكن هذه الأدوات أفضل بكثير مع Objective-C. بالنسبة لمعظم الشركات ، تظل Objective-C لغة التطوير المفضلة.
هل من الضروري تعلم كلتا اللغتين؟
لم تصدر Apple ، الشركة الرائدة ، لغة جديدة تمامًا من أجل المتعة فقط. أصدرت الشركة هذه اللغة الجديدة من قبل الفريق الأساسي والجهود المبذولة لتعزيز التبني في المجتمع وتقديم إشارة واضحة.
ترى الشركة أن هذه اللغة الراقية هي مستقبل منصاتها. الهدف الرئيسي للغة Swift هو توسيع نطاق تطوير iOS والعمل بشكل جيد مع Swift من جانب الخادم.
إذا قررت أن تكون جزءًا من هذا المجتمع على المدى الطويل ، فإن Swift تصبح لغة التطوير الرئيسية الخاصة بك. بغض النظر عن اعتماد Swift ، لا يزال Objective-C لا يذهب إلى أي مكان. لا تزال الشركة تحاول إجراء العديد من التحسينات في اللغة.
من الممكن كتابة التطبيقات بالكامل في Swift ؛ ومع ذلك ، هناك احتمال كبير أنك ستحتاج إلى الغوص في Objective-C من حين لآخر. تأكد من أن تكون مدركًا لأنك قادم إلى هذا كمبتدئ ، وهو الجزء الصعب جدًا في تطوير iOS. بمجرد أن تتعرف على إحدى لغات البرمجة ، لن يكون من الصعب عليك تعلم لغة أخرى.
أثناء الاختيار بين Objective-C و Swift ، ابحث عن الاعتبارات الفنية
كل من اللغتين Objective-C و Swift قد استفادتا من مزايا تقنية متنوعة. أدناه ، يمكنك العثور على العوامل التي يجب أن تأخذها في الاعتبار.
وقت تشغيل اللغة
هل تعلم أن وقت تشغيل Objective-C أقوى من وقت تشغيل Swift؟ وقت تشغيل Swift قريب حتى من وقت تشغيل Objective-C ولن يكون ممكنًا لسنوات حتى. إذا كنت قد قررت كتابة رمز يستفيد من التفكير والاستبطان العميق للأشياء والأنواع ، فإن Objective-C لا يحتاج إلى تفكير.
ثبات الكود
Swift هي لغة برمجة أكثر أمانًا من Objective-C نظرًا لنظامها القوي في الكتابة ومعالجة الأخطاء. إذا كنت تتابع Swift الاصطلاحي ، فأنت تضمن أن الشفرة الخاصة بك تحسب جميع حالات الخطأ المحتملة.
هذا لا يعني أنه يمسك بكل شيء. يعد هروب الذاكرة من دورة الاحتفاظ أحد الأمثلة على الخطأ ، والذي ينتشر بشكل متساوٍ في كود Swift مثل Objective-C. ذلك لأن نظام العد المرجعي غير الطوعي في Swift غير متأثر.
دعم الأدوات
قام فريق Xcode بأكمله بعمل مذهل لترقية عملية الإنشاء لدعم Swift. كان على الفريق التعامل مع تطبيق لغة معقدة ودعمها بلغة مختلفة تمامًا. يأتي مع المفاجأة الصغيرة أن IDE نفسه يتأخر وأن دعم الأدوات لـ Swift أقل.
في بعض الأحيان ، قد تكون محظوظًا للحصول على إبراز بناء الجملة. في كثير من الأحيان ، سوف تذهب دون الإكمال التلقائي. إذا كنت أحد هؤلاء الذين يحبون الدعم القوي الذي توفره IDEs الحديثة ، فتأكد من التفكير في الالتزام بـ Objective-C أو تقييم IDEs البديلة. البديل الأكثر شيوعًا هو AppCode ؛ ومع ذلك ، هناك شخص لديه الإعداد الصحيح لـ emacs.
العمل مع Foundation APIs
سيستخدم التطبيق الذي خططت لإنشائه واجهات برمجة التطبيقات الأساسية للمؤسسة ، ويجب عليك استخدام Objective-C. صحيح أن Swift تقدم بعض الأغلفة الرائعة وتجعل إدارة الذاكرة أكثر سلاسة ؛ ومع ذلك ، لا تزال هذه واجهات برمجة تطبيقات C واستدعاءات الوظائف المستندة إلى C والتي ستتناسب بشكل طبيعي أكثر في قاعدة كود Objective-C.
استفد من كود C ++
على حد سواء واجهات برمجة التطبيقات الخاصة بالمؤسسة ، يمكنك الاستفادة من مكتبات C ++ أو تطويرها على منصة C ++ SDK عبر الأنظمة الأساسية لأنها ستلائم مشروع Objective-C. لن تتمكن من استيراد C ++ إلى ملفات Swift.
للاستفادة من Swift ، تحتاج إلى القيام بالمهمة الشاقة والمليئة بالأخطاء المتمثلة في إنشاء فئات مجمعة Objective C و C ++. في كل مرة ، سوف تحتاج إلى ربط ونفقات إضافية وترغب في استخدام جزء آخر من مكتبة C ++. Objective-C هو الخيار الصحيح إذا كنت ستستخدم C ++.
إثبات المستقبل
هل تعلم أن أكثر المشاريع إثباتًا للمستقبل هي تلك المكتوبة بلغة Swift؟ تم توسيع استخدام Swift لاستخدامه في مشاريع Cocoa مفتوحة المصدر الثالثة. في السنوات الأربع القادمة ، ستكون مساوية لـ Objective-C. علاوة على ذلك ، تتم كتابة معظم البرامج التعليمية والمدونات الجديدة بلغة Swift بالفعل.
نعتقد بشدة أنه في غضون 5 إلى 10 سنوات ، يجب أن تكون هناك معلومات كافية عن Swift لدحض شرط فهم Objective-C. ستحصل على وقت كافٍ لتحويل التعليمات البرمجية الخاصة بك قبل اختفاء Objective-C ؛ لذلك ، يمكنك الاحتفاظ بهذا للتفكير.
خاتمة
لذلك ، هذه هي العوامل الأكثر شيوعًا التي يحتاج المطورون إلى أخذها في الاعتبار عند الاختيار بين Objective-C و Swift لتطوير تطبيقات iOS. هناك احتمالية أن يتضمن مشروعك اعتبارات إضافية ، والتي لا يواجهها عادةً الجزء الأكبر من التطبيقات. ومع ذلك ، إذا كنت تبحث عن مطور iOS ذي خبرة ، ولديه الكفاءة في كل من Objective-C و Swift ، فيمكنك الاتصال بشركة تطوير تطبيقات iPhone.