# Native Code > برنامه نویسی موبایل > Android Studio >  دو راهی سخت زندگی(جاوا یا بیسیک 4 اندروید)

## mohamedx6

بچه ها من تازه با بیسیک آشنا شدم واز طرفی هم با جاوا و ایکلیپس هم آشنا هستم حالا شما پیشنهادتون چیه؟ بیسیک یا جاوا؟
 من تو سرچ هایی که تو اینترنت زدم بیسیک خیلی غریب به نظر میاد تا نسبت به جاوا
 از جهاتی  از بیسیک خوشم میاد چون راحت تره و از جهاتی هم با جاوا حال میکنم(مخصوصا اون سیم کالن های آخر کد  ) توی طراحی ui  هم به خودی خود خیلی امکانات داره

 به نظرم جاوا آخر و عاقبتش بیشتر از بیسیک هستش
حالا پیشنهاد شما چیه؟
نیازمند یک مشاوره قوی هستم

----------


## dasssnj

با توجه به اینکه جاوا زبان اصلی برنامه نویسی اندروید هست و اینکه کد های بیسیک در آخر به جاوا تبدیل می شن و لایببری های متعددی که برای جاوا وجود داره  و پشتیبانی کامل گوگل از جاوا قطعا جاوا برای ساخت برنامه های بهتر و زیبا تر و حرفه ای تر بهتر است.
با بیسیک شاید بشه راحت کتاب ساخت ولی اگه بخوای چیز دیگه ای بسازی به دلیل کمبود منابع و کتاب و آموزش و ... نسبت به جاوا با مشکلات زیادی رو به رو میشی. 
با توجه به آموزش های موجود برای جاوا می تونم بگم از بیسیک خیلی هم راحت تره.
در آخر هم باید بگم بیسیک اصلا با جاوا قابل مقایسه نیست  !!!

----------


## Nevercom

جواب این سوال بیشتر از هرچیز بستگی داره به نیاز شما

اگر تمرکزتون روی برنامه نویسی اندروید هست و با بیسیک هم آشنایی چندانی ندارید که خب حاوا بهترین انتخاب هست

از طرفی Basic 4 Android یک محیط ساده برای توسعه ی برنامه های اندروید فراهم کرده که اگر از قبل با بیسیک آشنا باشید (و با جاوا خیر)، بهاون کمک میکنه در زمان کمتری برنامه های اندروید رو توسعه بدید، با توجه به رایگان نبودن B4A و عدم دسترسی به کتابخانه ها و فروم این برنامه در صورت نداشتن لایسنس، میتونه کمی براتون مشکل ساز بشه
اما همین شرکت درحال تکمیل ابزاری برای توسعه برنامه های iOS هست، معنیش اینه که شما با یاد گرفتن بیسیک و آشنایی با این محیط می تونید سریعتر برنامه های برای هر دو پلتفرم تولید کنید.

درنهایت همونطور که گفتم به نیاز شما بستگی داره. اما با کمی تلاش می تونید هردوی اینها رو با هم یاد بگیرید

----------


## mohamedx6

> جواب این سوال بیشتر از هرچیز بستگی داره به نیاز شما
> 
> اگر تمرکزتون روی برنامه نویسی اندروید هست و با بیسیک هم آشنایی چندانی ندارید که خب حاوا بهترین انتخاب هست
> 
> از طرفی Basic 4 Android یک محیط ساده برای توسعه ی برنامه های اندروید فراهم کرده که اگر از قبل با بیسیک آشنا باشید (و با جاوا خیر)، بهاون کمک میکنه در زمان کمتری برنامه های اندروید رو توسعه بدید، با توجه به رایگان نبودن B4A و عدم دسترسی به کتابخانه ها و فروم این برنامه در صورت نداشتن لایسنس، میتونه کمی براتون مشکل ساز بشه
> *اما همین شرکت درحال تکمیل ابزاری برای توسعه برنامه های iOS هست، معنیش اینه که شما با یاد گرفتن بیسیک و آشنایی با این محیط می تونید سریعتر برنامه های برای هر دو پلتفرم تولید کنید.*
> 
> درنهایت همونطور که گفتم به نیاز شما بستگی داره. اما با کمی تلاش می تونید هردوی اینها رو با هم یاد بگیرید


