ساختار آندروید (Android Architecture )

در این قسمت تیم کدگیت به آموزش ساختار آندروید (Android Architecture ) می‌پردازد. ابتدای آموزش Software Stack در آندروید را معرفی کرده و سپس تمامی لایه‌های آن را به ترتیب توضیح می‌دهیم. پیشنهاد می‌کنیم قبل از مطالعه این جلسه، آموزش Activity در آندروید را مطالعه کنید.

ساختار آندروید (Android Architecture)

ساختار آندروید را میتوان پشته‌ای از کمپوننت‌های نرم‌افزاری (Software Stack of component) برای پشتیبانی از نیازهای یک تلفن همراه دانست. این کمپوننت‌ها شامل مواردی همچون هسته لینوکس، کتابخانه‌ها، اپلیکیشن‌ها و ….است. در زیر کمپوننت‌های اصلی این پشته آورده شده است:

  1. Applications
  2. Framework
  3. Android Runtime
  4. Platform Libraries
  5. Linux Kernel

ساختار آندروید

اپلیکیشن (System Applications)

اپلیکیشن یا System Applications در بالاترین لایه پشته ما قرار دارد (تصویر بالا). تمامی برنامه‌های کاربردی آندروید همچون ایمیل، Contacts، Sms و حتی اپلیکیشن‌هایی که ما می‌نویسیم تنها در این لایه نصب خواهد شد.

Application Framework

لایه Application Framework کلاس‌هایی را برای ساختن اپلیکشن‌های آندرویدی ایجاد کرده است. زبان استفاده شده در این لایه به صورت جاوا است. برنامه‌نویسان با استفاده از کلاس‌ها و سرویس‌ها در این لایه می‌توانند اپلیکیشن دلخواه خود را پیاده سازی کنند.

Android Runtime

یکی از لایه‌های ساختار آندروید Android Runtime است. در این قسمت یک کمپوننت به نام Dalvik Virtual Machine وجود دارد که یک ماشین مجازی اختصاصی برای آندروید است. این ماشین مجازی از هسته لینوکس (آخرین لایه پشته) در مواردی همچون Threading و Memory management استفاده می‌کند.

Android Libraries

این لایه شامل کتابخانه‌های مختلف c/c++ و جاوا می‌باشد. کتابخانه‌های این لایه شامل مواردی همچون SSL،  libc،Graphics،  SQLite، Webkit و ……. می‌باشد. کتابخانه‌هایی برای ذخیره و اشتراک گذاری اطلاعات ، ذخیره صدا و پخش ویدئو، امنیت اینترنت (SSL) و …. در این لایه قرار دارد.

Hardware Abstraction Layer

این لایه رابطی بین سخت‌افزارهای سیستم و کتابخانه‌های جاوا است. لایه HLA یا  Hardware Abstraction Layer دارای ماژول‌های بخصوصی برای سخت‌افزارهای متفاوت همچون دوربین و بلوتوث است.

Linux Kernel

 قلب ساختار آندروید هسته لینوکس (Linux Kernel) می‌باشد. آخرین لایه در این ساختار هسته لینوکس است که مدیریت درایورهای متفاوت سیستم را بر عهده دارد. لایه‌های بالاتر همچون Android Runtime برای انجام دستورات سطح پایین به این لایه وابسته هستند.

 

دسته : android, android tutorial, آموزش قدم به قدم آندروید, آندروید

دیدگاه بگذارید

نظر شما چیست؟

مطلع کردن شما از
avatar

wpDiscuz