۵۰ منبع مفید برای حرفه‌ای شدن در برنامه‌نویسی اندروید

همیشه پیدا کردن منابع خوب برای افزایش مهارت‌های برنامه‌نویسی اندروید کار زمان‌بر و دشواری است. شاید برای یک سوال بارها در اینترنت جستجو کرده‌اید. سراغ StackOverFlow یا انواع و اقسام کتاب‌ها و مقالات اینترنتی مراجعه رفته‌اید. در این پست برای راحتی کارتان ، مجموعه‌ی بی‌نظیری از منابع ارزشمند را معرفی کرده‌ایم که هم به درد برنامه‌نویسان مبتدی و هم حرفه‌ای‌ها می‌خورد.برای مبتدی‌ها این منابع، نزد توسعه‌دهندگان جاوا که به تازگی قدم در دنیای اندروید گذاشته‌اند ارزش بالایی دارد. Android Development for Beginners راهنمایی ساده و کامل برای توسعه‌دهندگان مبتدی اندروید در هر سطحی که قرار دارند. از این راهنما می‌توانید برای ساخت اولین برنامه‌ی اندرویدی خود استفاده کنید. دوره‌ی آموزشی آسان و مناسبی برای مبتدی‌ها است که توسط گوگل تهیه شده و هدفش آموزش سریع مبانی و اصول برنامه‌نویسی اندروید است.Android Development with Android Studioراهنمایی ساده و کامل برای توسعه‌دهندگان مبتدی اندروید در هر سطحی که قرار دارند. از این راهنما می‌توانید برای ساخت اولین برنامه‌ی اندرویدی خود استفاده کنید.Android Development CodeLabsیکی از بهترین منابعی است که تقریبا همه‌ی توسعه‌دهندگان اندروید از همان ب بسم‌الله باید با آن آشنا باشند.Google Android Glossaryاگر تازه شروع به برنامه‌نویسی اندروید کرده باشید احتمالا مفاهیم و اصطلاحات جدید شما را حسابی گیج می‌کنند. نگران نباشید گوگل فکر اینجا را هم کرده، در لینک معرفی شده، تمامی اصطلاحات و مفاهیم برنامه‌نویسی اندروید به همراه مثال‌هایی شفاف و در محیطی زیبا توضیح داده شده است.Official Android Training Guidesاین هم راهنمای رسمی گوگل برای برنامه‌نویسان اندروید است که تقریبا تمام چیزهایی که باید در مورد توسعه‌ی اندروید بدانید در آن گنجانده شده و کاربران مبتدی می‌توانند قدم به قدم با دنبال کردن این منبع آموزشی ارزشمند که مثال‌های زیادی نیز در آن درج شده، سطح مهارت‌های خود را افزایش دهند.آنچه دو سال برنامه‌نویسی اندروید به من آموختهمیشه استفاده از تجربیات دیگران سفارش شده است. اطلاعاتی که در این لینک درج شده، تجربیات دو ساله‌ی یک توسعه‌دهنده‌ی اندروید است که قطعا با مطالعه‌ی آن اطلاعات زیادی دستگیرتان می‌شود. این مقاله را حتما بخوانید.XML Basicsبا XML آشنا نیستید؟ پس احتمالا در ساخت واسط گرافیکی برنامه با مشکل مواجه هستید. در این راهنما، اطلاعات خوبی در این باره آمده است.A Beginner’s Guide to HTTP and RESTدر صورتی که تمایل به ارتباطات اینترنتی، اتصال به وب‌سرویس‌ها و ساخت API برای اپلیکیشن‌تان دارید ضروری است پیش از هر کاری درک خوبی از HTTP و REST پیدا کنید. دوره‌ی آموزشی آسان و مناسبی برای مبتدی‌ها است که توسط گوگل تهیه شده و هدفش آموزش سریع مبانی و اصول برنامه‌نویسی اندروید است.برای توسعه‌دهندگان باتجربه اگر چندسالی مشغول برنامه‌نویسی اندروید بوده‌اید و چند برنامه هم ساخته‌اید بد نیست با مطالعه منابع ذکر شده در این بخش، دانش و مهارت‌های خود را در شاخه‌های مختلف توسعه‌ی اندروید ارتقاء دهید. Developing Android Apps یکی از بهترین دوره‌های آموزشی گوگل است که مهارت و دانش برنامه‌نویسان متوسط را وارد سطح جدیدی می‌کند.Common Design Patterns for Androidاگر چندین سال است که توسعه‌دهنده اندروید هستید و گهگاهی در پیدا کردن بهترین راهکارها برای برخورد با مشکلات به بن‌بست می‌خورید وقت استفاده از الگوهای طراحی است. در این لینک با اغلب الگوهای طراحی رایج آشنا خواهید شد که در سختی‌ها به کمکتان می‌آیند.درس‌هایی از ۲۱ برنامه‌ی اندرویدیدر دنیای اندروید، برنامه‌های متن‌باز زیادی وجود دارند. ولی اینکه کدام یک را برای بهبود مهارت‌های برنامه‌نویسی انتخاب کنید کار سختی است. در این مقاله چندین برنامه‌ی با کیفیت برای افزایش سطح مهارت‌هایتان معرفی شده است. MVC vs. MVP vs. MVVM on Android آموزش استفاده از بهترین معماری‌ها برای برنامه‌های اندرویدی به منظور توسعه، تست، اشکال‌زدایی و نگهداری بهتر.Modern Android: Ditching Activities and Fragmentsاکتیویتی و فرگمت‌ها دو مفهوم رایج در برنامه‌نویسی اندروید هستند که گاهی اوقات چرخه‌ی زندگی آن‌ها حسابی شما را سردرگم می‌کند. در این مقاله با روشی مدرن و جدید آشنا خواهید شد که به کمک آن استفاده صحیح و اصولی از این مفاهیم را خواهید آموخت.RxAndroid Tutorialبرای آشنایی سریع با برنامه‌نویسی واکنش‌گرا (Reactive Programming) از این راهنمای ساده و سریع استفاده کنید.A Deep Dive into Android View Constructorsدرک عمیقی از سازنده‌ی (constructor) ویوهای اندرویدی داشته باشید. با عملکرد سازنده‌ها و اینکه چگونه نهایت استفاده را از آن‌ها ببرید، آشنا شوید.Understanding Android Core: Looper, Handler, and HandlerThreadاگر خواستار یادگیری دقیق برنامه‌نویسی ناهمزمان در برنامه‌نویسی اندروید و ساخت برنامه‌هایی سریع، روان و باکیفیت هستید، این راهنما برای شماست.Measure, Layout, Draw, Repeat: Custom Views and ViewGroupsاین تور آموزشی درک عمیقی از چگونگی عملکرد ویوها و ویوگروپ‌ها و اینکه چطور می‌توانید کامپوننت‌های سفارشی برای واسط کاربری برنامه بسازید را فراهم کرده است.Understand Android Activity’s Launch Modesبسیاری از توسعه‌دهندگان اندروید، درک درستی از حالت‌های مختلف اجرای برنامه ندارند. در این راهنما آموزش کاملی ارائه شده است تا بهترین ناوبری را در برنامه‌ی خود پیاده کنید.How to Distribute Your Own Android libraryاحتمالا تا الان از کتابخانه‌های اندرویدی زیادی در برنامه‌های خود استفاده کرده‌اید. حال می‌خواهید خودتان کتابخانه بسازید و در اختیار دیگران قرار دهید ولی نمی‌دانید چطور شروع کنید. این راهنما برای شماست. به صورت عمیق و کاملی این مبحث را آموزش داده است.The Essential Google Play Store App Pre-Release Checklistانتشار موفق برنامه در پلی‌استور از جمله کارهایی است که نیازمند رعایت نکات فراوانی است. در راهنمای فوق چک‌لیستی از این نکات فهرست شده است که با رعایت آن، انتشار موفقی خواهید داشت.Android Architecture Blueprintsاین صفحه از گیت‌هاب، در واقع مرجعی از الگوها، معماری‌ها و ابزارهای مختلف برنامه‌نویسی اندروید است که برای هر کدام یک مثال هم ذکر شده است.How to Deploy Android Instant Apps: Web Apps Take on Native Appsاگر سر دوراهی مانده‌اید که برنامه‌ی تحت وب یا برنامه Native اندرویدی بسازید بررسی اطلاعات این راهنما کمک‌کننده است.The Best Productivity Tools for Android Developersدر صورتی که مدت‌ها به برنامه‌نویسی اندروید مشغول بوده‌اید و اکنون دنبال راهی برای افزایش بهره‌وری و سرعت بخشیدن به فرایند توسعه هستید، راهنمای فوق را بررسی کنید تا با بهترین ابزارها برای این کار آشنا شوید. Use Android Studio Like a Proتوسعه‌دهندگان اندروید تقریبا هر روز با اندروید استودیو سروکار دارند ولی جالب است بدانید که خیلی از آن‌ها از تمام توانایی‌های این ابزار سودمند استفاده نمی‌کنند. در این لینک اطلاعات ارزشمندی از قابلیت‌های مختلف اندروید استودیو آمده است که توصیه می‌کنیم حتما بخوانید.بهترین روش‌ها در برنامه‌نویسی اندروید در ادامه قصد داریم بهترین روش‌ها یا بهترین تمرین‌های (Best Practice) در برنامه‌نویسی اندروید را به منظور توسعه‌ی برنامه‌هایی بهتر، تمییزتر و قاعده‌مندتر معرفی کنیم. استفاده از این روش‌ها بخصوص در تیم‌های برنامه‌نویسی که تمییز بودن کدها و نگهداری آسان آن برای تمام اعضا از اهمیت بالایی برخوردار است، به کارتان خواهد آمد.Android Development Best Practicesدر این لینک کلی روش‌های خوب به همراه منابع آن که چندین جنبه از برنامه‌نویسی اندروید را شرح داده است، گردآوری شده است.Android strings.xml — Things to Rememberبهترین تکنیک‌ها و روش‌های استفاده از فایل strings.xml را آموزش می‌دهد.Android Guidelinesیکی از بهترین و کامل‌ترین منابعی است که بهترین تمرینات برنامه‌نویسی را برای جنبه‌های مختلف اندروید ارائه کرده است. این راهنما تقریبا هر چیزی که به دنبال آن باشید را شامل می‌شود.Best Practices for Android for Work in the Enterpriseدر این راهنما تمام چیزهایی که برای ساخت اپلیکیشن‌های اندرویدیِ مناسب شرکت‌ها و محیطهای تجاری بزرگ لازم است، توضیح داده شده است.Android Development — Some of the Best Practicesلیستی فشرده و مفید از از بهترین روش‌هایی که برای ارائه برنامه‌های باکیفیت اندرویدی لازم دارید.(Effective Java for Android (Cheatsheetکتاب Effective Java نوشته‌ی جوشیا بلاک یکی از کتاب‌های مشهور آموزش زبان جاوا است که روش نوشتن کدهای باکیفیت جاوا را آموزش می‌دهد. لینک فوق همان نکات را برای کدنویسی در دنیای اندروید توضیح داده است.Top 7 Tips for RxJava on Androidاگر تصمیم گرفته‌اید از برنامه‌نویسی واکنش‌گرا برای ساخت برنامه‌های اندروید استفاده کنید بهتر است به اطلاعات مندرج در این لینک توجه ویژه‌ای داشته باشید. این راهنما کمک می‌کند تا از اشتباهات رایج در این راه بپرهیزید.Hiding Secrets in Android Appsمقاله‌ای عمیق و دقیق در مورد تکنیک‌های رایج ذخیره‌سازی اطلاعات حساس نظیر پسورد، API Key و … در برنامه به همراه ذکر منافع و معایب هر کدام.ساخت برنامه‌های زیبا برنامه‌ی شما هرچقدر هم به‌دردبخور باشد ولی رابط گرافیکی خوبی نداشته باشد محکوم به شکست است. یک اینترفیس زیبا باعث جذب کاربران شده و در بعضی از موارد، تاحدودی نقاط ضعف احتمالی برنامه را هم پوشش می‌دهد.Material Design: An In-Depth Lookیک مقاله‌ی تمییز در مورد طراحی متریال در اندروید که درک عمیقی از این شیوه طراحی به شما منتقل خواهد کرد.Animate All The Things. Transitions in Androidجلوه‌های انیمیشنی یکی از مهم‌ترین جذابیت‌هاست که با استفاده صحیح از آن در برنامه‌های اندرویدی می‌توانید نظر کاربران را جلب کنید. در این راهنما هرآنچه در مورد ساخت انیمیشن‌های زیبا در اندروید لازم باشد ذکر شده است.Building Interfaces with ConstraintLayoutیکی از Layoutهای مشهور اندروید، ConstraintLayout است. در این راهنما روش استفاه از این Layout برای ساخت واسط کاربری آموزش داده شده است.Eight Don’ts For Your Material Design Appبا پرهیز از ۸ اشتباه رایج در طراحی متریال، کیفیت طراحی خود را افزایش دهید.Material Design is Design Scienceمقاله‌ای ارزشمند بوده که از دید علمی به طراحی متریال نگاه می‌کند. در این مقاله اطلاعات ارزشمندی وجود دارد که با رعایت آن در ساخت واسط گرافیکی، بازخورد خوبی شاهد خواهید بود.سایر منابع تعداد دیگری از مقالات ارزشمند که نمی‌شود آن‌ها را نادیده گرفت.۴۰ Leading Android Developers to Follow on Twitterاگر می‌خواهید دانش برنامه‌نویسی اندرویدتان را بروز نگه دارید، ۴۰ تن از متخصصین اندروید را در توییتر دنبال کنید تا از جدیدترین رویدادهای دنیای اندروید بی‌خبر نمانید.Get Started with Android Things Today!آیا علاقه‌مند برنامه‌نویسی برای اینترنت اشیاء از طریق چارچوب اندروید هستید؟ این راهنمای خوبی برای شروع کار است.Android Wear Tutorial — A Comprehensive Introductionاگر تمایل به ساخت برنامه برای دیوایس‌های پوشیدنی اندروید دارید حتما مقدمه‌ی کاملی که در این لینک آمده را بررسی کنید.Android Resources and Attributes Cheatsheetمقاله‌ای بسیار جالب در مورد resource و attribute در اندروید. در این مقاله چیزهایی وجود دارد که ممکن است تا الان از ان بی‌خبر بوده باشید.An Introduction to Android TVآیا تمایل به ساخت برنامه برای صفحات بزرگ تلویزیون اندروید (Android TV) دارید؟ این یک مقاله‌ی جمع‌وجور و فشرده است که مقدمات این کار را توضیح داده است.سایت‌های مفیدآیا دوست دارید در جریان جدیدترین اخبار، آموزش‌ها و رویدادهای دنیای اندروید باشید؟ لینک‌های پایین را ببینید.Android Weeklyهیچگاه اخبار داغ دنیای برنامه‌نویسی اندروید، مقالات و ویدیوهای جدید را از دست ندهید. این سایت هر هفته جدیدترین اخبار را به ایمیل شما می‌فرستند.Fragmented Podcastاگر عاشق گوش دادن به پادکست هستید پس نباید این پادکست را که هر هفته در مورد جدیدترین ابزارها، الگوها و بهترین تمرین‌های برنامه‌نویسی اندروید صحبت می‌کند از دست بدهید.CodePath Android Cliffnotesیکی از بهترین و بروزترین منابع اندروید است که در آنجا می‌توانید راهنما و تورهای آموزشی فراوانی در مورد هر چیزی در برنامه‌نویسی اندروید پیدا کنید. نکته‌ی جالب در مورد این سایت، متن‌باز بودنش و امکان همکاری همه‌ی افراد در توسعه‌ی آن است.Caster IOمجموعه‌ای از فیلم‌های با کیفیت که در موضوعات مختلف اندروید هر هفته منتشر می‌شود.Styling Androidهمانطور که از نامش پیداست، مکانی مناسب برای پیدا کردن اطلاعات مورد نیاز درباره‌ی طراحی واسط و تجربه‌ی کاربری در برنامه‌های اندرویدی است.The Commons Blogمارک مورفی که شهرتش، بیشتر به خاطر کتاب معروف او تحت عنوان Busy Coder’s Guide to Android Development است در این سایت چیزهای جالبی در مورد برنامه‌نویسی اندروید نگاشته است.Vogellaدر این سایت تورهای آموزشی زیادی درباره‌ی موضوعات مختلف در توسعه‌ی اندروید وجود دارد که هم برای کاربران مبتدی و هم حرفه‌ای مفید است.Android Developers Community on Redditجامعه‌ای بسیار فعالی از توسعه‌دهندگان اندروید که درباره‌ی موضوعات مختلفِ برنامه‌نویسی اندروید بحث و گفتگو کرده و اطلاعاتشان را به اشتراک می‌گذارند.Official Android Developers Blogوبلاگ رسمی گوگل که از طریق آن مستقیما با توسعه‌دهندگان اندروید در ارتباط است. بسیاری از خبرهای دنیای برنامه‌نویسی اندروید و وعده‌های گوگل پیش از آنکه جای دیگری درز کند در اینجا منتشر می‌شود.منبعShaarp.com