دانشجوی مهندسی کامپیوتر - نرم افزار دانشگاه فردوسی مشهد



سلام 

زبان برنامه نویسی جدید کاتلین چطوره ؟ 

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

باید بگم که من قبلا هم برنامه نویسی اندروید ( تقریبا از سال 92 که کافه بازار جون گرفت ) انجام میدادم البته زبان اصلی من زبان برنامه نویسی جاوا بود . 

در سال های قبل جاوا را برای تولید اپلیکیشن های اندروید در محیط ایکلیپس انجام میدادیم . 

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

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

مشکلات جدید با اندروید استودیو 

مشکلات اولیه محیط اندروید استودیو Android Studio

خب نسخه های اولیه خود اندروید استودیو هم کلی باگ داشت و مشکلات کند بودن و اشغال کردن خیلی زیاد از منابع بطوریکه من رم 8 داشتم و لپتاپم با نسخه های اولیه اندروید استودیو هنگ میکرد .

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

حالا مشکل که ایکلیپس بود شده بود دوتا هم محیط جدید که مشکل داشت و کند بود هم محیط قدیمی که مشکل داشت و کم کم منسوخ میشد . ( البته برای برنامه نویسی اندروید منسوخ میشد وگرنه هنوزم ایکلیپس جاهای دیگه کاربرد داره ) 

یکی از روش هایی که برای حل مشکلات سرعت اندروید استودیو پیشنهاد میشه خریدن یک هارد SSD بود و ارتقا رم به بالای 8 گیگ .

البته من همه ی این کارها رو کردم ولی محیط اندروید استودیو بازم ادم رو اذیت میکرد 

راستی یادم رفت بگم نسخه های اولیه این محیط خیلی سرد بود ادم بازش میکرد فکر میکرد یه محیط نرم افزاری مثل فتوشاپ باز کرده اصلا شبیه چیزی برای برنامه نویسی نبود :‌))))

مشکلات اندروید استودیو با انتشار سریع نسخه های جدید توسط تیم گوگل بهبود پیدا کرد و رفته رفته بهتر شد و اینجا بود که من برای همیشه به ایکلیپس گفتم بای بای  . :)

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

مشکلات زبان جاوا در برنامه نویسی اندروید 

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

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

یکی از اون خطاها که بلاخره در هر برنامه نویس اندرویدی میخابه خطای معروف NullPointerException بود که اسمشو نمیدونم خطای چند میلیون دلاری گذاشته بودن

ولی این مسئله نبود فقط کدهای جاوا برای برنامه نویسی اندروید سالم نبودند یعنی اگر در یک جایی یک هو یک متغیری مقدارش خالی میشد اپلیکیشن شما کرش میکرد .

کیفیت اپلیکیشن های اندرویدی در مقابل اپ هایی که برای رقیب اندروید یعنی IOS تولید میشدن کمتر بود اپ های اندروید بیشتر کرش میکردن و زودتر باطری رو خالی میکردن و منابع زیادی از گوشی رو میگیرفتن 

تا اینکه در شرکت خوب جت برینز که خود اندروید استودیویی که بالا توضیح دادم هم بر پایه ی یک محیط اوپن سورس به نام اینتلی جی که ساخته ی شرکت جت برینز هست توسعه داده شده . 

یعنی عملا هسته ی اندروید استودیو برمیگرده به توسعه دهندگان جت برینز

خب از بحث دور نشیم داشتیم درمورد محصول جدید جت برینز میگفتیم بله ! تا اینکه در شرکت خوب جت برینز یک زبان برنامه نویسی جدیدی خلق شد به نام کاتلین ( kotlin ) که این زبان برنامه نویسی در ماشین مجازی جاوا اجرا میشد درست مثل خود کدهای جاوا ! 

یعنی قابلیت این رو داشت که کدهایی با این زبان نوشته بشه و در اندروید اجرا بشه !‌

تولد زبان کاتلین 

اما کاتلین در دل اکثر برنامه نویسان اندرویدی جا باز کرد . این مسئله زمانی بود که هنوز خیلی ها نمیدونستن کاتلین چیه ولی خیلی های دیگه اپلیکیشن های خودشون رو با کاتلین مینوشتن و در نهایت خیلی از مشکلات جاوا ، دردسرهای جاوا و همچنین باگ هایی که با جاوا تولید میشد را دیگه نداشتن 

عملا کاتلین مزیت های زیر رو نسبت به جاوا داره :‌

  1. کدنویسی باهاش راحت تره 
  2. کد های کمتری قراره بنویسید (‌ خلاصه است )
  3. یادگیریش آسون تره 
  4. کدهای سالمی داره بخاطر وجود سیستم Null Safety که باعث میشه دیگه همینطوری متغیرها مقدار Null به خودشون نگیرن که فردا اپلیکیشن شما هزار بار کرش بکنه 
  5. اپ های تولید شده منابع کمی از سخت افزار اندروید اشغال میکنند
  6. برنامه های تولید شده باطری کمتری از دیوایس اندرویدی مصرف میکند چون مصرف منابعشون کمه طبیعیه
  7. و خیلی چیزای دیگه 

 

 


تبلیغات

آخرین ارسال ها

آخرین جستجو ها

جدیدترین های تکنولوژی | بازی | نرم افزار مرکز کاغذ دیواری zZSadBoyZz ساسان مارکت لینک کانال های تلگرام دانلود خلاصه کتاب مبانی اندیشه اسلامی ۲ حسن یوسفیان تاریخچه خودرو سازی کشور آلمان مای پیکس لاو | فیلم و عکس | خبر و سرگرمی سیگنال بورس پروژه های عمرانی و ساخت و ساز تهران