یادگیری برنامه نویسی اندروید چقدر طول میکشد؟

برای توسعه برنامه های تلفن همراه، جاوا (JAVA) به عنوان یکی از بهترین زبان های برنامه نویسی موجود شناخته می شود. این زبان یکی از زبان های شئ گراست که در سال ۱۹۹۵ توسط شرکتSun Microsystem ساخته شد و طی ۲۰ سال عنوان برجسته ترین زبان برنامه نویسی را به خودش اختصاص داد.

زبان برنامه نویسی جاوا (پایه یادگیری برنامه نویسی اندروید) چطور کار می کند؟

در سایر زبان های کدینگ یا برنامه نویسی، کد ابتدا توسط یک کامپایلر به دستورالعمل ترجمه می شود؛ در حالی که در زبان جاوا به جای این کار اول کد به بایت کد تبدیل و بعد توسط نرم افزار JRE (Java Runtime Environment) تفسیر می شود.

چرا جاوا بهترین زبان برنامه نویسی است؟

جاوا به راحتی قابل یادگیری است. این زبان نحو روان و قابل فهمی مثل زبان انگلیسی دارد و کاراکترهای آن کمتر از بقیه زبان پیچیده و مرموز هستند. علاوه بر این جاوا دارای API غنی، تجزیه xml، اتصال پایگاه داده، شبکه و برنامه های کمکی است و تقریبا هر چیزی که یک برنامه نویس بخواهد را فراهم می کند. جاوا همچنین یک زبان متن باز است و به صورت رایگان در دسترس قرار دارد. Eclipse و Netbeans ابزارهای قدرتمندی هستند که به اسکریپت جاوا جان می بخشند.

تعامل گوشی های جاوا و اندروید

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

این برنامه ها تحت عنوان برنامه های بومی شناخته می شوند چون با استفاده از ابزارهای بومی و کتابخانه های اندروید و جاوا ساخته می شوند. علاوه بر این شما این امکان را هم دارید که به زبان دیگری کد گذاری کنید اما برای تبدیل آن به API به یک چارچوب نیاز دارید. برای اجرای فایل های برنامه نویسی، اندروید از JVM (JAVA Virtual Machine) استفاده نمی کند، بلکه در عوض DVM (Dalvik Virtual Machine) را به کار می گیرد که یک JVM واقعی نیست؛ بنابراین برای اینکه فایل ها اجرا شوند اول باید به فرمت DEX تبدیل شوند و بعد به قالب Android Package (APK) دربیایند.

جاوا تکنولوژی برنامه نویسی J2ME ( جاوا برای دستگاه های کوچک) را مختص نرم افزارهای موبایل طراحی کرده است. همه نرم افزارهای J2ME باید کلاس اصلی داشته باشند که از کلاسی ویژه به نام MIDlet (میدلت) مشتق شده‌ است. برنامه محیط اجرایی استاندارد جاوا برای این دستگاه ها با استفاده از نمایه اطلاعات دستگاه گوشی همراه(MIDP) و بسته پیکربندی انواع گوشی همراه (CLDC) ارائه می شود. برای نوشتن برنامه ها یا اپلیکیشن های J2ME، به پلت فرم دستگاه های کوچک SDK( بسته های توسعه‌ نرم افزار) و IDE نیاز دارید که می تواند محیط اکلیپس (Eclipse) یا نت ‌بینز (Netbeans) باشد. البته برای برنامه نویسی اندروید بایستی جاوا میدلت (JAVAmidlet) به برنامه های یا همان اَپ ‌های اندروید تبدیل شود و برای این منظور از ابزارهایی مانند J2 اندروید (J2Android) استفاده می شود. این ابزار قابلیت تبدیل هرنوع جاوا میدلت به اپلیکیشن های اندروید را دارد.

چالشی درمورد عملکرد جاوا و برنامه های آتی مطرح شده است اما جاوا پلت فرم زبان برنامه نویسی پرآتیه‌ مانند اسکالا (Scala) و کلوژور (Clojure) مبتنی بر JVM را ارائه داده است و با معرفی نسخه‌ جدید، بازدهی JAVA 7 هم بیشتر می شود.

