معرفي ۵ زبان برنامه نويسي اندرويد
تصميم گرفتيد كه توسعهدهندهي اپليكيشنهاي اندرويدي بشيد؟ بسيار خوب! البته بايد بدونيد كه تصميم كافي نيست، يادگيري اين پروسه مي تونه پيچيده باشه. بعضي اوقات حتي مشخص نيست از كجا بايد شروع كرد! پس، احتمالاً شما هم قبل از شروع به كار، سوالات زيادي داريد كه نياز به پاسخ دارن.
چه زبان برنامه نويسي را بايد ياد گرفت؟
از كجا ميتونيد درباره زبان انتخابي خودتون اطلاعات كسب كنيد؟
پس از يادگيري اصول اوليه، چطوري بايد نوشتن كد رو شروع كرد؟
توي اين مقاله، ما ميخوايم به سوال اول جواب بديم. بخاطر همين نيازه كه اول از همه با خودتون كنار بياين! انتخاب يك زبان برنامهنويسي كاملا به اين بستگي داره كه ميخوايد به چه چيزي دسترسي پيدا كنيد.
آنچه در اين نوشته خواهيم داشت
انتخاب خودتو بكن!جاواكاتلينC++ / C#C (HTML / CSS / JavaScript (PhoneGapنتيجهانتخاب خودتو بكن!جاوا يا كاتلين
براي توسعه اپليكيشنهاي اندرويد، قدم اول انتخاب زبان برنامهنويسيه. تفاوتهاي بين زبانهاي برنامهنويسي مختلف ميتونن يه مقدار پيچيده و ظريف باشن. اما چيزي كه حتي مهمتر از خود زبان هستش، ابزار متصل بهش و قابليتها و مقاصد اون ابزار هستن.
زبانهاي رايجي كه ممكنه براي برنامهنويسي اندرويد در نظر بگيرين عبارتند از:
جاوا) زبان رسمي توسعهي برنامههاي سيستمعامل اندرويد كه توسط اندرويد استوديو نيز پشتيباني ميشه. براي مدت طولانيتري نسبت به كاتلين، زبان رسمي اندرويد بوده و خب خارج از برنامهنويسي اندرويد هم كاربردهاي بيشماري داره.
كاتلين) يكي ديگه از زبانهاي رسمي اندرويد. شباهتهاي زيادي به جاوا داره ولي خب يه مقدار آسونتر هم ميتونه باشه. گرچه خارج از برنامهنويسي اندرويد كاربرد زيادي نداره اما در حال حاضر زبان ترجيحي گوگل براي برنامهنويسي اندرويد هستش. اما در هر صورت ميتونه واسهي افرادي كه قصد دارن توسعهدهنده توي پروژههاي مختلف (جدا از اندرويد) باشن، خيلي جذاب به نظر نياد.
سي پلاس پلاس) اندرويد استوديو از طريق جاوا انديكي از سي پلاس پلاس پشتيباني ميكنه. سي پلاس پلاس يه مقدار پيچيده تره البته، و معمولا مورد توجه تيمهاي حرفهاي و بزرگ هستش و خب همچنين به علت پشتيباني شدن توسط Unreal Engine ميتونه براي بازيسازي بسيار مناسب باشه.
سيشارپ) يك جايگزين سادهتر براي سي و يا سي پلاس پلاس. اين زبان حتي مقداري از جاوا هم آسونتره ولي در عين شباهات بسياري بينشون هست. توسط ابزارهاي كاربردي زيادي از جمله Unity و Xamarin پشتيباني ميشه كه براي توسعههاي بين پلتفرمي و همچنين توسعهي بازي بسيار مناسبن.
جاوا اسكريپت (PhoneGap)) اگه بلدين كه چطوري صفحات وب پويا بسازين، ميتونين از طريق PhoneGap از اين دانشتون براي ساختن اپليكيشنهاي بين پلتفرمي استفاده كنين.
جاوازبان برنامه نويسي جاواوقتي بحث توسعه اپليكيشنهاي اندرويدي پيش ميآد، جاوا يكي از دو گزينهي رسميه. و اين مساله به اين معني هستش كه اين زبان از طريق گوگل پشتيباني بسياري دريافت ميكنه. اكثر برنامههاي اندرويدي (غير بازيها) احتمالا توسط جاوا و يا كاتلين نوشته شدن. راه اول براي توسعهي اپليكيشنهاي اندرويدي، دانلود كردن اندرويد استوديو هستش. اين برنامه Android SDK رو هم داخل پكيجش داره كه مجموعا به شما هر ابزار كه براي توسعه نياز دارين رو ميده. منابع رسمي گوگل همواره براي جاوا (و يا كاتلين) هستن و پشتيباني زيادي توي فضاي نت متوجه اين زبان هستش.
خود زبان جاوا در سال ۱۹۹۵ توسط Sun Microsystems انتشار پيدا كردش و از اون زمان تا حالا براي بازهي بسيار بزرگي از برنامهنويسي اپليكيشن استفاده شده. حتي حالا كه گوگل كاتلين رو زبان ترجيحي خودش قرار داده هم، جاوا به شكلي براي همه آشنا و جا افتادهست كه تيمهاي توسعهي خيلي زيادي هنوز هم اين زبان رو انتخاب ميكنن.
اگر در يادگيري جاوا نياز به راهنمايي داريد به مقالهي جديدترين روش يادگيري زبان برنامه نويسي جاوا اندرويد (سال ۲۰۲۰) مراجعه كنيد
كاتلينزبان برنامه نويسي كاتلينكاتلين مدتيه كه يك زبان رسمي براي توسعه اندرويد هست و گوگل حتي تا اونجا پيش رفته كه اين گزينه را به گزينهاي مناسب براي توسعه اندرويد تبديل كرده. مانند جاوا ، كاتلن هم روي ماشين مجازي جاوا كار ميكنه. همچنين كاملاً قابل جابجايي با جاوا است و باعث كاهش يا افزايش اندازه پرونده نميشه. كاتلين يك سيستم سادهتر و آسون براي خواندن كدها داره و همچنين خطاهايي مانند null point exceptions رو از بين مي بره و حتي شما رو مجبور نميكنه آخر هر لاينتون سميكالن بذارين.
C++ / Cزبان برنامه نويسي سي پلاس پلاسعادلانه است كه بگيم اكثر افرادي كه اين مطلب را مي خونن ، نبايد اين مسير را براي توسعه برنامه هاي اندرويد انتخاب كنند.
Android Studio با استفاده از Android NDK (كيت توسعه بومي) پشتيباني از كد C / C ++ را ارائه ميده. اين يعني شما كدي رو مينويسيد كه در دستگاه مجازي جاوا اجرا نميشه ، بلكه بصورت محلي روي دستگاه اجرا ميشه و كنترل بيشتري بر چيزهايي مثل تخصيص حافظه ميده.
براي برنامههاي سنگين، مثل بازيهاي سه بعدي، اين به شما امكان ميده بتونيد عملكرد بيشتري از دستگاه اندرويدي خودتون بكشيد. همچنين يعني كه شما قادر خواهيد بود از كتابخانه هايي كه در C يا ++C نوشته شده اند استفاده كنيد. با اين حال ، تنظيم اون هم بسيار سختتره ، اشكالات زياد و انعطاف پذيري كمتري داره و اگه ميخوايد يك بازي رايانهاي درست كنيد ، احتمالاً بهتره از يك موتور بازي آماده مانند Unity استفاده كنيد.
#C زبان برنامه نويسي سي شارپC # توسط مايكروسافت با هدف تركيب قدرت ++C و سهولت ويژوال بيسيك ساخته شده. خيلي شبيه به جاوا عمل ميكنه و اگه يكي از اين زبانها رو بدونيد ، يادگيري زبان ديگه خيليي ساده خواهد شد.
درست مثل جاوا، سيشارپ هم قابليت بازيافت حافظه رو داره. به اين معني كه نياز نيست نگران مشكلات مربوط به استفادهي نادرست از حافظه و تميز كردنش به صورت دستي رو داشته باشين.
(HTML / CSS / JavaScript (PhoneGapJS در اندرويدPhoneGap برنامهاي است كه از Apache Cordova پشتيباني ميكنه و در اصل به شما اين امكان ميده برنامههايي رو با استفاده از همان كدي كه معمولاً براي ايجاد يك وب سايت استفاده ميكنيد ايجاد كنيد.
سپس از طريق وبويو نمايش داده ميشه (ابزاري كه يك وبسايت رو از طريق اپليكيشن نمايش ميده). PhoneGap مانند يك پل عمل مي كند و به توسعه دهندگان امكان دسترسي به برخي ويژگي هاي اصلي تلفن يا تبلت مانند شتاب سنج يا دوربين را مي دهد.
هرچند اين توسعه اندرويد “واقعي” نيست و تنها برنامه نويسي واقعي جاوااسكريپت خواهد بود. اما اگر ميخوايد ادعاي يك فرد توسعه دهندهي اندرويد رو داشته باشيد، بهتره شجاع باشيد و يكي ديگه از گزينههاي ليست رو انتخاب كنيد.
نتيجه
در نتيجه انتخابهاي زيادي براي توسعهي اندرويد وجود داره: از جاوا و كاتلين تا C# و جاوا اسكريپت.
انتخاب شما به هدف و ميزان حساسيت كار شما بستگي داره. اما هر تصميمي كه بگيريد متوجه ميشيد كه هر زبان برنامهنويسي دنيايي از رمزهاست.
اميدوارم الان كه شما اطلاعات بيشتري در مورد چگونگي توسعه برنامههاي اندرويدي داريد، بتونيد راحتتر تصميم بگيريد.
موفق باشيد.
برچسب: توسعه اپليكيشنهاي اندرويد،
ادامه مطلب