SQLite
SQLite:
SQLite یک دیتابیس ارتباطای تخفیفیافته میباشد که به طور پیشفرض در اندروید جایدارد. برای استعمال از SQLite در اندروید، می توانید از کلاس SQLiteOpenHelper و SQLiteDatabase به کار گیری طراحی اپلیکیشن در مشهد نمایید. این طرز مطلوب اپلیکیشنهای خرد و معمولی میباشد.
روند به کارگیری از SQLite:
ایجاد کرد یک Helper Class:
این کلاس مسئول ایجاد کرد و ارتقا دیتابیس میباشد.
تعریفوتمجید Model Class:
یک کلاس برای اکران دادههایی که میخواهید در دیتابیس ذخیره نمائید.
اجرای عملیات CRUD (Create, Read, Update, Delete):
استعمال از SQL Query برای اضافه کردن، اخذ، بهروزرسانی و حذف دادهها.
۲. Room:
Room یک کتابخانهای از Android Architecture Components میباشد که بر شالوده SQLite تولید گردیده و آسانالوصولتر و قابل به کار گیریخیس میباشد. این کتابخانه از خصوصیتهایی مانند کوئریهای خود کار، Type Converters و LiveData برای ارتقا همت و تسهیل به کارگیری به کار گیری مینماید.
فرایند استعمال از Room:
تعریف و تمجید Entity:
یک کلاس برای اکران جدول دیتابیس.
ایجاد کرد DAO (Data Access Object):
این کلاس اسلوبهایی برای اجرا عملیات CRUD در دیتابیس ارائه میدهد.
ایجاد کرد Database:
تعریف و تمجید یک کلاس که از RoomDatabase ارثبری نماید و دربرگیرنده تک تک DAOهای مایحتاج باشد.
به کارگیری از ViewModel:
تولید یک ViewModel برای خودداری از اتصال بدون واسطه در میان UI و دیتابیس.
مزایا Room نسبت به SQLite:
شغل با Room بی آلایشخیس میباشد و به اشخاص جدید وارد هم قابلیت و امکان به کار گیری را می دهد.
استعمال از LiveData برای اگاهیرسانی به UI درخصوص تغییرات در دیتابیس.
Queryهای اتوماتیک که از جزئیات رئیس دیتابیس برخوردارند.
نکته حائض اهمیت:
برای دیتابیسهای بلندمرتبهخیس یا این که بغرنجخیس، معمولاً از Room تحت عنوان یک چاره خوب معرفی میگردد. ولی برای پروژههای خرد و معمولی، SQLite همچنان یک مورد سنجیده میباشد.
۹- نهمی مرحله در نقشه منش یادگیری اپ نویسی اندروید: شناخت با API و رابطه با سرور:
API (Application Programming Interface) یک رابط اپلیکیشننویسی میباشد که به نرم افزارها قابلیت و امکان رابطه با یکدیگر و ارسال درخواستها و اخذ جوابها را مهیا مینماید. در نرمافزارنویسی اندروید، رابطه با سرور به امداد API ها بسیار متداول میباشد، به ویژه برای اخذ دادهها از یک سرور.
رابطه با سرور در اپلیکیشننویسی اندروید:
به کار گیری از HTTP Client:
برای ارسال درخواستهای HTTP مانند GET، POST، PUT و DELETE، از کتابخانههایی مانند Retrofit یا این که Volley استعمال می شود. این کتابخانهها قابلیت گزینش نشانی سرور، ارسال پارامترها، و اخذ جواب را آماده مینمایند.
Retrofit:
Retrofit یک کتابخانه HTTP Client بر اساس جاوا میباشد که بوسیله Square بسط داده گردیدهاست. این کتابخانه از جاوا به صورت بدون واسطه دفاع میگردد و از ابزارهایی مانند Gson برای تبدیل دادههای JSON به شیء به کار گیری مینماید.
Volley:
Volley نیز یک کتابخانه HTTP Client میباشد که بوسیله Google ارائه شدهاست. این کتابخانه بهطور اساسی برای رابطه با سرور از روش پروتکل HTTP و همینطور برای درخواستهای ناهمگام و همزمان پیاده سازی گردیده است.
رئیس جوابها:
بعد از ارسال درخواست به سرور، اپلیکیشن می بایست جواب را به صدق مدیر نماید. این دربرگیرنده تجزیه و ارزیابی دادههای دریافتی (مثل JSON یا این که XML) و جاری ساختن عملیات موردنیاز برای اکران داده به استفاده کننده میباشد.
به کار گیری از AsyncTasks یا این که Threads:
رابطه با سرور یک عملیات مجالبر میباشد که نباید در حرفه مهم (Main Thread) صورت بپذیرد تا از تولید lag در UI دوری خواهد شد. معمولاً از AsyncTask در اندروید به کارگیری میگردد یا این که می توانید از Threads و Handlers نیز استعمال فرمایید.
مدیر ایرادات:
نرمافزار بایستی به صدق با اشتباهات عکس العمل نماید. این مشمول جاری ساختن عملیات بازیابی (retry) در شکل اشتباه، اکران پیامهای غلط به مخاطب و گزارش اشتباهات به سرور میگردد.
۱۰- دهمی مرحله در نقشه راه و روش نرمافزار نویس اندروید: شناخت با مفاهیم متقابل (MVVM یا این که MVP)
MVVM (Model-View-ViewModel) و MVP (Model-View-Presenter) دو الگوی معماری میباشند که برای سازماندهی کد در نرم افزارهای اندروید (و دیگر پلتفرمها) استعمال می گردند. این الگوها یاری مینمایند تا کد به صورت سازماندهیخیس و قابل آزمایشتری تدوین خواهد شد.
گزینش در بین MVVM و MVP به ترازو تجربیات شما و نیازهای پروژه بستگی دارااست.
فعلا، MVVM با به کار گیری از Android Architecture Components (ViewModel و LiveData) برای نرم افزارنویسان اندروید پرطرفدارتر گردیدهاست.
هر دو الگوی MVVM و MVP می توانند بهبود قابلیت و امکان آزمایشپذیری و امکان گسترشپذیری کد را بهبود ببخشند. یادگرفتن معماری mvp اندروید را میتوانید از اینحا دنبال فرمائید.
فراگیری معماری mvp
۱۱- یازدهمین مرحله در نقشه راه و روش اپ نویس اندروید: پیادهسازی منطق تجاری (Business Logic)
پیادهسازی منطق تجاری (Business Logic) یکی فرایند اصلی در بسط یک نرم افزار میباشد. منطق تجاری به کلیه قانون ها، عملکردها و مسائلی که اپ به مراد اعمال وظایف خویش نیاز داراست، اطلاق میگردد. این بخش از نرمافزار مسئولیتهایی مانند محاسبات، اعتبارسنجی دادهها، رئیس جریان فعالیت، و بیشتر را بر ذمه دارااست.
۱۲- دوازدهمین مرحله در نقشه روش نرم افزار نویسی اندروید: شناخت با Google Play Console
Google Play Console یک پلتفرم گسترشدهندگان میباشد که به وسیله گوگل ارائه میگردد و برای به چاپ رساندن و مدیر نرم افزارها در مغازه Google Play آیتم به کارگیری قرار می گیرد. این ابزار تجهیزات متعددی برای بسطدهندگان ارائه می دهد تا بتوانند کارایی، امنیت، و تجارب کاربری نرم افزارهای خویش را بهبود بخشند. در پایین به بعضا از اساسیترین خصوصیتهای Google Play Console اشاره شدهاست:
۱. داده های عددی و ارزیابی:
Google Play Console به شما داده ها دقیقی در خصوص تعداد نصبها، بازدیدها، امتیازها و بازخوردها از یوزرها آماده مینماید. این قابلیت به شما یاری مینماید تا کار یوزرها را تحقیق و بهبودهای مورد نیاز را انجام نمائید.
۲. مدیر ورژنها و بهروزرسانیها:
شما می توانید ورژنهای گوناگون نرم افزار خویش را تولید کرده و در Google Play منتشر نمایید. همینطور، میتوانید بهروزرسانیهای تازه را برای یوزرها عرضه نمائید.
۳. پیکربندی ارزشگذاری و خریدهای باطننرمافزارای:
شما می توانید بهاهای تولیدات داخلاپای را تهیه و تنظیم کرده و رئیس پرداختها را جاری ساختن دهید.
۴. مدیر محتوای میزان داراییها:
Google Play Console به شما این قابلیت را میدهد تا آیکون، اسکرینشاتها، تصاویر تبلیغاتی و بقیه بودجههای مرتبط با نرم افزار خویش را مدیر نمایید.
۵. دفاع از پروژههای A/B Testing:
با استعمال از A/B Testing میتوانید ورژنهای متعدد نرم افزار را برای یک دسته محصور از یوزرها منتشر فرمائید و سعی آنان را مقایسه فرمایید.
۶. گزارشدهی درآمد:
این قابلیت و امکان به شما داده ها درآمد از فروش نرم افزار، خریدهای باطننرمافزارای و تبلیغات را آماده مینماید.
۷. استعمال از Google Play Developer API:
Google Play Console قابلیت به کارگیری از Google Play Developer API را نیز مهیا مینماید که به شما این قابلیت و امکان را میدهد که از روش اپنویسی بسط دهندگان به داده ها و تجهیزات جانور در Google Play Console دسترسی پیدا فرمائید.
۸. انتخاب سطح ها دسترسی:
Google Play Console به شما این قابلیت و امکان را میدهد تا مدیران و توسعه و گسترشدهندگان متعدد را تحت عنوان یوزرها گوناگون به پروژه خویش اضافه فرمایید و سطح های دسترسی آنها را مشخص و معلوم نمایید.
۹. تامین از ترجمه و لوکالیزیشن:
Google Play Console امکاناتی را برای مدیر ترجمهها و لوکالیزیشن ارائه می دهد تا بتوانید نرم افزار خویش را برای بازارهای متفاوت جهانی منطبق دهید.
Google Play Console به پیشرفتدهندگان تجهیزات اکثری را برای مدیر و افزایش عملکرد نرم افزارها ارائه میدهد. این ابزار بسیار حیاتی برای توفیق یک نرم افزار در Google Play میباشد.