واقعا؟
اگه اینطوری باشه یک تیر و دو نشون میشه

----------


## mz6488

> واقعا؟
> اگه اینطوری باشه یک تیر و دو نشون میشه


به نظر من تمرکزت رو بذار روی یه نقطه.الان بازار آندروید خیلی داغ تر از ios هستش.من خودم واسه آندروید اولش رفتم سراغ جاوا بعد چند روز رفتم سراغ mono android ولی الان دوباره برگشتم سراغ جاوا.دلیل اصلیش هم وجود منابع بالا و رایگان بودنشه.لااقل خیالم از بابت کار راحته.بعدش هم گوگل جاوا رو پیشنهاد داده و دیگر زبان ها هر کدوم پروژه جدا هستن.خلاصه بگم برو سراغ جاوا.یه ذره شاید دردسرش بیشتر باشه ولی خیالت کاملا راحته

----------


## Nevercom

> واقعا؟
> اگه اینطوری باشه یک تیر و دو نشون میشه


این رو ببینید: http://www.basic4ppc.com/android/for...-thread.42166/

اگر نظر شخصی من هم براتون مهم هست، من با بیشتر روش های Cross-Platform موافق نیستم، بخصوص HTML5 که خیلی هم این روزها درموردش حرف میزنن و ادعا میشه که آینده ی موبایل هست.
من با Native Development موافق هستم، برای برنامه نویسی اندروید از جاوا استفاده بشه، برای iOS از Objective-C/Swift برای ویندوز فون از خانواده ی زبان های مایکروسافت....

این دیدگاه من البته برای یک شرکت تجاری چندان خوشایند نیست، شما اگر نیاز داشته باشید برای پلتفرم های مختلف اپلیکیشن رو منتشر کنید، اگر Native Development رو انتخاب کنید معنیش این هست که برای هر پلتفرم یک تیم نیاز دارید و بیشتر کدهاتون هم قابل اشتراک بین بقیه ی پلتفرم ها نیستن، این روش خیلی هزینه بر هست.
تا زمانی که من توسعه دهنده هستم تاکیدم بر روی Native Development هست، اما اگر روزی صاحب شرکتی شدم، شاید از روش های Cross-Platform استفاده کردم.

من البته مدت خیلی کوتاهی با B4A کار کردم و بعد به سمت جاوا روی آوردم. تجربه ی من البته متفاوت بود، حتی B4A رو دشوارتر از جاوا دیدم، در B4A مفهوم Lifecycle عوض شده و باید با اون مفهوم خاص آشنا بشید. در ایجاد Layout های پیچیده واقعاً محیط توسعه بر مبنای Java بهتر هست و خب منابع خیلی کمتری در اختیار شما هست.

پیشنهاد من برای هر شخصی که این سوال رو می پرسه اینه: اگر تجربه ی برنامه نویسی ندارید حتماً و قطعاً برید سمت جاوا. این ابزار ها برای افرادی هست که مثلاً برنامه نویس ویژوال بیسیک بودن و با تلاش خیلی کمی می تونن شروع کنن به برنامه نویسی اندروید.
ضمن اینکه توجه داشته باشید این ابزارها محدود هستن. شما برای گسترش توانایی هاش باید جاوا رو بلد باشید تا بتونید براش کتابخانه بنویسید و ازش در برنامه تون استفاده کنید.

حالا شما برای رسیدن به پاسخ سوالت از خودت بپرس می خوای به کجا برسی ؟
اگر مثلاً ۲۰ سالته و کلی زمان داری تا توانایی هات رو گسترش بدی و به درآمدزایی برسی، جاوا رو انتخاب کن و توش پیشرفت کن، اون وقت با صرف زمان اندکی می تونی #C رو یاد بگیری و بعدش هم یه مک بخری و برای سراغ iOS. یادت باشه وقتی برنامه نویسی رو یاد گرفتی و مفاهیمش رو درک کردی، زبان جدید چیزی فراتر از یه سینتکس جدید و پلتفرم جدید چیزی فراتر چندتا مفهوم و قانون جدید نیست. خودت رو می تونی بالا بکشی

