پیش نیازها
برنامه نویسی اندروید بر اساس زبان برنامه نویسی جاوا پایه گذاری شده است. بنابراین شما نیاز دارید تا فهم اولیه ای از برنامه نویسی به زبان جاوا داشته باشید. اگر این پیش نیاز را برطرف کنید، برنامه نویسی اندروید برای شما به یک تفریح تبدیل خواهد شد. جهت آشنا شدن با زبان برنامه نویسی جاوا می توانید از سری آموزش های “جاوا از ابتدا” استفاده کنید.
[divider]
مقدمه
درطی این آموزش سعی داریم تا ضمن آشنایی با سیستم عامل اندروید، نحوه برنامه نویسی و ساخت نرم افزار برای آن را فرا بگیریم. برای شروع بهتر است ابتدا با پلتفرم اندروید آشنا شویم. برای آشنایی با این پلتفرم نیازمند این هستیم که یک دید کلی نسبت به پلتفرم اندروید پیدا کنیم و با اجزائی که آن را ساخته اند آشنا شویم. سپس با نحوه ی کارکرد هر کدام از این اجزا و چگونگی استفاده ی توسعه دهندگان از آنها برای تولید نرم افزارهای بزرگ و پیچیده آشنا خواهیم شد.
[divider]
پلتفرم اندروید
پلتفرم اندروید یک پشته ی نرم افزاری است و در درجه اول اما نه منحصرا اینگونه طراحی شده است، تا بتواند دستگاه های موبایل و تبلت ها را پشتیبانی کند. این پشته دارای چندین لایه است و این لایه ها از سطح پایین که مربوط به سرویس های سیستم عامل است که مدیریت وسیله را بر عهده دارند، شروع می شود و در بالاترین سطح برنامه های کاربردی را شامل می شود. این نرم افزارهای کاربردی برنامه های ساده ای هستند، چیزی شبیه به “شماره گیر تلفن” یا “مرورگر وب” و… همچنین اندروید دارای بسته ی نرم افزاری برای توسعه دهندگان(SDK) است که برای ایجاد نرم افزارهای اندرویدی استفاده می شود. علاوه بر این، ده ها مستند، آموزش و مثال وجود دارد که شما می توانید با استفاده از آنها فهم خود را درباره آندروید افزایش داده و بهبود بخشید. پیشنهاد می کنم از این منابع نهایت استفاده را ببرید.
[divider]
پشته ی نرم افزاری اندروید(Android Software Stack)
در تصویر بالا پشته نرم افزاری اندورید را مشاهده می کنید. همانگونه که قبلا اشاره شد، مشاهده می کنید که از چندین لایه تشکیل شده است. در پایین ترین لایه، هسته لینوکس(Linux Kernel) قرار دارد. در بالای آن، کتابخانه های سیستم و runtime اندروید، در بالای این لایه، فریمورکی غنی و کامل(Application Framework) وجود دارد که امکان پشتیبانی از نرم افزارهای جدیدِ توسعه داده شده را فراهم می کند. و در بالاترین لایه(Applications)، اندروید چندین نرم افزار استاندارد را در اختیار گذاشته است. همانطور که قبلا هم اشاره شده بود، چیزهایی شبیه “شماره گیر تلفن”، “مرورگر وب” ، “دفترچه تلفن” و…
در جلسه ی آینده در مورد هر کدام از این لایه ها بحث خواهیم کرد.