در نتیجه، جاوا به دلیل راحتی و استفاده‌ تقریباً آسان بهترین گزینه برای توسعه دهندگان تلفن همراه است که بر روی برنامه های اندروید کار می کنند.

افرادی که با برنامه نویسی شیءگرا(OOPs) آشنا هستند

برنامه نویسی شیء‍‌گرا (OOPs) بخش لاینفک زبان برنامه نویسی جاوا است که مفاهیم کپسوله کردن، انتزاع، چند ریختی(پلی مورفیسم)، انتقال پیام و وراثت را شامل می شود. افرادی که دانش ‌پایه OOPرا دارند به راحتی و در کوتاه ترین بازه زمانی می توانند جاوا را یاد بگیرند (بین ۱ تا ۳ ماه) زیرا همه زبان های برنامه ریزی پیش نیازها‌ی یکسان دارند. درجاوا نحوه کد نویسی را آموخته اید و اکنون باید با چگونگی ساختن اشیاء در جاوا آشنا بشوید.

البته چه در خلال ساختن اشیاء و چه قبل از آن، درصورتی که زمان کافی داشته باشید بهتر است که در مورد ساختارهای داده‌ ها، الگوهای طراحی و همچنین چند ریسگی آموزش ببینید چرا که کدنویسی چالش واقعی نیست بلکه نوشتن کد کارآمد اصل کار است و یادگیری این موارد به شما کمک بزرگی خواهد کرد. جاوا آموزش های خوبی برای بعضی از کارها ارائه می‌دهد اما خواندن یک کتاب خوب هم در این زمینه موثر است. به شما پیشنهاد می‌کنم که کتاب « Head First Java » را بخوانید. علاوه بر این، از خواندن اسناد جاوا غافل نشوید، در شرکت های سان و اوراکل برای تهیه‌ این اسناد زحمت زیادی کشیده شده است.

افرادی که با برنامه نویسی شیءگرا(OOPs) آشنا نیستند

دلیل محبوبیت OOPs ارائه‌ مزایای مختلف برای طراحان برنامه و کاربران است. شیءگرایی به حل بسیاری از مشکلات مربوط به توسعه و کیفیت محصولات نرم افزاری کمک می کند. جاوا زبان برنامه نویسی شیء‌گرا است. نمی توانید برنامه جاوا را بدون سبک آن اجرا کنید. البته این کار در C++ زبان برنامه نویسی ساختار یافته، امکان‌پذیر است ( کامپایلر یا همگردان آن هنوز سبک C را ارائه می دهد). کتاب ‌ها و منابع آنلاین بیشماری وجود دارد که مدعی تدریس جاوا در ۲۱ روز هستند. لطفاً این چیزها را باور نکنید. شاید هنوز هم بشود که در ۲۱ روز نحو و دستورالعمل زبان را آموخت اما این مساله به معنای یادگیری خود زبان نیست. برای شما چیزی بین ۲ تا ۵ ماه زمان نیاز است.

