Kotlin vs Java: هل ستحل Kotlin محل Java؟

نشرت: 2021-10-05

مقالة تهدف إلى وصف كل الجمال الرئيسي في اللغتين لتطوير الهاتف المحمول بنظام Android - Kotlin و Java على التوالي.

يعود تاريخ المقالة إلى 10 مارس 2017 ، وفي ذلك الوقت لم تصبح لغة Kotlin إحدى اللغات الرسمية لشركة Google.

عندما تختار مطورين للعمل على تطبيق Android المخصص الخاص بك ، فإن تقنية معينة يستخدمونها تعتبر جوهرية بالنسبة لك. اللغتان الأكثر استخدامًا في Google الآن هما Java و Kotlin (على الرغم من أنهما لا يزالان يفتقران إلى الدعم الرسمي من Google) ، لذلك قد يبدو بالنسبة لك ، في البداية ، مسألة ذات أهمية صغيرة فيما يتعلق بتشفير فريقك. مزيد من الدراسة تبين أن لغة البرمجة قد تقلل أيضًا من بعض وقتك ونفقاتك.

اقرأ أيضًا: أسباب رفض google play

حقيقة مثيرة للاهتمام: تم تسمية Kotlin على اسم جزيرة (جزيرة Kotlin ، الواقعة بالقرب من مدينة Saint-Petersburg) ؛ تتحول لغة البرمجة الجديدة نسبيًا لـ Kotlin تدريجياً إلى قوة هائلة ذات إمكانات هائلة لتطبيقات Android المستقبلية لتأسيس تطويرها عليها.

قابل 6 تقنيًا ، ولكن حقًا Kotlin البالغ من العمر سنة واحدة.

في الأصل ، في عام 2011 كإصدار تم كشف النقاب عنه ، ظهرت Kotlin لأول مرة كلغة جديدة لـ Java Virtual Machine من فريق من مبرمجي Saint-Peterburg يسمى Jet Brains. من السهل جدًا فهم السبب في أنهم قرروا ابتكار "عجلة دوارة" جديدة لتطوير Android ؛ على ما يبدو ، هناك القليل:

  • كانت Java موجودة منذ 22 عامًا (مصطلح يشير إلى لغة برمجة) ، وهذا هو السبب في وجود الكثير من الميزات التي لا يمكن تنفيذها بسبب ضخامة Java وتقادمها.

  • تتطلب Java مجموعات تعليمات برمجية طويلة ليتم كتابتها

  • تستغرق الشفرة المكتوبة على Java وقتًا طويلاً لتجميعها

ومع ذلك ، فقد وضع فريق تطوير Kotlin الأمر بشكل معتدل واتفق على أن الكثير من اللغات لا تحتوي على مزيج من الميزات التي كان المهندسون في جميع أنحاء العالم يتوقون إليها ، باستثناء Scala ؛ على الرغم من ذلك ، كما أشار ديمتري جيرموف ، القائد التقني لشركة Jet Brains ، فإن وقت تجميع Scala بطيء وغير كافٍ للسرعة التي تتحرك بها خدمات تكنولوجيا المعلومات المعاصرة.
أخيرًا ، كان شهر فبراير من العام الماضي شهرًا خاصًا لشركة JB بأكملها - حيث شهد أول إصدار من Kotlin 1.0 العالم رسميًا في إصدار مستقر.
منذ ذلك الوقت ، نصحنا Jet Brains على مدونته الرسمية بالبقاء على اطلاع ، ووعدنا بتحديث 1.1 Kotlin الجديد ، مع التركيز على إصلاح الأخطاء ودعم Java Script قريبًا. في الوقت الذي نُشر فيه هذا المقال (العاشر من مارس 2017) ، تم إصدار إصدار 1.1 Kotlin قبل أسبوع واحد فقط ، لكن العالم يتحدث عنه بالفعل. لذا إذا أجريت مقارنة بين Kotlin و Java ، فهل ستكون هناك اختلافات كبيرة؟

ليس إعادة اختراع عجلة.

عند النظر إلى الاختلافات بين Kotlin و Java ، هناك بالتأكيد بعض مزايا Kotlin على Java التي قد يكون لها تأثير مرغوب لأولئك الذين يسعون إلى تطوير تطبيق Android.

أسباب استخدام Kotlin لنظام Android

لذا ، لنبدأ من مكان ما في البداية.

أسباب استخدام Kotlin:

1) تتطلب Kotlin رمزًا أقل للكتابة.

20٪ على الأقل أقل. كما ذكرنا سابقًا ، تعد Java البالغة من العمر 22 عامًا قديمة بعض الشيء بالفعل + أنشأت Oracle Java لتكون لغة متوافقة مع الإصدارات السابقة ، مما يعني بشكل أساسي أن كل إصدار تم إطلاقه حديثًا يجب أن يدعم الميزات المضمنة في الإصدار السابق ، ونتيجة لذلك ، مع كل تحديث يصبح من الصعب تضمين بعض الميزات الجديدة ؛ وبالتالي ، يزداد أيضًا مقدار التعليمات البرمجية المراد كتابتها.
على العكس من ذلك ، تم إنشاء بنية Kotlin من الصفر ، مما تسبب في عدم وجود بنية طبقة إلى طبقة.

2) تحدث حالات سحق أقل على Kotlin.

