هر ساله کنفرانس معروف گوگل باعث میشود تا برنامه نویسان اندورید برای توسعه ی برنامه هایشان بروزرسانی شوند. از ایده های جذاب در کنفرانس اخیر گوگل که بسیار جذاب بود، می توان به روش های کدنویسی مدرن اشاره نمود. مدرن در اینجا به معنای بهتر، سریعتر و ساده تر می باشد   . همچنین برای یادگیری برنامه نویسی در اندروید می توانید در دوره آموزش اندروید مشهد ثبت نام کنید.

در کنفرانس اخیر گوگل صحبت از ابزارهای جدید برای ردیابی و حافظه، نگاه کوتاه به کتابخانه Kotlin و KTX، و نکاتی برای لایه بندی ها ، کامپوننت Jetpack ،  چرخه عمر ،  بهترین نمونه های برنامه نویسی و رویکردهای جدید معماری بود.

ساخت اپلیکیشن اندروید

Kotlin

در حال حاضر، شما دیگر نیاز نیست تا overload های چندگانه از متدها را به طور مداوم بسازید. Koltin توانایی گسترش یک تابع جدید با قابلیت عدم ارث بری از کلاس یا هر نوع الگوی طراحی مانند Decorator را فراهم میکند. این کار از طریق declaration های خاص به نام افزونه یا extension انجام میشود. جهت یادگیری برنامه نویسی آموزشگاه برنامه نویسی در مشهد شامل دوره های تخصصی در این زمینه می باشد.

یکی از جذاب ترین جملات شنوندگان در این باره این بود

“بخاطر تنبلی ما در حال حاضر به koltin رسیده ایم”

گوگل مجموعه ای از افزونه ها را برای توسعه دهندگان برنامه های اندروید ارائه داده است که به نظر می رسد بسیار جالب باشد. یکی از نمونه های این کتابخانه، readme می باشد.

باید KTX را به dependency هایتان اضافه کنید و پکیج های مناسب را به فایل های پروژه اضافه وارد کنید.

سبک کد نویسی koltin

برای کدنویسی باید چند نکته را مدنظر داشته باشید. mNames که در اسناد کدنویسی جاوا استفاده میشوند، در koltin مورد نیاز نیستند و این بخاطر سخت بودن شیوه ی استفاده از آن می باشد.

لایه بندی

چند نکته ی ساده در این باره معرفی شده است که برای لایه بندی مورد استفاده قرار میگیرد:

LinearLayout: برای مثال های ساده استفاده میشود

FrameLayout: زمانیکه شما تنها یک دید یا view در Activity UI دارید و نیازی به مدیریت پیشرفته لایه نیست، بنابراین، تمام چیزی که در این شرایط لازم داریم، تنظیم کردن pad برای view می باشد.

 GridLayout  برای حفظ و نگهداری سخت و غیرقابل انعطاف است

توصیه میشود از ConstraintLayout به جای RelativeLayout استفاده کنید. به قول سخنران این بخش:

ConstraintLayout همان RelativeLayout می باشد که کار میکند!!

اندروید jetpack

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

برش یا slice

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

ساخت اپلیکیشن اندروید

Navigation

ناوبری یا navigation یکی از قطعات جدید برای ساخت رابط کاربری در برنامه ها می باشد. فرآیند پیاده سازی ناوبری در برنامه های اندروید ساده است و پیچیدگی FragmentTransaction را برای شما ساده می کند و این در حالیست که تمام مزایای components Architecture مانند viewmodel و lifecycle را دریافت خواهید کرد.

ساخت اپلیکیشن اندروید

Navigation editor به شما این امکان را میدهد تا ناوبری ها را مشاهده و مدیریت کنید. این برای ساخت برنامه ها با ساختار one-activity موثر می باشد. رویکرد جدید این است که هر زمان که بخواهید از ساختارهای تک فعالیتی یا one-activity استفاده کنید. به عبارت دیگر، تجربه ی غنی تری را برای کاربر مخصوصا در استفاده از قطعات انیمیشنی فراهم میکند. این بخش از کتابخانه در فاز تست الفا می باشد، بنابراین، ممکن است تا ارائه به عنوان نسخه ی پایدار کمی طول بکشد.

قطعات یا Fragment

قطعات یا Fragment در بسیاری از مواقع به عنوان بخش جزئی از برنامه نویسی در نظر گرفته میشود که بروزرسانی میشوند. API پلت فرم هسته در حال حاضر دیگر منسوخ شده و از نسخه ی کتابخانه ی پشتیبانی یا نسخه ی Jetpack  اندورید استفاده میشود.

معماری

سوال: چطور باید برنامه ی اندروید را طراحی کنم؟ چه نوع MVC باید استفاده کنم؟

جواب این است که ما، شما نیستیم و نمی دانیم که برنامه ی شما چطور کار میکند و نمی توانیم بگوییم که بهترین معماری برای شما چیست و این شما هستید که باید تصمیم بگیرید. البته به این معنی نیست که ما نمی توانیم نکاتی را درباره ی معماری مناسب برای یک برنامه با سناریوهای مختلف معرفی نکنیم

صفحه بندی داده

این کتابخانه در واقع یک کمک کننده برای چرخه حیات می باشد که بارگیری تدریجی داده ها را آسان تر می کند. علاوه براین، کتابخانه کمک میکند (از طریق livedata و RXJava2) برنامه را مشاهده و یا زیرمجموعه ی معقول از داده هایتان را ارائه می دهد. این روش به شما اجازه می دهد تا برنامه های هوشمندانه ای را ایجاد  کنید به طوریکه در هنگام بروزرسانی نیز به اطلاعات ورودی کاربران پاسخ دهند. این کتابخانه با کتابخانه ی room ادغام شده است. جهت شرکت در دوره های آموزش برنامه نویسی و طراحی سایت  می توانید به سایت آکادمی برنامه نویسان مشهد مراجعه نمایید.