آموزش برنامه نویسی اندروید استودیو

آموزش جاوا برای اندروید: معرفی جاوا

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

شروع کنیم

در این سری آموزشی ما تصمیم نداریم برنامه نویسی را به شما بیاموزیم! پیش نیاز این سری آموزشی این است که شما حداقل با یکی از زبان‌های برنامه نویسی نظیر PHP، ویژوال بیسیک، C ++ یا .. ) آشنا باشید ولی چیزی از جاوا ندانید. ما به شما چگونه برنامه نویسی کردن را آموزش نمی‌دهیم در عوض مثال‌های واضح و رایج از جاوا را می‌آوریم تا با ساختار و اصول جاوا آشنا شوید تا در برنامه نویسی‌های اندرویدتان بتوانید آن‌ها را به کار بگیرید.

آنچه نیاز دارید

برای توسعه‌ی برنامه‌های اندروید (یا هر برنامه‌ی جاوای دیگر) به یک IDE یا «محیط یکپارچه توسعه » برای نوشتن و ساخت برنامه‌هایتان نیاز دارید. در گذشته Eclipse بدین منظور محبوبیت داشت و با ارائه‌ی Android Studio این برنامه محبوبیت زیادی پیدا کرد.
برای نحوه‌ی دانلود و نصب این برنامه این مطلب را بخوانید.

جاوا چیست؟

برنامه‌های اندروید معمولا توسط زبان برنامه نویسی جاوا توسعه داده می‌شوند.

جاوا یک زبان برنامه‌نویسیِ شیء گرا است و مستقل از پلتفرم است که نخستین‌بار در سال 1990 توسط جیمز گاسلینگ در شرکت سان‌مایکروسیستمز ایجاد شد.
جاوا شبیه به سی‌پلاس‌پلاس است، اما مدل شیءگرایی آسان‌تری نسبت به آن دارد و از قابلیت‌های سطح پایین کمتری پشتیبانی می‌کند. یکی از قابلیت‌های بنیادین جاوا این است که مدیریت حافظه را به‌طور خودکار انجام می‌دهد. برنامه‌های جاوا به صورت بایت کد می‌شوند و توسط ماشین مجازی جاوا (JVM) به کدهای ماشین تبدیل شده و اجرا می‌شوند. در صورت وجود JVM، برنامه‌های نوشته شده به زبان جاوا بر روی هر نوع سیستم عامل و هرگونه وسیله‌ی الکترونیکی قابل اجرا می‌باشند.
کتابخانه‌های قدرتمندی در زبان جاوا وجود دارد که با استتفاده از آن‌ها سرعت توسعه‌ی برنامه‌ها بسیار افزایش می‌یابد. در اندروید SDKها حاوی این کتابخانه‌ها هستند.

برخی از ویژگی‌های مهم جاوا عبارتند از:

  • آسان برای فهمیدن و یادگیری
  • امن و مستقل از پلتفرم است و به کمک ماشین مجازی بر روی هر دستگاهی قابل اجرا است.
  • شیء گرا است

چرا جاوا برای یادگیری آسان است؟

جاوا یکی از بهترین زبان‌ها از جهت آسان خوانی است. به عنوان مثال حتی شخصی که هیچ تجربه‌ای در کدنویسی نداشته هم می تواند هدف و نتیجه‌ی خطوط زیر را درک کند:

فایل اندروید چگونه است؟

پروژه‌های جاوا با پسوند JAR که حروف اول Java ARchive هستند تولید می‌شوند. برنامه‌های اندرویدی فایل‌های JAR را گرفته و آن‌ها را به عنوان بسته‌ی اندروید (Android PacKage) پکیج می‌کند. این فرمت تنها کدهای جاوا را شامل نمی‌شود، بلکه تمام منابع نظیر رشته‌ها، تصاویر، صداها و فایل‌های ضروری برنامه نظیر فایل Manifest.xml را هم شامل می‌شود. وجود فایل Manifest در تمام برنامه‌ها ضروری است؛ این فایل وظیفه‌ی تعریف پیکربندی جزئیات برنامه را برعهده دارد.

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

خب. زبان برنامه نویسی شی گرا یا oriented programming که به اختصار OOP گفته می‌شود یک شیوه برنامه‌نویسی است که ساختار یا بلوک‌های اصلی آن، شی‌ها هستند. در واقع در این تکنیک برنامه‌نویسی، برنامه به «شی» گرایش پیدا می‌کند. به این معنا که داده‌ها و توابع تا حد امکان در قالبی به نام شی قرار گرفته، جمع‌بندی شده و یک واحد (شی) را تشکیل داده‌اند و نسبت به محیط بیرونِ خود، کپسوله می‌شوند و از این طریق، توابع بیگانهٔ خارج از آن شی، دیگر امکان ایجاد تغییر در داده‌های درون آن شی را ندارند. به این ترتیب اصل استقلال اجزا شکل گرفته و برنامه‌نویسی ساده‌تر و امن‌تر و قابلیت استفاده‌ی مجدد از کدها و اشیا بیشتر می گردد.

برای مثال یک شی سگ داریم که دارای سه مشخصه‌ی نام، نژاد و جنسیت است. این شی می‌تواند دارای نمونه‌های مختلفی باشد. هر شی (object) در ابتدا یک سازنده (constructor) ایجاد می‌کند. این سازنده یک متد هم‌نام با نام خود شی (یا همان نام کلاس) است که می‌تواند پارامتری را به عنوان ورودی بپذیرد یا نه. در صورتی که سازنده را به صورت دستی ایجاد نکنیم، به صورت خودکار ایجاد می‌شود. در ادامه با سازنده، متد و پارامتر بیشتر آشنا می‌شوید.
در این مثال شی سگ از سازنده‌ای با 3 پارامتر استفاده می‌کند:

خب شی سگ کجا تعریف شده؟! حالا نوبت به مطرح کردن مفاهیم پایه‌ای جاوا رسیده. ما در جاوا توسط کلاس، شی را تعریف می کنیم. بنابراین در این مثال ما باید یک کلاس dog بسازیم و یا از کلاس dog موجود در کتابخانه‌ها استفاده کنیم. معمولا یک کلاس درون فایلی همنام با نام کلاس ایجاد می‌شود. در این مثال کلاس dog را درون فایل Dog.java تعریف می‌کنیم. در مورد استثناها در ادامه صحبت خواهیم کرد.
کلاس داده‌ها و رفتار یک شی را تعریف می‌کند. رفتار شی با متدهای درون کلاس ایجاد می‌شود. استفاده ازمتد در زبانهای شیوه‌ای مرسوم است.