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

اگر به طراحی و توسعه اپلیکیشن های کاربردی موبایل علاقه دارید یا دوست دارید ایده های خودتون رو در قالب اپلیکیشن های موبایل پیاده کنید یا میخواید برای کسب و کارتون اپ موبایلی بنویسید اما نمیدونید از کجا شروع کنید، این مقاله به شما کمک میکنه :)این حوزه زیر مجموعه برنامه نویسی موبایل هست و خود برنامه نویسی موبایل تقسیم میشه به زیرشاخه های:1- اندروید(android) برای شرکت گوگل2-آی او اس(ios) برای شرکت اپل3-کراس پلتفرم(با یک بار برنامه نویسی نسخه ios و android خروجی گرفته میشود)که توی این مقاله فقط مورد اول یعنی اندروید بررسی میشه(اما در کل هر 3 تای این موارد خیلی خیلی به هم نزدیک هستن و با مسلط شدن روی یکیش میتونین به راحتی و توی یه مدت کوتاه روی بقیه اون ها هم سوییچ کنید.)از جذابیت های این حوزه به نظر شخصی من اینه که مهارت های زیادی رو به شما یاد میده. از طراحی صفحات اپ که نیاز به سلیقه و یادگیری سیستم های طراحی داره(مثل متریال دیزاین) گرفته تا کدنویسی بهینه(چون رم گوشی نسبت به کامپیوتر خیلی فضای کمتری داره و این یکی از چالش های برنامه نویسای اندرویده که برنامه هایی که مینویسن رم کمتری مصرف کنه)، ارتباط با سرور و برنامه نویسی بک اند، دیتابیس، گیت، ترکیب پروژه ها با iot(اینترنت اشیا) و هوش مصنوعی و کلی مهارت دیگه که عملا از شما یه مهندس نرم افزار میسازه.برای شروع شما نیاز به یک رودمپ(نقشه راه) خوب دارید که رودمپ سایت roadmap از معتبر ترین هاش هست که میتونید به این آدرس مراجعه کنید : https://roadmap.sh/android1-انتخاب زبان برنامه نویسی : تا قبل از سال 2017 یه انتخاب وجود داشت : جاوااما تو اون سال گوگل زبان جدیدی رو معرفی کرد که از لحاظ نوشتار ساده تر جاوا بود و یک سری قابلیت جدید و خفن داشت که جاوا نداشت : کاتلینجاوا vs کاتلینو کم کم شروع کرد برنامه نویسای اندروید رو ترغیب کردن به سمت کاتلین و اخیرا با معرفی کامپوز که فقط برای کاتلین ارائه شد دیگه رسما اعلام کرد که برنامه نویسای اندروید حتما باید به سمت کاتلین مهاجرت کنن!اما نکته ای که برای شروع این حوزه لازمه گفته بشه اینه که هنوز کتابخونه ها و اپلیکیشن های زیادی هستن که به زبان جاوا نوشته شدن و یادگیریش (به نظر شخصی من) الزامیه.یه بحثی هم که همیشه بین برنامه نویسای اندروید داغه اینه که جاوا یا کاتلین؟ من میگم این سوال خیلی غلطه و توصیه میکنم هر دوش رو یاد بگیرید. اگر مفاهیم اولیه برنامه نویسی رو با زبان جاوا یادبگیرید، توی کاتلین همون مفاهیم تکرار میشن، فقط طرز نوشتارشون فرق میکنه(به اصطلاح میگن سینتکسشون متفاوته :))پس بجای سرچ جاوا بهتر است یا کاتلین :) اول بشینید جاوا رو یاد بگیرید (صرفا مفاهیم اولیه برنامه نویسی مثل متغیر ها، شرط ها، دیتاتایپ ها، اصول شی گرایی و چند مورد کوچیک دیگه) بعد سعی کنید یه اپ ساده باهاش توی اندروید بنویسید و بعد سوییچ کنید روی کاتلین.وقتی به این مرحله برسید مسیر کم کم براتون روشن میشه و اصلا قرار نیست بیوفتید توی سردرگمی و دوراهی.برای همین ادامه مراحل رو نمینویسم چون هم طولانی میشه و هم شاید بعد از چند سال خیلی از این موارد منسوخ بشه.این رو از من داشته باشید که یه برنامه نویس هیچ وقت دنبال لقمه آماده نمیگرده.پس بجای اینکه برید وبلاگ های دیگه ای رو راجع به برنامه نویسی اندروید بخونید مستقیم برید سر شروع کردن و پروژه های کوچیک زدن.ضمنا منبع اصلیتون هم سایت developer.android.com باشه که برای گوگل هست و داکیومنت های رسمی برای اندروید اینجا وجود داره + نمونه پروژه های متنوع برای یادگیری مفاهیم مختلف برنامه نویسی اندروید.در کنارش میتونید از مقاله های خوبه وبسایت های w3school، medium، geeksforgeeks و ... استفاده کنید.مسلما سعی کنید زبان انگلیسیتون رو تقویت کنید تا کمتر سراغ منابع فارسی برید. چون هنوز منابع فارسی خیلی غنی و آپدیت نیستن.دوست دارم همتونو اون بالا بالا ها ببینم.یا حق.