PDA

View Full Version : بهترین زبان برنامه نویسی برای ساخت اپلیکیشن اندروید و IOS



adel28
یک شنبه 12 شهریور 1396, 21:43 عصر
سلام دوستان

برای ساخت اپلیکیشن برای اندروید و IOS بهترین زبان برنامه نویسی برای این منظور چی هست؟
ایا با یک زبان برنامه نویسی، میشه هم برای اندروید و هم IOS نوشت؟

hharddy
دوشنبه 13 شهریور 1396, 12:29 عصر
بهترین زبان برای ساخت برنامه های اندروید و IOS زبان های رسمی خودشون هست, برای اندروید جاوا و Kotlin و برای iOS هم زبان swift
با استفاده از زامارین زبان C# و دیگر تکنولوژی ها میتونید برای هر دو پلتفرم برنامه تولید کنید که مزایا و معایب خودش و داره.

adel28
دوشنبه 13 شهریور 1396, 21:44 عصر
بهترین زبان برای ساخت برنامه های اندروید و IOS زبان های رسمی خودشون هست, برای اندروید جاوا و Kotlin و برای iOS هم زبان swift
با استفاده از زامارین زبان C#‎ و دیگر تکنولوژی ها میتونید برای هر دو پلتفرم برنامه تولید کنید که مزایا و معایب خودش و داره.

منظورم پلتفرمی که با تسلط به اون بشه هر دو رو به نحو قابل قبول و بدون محدودیت نوشت، هست.

با #C چه معایبی وجود داره؟

adel28
دوشنبه 13 شهریور 1396, 21:45 عصر
هدف از این کار هم این هست که یک سیستم یکپارچه که شامل وب سایت، اپلیکیشن (اندروید و IOS) و نرم افزار مدیریتی دسکتاپ برای ادمین ها هست می باشد.


با در نظر گرفتن این موضوع بنظرتون هر کدوم رو بصورت جداگانه با زبان های هر پلتفرم (مثلا اندروید رو با جاوا و IOS رو با Swift) پیاده سازی کنیم یا زبان برنامه نویسی یکپارچه ای برای این هدف وجود داره؟

Nevercom
سه شنبه 14 شهریور 1396, 18:04 عصر
نتیحه‌ی همه ی چیزهایی که پایین تر نوشته شده: هیچ فریم وورکی وجود نداره که بشه باهاش برنامه های کراس پلتفرم نوشت و محدودیتی هم (در مقایسه با Native هر پلتفرم) نداشته باشه، همه معایب و مزایایی دارن



برای برنامه نویسی کراس پلتفرم فریم وورک ها و ابزارهای متفاوتی وجود داره، که لزوماً هم محدود به Android و iOS نمیشن و ممکنه هر پنج سیستم عامل مطرح رو پشتیبانی کنن

مزیت استفاده از فریم وورک های کراس پلتفرم به اینه که Code Base مشترک داری و توسعه خیلی راحت تر هست، گرچه بعضی وقتا لازمه برای استفاده از امکانات خاص یک سیستم عامل که معادلی در سیستم عامل های دیگه نداره، قسمتی از کد رو مخصوص اون سیستم عامل بنویسی، پس معنیش این نیست که همون یک کد بدون هیچ تغییری رو همه‌ی سیستم عامل ها اجرا میشه، اما بسته به پروژه ممکنه این تغییرات خیلی اندک باشن و یا اونقدر زیاد باشن که Native بودن معنای بیشتری داره.

خودتون باید بررسی کنید، و بر اساس نیاز پروژه‌ی خودتون یکی از ابزارها رو انتخاب کنید

من ابزارها و فریم وورک‌هایی که میشناسم رو لیست می کنم:

Java


CodenameOne (https://www.codenameone.com/)
Tabris (http://developer.eclipsesource.com/tabris/)
Multi-OS Engine (https://multi-os-engine.org/)


++C


Qt (https://www.qt.io/mobile-app-development/)


Python

Kivi (https://kivy.org)


Basic

B4X (https://www.b4x.com/)
Xojo (https://www.xojo.com)


#C

Xamarin (https://www.xamarin.com/)


Web

Ionic Framework (https://ionicframework.com/)
Framework7 (https://framework7.io/)
Flutter (https://flutter.io/)
NativeScript (https://www.nativescript.org/)
React Native (https://facebook.github.io/react-native/)
WebAssembly (http://webassembly.org/)




نهایتاً شما باید اینا رو بررسی کنید و بر اساس ذات پروژه، انتخاب کنید. از بین اینها فریم وورک های Web Based آسانتر هستن و پتانسیل بیشتری برای فاجعه آفرینی دارن، چون خیلی راحت میشه کدهای بد نوشت و نوشتن کدهای High performance تخصص و تجربه‌ی بیشتری نیاز داره.
Qt و Xamarin اسم های شناخته شده ای هستند و احتمالاً نتیجه‌ی خوبی خواهند داد.

B4X هم رشد خیلی خوبی داشته و حداقل محصول B4A اون خیلی طرفدار داره (B4i به نسبت تازه هست)

Java هم که شعارش کراس پلتفرم بودنه و همین الان در وب و تمام سیستم عامل عای دسکتاپ حضور جدی داره، اگر از جاوا استفاده بشه، حتی اگر اون فریم وورک خاص برای وب و دسکتاپ ساپورتی نداشته باشه، خیلی از کتابخانه ها رو میشه مشترکاً استفاده کرد.

#C هم مثل جاوا در وب و ویندوز حضور خیلی جدی داره (گرجه در سایر سیستم عامل ها مثل لینوکس و ویندوز به اندازه ی جاوا نفوذ نداره)