The Commit
ضدالگوها در صنعت نرمافزار قصد دارم از امشب طی چند پست مجزا به موضوعی جالب در دنیای توسعه نرمافزار بپردازم: "ضدالگوها". شاید تا حالا اسمش رو شنیده باشید، اما بیاید یه نگاهی بهش بندازیم. ضدالگوها، همینطور که از اسمشون پیداست، الگوهای منفیای هستن که میتونن…
۲. شیء خدا (God Object) در برنامهنویسی شیءگرا به شیء یا کلاسی اشاره داره که تمام کارها رو انجام و همهچیز رو میدونه!. این موضوع میتونه به پیچیدگی و درهم ریختگی کد هم منجر بشه. مثلا یک شیء میتونه مسئولیتهای زیادی رو بر عهده بگیره، که باعث سردرگمی و دشواری نگهداری میشه
روش صحیح اینه که مشکلات بزرگ رو به بخشهای کوچکتر تقسیم کنیم. هر شی باید تنها مسئولیتهای خاصی رو در راستای حل یک مشکل محدود بر عهده بگیره. این کار کمک میکنه تا کد سازماندهیشده و قابلفهمتری داشته باشیم.
مثالی برای شی خدا بصورت زیر هست:
روش صحیح اینه که مشکلات بزرگ رو به بخشهای کوچکتر تقسیم کنیم. هر شی باید تنها مسئولیتهای خاصی رو در راستای حل یک مشکل محدود بر عهده بگیره. این کار کمک میکنه تا کد سازماندهیشده و قابلفهمتری داشته باشیم.
مثالی برای شی خدا بصورت زیر هست:
class ShoppingCart:
def __init__(self):
self.items = []
def add_item(self, item):
self.items.append(item)
def remove_item(self, item):
self.items.remove(item)
def checkout(self):
total = sum(item.price for item in self.items)
print(f'Total amount: {total}')
cart = ShoppingCart()
cart.add_item(Item("Apple", 1.5))
cart.add_item(Item("Banana", 1.0))
cart.checkout()
چون من دیدم شماهم ببینید
اولین بلاک از بیت کوین که ریواردی که داده ( جایزه ) ۵۰ تا بیت کوین هستش
چیزی حدود ۴،۵ میلیون دلار با
قیمت ۹۰ هزار تا !
ساتوشی جان حلالت
https://www.blockchain.com/explorer/blocks/btc/0
اولین بلاک از بیت کوین که ریواردی که داده ( جایزه ) ۵۰ تا بیت کوین هستش
چیزی حدود ۴،۵ میلیون دلار با
قیمت ۹۰ هزار تا !
ساتوشی جان حلالت
https://www.blockchain.com/explorer/blocks/btc/0
Blockchain
Blockchain.com Explorer | BCH | ETH | BCH
The easiest and most trusted transaction search engine and block explorer.
1🤯3
The Commit
ضدالگوها در صنعت نرمافزار قصد دارم از امشب طی چند پست مجزا به موضوعی جالب در دنیای توسعه نرمافزار بپردازم: "ضدالگوها". شاید تا حالا اسمش رو شنیده باشید، اما بیاید یه نگاهی بهش بندازیم. ضدالگوها، همینطور که از اسمشون پیداست، الگوهای منفیای هستن که میتونن…
۳. کد اسپاگتی (Spaghetti Code)
به نوعی از کد اشاره داره که خیلی بههمریخته و بینظم نوشته شده و در نتیجه خوندن و درک کردنش سخت میشه. وقتی کد شما مثل یه کاسه اسپاگتی درهم و برهم میشه، باید مراقب باشید چون این کار باعث میشه که دیگه بهراحتی نتونید مشکلات رو پیدا کنید یا تغییرات لازم رو اعمال کنید. این نوع کد معمولاً به خاطر نداشتن ساختار و عدم رعایت الگوهای مناسب طراحی ایجاد میشه.
مثال:
فرض کنید ما قصد داریم یک برنامه ساده برای مدیریت کتابها بنویسیم. در اینجا یک مثال از کد Spaghetti Code رو میبینید:
توی این کد، همهی منطقها در یک فایل و بدون هیچ گونه ساختار خاصی شکل گرفته. با افزایش تعداد کتابها یا ویژگیها، مدیریت این کد به شدت دشوار و احتمال بروز خطا بیشتر میشه.
به طور کلی
برای جلوگیری از Spaghetti Code، پیشنهاد میشه که کد خودتون رو به ماژولهای کوچیکتر و منظمتر تقسیم کنید و از الگوهای طراحی استفاده کنید تا کد شما قابل نگهداری و فهمتر بشه.
به نوعی از کد اشاره داره که خیلی بههمریخته و بینظم نوشته شده و در نتیجه خوندن و درک کردنش سخت میشه. وقتی کد شما مثل یه کاسه اسپاگتی درهم و برهم میشه، باید مراقب باشید چون این کار باعث میشه که دیگه بهراحتی نتونید مشکلات رو پیدا کنید یا تغییرات لازم رو اعمال کنید. این نوع کد معمولاً به خاطر نداشتن ساختار و عدم رعایت الگوهای مناسب طراحی ایجاد میشه.
مثال:
فرض کنید ما قصد داریم یک برنامه ساده برای مدیریت کتابها بنویسیم. در اینجا یک مثال از کد Spaghetti Code رو میبینید:
books = []
def add_book(noscript, author, year):
books.append({'noscript': noscript, 'author': author, 'year': year})
print(f"کتاب '{noscript}' با موفقیت اضافه شد.")
def list_books():
if not books:
print("هیچ کتابی وجود ندارد.")
else:
for book in books:
print(f"عنوان: {book['noscript']}, نویسنده: {book['author']}, سال: {book['year']}")
def delete_book(noscript):
for book in books:
if book['noscript'] == noscript:
books.remove(book)
print(f"کتاب '{noscript}' حذف شد.")
return
print(f"کتاب '{noscript}' پیدا نشد.")
add_book("کتاب اول", "نویسنده اول", 2021)
add_book("کتاب دوم", "نویسنده دوم", 2020)
list_books()
delete_book("کتاب اول")
list_books()
توی این کد، همهی منطقها در یک فایل و بدون هیچ گونه ساختار خاصی شکل گرفته. با افزایش تعداد کتابها یا ویژگیها، مدیریت این کد به شدت دشوار و احتمال بروز خطا بیشتر میشه.
به طور کلی
برای جلوگیری از Spaghetti Code، پیشنهاد میشه که کد خودتون رو به ماژولهای کوچیکتر و منظمتر تقسیم کنید و از الگوهای طراحی استفاده کنید تا کد شما قابل نگهداری و فهمتر بشه.
🔥4
The Commit
۳. کد اسپاگتی (Spaghetti Code) به نوعی از کد اشاره داره که خیلی بههمریخته و بینظم نوشته شده و در نتیجه خوندن و درک کردنش سخت میشه. وقتی کد شما مثل یه کاسه اسپاگتی درهم و برهم میشه، باید مراقب باشید چون این کار باعث میشه که دیگه بهراحتی نتونید مشکلات…
در مورد الگوهای طراحی توی یک پست جدا صحبت میکنم
میگن که ۲۲ بهمن قراره تلگرام و یوتیوب رفع بشن ولی چند ساله این حرف زده میشه !
میمونیم بینم چی میشه ( روش حساب نکنید😂 )
میمونیم بینم چی میشه ( روش حساب نکنید😂 )
😁1
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
LINUX USERS ARE NOT HACKERS!
🤣8❤2
The Commit
پیشاپیش یلدا مبارک و اینم پک یلدای ما به شما😂 boxmovie.github.io
خب دیگه اگر موافق باشید وقتشه باکس مووی بتا روی اصلی قرار بگیره
برای دیدن اخرین کامیت بتا:
https://boxmovie-beta.github.io
و روی این دامین قرار میگیره:
https://boxmovie.github.io
برای دیدن اخرین کامیت بتا:
https://boxmovie-beta.github.io
و روی این دامین قرار میگیره:
https://boxmovie.github.io
باکس مووی
باکس مووی - فیلم و سریال رایگان
محلی برای عاشقان فیلم و سریال و دنیایی بدون سانسور
👍4
The Commit
خب دیگه اگر موافق باشید وقتشه باکس مووی بتا روی اصلی قرار بگیره برای دیدن اخرین کامیت بتا: https://boxmovie-beta.github.io و روی این دامین قرار میگیره: https://boxmovie.github.io
و الان میتونید از نسخه پایدار و بدون باگ باکس مووی
استفاده کنید (:
تفاوتش با نسخه ی قبل:
+ ساخت UI جدید
+ اضافه کردن صفحه بازیگران
+ تغییر لینک های دانلود و اماده برای هندل کردن ارور ها
+ هندل کردن ارور 404
+ در صورت اضافه کردن اپلیکیشن به صفحه به صورت خودکار اپدیت میشه ! ( توی ورژن قبلی نبود )
+ فیکس ارور های باکس لینک
+ بالا رفتن سرعت لود اپلیکیشن
+ اضافه کردن صفحهی راهنما برای اموزش دیدن فیلم ها
💬 اگر اروری داشتید یا مشکلی بود کامنت بزارید
https://boxmovie.github.io
استفاده کنید (:
تفاوتش با نسخه ی قبل:
+ ساخت UI جدید
+ اضافه کردن صفحه بازیگران
+ تغییر لینک های دانلود و اماده برای هندل کردن ارور ها
+ هندل کردن ارور 404
+ در صورت اضافه کردن اپلیکیشن به صفحه به صورت خودکار اپدیت میشه ! ( توی ورژن قبلی نبود )
+ فیکس ارور های باکس لینک
+ بالا رفتن سرعت لود اپلیکیشن
+ اضافه کردن صفحهی راهنما برای اموزش دیدن فیلم ها
💬 اگر اروری داشتید یا مشکلی بود کامنت بزارید
https://boxmovie.github.io
3🔥2👏1
سرور های پلی استیشن حدود چند ساعتی میشه از دسترس خارج شدن و فعلا سونی چیزی نگفته ولی پشتیبانی گفته تا ۲۴-۴۸ ساعت اینده برطرف میشه
https://status.playstation.com
https://status.playstation.com
Playstation
PlayStation Service Status
SoloLearn
این اپلیکیشن و وبسایت زبانهای برنامهنویسی مختلفی رو به صورت رایگان آموزش میده و در انتهای دوره مدرک دیجیتال بهتون میده که میتونه برای رزومه هم جالب باشه. اگر میخواید از معتبر بودن مدرک مطلع بشید، به این لینک سر بزنید
من خیلی باهاش حال کردم و میکنم و بعد مدتها تونستم پایتون رو مرور کنم.
این اپلیکیشن و وبسایت زبانهای برنامهنویسی مختلفی رو به صورت رایگان آموزش میده و در انتهای دوره مدرک دیجیتال بهتون میده که میتونه برای رزومه هم جالب باشه. اگر میخواید از معتبر بودن مدرک مطلع بشید، به این لینک سر بزنید
من خیلی باهاش حال کردم و میکنم و بعد مدتها تونستم پایتون رو مرور کنم.
The Commit
SoloLearn این اپلیکیشن و وبسایت زبانهای برنامهنویسی مختلفی رو به صورت رایگان آموزش میده و در انتهای دوره مدرک دیجیتال بهتون میده که میتونه برای رزومه هم جالب باشه. اگر میخواید از معتبر بودن مدرک مطلع بشید، به این لینک سر بزنید من خیلی باهاش حال کردم…
"موسسه پایتون" هم جای خوبی برای یادگیری و مدرک گرفتن هست.
ادیت: رایگان نیست
https://pythoninstitute.org/
ادیت: رایگان نیست
https://pythoninstitute.org/
The Commit
name = "amiri" name[0] = "A" print(name)
در مورد این کوئیز؛
رشتهها(String) در پایتون Immutable اند. یعنی قابل تغییر نیستن! نمیتونید Indexهای یک رشته رو تغییر بدید مگر اینکه اون رشته دوباره تعریف کنید
رشتهها(String) در پایتون Immutable اند. یعنی قابل تغییر نیستن! نمیتونید Indexهای یک رشته رو تغییر بدید مگر اینکه اون رشته دوباره تعریف کنید
Forwarded from Milad Nouri(ツ) میلاد نوری
This media is not supported in your browser
VIEW IN TELEGRAM
من یک سال پیش (یا شاید هم بیشتر) مهمان پادکست طبقه ۱۶ بودم.
جدیدا دیدم این قسمتش رو توی اینستاگرامش گذاشته بود.
خودمم این تیکهشو دوست داشتم. گفتم اینجا هم بذارمش. شاید حرف دل مشترکمون بود.
اگر هم کاملش رو ندیده بودید و علاقهمند بودید، کاملش اینجاست:
🔗 https://youtu.be/9ZBlmSiwh0o
جدیدا دیدم این قسمتش رو توی اینستاگرامش گذاشته بود.
خودمم این تیکهشو دوست داشتم. گفتم اینجا هم بذارمش. شاید حرف دل مشترکمون بود.
اگر هم کاملش رو ندیده بودید و علاقهمند بودید، کاملش اینجاست:
Please open Telegram to view this post
VIEW IN TELEGRAM