مزیت های اپ اندروید نویسی با ++C نسبت به Java چیست؟

با وجود اين که اپل و گوگل از زبان هاي برنامه نويسي خود -Objective-C و Swift براي iOS اپل و Java براي اندرويد گوگل- براي توسعه ي موبايل پشتيباني مي کنند، توسعه دهندگان مستقل موبايل زمان زيادي را صرف مي کنند تا ياد بگيرند چطور با استفاده از زبان هاي برنامه نويسي ديگر مي توانند اپليکيشن هاي اندرويد و آي او اس بسازند. از ميان زبان هاي جايگزين مي توان #C و (Pascal (Embarcadero-Rad Studio را نام برد. يکي ديگر از اين زبان ها ++C و کيت توسعه ي نرم افزار DragonFire براي iOS و اندرويد است. سال گذشته، Android Studio پشتيباني از (NDK (Native Development Kit را اضافه کرد. بدين ترتيب توسعه دهندگان مي توانند از C و ++C در اپليکيشن هاي اندرويدي خود استفاده کنند. اما سوالي که مطرح مي شود اين است: مزيت هاي استفاده از سي پلاس پلاس براي توسعه ي اپ هاي اندرويدي چيست؟ طراحي اپليکيشن موبايل

کدنويسي سريع تر
تعدادي از نرم افزار هاي شناخته شده از سي پلاس پلاس براي توسعه ي چندسکويي استفاده مي کنند؛ نرم افزارهايي از جمله Facebook Moments، دراپ باکس، آفيس، اسکايپ و بازي هاي محبوبي چون Clash of Clans. با توجه به اين که سي پلاس پلاس معمولا رابط کاربري استانداردي ندارد، کدهاي رابط کاربري با زبان نيتيو نوشته شده اند و سي پلاس پلاس براي منطق برنامه استفاده مي شود.

زبان جاوا با بايت کد بهينه سازي شده ي JVM مي تواند امکان کدنويسي سريع تر را فراهم کند اما يک زبان نيتيو در زمينه هايي مانند بازي سازي، شبيه سازي فيزيکي و پردازش سيگنال مي تواند سريع تر و کارآمدتر باشد. البته تمام اين کارها را با استفاده از فريم ورک JNI يا Java Native Interface مي توانيد با دسترسي محدودتر انجام دهيد اما سرعتتان کاهش پيدا مي کند. به همين دليل است که زبان هاي نيتيو مثل سي پلاس پلاس در اين زمينه مزيت دارند.

ويژوال استوديو
مايکروسافت نسخه ي رايگان Visual Studio Express را در سال 2005 عرضه کرد که در سال 2013 با ويرايش Community تکميل شد. اين نسخه امکان افزودن پلاگين ها و مديريت آن ها را از طريق Nuget Package Manager فراهم مي کند.

ويژوال استوديو از همان ابتدا ++Visual C را پشتيباني مي کرد. اکنون سي پلاس پلاس مي تواند به اندرويد کامپايل شود و اپليکيشن هاي اندرويدي نيتيو توليد کند. اين پلتفرم از مجموعه ابزارهاي CLANG براي کامپايل کردن اندرويد استفاده مي کند.

ويژوال استوديو يک امولاتور اندرويد سريع در کنار کيت هاي توسعه ي اندرويد -SDK و NDK- دارد که از آن جمله مي توان به Apache Ant و Oracle Java JDK اشاره کرد. بنابراين شما براي استفاده از ابزارهاي خارجي نيازي به به استفاده از پلتفرم ديگري نداريد. علاوه بر Ant، Gradle و Cmake، Xoreax Incredibuild نيز در ويژوال استوديو ي 2015 قرار گرفته تا با بهره گيري از کامپپيوترهاي يک شبکه سرعت ساخت اپليکيشن را افزايش دهد.

امکان استفاده از سورس کد بازي هاي موجود
تعداد زيادي کد بازي ها از جمله موتورهاي بازي متن باز و محتواي آزاد وجود دارند. براي شروع مي توانيد فهرست موجود بازي هاي متن باز در ويکيپديا را بررسي کنيد و از لينک منابع استفاده کنيد. البته همه ي بازي ها با سي پلاس پلاس نوشته نشده اند اما ابزارهاي موجود، فرصت ادغام و ترکيب کدها را براي توسعه دهندگان فراهم مي کنند.

مزيت هاي C++ نسبت به جاوا
جاوا زبان بي نقصي است اما براي توسعه ي اپليکيشن هاي اندرويد، سي پلاس پلاس برتري هايي نسبت به جاوا دارد. يکي از اين مزيت ها ميزان استفاده از حافظه ي کمتر است. سي پلاس پلاس به نوعي بچه ي زبان C است و بايد همه ي برنامه هاي نوشته شده با زبان C را کامپايل کند بنابراين شما مي توانيد از نرم افزارهاي C مجددا استفاده کنيد.

مسئله ي ديگر، سرعت است. اغلب ادعا مي شود که برنامه هاي جاوا با سرعت سي پلاس پلاس يا در بعضي موارد حتي سريع تر اجرا مي شوند. سورس کد جاوا به صورت بايت کد کامپايل شده و با فرمت فشرده ي jar. ذخيره مي شود. در هنگام اجرا، JVM بايت کد فايل jar. را بارگذاري کرده و آن را به زبان ماشين کامپايل مي کند (اين ويژگي JIT يا کامپايل در لحظه (Just-In-Time Compilation) نام دارد.)
سکان اکادمي