اگر واقعاً می خواهید که این زبان را بفهمید حداقل به یک سال زمان نیاز دارید تا از فردی که هیچ دانشی ندارد تبدیل به فردی شوید که واقعاً می تواند کل برنامه را در جاوا بسازد. برای برنامه نویسی نرم افزار در جاوا نیازی به داشتن تخصص درزمینه‌ ریاضیات یا مهندسی نیست. در واقع سابقه‌ تحصیلی شما اینجا اهمیتی ندارد. چیزی که نیاز دارید کمی درک جامع، ذهن منطقی و عزم راسخ برای سخت کوشی و تلاش است. مهمترین عامل تعیین کننده‌ مدت زمان یادگیری این است که تا چه اندازه و مهمتر ازهمه تا چه حدو مرزی می خواهید جاوا را یاد بگیرید. اگر قصد دارید که جاوا را یاد یگیرید تا برنامه نویسی نرم افزار انجام بدهید یا برنامه مخصوص کامپیوتر بنویسید یا بازی طراحی کنید یا کارهای مختلفی انجام بدهید، بعد از یادگیری جاوا می توانید ازعهده‌ انجام این کارها بربیایید. یادگیری برنامه نویسی فراتر از یادگیری زبان است. بیایید اصول پایه جاوا را به بخش های مختلف تقسیم کنیم و مقدار زمان لازم برای یادگیری این زبان برنامه نویسی را برای فردی که هیچ نوع پیش زمینه علمی از OOPs ندارد را تخمین بزنیم.

  • یادگیری اصول پایه برنامه نویسی: این دانش را می توانید همه جا از یک ماه تا حداقل شش ماه کسب کنید (این دوره در دانشگاه برای دانشجوی رشته‌ کارشناسی یک ترم کامل طول می کشد). شما باید چند موضوع اصلی مانند نحوه ساخت لوپ را یاد بگیرید. شاید بشود بعداً هم این موضوع را یادگرفت اما توصیه می شود که اصول اولیه را از همان اول یاد بگیرید. ساختارهای لوپ ممکن است در ابتدا موجب سردرگمی شما بشوند پس بهتر است زودتر از آنها خلاص شوید و یادشان بگیرید. می توانید از کتاب ها یا برنامه های آموزشی مختلف برای یادگیری این ساختارها استفاده کنید. سپس برنامه جاوای خودتان را بنویسید و به کارتان ادامه بدهید.
  • هنر الگوریتم: در واقع این بخش به اشتباه و به شیوه‌ نادرست تعریف شده است. در ابتدا شاید دوست نداشته باشید که این بخش را یاد بگیرید اما باور کنید به محض شروع، یادگیری اش برای شما بسیار مفید خواهد بود. ویژگی ‌های اصولی مثل کپسوله کردن، وراثت، چند ریختگی و غیره را با دقت کامل مطالعه کنید. در یادگیری عجله نکنید بلکه سعی کنید آنها را در رویدادهای واقعی زندگی تان بکارببرید.
  • دستورزبان( نحو) زبان برنامه نویسی: نحو بخش تکراری برنامه نویسی است که باید برای یادگیری زبان ‌های متعدد اول اصول آن را یاد بگیرید. شما بایستی مفاهیمی مثل نحو، انواع داده‌ ها، ساختارهای دایرکتوری، کلاس‌های ضروری، برخی از مفاهیم خاص جاوا، چند‌ریسگی، I/O، و غیره را کاملاً درک کنید( ما اینجا فقط درمورد اصول پایه صحبت می‌کنیم چون مطالعه‌ عمیق این موضوعات به زمان زیادی نیاز دارد). این مفاهیم همیشه یکسان باقی می ‌مانند اما نحو زبان تغییر می کند. برای فردی که دو نکته‌ اصلی بالا را به خوبی آموخته است، یادگیری نحو زبان بسیار آسان خواهد بود. به نظرم دو هفته برای این کار کافیست. برای فردی که هیچ سابقه ای در برنامه نویسی ندارد احتمالا یادگیری جاوا ۹ ماه طول می کشد، یعنی: ۵+۳+۱ ماه برای یادگیری کامل و نوشتن برنامه های جاوا.

چند توصیه کاربردی که در مسیر یادگیری جاوا به شما کمک می کند

  • اصطلاحات جاوا را یاد بگیرید
  • با برنامه های ساده‌ی جاوا شروع به تمرین کنید ( نه فقط برنامه « hello world program »، بلکه باید با برنامه های الگویی و پروژه‌های کوچک شروع کنید)
  • به منفی بافی های اطرافیانتان توجه نکنید
  • یادتان باشد یادگیری جاوا فقط با تمرین کردن اتفاق می افتد
  • برنامه نویسی را بطور عملی یاد بگیرید
  • مدرک یا گواهینامه‌ جاوا بگیرید

کلام آخر

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

دیدگاه‌ خود را بنویسید

نشانی ایمیل شما منتشر نخواهد شد.