لدى Kotlin JVM مشكلات أقل بكثير مثل "خطأ المليار دولار" - يمكن منع مشكلة NullPointerExeption هناك. NullPointer موجود حتى الآن في كل لغة برمجة ، ولكن قد تختلف طرق التعامل معها. بالنسبة للسجل ، في Java تحتاج إلى التحقق يدويًا مما إذا كان الارتباط فارغًا أم لا. إذا ضاعت القيمة null - boom، crack، voila! لصالح Kotlin ، يتم تعيين كل كائن تلقائيًا ليكون Null في هذه اللغة + هناك فحوصات آلية لـ NullPointer - لضمان عمل الكود بشكل صحيح بدونه.

3) Kotlin هي لغة أمان من النوع.

مرة أخرى ، كل فئة في Kotlin هي وظيفة ، والعكس صحيح ؛ أكثر من ذلك ، مثل Swift لنظام iOS ، يحتوي Kotlin for Android على أنواع اختيارية ، والتي تساعد في جميع فحوصات السلامة.

اقرأ أيضًا: مزايا استخدام Siwft على Objective-C

4) توفر لك Kotlin بعضًا من وقتك الثمين.

كما قيل سابقًا ، يضمن رمز أقل تقريبًا أخطاء أقل ، ويتم تتبع وقت أقل على التوالي في عملية الترميز بأكملها. وغالبًا ما تحسب فرق تطوير البرامج التكاليف الإجمالية للمشروع وفقًا لمقدار الساعات التي يقضيها المطورون في الترميز.

فيما يلي بعض مزايا Kotlin على Java. على الرغم من أن Kotlin ليست مدعومة رسميًا من قبل Google وتستغرق بضع ثوانٍ أخرى أثناء تجميع الكود الأول ، مع تغطية كل هذه النقاط ، يصبح من الواضح أن لغة برمجة Kotlin بها الكثير من الجمال ، مع مراعاة سرعتها يكتسب الزخم مع ، لا شك في أنها فكرة حكيمة لـ Kotlin-Switch.

اقرأ عن الاختلافات بين تطوير Android و iOS

"ماذا لو أجريت التبديل؟"

يصبح العالم الذي نعيش فيه غير قابل للتنبؤ في العديد من المناسبات ، وفيما يتعلق بتطوير تطبيقات الهاتف المحمول في بعض الأحيان ، هناك حاجة لتغيير الفريق الذي كنت تعمل معه. لنفترض أنك اعتدت العمل مع فريق الاستعانة بمصادر خارجية ، ولكن يوجد الآن طلب لتطوير داخلي لمشروعك. ما مدى صعوبة عمل "ترجمة" من لغة إلى أخرى؟
بالعودة مرة أخرى ، تعتمد الإجابة حقًا على التقنية التي استخدمها المهندسون السابقون. إذا أخذنا التبديل من Java إلى Kotlin كمثال - فلا شك أن هناك حلًا. قامت Jet Brains بإنشاء محول Java-Kotlin مما يساعد على حل هذه المشكلة ؛ ومع ذلك ، تحدث بعض الأخطاء حتى الآن أثناء عملية التحويل ، لذلك يجب مراقبتها وتعيين بعض العمليات يدويًا.

على الجانب السلبي ، سيكون التحويل من Java إلى Kotlin أكثر ركودًا وألمًا ، حيث لا يمكن تحويل جميع الوظائف والأساليب والمتغيرات. ربما يكون أسرع حل للفريق الجديد الذي تتعاون معه هو الاستمرار في الكتابة على Java إن أمكن.

أيضًا ، تعتمد إمكانية التحويل إلى لغة أخرى على حجم مشروعك. بشكل عام ، هناك 3 أنواع من المشاريع: صغيرة ومتوسطة وكبيرة .

  • تستغرق المشاريع الصغيرة حوالي 160-200 ساعة ، وإذا لم تكن هناك بنية معقدة - فيمكن نقلها إلى Kotlin ؛

  • تتكون المشاريع المتوسطة من تطوير يصل إلى 5 أشهر وهي غير ملائمة للتحويل ؛

  • يبدأ تطوير المشاريع الكبيرة من فترة 5 أشهر ومشاريع من هذه الفئة من المستحيل تمامًا تحويلها إلى لغة أخرى ؛

بشكل عام ، فإن أفضل خيار للعميل "المتحول" هو دائمًا بدء العمل مع المهندسين الذين يستخدمون نفس التقنية واللغات والأطر التي استخدمها أصحاب المشروع السابقون. على أي حال ، عندما يكون التغيير حتميًا ، فإننا نقترح بشدة اختيار "المعجم الأحدث" ؛ على سبيل المثال ، لاختيار Kotlin بدلاً من Java.

طريقة مختصرة لترميز Android بطريقة أكثر ذكاءً.

Kotlin كلغة Android للمستقبل

أو على الأقل هكذا يقرأ شعار Kotlin. مما لا شك فيه ، قد يكون لـ Kotlin مزاياها وعيوبها ، ولكن الكثير من الميزات أصبحت عملية بمجرد ظهور Kotlin. ومع إصدار Kotlin 1.1 الذي تم إصداره حديثًا ، والذي يدعم الآن Java Script رسميًا ، يمكن تنفيذ الكثير من الميزات التي تشبه الحلم سابقًا من الآن و على.

في Mind Studios ، انخرطنا أيضًا في Kotlin لتطوير Android منذ ظهور أول نسخة مستقرة على الساحة. Mi Band Control (متتبع نشاط لـ Mi Band Wristband) هو تطبيق تم تطويره بالكامل على Kotlin. أثبتت هذه التجربة أن Kotlin طريقة أكثر ذكاءً وإيجازًا للترميز لنظام Android بواسطة مطورينا أيضًا. لذا ، اختر لغة تطبيقك بحكمة ، ولكن تذكر أن تبقى على اطلاع!

بقلم فسيفولود كاجانوفيتش وإيلينا بيسارابوفا.