برنامه نویسی جاوا در اندروید

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

در این مجموعه آموزشی با زبان برنامه نویسی جاوا که برای توسعه اپلیکیشن های اندروید استفاده می شود برنامه نویسی جاوا در اندروید آشنا می شوید. هدف ما این است که همه کسانی را که قبلاً با یک زبان برنامه نویسی مانند PHP یا Objective-C آشنا هستند آماده کنیم تا با زبان برنامه نویسی جاوا راحت تر شوند و وارد توسعه برنامه های اندروید شوند. در این آموزش، آشنایی مختصری با اصول جاوا از جمله برنامه نویسی شی گرا، وراثت و غیره خواهید داشت. اگر جاوا برای شما جدید است یا فقط به دنبال کشف جزئیات هستید، پس این آموزش برای شما مناسب است!

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

برنامه نویسی جاوا در اندروید

آنچه شما نیاز خواهید داشت.از نظر فنی، برای تکمیل این آموزش به هیچ ابزاری برنامه نویسی جاوا در اندروید نیاز ندارید، اما قطعا برای توسعه برنامه های اندروید به آن ها نیاز دارید.برای توسعه برنامه های اندروید (یا هر برنامه جاوا)، به یک محیط توسعه برای نوشتن و ساخت برنامه ها نیاز دارید. Eclipse یک محیط توسعه (IDE) بسیار محبوب برای جاوا است و IDE ترجیحی برای توسعه اندروید است. این به صورت رایگان برای سیستم عامل های ویندوز، مک و لینوکس در دسترس است.

برای دستورالعمل‌های کامل در مورد نحوه نصب Eclipse (از جمله نسخه‌های پشتیبانی‌شده) و Android SDK، به برنامه نویسی جاوا در اندروید وب‌سایت Android Developers مراجعه کنید.جاوا چیست؟برنامه های اندروید هنوز از زبان جاوا استفاده می کنند. در حال حاضر، این واقعا تنها گزینه شما برای برنامه های بومی است. جاوا یک زبان برنامه نویسی بسیار محبوب است که توسط Sun Microsystems (که اکنون متعلق به اوراکل است) توسعه یافته است.

پیشنهاد می کنیم به مشاهده مقاله فواید زبان جاوا برای اندروید بپردازید.

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

ماشین های مجازی شی گرا است Android به شدت به مبانی جاوا متکی است Android SDK شامل بسیاری برنامه نویسی جاوا در اندروید از کتابخانه‌های استاندارد جاوا (کتابخانه‌های ساختار داده، کتابخانه‌های ریاضی، کتابخانه‌های شبکه و هر چیز دیگری که ممکن است بخواهید) و همچنین تعدادی کتابخانه خاص اندرویدی را شامل می‌شود که به شما در توسعه برنامه‌های اندروید عالی کمک می‌کند. چرا یادگیری جاوا آسان است؟یادگیری جاوا به دلایل مختلفی آسان است.

مطمئناً هیچ کمبودی در منابع جاوا برای کمک به یادگیری زبان وجود ندارد، از جمله وب سایت ها، آموزش ها، کتاب ها برنامه نویسی جاوا در اندروید و کلاس ها. جاوا یکی از رایج ترین زبان های برنامه نویسی مورد بحث، آموزش و استفاده در این سیاره است. برای بسیاری از انواع مختلف پروژه های برنامه نویسی، صرف نظر از مقیاس آنها، از برنامه های کاربردی اینترنتی گرفته تا برنامه های رایانه شخصی و تلفن همراه استفاده می شود.اگر از یک پایه برنامه نویسی سنتی مانند C یا C++ حرکت می کنید، نحو جاوا را بسیار شبیه به هم خواهید دید.

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

