برنامه نویسی

شروع کار با اندروید ایده بدی بود

برای خواندن مقالات بیشتر از این قبیل به وبلاگ من مراجعه کنید

من پس از گذراندن اولین دوره کارآموزی، یادگیری اندروید را شروع کردم که اولین شغلم را برایم به ارمغان آورد. ولی من خیلی ازش ناراحت شدم!

بعد از 1.5 سال تغییر کردم واکنش نشان دهید و هرگز به عقب نگاه نکرد این دلیلی است که فکر می کنم هرگز نباید آن راه را می رفتم.

1. راه حل های مختلف برای یک مشکل

به دلایلی عجیب در بسیاری از موارد، راه های متعددی برای انجام یک کار واحد وجود دارد. ممکن است فکر کنید

آیا این چیز خوبی نیست؟

پاسخ من خیر است! برای توسعه دهندگان با تجربه؟ اره حتما!
اما اگر شما یک تازه تر آن وقت بیشتر اوقات شما گیج خواهید شد و برای من اینطور بود.

2. اشکال زدایی مشکل است

یکی از اصلی‌ترین نکات ناامیدکننده توسعه اندروید این است که مشخص کردن مشکل اغلب دشوار است.

  • اول از همه، پیام دیباگ به نظر من وحشتناک است.

  • تصور کنید سعی می کنید یک مشکل را برای تمام روز اشکال زدایی کنید و راه حل این بود IDE خود را مجددا راه اندازی کنید! شما به عنوان یک تازه کار از کجا باید آن را بدانید؟

  • گاهی اوقات مشکلات از دستگاهی به دستگاه دیگر متفاوت است. نسخه به نسخه دستیابی به هر وسیله ممکن بسیار سخت است

گاهی اوقات شما فقط یک راه حل می نویسید و دعا می کنید که کار کند زیرا به همه دستگاه های اندرویدی موجود در آنجا دسترسی ندارید!

3. چندین بهترین شیوه

وقتی باید از کلمه استفاده کنیم Best با یک plural noun پس خود مشکل بزرگی است 😛

اما متأسفانه، این دقیقاً در مورد اکوسیستم اندروید وجود دارد.

چندین بهترین روش برای یک مشکل وجود دارد. قوانین متعددی برای طراحی UI، طراحی فعالیت، سلسله مراتب کلاس و بسیاری موارد دیگر وجود دارد.

اما نکته ناامید کننده این است که هر از گاهی توسط خود SDK تغییر می کند!

4. یادگیری به عنوان یک مبتدی سخت است

یادگیری اندروید جذاب و سرگرم کننده است. هیچ شکی در مورد آن وجود ندارد. وقتی فهمیدم می توانم چیزی بسازم که روی تلفن خودم اجرا شود، من را مجذوب خود کرد. به عنوان یک تازه تر، احساس بسیار خوبی داشت.

اما وقتی شروع به یادگیری کردم، دریافت ایده برایم سخت بود روش های چرخه حیات و چگونه همه چیز با هم کار می کرد.

حتی برای یک برنامه دیگ بخار، فایل های زیادی برای درک وجود داشت.

خیلی زیاد هستند مفاهیم جدید برای یک مبتدی که ناامید شدم.

برعکس با توسعه وب، تنها چیزی که نیاز دارید یک ساده است HTML برای دیدن نتایج کار خود فایل کنید.

5. مانع ورود زیاد است

برای توسعه اندروید، به نظر من مانع بسیار زیاد است

  • شما به یک دستگاه قدرتمند (حداقل 8 گیگابایت رم) نیاز دارید

  • شما به یک دستگاه اندروید فیزیکی نیاز دارید (Emulator بسیار تشنه منابع است!)

  • برای افتتاح حساب پلی استور باید توانایی پرداخت با ارز بین المللی را داشته باشید!

  • منحنی یادگیری بسیار شیب دار است.

من می دانم که ممکن است این موارد در کشورهای دیگر کمتر رایج باشد. اما در کشور من، بسیاری از افراد را دیده ام که از توسعه اندروید صرفاً به این دلیل که نمی توانند لپ تاپ/کامپیوتر بهتری بخرند، دست کشیدند.

6. اکوسیستم کثیف

تعداد زیادی از کدهای مبتنی بر اندروید هنوز در جاوا نوشته شده است و بسیار پرمخاطب است!

