Forwarded from RandRng
دارم فصل ۱۰ کتاب Rust web programming 3rd edition رو ریویو میکنم، این بخش بهترین نکتهای هست که داره.
👍8
Forwarded from RandRng
خیلی پستهای مختلف میبینم که میگن؛ لایه logic, data, view, .... رو از هم جدا کنید و ازین حرفا (طرف ۲ هفتس کلین کد خونده) که نکته خیلی خوبی هست اما نه همه جا
و خیلی وقتا هم کد دستم اومده که دیدم؛ طرف زده
میرم کد رو میخونم میبینم ۱ خط کد نوشته یک return ساده.
این مدل جداسازی مزخرفترین کاری هست که میتونید انجام بدید.
نکتهاش توی کتاب بالا هم هست؛
دولوپر بعدی، بیچاره میشه تا ذهنش رو دور این چیزا سر و سامون بده و متوجه بشه فایلها و ... چطوری به هم ارتباط داره
همون کار رو میکنه؛ ۱۰۰ برابر خواناتر و تمیزتر هست و در صورت رشد کردن کدش؛ توی refactor جدا خواهد شد.
بعضی وقتا آدما برای
مثال دیگر:
این رو زیاد میبینم؛
بعد میرم توی مسیری که گفته شده:
ببین ذهن من چقدر باید اذیت بشه که توی توسعه کدهای بعدی یادش باشه که اینکار رو برای یک strip ساده انجام بده.
حالا فرض کنید یک پروژه ۱ میلیون خط کدی؛ اینطوری نوشته شده باشه!
بنظرتون این پروژه clean code هست یا shit code ؟!
یادتون نره؛ refactor پنالتی نیست، بلکه نشون میده شما به کد و پروژه زیر دستتون اهمیت میدید!
من ترجیح میدم
رو داشته باشم و وقتی این تمیز کاری دیتای ورودی بزرگتر شد اونوقت اون رو جدا کنم.
و خیلی وقتا هم کد دستم اومده که دیدم؛ طرف زده
get_repository
بعد این رو گذاشته توی یک پوشه و فایل دیگه میرم کد رو میخونم میبینم ۱ خط کد نوشته یک return ساده.
این مدل جداسازی مزخرفترین کاری هست که میتونید انجام بدید.
نکتهاش توی کتاب بالا هم هست؛
دولوپر بعدی، بیچاره میشه تا ذهنش رو دور این چیزا سر و سامون بده و متوجه بشه فایلها و ... چطوری به هم ارتباط داره
repository= .....
همون کار رو میکنه؛ ۱۰۰ برابر خواناتر و تمیزتر هست و در صورت رشد کردن کدش؛ توی refactor جدا خواهد شد.
بعضی وقتا آدما برای
clean code
زدن، گند میزنند توی خوانایی و حتی clean
بودن پروژه چرا چون clean code
رو فقط در سطح یک اسکریپت بهش نگاه میکنند در سطح کل پروژه.مثال دیگر:
این رو زیاد میبینم؛
cleaned_text = preprocess(mytext)
بعد میرم توی مسیری که گفته شده:
utils/preprocessing.py
def preprocess(text:str):
return text.strip()
ببین ذهن من چقدر باید اذیت بشه که توی توسعه کدهای بعدی یادش باشه که اینکار رو برای یک strip ساده انجام بده.
حالا فرض کنید یک پروژه ۱ میلیون خط کدی؛ اینطوری نوشته شده باشه!
بنظرتون این پروژه clean code هست یا shit code ؟!
یادتون نره؛ refactor پنالتی نیست، بلکه نشون میده شما به کد و پروژه زیر دستتون اهمیت میدید!
من ترجیح میدم
text = input.strip()
رو داشته باشم و وقتی این تمیز کاری دیتای ورودی بزرگتر شد اونوقت اون رو جدا کنم.
👍23❤2
Forwarded from RandRng
#موقت
وسط توضیح برق رفت
```python
```
from utils.preprocessing import preprocess
...
cleaned_text = preprocess(text)
...
این میزان کدی هست که باید برنامه نویس بعدی توی ذهنش نگهداره 👆
بجای :
text = input.strip()
حالا اینو ضربدر ۱۰۰ یا ۱,۰۰۰ کنید برای یک پروژه توی اسکیل استاندارد.
وسط توضیح برق رفت
utils/preprocessing.py
:def preprocessing(text: str) :
return text.strip()
utils/__init__.py
```python
```
from utils.preprocessing import preprocess
...
cleaned_text = preprocess(text)
...
این میزان کدی هست که باید برنامه نویس بعدی توی ذهنش نگهداره 👆
بجای :
text = input.strip()
حالا اینو ضربدر ۱۰۰ یا ۱,۰۰۰ کنید برای یک پروژه توی اسکیل استاندارد.
👍22❤4