اگر فقط کد را با صدای بلند بخوانید، تقریباً می توانید بگویید که آن قطعه کد چه کار می کند. یک برنامه نویسی جاوا در اندروید متغیر تک حرفی به نام “شخصیت” وجود دارد. اگر متغیر “character” برابر با حرف a باشد، کاری انجام می دهیم (متد ()doSomething را فراخوانی می کنیم، در غیر این صورت کار دیگری را انجام می دهیم (متد doSomethingElse()).چرا استقلال سکو مهم است؟مانند بسیاری از زبان های برنامه نویسی، شما باید از یک کامپایلر برای کاهش کد به زبان ماشینی استفاده کنید که مصنوع می تواند آن را درک کند.

پیشنهاد می کنیم به مشاهده مقاله جاوا در اندروید بپردازید.

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

چگونه یک CPU فیزیکی می تواند روی کد ماشین کار کند تا در واقع کد کامپایل شده را اجرا کند. اگرچه این برنامه نویسی جاوا در اندروید ممکن است ناکارآمد به نظر برسد، اما تلاش زیادی برای انجام این فرآیند بسیار سریع و کارآمد انجام شده است. این تلاش‌ها نتیجه داده است زیرا عملکرد کلی جاوا در مقایسه عملکرد زبان رایج پس از C/C++ در رتبه دوم قرار دارد.

برنامه های اندروید روی یک ماشین مجازی مخصوص به نام Dalvik VM اجرا می شوند. برنامه نویسی جاوا در اندروید اگرچه جزئیات این VM برای توسعه دهندگان عادی مهم نیست، اما فکر کردن به Dalvik VM به عنوان حبابی که برنامه اندروید شما در آن اجرا می شود می تواند مفید باشد و به شما این امکان را می دهد که نگران نباشید که آیا دستگاه موتورولا دروید است یا خیر. ، HTC Evo یا جدیدترین توستر دارای اندروید. برای شما مهم نیست که آیا دستگاه از VM های Dalvik پشتیبانی می کند، و این وظیفه سازنده دستگاه است که آن را پیاده سازی کند، نه شما.

چرا جاوا ایمن است؟بیایید این ایده حباب را کمی جلوتر ببریم. از آنجا که برنامه های جاوا در داخل برنامه نویسی جاوا در اندروید حباب که یک ماشین مجازی است اجرا می شوند، از سخت افزار دستگاه زیرین جدا می شوند. بنابراین، یک ماشین مجازی می‌تواند در مقایسه با زبان‌هایی که مستقیماً روی کد ماشین کار می‌کنند، اجرای کد را محصور، حاوی و مدیریت کند. پلتفرم اندروید همه چیز را یک قدم جلوتر می برد. هر برنامه اندروید بر روی سیستم عامل (بر اساس لینوکس) با استفاده از حساب کاربری متفاوت و در نمونه خودش از Dalvik VM اجرا می شود.

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

این بدان معناست که شما، توسعه دهنده، باید پروژه های اندروید خود را کامپایل کرده و آنها را برای استقرار برنامه نویسی جاوا در اندروید در دستگاه ها بسته بندی کنید. محیط توسعه Eclipse (که با افزونه توسعه اندروید استفاده می شود) این کار را بسیار بی دردسر می کند. در Eclipse، کامپایل خودکار معمولاً به طور پیش فرض روشن است. این بدان معناست که هر بار که یک فایل پروژه را ذخیره می کنید، Eclipse تغییرات را برای بسته برنامه شما دوباره کامپایل می کند. بلافاصله خطاهای کامپایل را مشاهده خواهید کرد.

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

پیشنهاد می کنیم به مشاهده مقاله برنامه جاوا برای اندروید بپردازید.

در Eclipse، تنظیمات ساخت را در منوی پروژه پیدا خواهید کرد. اگر «ساخت خودکار» را فعال کرده‌اید، همچنان برنامه نویسی جاوا در اندروید می‌توانید گزینه «پاک کردن…» را انتخاب کنید که به شما امکان می‌دهد تمام فایل‌ها را بازسازی کنید. اگر «ساخت خودکار» غیرفعال باشد، گزینه‌های منوی «ساخت همه» و «ساخت پروژه» فعال می‌شوند. “Build All” به معنای ساخت همه پروژه ها در فضای کاری است. شما می توانید پروژه های زیادی را در یک فضای کاری Eclipse داشته باشید.

فرآیند کامپایل، برای پروژه های معمولی جاوا، منجر به فایلی با پسوند JAR – Java ARchive می شود. برنامه‌های Android فایل‌های JAR را برنامه نویسی جاوا در اندروید می‌گیرند و آنها را برای استقرار در دستگاه‌ها به‌عنوان فایل‌های Android PackKage با پسوند apk. بسته بندی می‌کنند. این قالب‌ها نه تنها شامل کد جاوا کامپایل‌شده، بلکه منابع دیگری مانند رشته‌ها، تصاویر یا فایل‌های صوتی که برنامه شما برای اجرا به آن نیاز دارد، و همچنین فایل مانیفست برنامه، AndroidManifest.xml می‌شود.

فایل مانیفست اندروید یک فایل مورد نیاز همه برنامه های اندروید است که برای تعریف جزئیات برنامه نویسی جاوا در اندروید پیکربندی برنامه استفاده می شود. زبان برنامه نویسی شی گرا چیست؟باشه. زمان برای یک مرور بسیار کوتاه و 20000 فوت برنامه نویسی شی گرا (OOP) است. OOP یک سبک یا تکنیک برنامه نویسی است که بر اساس تعریف ساختار داده ای به نام اشیاء است. برای کسانی که تازه وارد OOP شده اند، یک شی را می توان بسیار شبیه یک نوع داده سفارشی در نظر گرفت.

به عنوان مثال، ممکن است یک شی Dog داشته باشید که نشان دهنده مدل یک سگ عمومی با نام، نژاد و جنسیت برنامه نویسی جاوا در اندروید است. سپس می توانید نمونه های مختلفی از شی Dog برای نمایش سگ های خاص ایجاد کنید. هر شی Dog باید با فراخوانی سازنده آن ایجاد شود (روشی که همان نام خود شیء است).به، و ممکن است پارامترهایی برای تنظیم مقادیر اولیه داشته باشد یا نداشته باشد). به عنوان مثال، اشیاء Dog زیر از یک سازنده با سه پارامتر (نام، نژاد، جنسیت) استفاده می کنند.

پس این شی سگ کجا تعریف شده است؟ خوب، در اینجا باید شروع به برنامه نویسی جاوا در اندروید تعریف برخی از اجزای اساسی زبان برنامه نویسی جاوا کنیم. یک کلاس برای یک شی تعریف ارائه می کند. بنابراین یک کلاس سگ در جایی وجود دارد، یا توسط شما تعریف شده است یا در کتابخانه ای در جایی. به طور کلی، یک کلاس در فایل خودش تعریف می‌شود و نام فایل مربوط به نام کلاس (مثلا Dog.java) است. استثناهایی برای این قانون وجود دارد، مانند کلاس هایی که در کلاس های دیگر تعریف می شوند.

(زمانی که یک کلاس در یک کلاس اعلان می شود، به طور کلی برای استفاده در کلاس اصلی فقط به عنوان یک برنامه نویسی جاوا در اندروید کلاس کمکی تعریف می شود و کلاس داخلی نامیده می شود).هنگامی که می خواهید به یک شی از یک کلاس دیگر ارجاع دهید، باید یک دستور import در بالای فایل کلاس خود قرار دهید، همانطور که از دستور #include در یک زبان کامپایل شده مانند C استفاده می کنید.یک کلاس معمولاً داده ها و رفتار یک شی را توصیف می کند. رفتار با متدهای کلاس تعریف می شود.

Method اصطلاح رایج برای یک زیربرنامه در یک زبان OOP است. بسیاری از کلاس‌های شی رایج در کتابخانه‌های برنامه نویسی جاوا در اندروید کلاس مشترک مانند کیت‌های توسعه نرم‌افزار (SDK) تعریف می‌شوند، در حالی که سایر کلاس‌ها توسط شما، توسعه‌دهنده، برای اهداف خودتان تعریف می‌شوند. سپس نرم افزار با استفاده و دستکاری نمونه های شی به روش های مختلف ساخته می شود.توجه داشته باشید که این یک تعریف بسیار کلی از OOP است. کتاب های کاملی در این زمینه نوشته شده است.

اگر می خواهید درباره OOP بیشتر بدانید، در اینجا منابعی وجود دارد که ممکن است بخواهید آنها را بررسی برنامه نویسی جاوا در اندروید کنید:ویکی پدیا نمای کلی خوبی از OOP داردآموزش Sun Java در جاوا آموزش جاوا در اوراکل توجه: ما در این آموزش از اصطلاحات مختلفی استفاده می کنیم. چندین راه برای ارجاع به یک مفهوم معین وجود دارد (مثلاً کلاس سوپرکلاس در مقابل کلاس والد)، که برای کسانی که تازه به برنامه نویسی شی گرا هستند گیج کننده است.

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

