برای تبدیل شدن به یک برنامه نویس تلفن همراه ، یک جاده و نقشه راه به شرح زیر پیشنهاد شده است:
انتخاب پلتفرم:
Android (Android): اگر می خواهید برای دستگاه های Android بنویسید ، باید زبان برنامه نویسی جاوا یا کوتلین را یاد بگیرید و Android SDK را بدانید.
iOS: اگر می خواهید برنامه هایی را برای دستگاه های اپل بنویسید ، باید زبان برنامه نویسی Swift را یاد بگیرید و شما را با Xcode و iOS SDK آشنا کنید.
Cross-PlateForm: اگر می خواهید برنامه هایی را بنویسید که بر روی دو سیستم عامل (Android و iOS) کار کنند ، می توانید از چارچوب هایی مانند React Native ، Flutter یا Xamarin استفاده کنید. در این حالت ، باید اطلاعات بیشتری در مورد JavaScript (JavaScript) برای React Native ، DART for Flutter یا C # برای Xamarin کسب کنید.
زبان برنامه نویسی را بیاموزید
بسته به بستری که انتخاب کرده اید ، زبان برنامه نویسی مربوطه را بیاموزید. منابع و دوره های آنلاین زیادی برای این زبان ها وجود دارد.
برای جاوا و کاتلین می توانید از درس های Udemy ، Racera یا PluralSight استفاده کنید.
برای Swift ، همچنین می توانید از دوره های مشابه یا منابع رسمی سیب استفاده کنید.
برای فریم های متقاطع ، منابع آموزشی خاصی برای هر چارچوب نیز وجود دارد.
برای یادگیری برنامه نویسی اندروید به صورت تخصصی کلیک کنید.
نکات مهم در انتخاب پلتفرم

- مخاطب هدف: بستری را انتخاب کنید که مخاطب هدف شما از آن بیشتر استفاده کند.
- مهارت های موجود: اگر از قبل JavaScript ، Darts یا Craft را می شناسید ، فریم های چند منظوره می توانند گزینه خوبی باشند.
- پیچیدگی پروژه: توسعه بومی (Android یا iOS) می تواند برای پروژه های پیشرفته تر که نیاز به کارایی بالا و دسترسی به API های خاص دارند مناسب تر باشد.
- زمان و بودجه: مدیران چندگانه به طور کلی برای توسعه نیاز به زمان و هزینه کمتری دارند.
مقدمه ای بر مفاهیم اساسی برنامه نویسی موبایل
ui / ux: ui و ui (ui / ux) در برنامه های تلفن همراه بسیار مهم است. شما باید اصول اولیه طراحی UI / UX را بدانید و می توانید رابط های جذاب و دوستانه ایجاد کنید.
API: برنامه های تلفن همراه به طور کلی با سرورهای وب و خدمات ارتباط برقرار می کنند. شما باید مفاهیم API (رابط برنامه نویسی برنامه) و نحوه استفاده از آنها را بدانید.
پایگاه داده: بسیاری از برنامه های تلفن همراه باید داده ها را ذخیره و مدیریت کنند. شما باید مفاهیم پایگاه داده ها و نحوه استفاده از پایگاه داده های محلی (مانند SQLite) یا پایگاه داده های ابری (مانند Firebase) را بدانید.
کنترل نسخه: برای مدیریت کد و همکاری با سایر توسعه دهندگان ، باید سیستم های کنترل نسخه مانند GIT را بدانید.
یادگیری مفاهیم پایه برنامه نویسی موبایل
- UI / UX (تجربه کاربر / کاربر):
- اصول طراحی: یادگیری اصول طراحی مانند سلسله مراتب بصری ، تئوری رنگ ، تایپوگرافی و استفاده از فضای سفید.
- ابزارهای طراحی: مقدمه ای برای ابزارهای طراحی مانند FIGMA ، Adobe XD ، Sketch.
- مدل های طراحی: استفاده از مدل های طراحی متداول برای رابط کاربری تلفن همراه (مانند کشو ناوبری ، ناوبری پایین ، نوار برگه).
- API (رابط برنامه نویسی برنامه):
- API RESTFULS: عملکرد API های استراحت را درک کنید و از HTTP استفاده کنید (دریافت ، انتشار ، انتشار ، حذف).
- JSON: با فرمت JSON برای تبادل داده ها بین برنامه و سرور آشنا است.
- کتابخانه های HTTP: استفاده از کتابخانه های HTTP برای ارسال درخواست به API (مانند مقاوم سازی در Android ، URL های iOS ، Axios در React Native).
- بانک اطلاعاتی:
- SQLITE: یک پایگاه داده سبک و محلی که معمولاً در برنامه های تلفن همراه استفاده می شود.
- Firebase: یک پلت فرم توسعه موبایل Google شامل Firestore Cloud و سایر خدمات (مانند تأیید اعتبار ، توابع ابر) است.
- Kingdom: یک پایگاه داده موبایل با جهت گیری به شی.
- کنترل نسخه (GIT):
- GIT: یک سیستم کنترل نسخه توزیع شده برای مدیریت کد و همکاری با سایر توسعه دهندگان استفاده می شود.
GitHub / GitLab / Bitbucket: سیستم عامل های میزبانی کد از GIT استفاده کنید.
شروع به ساختن پروژه های کوچک

