ذن چهارم پایتون میگه که پیچیده بهتر از به طرز افتضاحی پیچیده ست!
اگه پیچیدگی قابل اجتناب نیست، مطمئن بشید که ساختار داره و قابل مدیریته
@normal_developer
اگه پیچیدگی قابل اجتناب نیست، مطمئن بشید که ساختار داره و قابل مدیریته
def parse(data):
for i in range(len(data)):
for j in range(len(data[i])):
if isinstance(data[i][j], int):
data[i][j] *= 2
def parse(data):
for row in data:
row[:] = [x * 2 if isinstance(x, int) else x for x in row]
@normal_developer
👌4
ذن پنجم پایتون که به تمیز تر شدن کدها کمک میکنه میگه که صاف بهتر از تو در تو هست.
تا جای ممکن از تو در تو کردن اجتناب کنید.
مثال:
@normal_developer
تا جای ممکن از تو در تو کردن اجتناب کنید.
مثال:
def calculate():
if condition1:
if condition2:
if condition3:
return result
def calculate():
if not (condition1 and condition2 and condition3):
return None
return result
@normal_developer
👍3👏1
ذن شیشم پایتون میگه که جدا بهتر از متراکمه.
یعنی بهتره کدا رو تا حد ممکن فشرده نکنین تو یه خط.
مثال:
@normal_developer
یعنی بهتره کدا رو تا حد ممکن فشرده نکنین تو یه خط.
مثال:
result = [x * 2 for x in range(10) if x % 2 == 0]
result = []
for x in range(10):
if x % 2 == 0:
result.append(x * 2)
@normal_developer
🔥2👌1
ذن هفتم میگه که خوانایی کد مهمه.
کدها بیشتر از اینکه نوشته بشن، خونده میشن. پس سعی کنید یه جوری بنویسید که قابل خوندن باشه
مثال:
کدها بیشتر از اینکه نوشته بشن، خونده میشن. پس سعی کنید یه جوری بنویسید که قابل خوندن باشه
مثال:
def f(a,b):return a+b
def add(a, b):
"""Add two numbers."""
return a + b
👌3
یکی از مهمترین ذن های پایتون، ذن هشتمه.
ذن هشتم میگه موارد خاص شما هیچوقت اونقدری خاص نیستن که بخواید قوانین رو براشون بشکنید.
همیشه باید از قوانین پیروی کنید.
مثال:
@normal_developer
ذن هشتم میگه موارد خاص شما هیچوقت اونقدری خاص نیستن که بخواید قوانین رو براشون بشکنید.
همیشه باید از قوانین پیروی کنید.
مثال:
def divide(x, y):
if y == 0:
return "undefined"
return x / y
def divide(x, y):
if y == 0:
raise ValueError("Cannot divide by zero.")
return x / y
@normal_developer
👍4👌1
Normal Developer
ادامه ذن های پایتون رو بذاریم؟
ادامه ذن های پایتون با ۲۶ رای موافق و ۵ رای مخالف، بدون رای ممتنع تصویب شد
👍7
Normal Developer
یکی از مهمترین ذن های پایتون، ذن هشتمه. ذن هشتم میگه موارد خاص شما هیچوقت اونقدری خاص نیستن که بخواید قوانین رو براشون بشکنید. همیشه باید از قوانین پیروی کنید. مثال: def divide(x, y): if y == 0: return "undefined" return x / y def divide(x…
ذن نهم پایتون میگه که:
اگرچه عملی بودن، شفافیت رو شکست میده.
بعضی وقتا راه حل های عملی، قوانین سخت گیرانه رو نادیده میگیره.
مثلا:
@normal_developer
اگرچه عملی بودن، شفافیت رو شکست میده.
بعضی وقتا راه حل های عملی، قوانین سخت گیرانه رو نادیده میگیره.
مثلا:
# Purity
result = []
for x in data:
if isinstance(x, int) and x % 2 == 0:
result.append(x)
# Practical
result = [x for x in data if isinstance(x, int) and x % 2 == 0]
@normal_developer
👌5
مشکل خود سنیور پنداری!
جدیدا خیلیا رو میبینم که قبل از تخصصشون عنوان سنیور رو وصل میکنن. ولی واقعیت امر اینه که سنیور بودن یه لقب نیست. به زمان هم خیلی بستگی نداره که بعد از فعالیت n ساله در یک زمینه شما به این مرحله برسید.
کسی که خودش رو سنیور خطاب میکنه در واقع مهارت های خیلی زیادی رو باید داشته باشه که یکیشون برنامه نویسیه!
مهارت های نرم، مهارت یادگیری چیزهای جدید، طرز فکر و راهکار یابی و ... بخشی از پیشنیاز این صفت میشه.
تو فرایند جذب نیروی جدید برای شرکتمون رزومه های زیادی رو چک کردم و واقعا همه دوست دارن این عنوان رو قبل اسمشون داشته باشن.
عجیب ترین چیزی که دیدم هم مربوط میشه به یه فردی که بعد از یه بوت کمپ با یه شرکت شروع به همکاری چند ماهه کرده بود و عنوان شغلی خودش تو اون شرکت رو نوشته بود "Senior Django Developer"!
یعنی در فاصله کمتر از چند ماه به این درجه از عرفان رسیده بوده!
@normal_developer
جدیدا خیلیا رو میبینم که قبل از تخصصشون عنوان سنیور رو وصل میکنن. ولی واقعیت امر اینه که سنیور بودن یه لقب نیست. به زمان هم خیلی بستگی نداره که بعد از فعالیت n ساله در یک زمینه شما به این مرحله برسید.
کسی که خودش رو سنیور خطاب میکنه در واقع مهارت های خیلی زیادی رو باید داشته باشه که یکیشون برنامه نویسیه!
مهارت های نرم، مهارت یادگیری چیزهای جدید، طرز فکر و راهکار یابی و ... بخشی از پیشنیاز این صفت میشه.
تو فرایند جذب نیروی جدید برای شرکتمون رزومه های زیادی رو چک کردم و واقعا همه دوست دارن این عنوان رو قبل اسمشون داشته باشن.
عجیب ترین چیزی که دیدم هم مربوط میشه به یه فردی که بعد از یه بوت کمپ با یه شرکت شروع به همکاری چند ماهه کرده بود و عنوان شغلی خودش تو اون شرکت رو نوشته بود "Senior Django Developer"!
یعنی در فاصله کمتر از چند ماه به این درجه از عرفان رسیده بوده!
@normal_developer
👍9🤣4❤2
ذن دهم پایتون
نباید خطاها رو بیصدا رد کرد.
همیشه باید اطلاعاتی از خطایی که برنامه خورده رو نشون بدید.
مثال:
@normal_developer
نباید خطاها رو بیصدا رد کرد.
همیشه باید اطلاعاتی از خطایی که برنامه خورده رو نشون بدید.
مثال:
# Bad one
try:
risky_operation()
except:
pass
# Good one
try:
risky_operation()
except Exception as e:
print(f"Error: {e}")
@normal_developer
👍4
ذن یازدهم در ادامه دهمی میگه که:
مگه اینکه صراحتا و از عمد نخواسته باشید که نشونی ازش باشه.
اینجوری مثلا
@normal_developer
مگه اینکه صراحتا و از عمد نخواسته باشید که نشونی ازش باشه.
اینجوری مثلا
try:
risky_operation()
except FileNotFoundError:
pass # Ignore missing files
@normal_developer
👍4
ذن دوازدهم میگه در هنگام مواجه شدن با یه چیز مبهم، حدس نزنید.
حدس زدن رو کنار بذارید، واضح باشید.
مثلا:
@normal_developer
حدس زدن رو کنار بذارید، واضح باشید.
مثلا:
# Ambigous
def process(data):
if data:
return data + " processed"
def process(data):
if isinstance(data, str):
return data + " processed"
raise ValueError("Invalid input: Expected a string.")
@normal_developer
👍8
ذن سیزدهم پایتون میگه که باید یه راه و ترجیحا فقط یه راه برای انجام کار باشه.
یعنی راه های استاندارد و ساده و شفاف رو برای حل مشکلات انتخاب کنید.
مثال:
@normal_developer
یعنی راه های استاندارد و ساده و شفاف رو برای حل مشکلات انتخاب کنید.
مثال:
# less obvious
numbers = [1, 2, 3, 4]
i = 0
while i < len(numbers):
print(numbers[i])
i += 1
# obvious
numbers = [1, 2, 3, 4]
for number in numbers:
print(number)
@normal_developer
👍6
Normal Developer
مشکل خود سنیور پنداری! جدیدا خیلیا رو میبینم که قبل از تخصصشون عنوان سنیور رو وصل میکنن. ولی واقعیت امر اینه که سنیور بودن یه لقب نیست. به زمان هم خیلی بستگی نداره که بعد از فعالیت n ساله در یک زمینه شما به این مرحله برسید. کسی که خودش رو سنیور خطاب میکنه…
این پست ویکی تجربه نکات خوبی رو گفته در این مورد.
https://t.me/wiki_tajrobe/2303
با تشکر از @Feredon2
@normal_developer
https://t.me/wiki_tajrobe/2303
با تشکر از @Feredon2
@normal_developer
Telegram
ویکی تجربه - استخدام و بررسی شرکت ها
سنیور کیه؟ سنیور کسیه که:
حل مسئله براش یه بازیه: مارتین فاولر میگه یه سنیور باید بتونه مشکلات پیچیده رو قشنگ تحلیل کنه و راهحلهایی بده که نه تنها جواب بده، بلکه بعداً هم دردسر درست نکنه.
یادگیری براش آب خوردنه: اندرو هانت و دیوید توماس تو کتاب "The Pragmatic…
حل مسئله براش یه بازیه: مارتین فاولر میگه یه سنیور باید بتونه مشکلات پیچیده رو قشنگ تحلیل کنه و راهحلهایی بده که نه تنها جواب بده، بلکه بعداً هم دردسر درست نکنه.
یادگیری براش آب خوردنه: اندرو هانت و دیوید توماس تو کتاب "The Pragmatic…
👍4
This media is not supported in your browser
VIEW IN TELEGRAM
قابلیت خفن و پشم ریزون Air Transmission سیستم عامل هارمونی شرکت هواوی که به تازگی رونمایی شده!
@normal_developer
@normal_developer
😨5
یه چیزی که تو رادار کلادفلر توجه منو جلب کرد اینه که ۸۵.۵٪ از درخواستای اینترنت ایران رو ربات ها انجام میدن!
این امار رو برای هیچ کشور دیگه ای ندیدم
@normal_developer
این امار رو برای هیچ کشور دیگه ای ندیدم
@normal_developer
🥴6👍1
آنر عرضه جهانی اولترابوک فوقمدرن مجیکبوک آرت ۱۴ با تراشه اسنپدراگون ایکس الیت را آغاز کرد
این لپ تاپ با ضخامت ۱۰ میلیمتر و ورزن ۱ کیلو گرم میتونه تا حداکثر ۱۵ ساعت پخش ویدیو بده.
حداکثر کانفیگ این لپ تاپ نازک با پردازنده Snapdragon Xelite میتونه ۳۲ گیگابایت رم و ۱ ترابایت حافظه داخلی باشه.
قیمتشم تو بازار آلمان ۱۶۹۹ یورو ( حدودا 130 میلیون تومن)
@normal_developer
این لپ تاپ با ضخامت ۱۰ میلیمتر و ورزن ۱ کیلو گرم میتونه تا حداکثر ۱۵ ساعت پخش ویدیو بده.
حداکثر کانفیگ این لپ تاپ نازک با پردازنده Snapdragon Xelite میتونه ۳۲ گیگابایت رم و ۱ ترابایت حافظه داخلی باشه.
قیمتشم تو بازار آلمان ۱۶۹۹ یورو ( حدودا 130 میلیون تومن)
@normal_developer
👍7🔥1