دوره های آموزشی آکادمی پی وی لرن (پروژه محور و ویژه بازار کار)



  • ۱۴
  • مهر

جلسه ۰۲ : معماری اندروید

  • دسته‌بندی‌ها :
جلسه ۰۲ : معماری اندروید
    • جزئیات
    • نوع محتواآموزش تصویری

      مقدمه

      با عرض سلام و وقت بخیر خدمت کاربران سایت پی وی لرن . و کاربرانی که دوره کامل آموزش برنامه نویسی اندروید را دنبال می کنند. قبل از شروع به کدنویسی و طراحی نرم افزار در محیط اندروید استدیو بهتر است ابتدا با معماری اندروید تا حدودی آشنایی پیدا کنید. سیستم عامل اندروید از ۴ لایه ی اصلی تشکیل شده که هر کدام از لایه ها خود شامل چندین بخش مهم اندروید می شود. آشنایی با معماری اندروید به شما در درک بهتر عملکرد سیستم عامل اندروید و نرم افزارهای کاربردی نوشته شده برای اندروید کمک می کند. از این رو در ادامه ی مباحث این بخش برای آشنایی با معماری اندروید با ما همراه باشید.

      آشنایی با معماری اندروید

      در ادامه ی مباحث ما شما را با طرح کلی معماری اندروید و جزئیات هر کدام آشنا خواهیم کرد.

      سیستم عامل Android یک پشته از اجزای نرم افزاری است که تقریبا به چهار لایه اصلی تقسیم شده است.

      شکل زیر طرح کلی معماری سیستم عامل اندروید را نشان می دهد:

      آشنایی با معماری اندروید

      آشنایی با معماری اندروید

      حال هر کدام از لایه های فوق را بررسی می کنیم:

      Linux kernel (هسته ی لینوکس)

      در سطح پایینی لایه ها لینوکس – لینوکس ۳٫۶ با حدود ۱۱۵ تکه است. این سطح انتزاع بین سخت افزار دستگاه را فراهم می کند.

      همچنین این سطح شامل تمام درایورهای سخت افزاری ضروری مانند دوربین، صفحه کلید، صفحه نمایش و… می باشد.

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

      Libraries (کتابخانه ها)

      در بالای هسته لینوکس مجموعه ای از کتابخانه ها از جمله موتور مرورگر وب با منبع باز، WebKit، کتابخانه libc، پایگاه داده SQLite است.

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

      Android Libraries (کتابخانه های اندروید)

      این دسته از لایه های libraries شامل کتابخانه های مبتنی بر جاوا است که مخصوص توسعه اندروید هستند.

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

      خلاصه ای از برخی از کتابخانه های هسته اصلی آندروید، برای توسعه دهنده آندروید به شرح زیر است :

      • android.app : دسترسی به مدل برنامه را فراهم می کند و سنگ بنای تمام برنامه های آندروید است.
      • android.content : دسترسی به محتوا، انتشار و پیام رسانی بین برنامه ها و اجزای برنامه را تسهیل می کند.
      • android.database :  شامل کلاس های مدیریت پایگاه داده SQLite است.
      • android.opengl : یک رابط جاوا برای API rendering گرافیک OpenGL ES 3D است.
      • android.os : برنامه های کاربردی از جمله پیام ها، خدمات سیستم و… را فراهم می کند.
      • android.text : این مورد برای رندر و دستکاری متن در صفحه نمایش دستگاه است.
      • android.view : شامل بلوک های اصلی رابط کاربر برنامه است.
      • android.widget : مجموعه ای کامل از اجزای رابط کاربری از جمله buttons،labels،list view و… می باشد.
      • android.webkit :  مجموعه ای از کلاس ها که قابلیت مرور وب را در برنامه ها فراهم می کند.

      Android Runtime

      این در واقع بخش سوم معماری است و در لایه دوم از پایین موجود است.

      این بخش شامل اجزایی به نام Dalvik Virtual Machine بوده که نوعی از ماشین مجازی جاوا است.

      این ماشین مجازی به طور خاص برای آندروید طراحی و بهینه سازی شده است.

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

      VM Dalvik هر برنامه آندروید را قادر می سازد که در فرایند خود اجرا شود.

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

      این کتابخانه ها برنامه نویسان را قادر می سازد تا برنامه های آندرویدی را با استفاده از زبان برنامه نویسی استاندارد Java بنویسند.

      Application Framework (فریم ورک کاربردی)

      لایه فریم ورک کاربردی بسیاری از سرویس های سطح بالا را به برنامه ها در قالب کلاس های جاوا ارائه می دهد.

      برنامه نویسان اجازه ی استفاده از این سرویس ها را در برنامه های خود دارند.

      فریم ورک اندروید شامل کلیدهای سرویس زیر است:

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

      Applications (برنامه های کاربردی)

      شما تمام برنامه های Android را در بالاترین لایه پیدا خواهید کرد.

      شما برنامه های خود و هر برنامه ی کاربردی از اندروید را فقط در این لایه نصب خواهید کرد.

      برخی از برنامه هایی که در این لایه قرار می گیرند از جمله می توان به Contacts Books، Browser، Games و… اشاره کرد.

      کلام آخر

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

      در بخش بعدی اجزای برنامه های کاربردی را بررسی خواهیم کرد.

      QR:  جلسه ۰۲ : معماری اندروید
      به اشتراک بگذارید