همچنین، خوانایی کد در صورت خراب شدن SDK می تواند مشکل ساز شود. به نظر می رسد هیچ کس به آینده فکر نکرده است. فقط هر چیزی را که لازم است اضافه کنید.

انجمن اندروید چیزهای زیادی را در اکوسیستم درهم ریخته مانند پرتاب کرده است RxJava، Dagger و Data binding . اما همه مشکلات برطرف نشد.

بعد ما خیلی چیزهای دیگر مانند Kotlin، KTX، و Arrow

اما به نظر من انجام این کار فقط اکوسیستم پیچیده را پیچیده می کند.

7. مکانیسم انتشار وحشتناک

خوب، شما تمام مشکلات را غلبه کرده اید و یک برنامه عالی ساخته اید. بعد چی؟

اکنون می خواهید آن را در فروشگاه بازی منتشر کنید. اما آنقدرها هم که فکر می کنید بازیگوش نیست!

  • ابتدا باید یک حساب توسعه دهنده داشته باشید که برای شروع باید ۲۵ دلار بپردازید.

  • سپس باید یک فایل کلید داشته باشید (درست یادم نیست).

  • اشتراک گذاری APK برای چندین نسخه مشکل است

  • شما نمی توانید هر زمان که بخواهید فقط نام برنامه خود را تغییر دهید. (از لحاظ فنی می توانید این کار را انجام دهید اما تأثیر نامطلوبی بر سئو دارد)

برعکس، راه‌حل‌های میزبانی رایگان بسیار زیادی وجود دارد که برای توسعه وب کار نمی‌کنند.

فقط فشار دادن کد به GitHub برای مدیریت استقرار و به روز رسانی در اکثر موارد کافی است.

8. مدیریت دستگاه های مختلف

این یک مشکل در توسعه وب و اندروید است.

اما تفاوت این است که تعداد کمی از مرورگرها وجود دارد و به هر حال اکثر ویژگی ها در اکثر مرورگرها کار می کنند.

اما برای دستگاه های تلفن همراه؟ نه نه نه دوست من….

فقط 4 درصد یا کمتر از دو نسخه اصلی آخر اندروید استفاده می کنند

گاهی اوقات برای پشتیبانی از چندین نسخه اندروید نیاز داریم که در داخل کد شرطی قرار دهیم. که به عنوان یک توسعه دهنده جوان بسیار عجیب و ناامید کننده است!

9. بسیاری از جادوها، اما متاسفانه آنها کار نمی کنند!

آزاردهنده ترین چیز در مورد توسعه اندروید این است که تعداد بسیار زیادی وجود دارد عجب لحظاتی برای من.

اما متاسفانه، جادو ناپدید می شود پس از انتشار آن در فروشگاه بازی.

به عنوان مثال، یک ویژگی به نام minification وجود دارد که اندازه APK را کوچکتر نگه می دارد. اما اگر این کار را انجام دهید، برخی از چیزها کار نمی کنند (حتی برخی از عملکردهای Firebase که محصول خود گوگل است!).

اگر راه حل را پیدا کردید سرریز پشته همه خواهند گفت که شما باید Minification را حذف کنید و این تنها راه حل است.

سوال من این است که چرا یک ویژگی وجود دارد که توسط کسی قابل استفاده نیست؟ این نوع چیزها به راحتی یک توسعه دهنده جوان را ناامید می کند و همین اتفاق برای من افتاد!

نتیجه

این مقاله برای ضربه زدن به اندروید نبود. اندروید عالی است و من هنوز آن را دوست دارم. من اغلب برنامه های مفیدی برای سرگرمی می سازم.

اما چیزی که من فکر می‌کنم یادگیری اندروید به عنوان یک توسعه‌دهنده جوان می‌تواند تاثیر بدی در کل داشته باشد. یادگیری آن بسیار آسان تر و بهتر است توسعه وب و سپس به سراغ فضای موبایل

جذابیت فریبنده است و من آن را دریافت می کنم. مشاغل زیادی برای توسعه دهندگان موبایل وجود دارد و این آینده است. اما درست کردن اصول اولیه برای من مهمتر است. و فکر می کنم 1 سال از عمرم را صرفاً به این دلیل که با اندروید شروع کردم تلف کردم.

خودشه. روز خوبی داشته باشی! :دی

چیزی برای گفتن داری؟

از طریق با من در تماس باشید لینکدین یا وب سایت شخصی

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا