TorhamDev | تورهام 😳
Kanalga Telegram’da o‘tish
2 869
Obunachilar
Ma'lumot yo'q24 soatlar
+107 kunlar
+6330 kunlar
Postlar arxiv
2 869
خب، یک چیز جالب که فهمیدم(قبلش نمیدونستم 🗿) رو این آقاعه که چشماش بسته است گفت.
بزارید از این ماجرا شروع کنم، تا حالا برای شما پیش اومده که بخوایید یک tuple رو این شکلی بنویسید ولی کار نکنه؟
a = (1)
اتفاقی که میوفته اینه ک a مساوی با integer یک میشه نه tupleای که داخلش یک هست.
و این اتفاق برای این میوفته که پایتون tuple هارو با ویرگول(،) میشناسه نه با پرانتز (این تیکه رو نمیدونستم)
در نتیجه پرانتز صرفا برای شفاف سازی حضور tuple هستش :)
و خوب دلیلش هم اینه که بعد با پرانتز میتونید اولويت هایی مثل opration ها ریاضی ضرب و تقسیم و .. با پرانتز مدریت کنید.
در نتیجه کد زیر هم درست کار میکنه.
a = 1,
print(a)
و این یک tuple میده. مکته خفن تر ماجرا داخل unpacking کرد عه :)) که اون یک ماجرا جداست اگه این پست ۲۰ تا ریکشن 😱 بگیره اون هم مینویسم 😂
@TorhamDevCH2 869
نکته: مادر NF معتاد بود و کلا کودکی خوبی نداشت و فکر کنم مادرش رو مواد اوردز کرد
#music
2 869
این ویدیو جادی خیلی جالب بود و یک ایده مسخره دیگه بهم داد ولی از اونجایی که مریض شدم حال ندارم انجامش بدم👍
https://youtu.be/yDU-0cN43eQ?si=gheWzBh5SEO1T5o0
@TorhamDevCH
2 869
بچه ها من خیلی وقته لینک دونیت برداشتم، دلیلش هم اینه که به نظرم کار خاصی نمیکنم دیگه که دونیت بشم. اگه یک درصد فکر میکنید که مدیونید یا میخوایید دونیت کنید همون به یک نیازمند تو شهر بدید، یا باهاش بستنی بخرید بخورید :)
2 869
خب یک بحثی بود که برنامه شما (فرض میگیریم بکاند ما) باید طوری باشه که به چیزی وابسته نباشه و اگه بخای بتونی راحت تغییرش بدی(کل بک اند نه ها، بخش ها اون بک اند) .
خب تا یک حد زیادی درسته، مثلا شما نباید همینطوری دیمی یک کتابخونه نصب کنید که کل بکاند و سورس بهش وابسته بشه، بعد یک سال بفهمید آخرین آپدیت کتابخونه برای ۲۰۰۳ عه :)
خب پس مورد اول میشه کتابخونهها که باید مراقبشون باشیم و تا جای ممکن خودمون وابسته بهش نکنیم.
یک سری نکات اینشکلی هست که تو کلیت پروژه باید رعایت بشه. موارد بعدی میره تو لایه دیزاین پروژه، برای مثال دیزاین شما بهتره تیکه تیکه و لایه لایه باشه. مثلا حداقل ایدهآل خورد کردن پروژه برای من ۳ لایه است.
۱. لایه دیتابیس
۲. لایه عملیات(بیزینس لاجیک)
۳. روتینگ
از لایه ۳ به ۱ میرم
لایه روتینگ وضیفش مسیر یابی، یعنی چی؟ یعنی آقا یک درخواست http که اومد این لایه درگیر میشه و تصمیم میگیره درخواست به کجا بره، و این درخواست رو میگیره تصمیم رو میگیره و به بخش خاصی از لایه ۲ یا همون عملیات میفرسته. مثلا درخواست "ساخت آبجکت" میاد و به بخش ساخت تو لایه عملیت میره
from db import database
@router.post("create/")
def create():
result = Opration.create(database)
return result
حالا لایه عملیات برای بیشتر یا همه کارهاش نیاز به دیتابیس داره. و دیتابیس به عنوان یک ورودی میگیره.
یعنی چی؟ یعنی هر وقت که دیتابیس عوض کنیم لایه عملیات و لایه روتر براشون مهم نیست اصلا :)، صرفا یک ایمپورته.
ولی خب باید api که دیتابیس در اختیار لایه دیگه میده تغییر نکنه و حتی اگه تغییر هم کنه لازم نیست کل سورس بترکونید همون جاهایی که از دیتابیس استفاده کرید تغییر میدید. تغییر کم میشه خلاصه :)
کل basic وظیفه فریمورکها روتینگ، یعنی درخواست http میگیره آبجکت میکنه بهتون میرسونه دیگه و جوابشو تحویل کاربر میده :)
برای همون اگه فریمورک منطقی داشته باشید که بیشتر از اینها خودش قاطی کار نکرده باشه خیلی راحت باید بتونید تعویضش کنید.
اینا نظرات و تجربهها من بود :)
@TorhamDevCH2 869
خب الان دیگه رسما گیممون آمادست فقط یکم تغییر در رنگ لازم داره و دشمن ها ک رندوم بیان رو صفحه 🔪
@TorhamDevCH
2 869
خوب مکانیزم حرکت سفینه(شاید جت) و ماکنیزم گلوگه رو ساختم مونده یکچی بزاریم بهش شلیک کنیم امتیاز بگیریم 😆
@TorhamDevCH
Endi mavjud! Telegram Tadqiqoti 2025 — yilning asosiy insaytlari 