این مفهوم به بهترین وجه با مثال نشان داده می شود. فرض کنید ما در حال توسعه یک برنامه جاوا برای شبیه سازی برنامه نویسی جاوا در اندروید یک آکواریوم هستیم. این آکواریوم مقداری ماهی در خود دارد. بنابراین، می‌توانیم کلاسی را برای نمایش ماهی تعریف کنیم. این کلاس که Fish نامیده می شود، ممکن است شامل برخی از فیلدهای داده (که ویژگی ها یا متغیرهای عضو کلاس نیز نامیده می شود) برای توصیف یک شی ماهی باشد: گونه، رنگ، و اندازه. و همچنین بخشی از رفتار آن به شکل متدهایی (که در زبان‌های رویه‌ای زیرروال یا توابع نیز نامیده می‌شود).

نوع خاصی از متد، به نام سازنده، برای ایجاد و مقداردهی اولیه یک شی استفاده می شود. سازنده ها همان برنامه نویسی جاوا در اندروید نام کلاس خود را دارند و می توانند شامل پارامترها باشند. کلاس Fish زیر دو سازنده دارد: یکی برای ایجاد یک شی Fish عمومی و دیگری برای ساختن یک شی Fish خاص با برخی داده های اولیه. همچنین خواهید دید که کلاس ماهی دارای دو روش غذا خوردن است (یکی) برای خوردن چیزی تصادفی و یکی برای خوردن ماهی دیگر، که با مثال دیگری از کلاس ماهی نشان داده می شود.

برنامه نویسی جاوا در اندروید رایگان

 

کلاس ها را می توان به صورت سلسله مراتبی سازماندهی کرد، که در آن یک کلاس (یا زیر کلاس) مشتق برنامه نویسی جاوا در اندروید شده تمام ویژگی های کلاس اصلی (یا سوپرکلاس) خود را شامل می شود، اما برای تعریف یک شی خاص تر با استفاده از کلمه کلیدی extensions، آن را اصلاح می کند و به آن اضافه می کند. به این می گویند وراثت.به عنوان مثال، کلاس Fish می تواند دو زیر کلاس داشته باشد: reshwaterFish و SaltwaterFish. این زیر کلاس‌ها تمام ویژگی‌های کلاس Fish را دارند، اما می‌توانند اشیاء را از طریق ویژگی‌ها و رفتارهای جدید یا رفتارهای تغییر یافته کلاس ماهی والد سفارشی‌سازی کنند.

به عنوان مثال، کلاس FreshwaterFish می تواند شامل اطلاعاتی در مورد نوع محیط آب شیرین برنامه نویسی جاوا در اندروید تجربه شده (به عنوان مثال، رودخانه، دریاچه، برکه، یا گودال) باشد. به طور مشابه، کلاس SaltwaterFish می‌تواند متد MakeBabyFish() را به گونه‌ای سفارشی کند که ماهی جفت خود را پس از تفریخ (همانطور که در سوپرکلاس تعریف شده است) با استفاده از مکانیسم override بخورد،سازماندهی رفتار شی با رابط ها در جاوا، شما می توانید رفتارهای شیء را در آنچه که رابط نامیده می شود سازماندهی کنید.

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

سازماندهی کلاس ها و رابط ها با بسته ها سلسله مراتب طبقات، مانند کلاس های ماهی، می تواند در بسته برنامه نویسی جاوا در اندروید ها سازماندهی شود. یک بسته به سادگی مجموعه ای از کلاس ها و رابط ها است که در کنار هم قرار گرفته اند. توسعه دهندگان از فضاهای نام برای نامگذاری منحصر به فرد بسته ها استفاده می کنند. به عنوان مثال، می‌توانیم از com.mamlambo.aquarium یا com.ourclient.project.subproject به عنوان نام بسته خود برای پیگیری کلاس‌های مرتبط با ماهی خود استفاده کنیم.

پایان یافتن
وووووو شما به تازگی یک دوره خرابی در جاوا برای توسعه اندروید گذرانده اید. ما در اینجا مقدار بسیار برنامه نویسی جاوا در اندروید زیادی از مطالب را پوشش داده‌ایم، بنابراین قبل از رفتن به درس بعدی در این مجموعه آموزشی، بگذارید اوضاع کمی آرام شود. در درس 2، ما تمرکز خود را به اصول نحو جاوا معطوف کردیم.شما فقط سطح توسعه جاوا را برای توسعه اندروید خراشیده اید. تمام آموزش های عالی دیگر در Mobiletuts+ را بررسی کنید تا عمیق تر به توسعه جاوا و اندروید بپردازید. موفق باشید!

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

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