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

سلام دوستان امیدوارم حالتان خوب باشد امروز می خواهیم به بررسی deprecated در برنامه نویسی اندروید بپردازیم شاید بپرسید deprecated چیست ؟ در ادامه به تمامی سوال های شما که ممکن است پیش بیاید پاسخ خواهیم داد در ادامه با ما همراه باشید.

deprecated چیست ؟

شاید در زمانی هایی که برنامه نویسی انجام می دهید متوجه شده باشید در بعضی مواقع بروی کد شما یک خط کشیده می شود همانند تصویر زیر

در بالا بروی defaults خط کشیده است و اگر موس را بروی آن ببرید می بینید یک نوشته برای شما ظاهر می شود و بیشتر مواقع پیامی که در آن کادر نوشته می شود برابر با This method is deprecated است و زمانی که بروی more کلیک کنید می توانید یک توضیحاتی درباره متود جایگزین آن را مشاهده کنید خود deprecated به معنی منسوخ شده است ولی در اینجا به معنی اینکه “این متود پشتیبانی می شود ولی ما یک راه حل بهتر به جای استفاده از این متود داریم” است ولی نباید از این بگذریم که هر سال متود های منسوخ شده از اندروید حذف شده و جای خود را به متودهای جدید می دهند پس امکان دارد متود یا کلاس ها در آینده حذف شوند.
شاید بپرسید

آیا استفاده از متود یا کلاس های deprecated  (منسوخ شده) کار درستی است ؟

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

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

معایب

  • امکان دارد در آینده متود های منسوخ شده حذف شوند و شما در آپدیت های بعدی اپلیکیشن مجبور باشید بخش زیاد از اپلیکیشن خود را تغییر دهید به همین علت استفاده از متود های منسوخ شده پیشنهاد نمی شود.
  • متود یا کلاس های منسوخ شده حتما مشکلاتی داشته اند که هم اکنون جای خود را به متود یا کلاس های جدید داده اند.
  • استفاده از متود های منسوخ شده باعث افزایش حجم برنامه شما می شود (البته زیاد به چشم نمی آید اگر برنامه بسیار سنگین باشد خیلی تاثییر دارد )
  • برنامه نویسی با تکنولوژی های جدید بسیار راحتر است یک مثال ساده بزنم به جای اینکه ما از setBackgroundDrawable استفاده کنیم می توانیم از setDrawable  استفاده کنیم .

 

در صورتی که از متود های deprecated شده استفاده کنیم چه اتفاقی برای اپلیکیشن می افتد ؟

به صورت معمول برنامه شما تا زمانی که آن متود از Sdk حذف شود کار می کند ولی با حذف متود از SDK برنامه شما در گوشی ها کرش (Crash) می دهد.
 
اگر از متودهای منسوخ شده استفاده می کنید هم اکنون آنها را تغییر دهید !
در مطالب بعدی سعی می کنیم لیست متود های منسوخ شده را برای شما قرار دهیم.
 
موفق و پیروز باشید.
 

مطالعه بیشتر