کاه از خودت نیست،کاهدون که از خودته!


ســـــــــلـــــامـــــــ

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

دیدم موضوع جالبیه

مثلا به این فکر کنید که یه جایی از یه کد لازمه response تو قالب json از یه API بگیرید

ما فرض می کنیم شما می خواین از این API تعداد مبتلاهای تایید شده از دیروز تا امروز(بی منطقی تمام رو تو این API شاهد هستیم :|) بگیرید

و همچنین فرض می کنیم از پایتون استفاده می کنید.

عموما همچین کدی می نویسید نه؟

import requests
url=&quothttps://api.covid19api.com/total/country/iran/status/confirmed?from=2021-11-10T00:00:00Z&to=2021-11-11T00:00:00Z&quot
response=requests.get(url)
json_response=response.json()
print(json_response[0][&quotCases&quot])

همه این متغیر ها یه بخشی از حافظه رو اشغال می کنن و در نهایت تعریف هر کدوم یه مقدار خیلی کمی از سرعت اجرا کم می کنه.

پس چرا اینطوری ننویسیمش؟

import requests
url=&quothttps://api.covid19api.com/total/country/iran/status/confirmed?from=2021-11-10T00:00:00Z&to=2021-11-11T00:00:00Z&quot
print(requests.get(url)[0][&quotCases&quot])

یا یه مثال دیگه:

فرض کنید دارید یه بات برای دیسکورد می نویسید که خودش شی گرا نیست ولی شما یه کلاس برای توکن و متغیر های کانفیگ ایجاد کردید!

مثلا:

class Config:
	Token = &quotYour Token&quot
	#other configs...

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

اولین نکته ای (که ربط زیادی هم نداره ولی میگم :|) اینه که اصولا توکن و چیز های دیگه ای که باید مخفی بمونن تو خود کد ذخیره نمی کنن

تو یه فایل مخفی به اسم .env یا با کامند export ذخیرش می کنن و مثلا توی پایتون با این کد میگیرنش:

import os
os.getenv(&quotTOKEN&quot)

دومین نکته اینه که اگه خود کدتون شی گرا نیست، پس لزومی هم نداره که کلاس اضافی برای کانفیگ ایجاد کنید

کافیه یه متغیر ایجاد کنید.به همین سادگی :)



من قبول دارم که بعضی متغیر ها و کلاس ها و ... برای خوانایی و راحتی کار لازمن

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

فقط هم تو پایتون نیست

تو تمام فریمورکا و زبان ها هست

در آخر هم عذر می خوام اگه ناشیانه منظورم رو بیان کردم :,)

حالا که تا اینجا اومدید...

حتما یوتیوب رو ساب کنید و اینستاگرام هم دنبال کنید که آموزشای باحالی تو راهن?

کد های آموزش هارو هم می تونید توی گیت هاب تمشک پیدا کنید

راستی اگه دیسکورد دارین حتما تو سرور دیسکورد هم جوین بشید که برنامه ها داریم!

اگه این پست رو دوست داشتین لایک، کامنت و دنبال کردن انتشارات یادتون نره?

© منابع : تمشک