پس از یادگیری مفاهیم اساسی ، شروع به ساختن پروژه های کوچک کنید. این پروژه ها ممکن است شامل برنامه های ساده مانند ماشین حساب ، لیست خرید یا نوت بوک باشد.
با ساختن پروژه های کوچک ، یک تجربه عملی به دست خواهید آورد و با چالش های واقعی برنامه نویسی تلفن همراه روبرو خواهید شد.
پس از انجام پروژه های کوچک ، می توانید مفاهیم پیشرفته تری را یاد بگیرید. این مفاهیم ممکن است شامل موارد زیر باشد:
مدیریت حافظه: در برنامه های تلفن همراه ، مدیریت حافظه بسیار مهم است. شما باید خود را با تکنیک های مدیریت حافظه آشنا کنید تا برنامه های خود به سرعت و پایدار شوید.
- بهینه سازی: برنامه های تلفن همراه باید بهینه شوند تا به سرعت و با کمترین مصرف باتری کار کنند. شما باید خود را با تکنیک ها و منابع بهینه سازی کد آشنا کنید.
- تست: برای اطمینان از کیفیت برنامه ها ، باید آنها را با دقت آزمایش کنید. شما باید انواع تست های نرم افزاری را تجربه کنید (مانند تست های واحد ، تست ادغام و تست سیستم).
- ایمنی: برنامه های تلفن همراه برای محافظت از اطلاعات کاربر باید ایمن باشند. شما باید در مورد اصول امنیت نرم افزار و روش های حمله سایبری اطلاعات بیشتری کسب کنید.
- برای شرکت در بوت کمپ اپلیکیشن اندروید کلیک و شروع به یادگیری و پیاده سازی ایده های خود کنید.
یادگیری مفاهیم پیشرفته در برنامه نویسی

- مدیریت حافظه:
- مجموعه زباله ها: درک کنید که چگونه مجموعه زباله به زبان های مختلف (مانند جاوا و دارت) کار می کند.
- نشت حافظه: شناسایی و پیشگیری از نشت حافظه (نشت حافظه).
- ارسال اشیاء: از جمع شدن اشیاء برای کاهش مصرف حافظه استفاده کنید.
- بهینه سازی:
- برنامه: از ابزارهای پروفایل برای شناسایی نقاط ضعف عملکرد برنامه استفاده کنید.
- بار Strazy: بارگیری منابع فقط در صورت لزوم.
- حافظه پنهان: ذخیره داده ها در حافظه نهان برای دسترسی سریعتر.
- بهینه سازی تصویر: بهینه سازی تصویر برای کاهش اندازه پرونده و افزایش سرعت بارگذاری.
- مقاله:
- تست های واحد: آزمایشات جداگانه از واحدهای کد کوچک.
- تست ادغام: آزمایش چگونگی تعامل واحدهای مختلف کد با یکدیگر.
- تست رابط کاربری: تست رابط کاربردی.
- توسعه بر اساس آزمون (TDD): توسعه بر اساس آزمون (قبل از کد نوشتن ، یک آزمون بنویسید).
- امنیت:
- احراز هویت: تأیید هویت کاربر (شناسایی و احراز هویت).
- مجوز: دسترسی کاربران به منابع مختلف را تعیین کنید.
- رمزگذاری داده ها: رمزگذاری داده ها برای محافظت از آنها از دسترسی غیرمجاز.
- شیوه های کدگذاری ایمن: برای جلوگیری از آسیب پذیری های ایمنی ، اصول برنامه نویسی ایمن را رعایت کنید.
پروژه های بزرگتر و پیچیده تر را بسازید:
پس از یادگیری مفاهیم پیشرفته ، می توانید پروژه های بزرگتر و پیشرفته تری بسازید. این پروژه ها ممکن است شامل برنامه ها ، بازی ها یا برنامه های تجاری باشد.
با ایجاد پروژه های بزرگتر ، تجربه بیشتری کسب می کنید و می توانید به عنوان یک توسعه دهنده حرفه ای تلفن همراه شناخته شوید.
در دوره ها و کنفرانس ها شرکت کنید:
برای به روز ماندن با آخرین فن آوری ها و روش ها ، در درس برنامه نویسی و کنفرانس های برنامه نویسی تلفن همراه شرکت کنید.
این دوره ها و کنفرانس ها فرصتی مناسب برای یادگیری متخصصان و شبکه سازی با سایر توسعه دهندگان است.
8. CV و کیف پول را درست کنید:
برای استخدام شرکتهای نرم افزاری یا کار به عنوان یک فریلنسر باید یک CV محکم و یک کیف پول داشته باشید.
CV شما باید شامل اطلاعات تماس ، پرونده های دانشگاهی و تجاری ، مهارت ها و پروژه هایی است که روی آن کار کرده اید.
نمونه کارها شما باید نمونه هایی از کد کد پروژه را که روی آن کار کرده اید شامل شود.
