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

4 سال پیش

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

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

معماری اندروید

 

Linux kernel

در پایین لایه ها Linux – Linux 3.6 با تقریبا ۱۱۵ وصله وجود دارد. این سطح از تجزیه و تحلیل بین سخت افزار دستگاه را فراهم می کند و شامل تمام درایورهای سخت افزاری ضروری مانند دوربین، صفحه کلید، صفحه نمایش و غیره است. همچنین کرنل همه مواردی را که لینوکس در آنها بسیار خوب است مانند شبکه و مجموعه گسترده ای از درایورهای دستگاه کنترل می کند.

Libraries

در بالای کرنل لینوکس مجموعه ای از کتابخانه ها وجود دارد از جمله موتور مرورگر منبع باز WebKit، کتابخانه معروف libc، پایگاه داده SQLite که یک مخزن مفید برای ذخیره و به اشتراک گذاری داده های برنامه، کتابخانه ها برای پخش و ضبط صدا و تصویر  SSL است. کتابخانه های مسئول امنیت اینترنت و غیره هستند.

Android Libraries

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

  • android.app – دسترسی به مدل برنامه را فراهم می کند و سنگ بنای تمام برنامه های اندروید است.
  • android.content – دسترسی به مطالب، انتشار و پیام رسانی بین برنامه ها و اجزای برنامه را تسهیل می کند.
  • android.database – برای دسترسی به داده های منتشر شده توسط ارائه دهندگان محتوا استفاده می شود و شامل کلاس های مدیریت پایگاه داده SQLite است.
  • android.opengl – یک رابط جاوا به API ارائه گرافیک ۳D OpenGL ES.
  • android.os – دسترسی به برنامه های استاندارد سیستم عامل از جمله پیام ها ، سرویس های سیستم و ارتباطات بین فرآیند را برای برنامه ها فراهم می کند.
  • android.text – برای ارائه و دستکاری متن در صفحه نمایش دستگاه استفاده می شود.
  • android.view – بلوک های اساسی رابط کاربری برنامه.
  • android.widget – مجموعه ای غنی از اجزای رابط کاربری از پیش ساخته شده مانند دکمه ها، برچسب ها، نمایش لیست ها، دکمه های رادیو و غیره
  • android.webkit – مجموعه ای از کلاسها برای ایجاد امکان مرور وب در برنامه ها.

 

بعد از آشنایی با کتابخانه های اصلی مبتنی بر جاوا در زمان اجرای اندروید، اکنون زمان آن فرا رسیده است که توجه خود را به کتابخانه های مبتنی بر C / C ++ موجود در این لایه از نرم افزار اندروید معطوف کنیم.

Android Runtime

این بخش سوم از معماری است و در لایه دوم از پایین موجود است. این بخش یک جز کلیدی به نام Dalvik Virtual Machine را ارائه می دهد که نوعی ماشین مجازی جاوا است و به طور ویژه برای اندروید طراحی و بهینه شده است.

Dalvik VM از ویژگی های اصلی لینوکس مانند مدیریت حافظه و چند رشته ای استفاده می کند، که در زبان جاوا ذاتی است. Dalvik VM با استفاده از ماشین مجازی Dalvik، هر برنامه اندروید را قادر می سازد تا در روند خاص خود اجرا شود.

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

 

Application Framework

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

چارچوب اندروید شامل سرویس های اصلی زیر است –

  • Activity Manager – همه جنبه های چرخه حیات برنامه و پشته فعالیت را کنترل می کند.
  • Content Providers- به برنامه ها اجازه می دهد تا داده ها را با برنامه های دیگر منتشر و به اشتراک بگذارند.
  • Resource Manager– دسترسی به منابع جاسازی نشده در کد مانند رشته ها، تنظیمات رنگ و طرح های رابط کاربر را فراهم می کند.
  • Notifications Manager – به برنامه ها اجازه می دهد تا هشدارها و اعلان ها را به کاربر نمایش دهند.
  • View System – مجموعه ای از نماهای قابل توسعه برای ایجاد رابط های کاربری برنامه.

 

معماری اندروید برنامه های کاربردی

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

منبع.

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

  1. نگاهی کلی به برنامه نویسی اندروید
  2. تنظیمات محیط در برنامه نویسی اندروید

 

0
برچسب ها :
نویسنده مطلب erfan molaei

دیدگاه شما

بدون دیدگاه