اگر ایده ای در ذهنت داری و می خوای خیلی زود اپلیکیشن رو تولید کنی و به درآمدزایی برسی و برنامه نویسی بیشتر ابزاری هست برای رسیدن به خواسته ت (و نه لزوماً حرفه ت)، از این ابزارها می تونی استفاده کنی چون کمک می کنن سریعتر اپلیکیشن رو تولید کنی...

----------


## mohamedx6

تشکر ازهمه 
میرم سراغ جاوا(ضمنا زدی تو خال 20 سالمه)
لطفا تاپیک قفل بشه

----------


## moalla

سلام خدمت دوستان
تاپیک برای چند سال پیشه اما گفتم نظر خودم رو بگم چون یکسری مطالبی که گفته شده بعضا صحیح نیست. مثلا اونطوری که nevercom عزیز گفتن بیسیک فور اندروید html5 نیست. محدودیت نداره و در اون از همون کتابخونه های جاوا استفاده میشه و نکات دیگه....
در کل پیشنهاد میکنم این لینک رو هم از دست ندین: http://quicklearn.ir/%D8%A8%DB%8C%D8...7%D9%88%D8%A7/

برنامه برتر سال ۹۵ به اسم تکیه که در کافه بازار و اپل استور موجوده و نرم افزار برتر سال ۹۵ شناخته شد با بیسیک فور اندروید نوشته شده.

----------


## Nevercom

> سلام خدمت دوستان
> تاپیک برای چند سال پیشه اما گفتم نظر خودم رو بگم چون یکسری مطالبی که گفته شده بعضا صحیح نیست. مثلا اونطوری که nevercom عزیز گفتن بیسیک فور اندروید html5 نیست. محدودیت نداره و در اون از همون کتابخونه های جاوا استفاده میشه و نکات دیگه....
> در کل پیشنهاد میکنم این لینک رو هم از دست ندین: http://quicklearn.ir/%D8%A8%DB%8C%D8...7%D9%88%D8%A7/
> 
> برنامه برتر سال ۹۵ به اسم تکیه که در کافه بازار و اپل استور موجوده و نرم افزار برتر سال ۹۵ شناخته شد با بیسیک فور اندروید نوشته شده.


من کمی در جمله بندی اشتباه کردم، منظور من این بود که چندان با راه حل های مبتنی بر HTML5 که یکی از حالت های نوشتن برنامه های Cross Platform هست موافق نیستم (گرچه پیشرفت های زیادی در این بخش هم صورت گرفته تا به امروز)، منظور من این نبود که B4A بر پایه‌ی HTML5 هست.

گرچه با B4X کار نمی کنم، اما روند رشدش رو دنبال می کنم و همونطور که قبلاً هم گفتم، باور دارم که در بسیاری از موارد مفید خواهند بود، بخصوص در مرحله MVP و پیاده سازی سریع ایده. با توجه به اینکه این تکنولوژی بر پایه جاوا هست (گرچه شما درحالت عادی اثری ار جاوا نمی بینید)، بهش این امکان رو داده که در بستر های متفاوتی مثل اندروید، iOS، دسکتاپ و وب اجرا بشه که مزیت بزرگی هست. بیشتر از طریق بلاگ https://alwaysbusycorner.com/ این روند رو دنبال می کنم. پس قطعاً دانش کار با B4X یک دانش مفید و با ارزش هست.

اما نظرم هنوز به قوت خودش باقی هست، B4X محل خوبی برای سرمایه گذاری *بلند مدت* نیست، هنوز هم باور دارم برنامه نویس تازه وارد بهتره برای ورود به دنیای اندروید، از مسیر جاوا وارد بشه. این معنیش این نیست که B4X بد هست، بلکه منظور این هست که دانش پایه ای تر می‌تونه منجر به افزایش دانش در بخش های دیگه بصورت اصولی بشه. برنامه نویسی که به صورت خاص روی B4X سرمایه گذاری می کنه (از بعد دانش منظور هست) وقتی به در بسته ای می‌خوره، گرچه B4X راه رو براش باز کرده که از طریق جاوا امکانات رو اضافه کنه، اما واقعیت این هست که اون برنامه نویس توان انجام اینکار رو نخواهد داشت و روزی مجبور هست برای گذر از این موانع یا جاوا رو خوب یاد بگیره و یا اینکه کلاً از B4A کوچ کنه و مثلن بره به سمت SDK خود اندروید.

----------

