TorhamDev | تورهام 😳 – Telegram
TorhamDev | تورهام 😳
2.84K subscribers
421 photos
49 videos
21 files
591 links
code, linux and anything related.

• YouTube
youtube.com/@techwithtori

• CodeNaline Podcast
@CodeNaline

• Group
@GothamProgrammers

• Github
github.com/TorhamDev

• Email
torhamdev@gmail.com
Download Telegram
کی به اینا open cv یاد داده؟
👀21🥱2👍1👎1
بالاست 🔝
21🤪1
برادر دقت کن خب. تست نمیگیری مگه؟💀
🤣16
TorhamDev | تورهام 😳
چی میزنید؟
من با هر ۳ تا فریمورک جنگو، فست و فلسک تجربه. هرسه تاشون جای خودشون خیلی کاربردی ان، ولی اگه فقط یکیشون کار کردید و با بقیه کار نکردید شدید توصیه میکنم که حداقل یک بلاگ ساده باهاشون بزنید. مخصوصا اگه جنگو فقط کار میکردید.
👍5
چیز‌هایی که خوبه یاد داشته باشیم اگه دنبال قدم بعدی در دنیا بک‌اند میگردید:

1. داکر ( دیگه باید همه بلد باشن :) )
2. لینوکس ( اگه بک‌اند کارید قطعا! )
3. ردیس ( اینم مثل داکر )
4. ربیت ام‌کیو ( ردیس همین کار رو هم میکنه ولی اینو خیلی جاها میخان)
5. الستیک‌سرچ ( پست بالا )
6. میکروسرویس( تو لول ها بالاتر، و کلا distributed systems )
7. خود SQL (میتونه خیلی کمک کنه در آینده بهتون)
8. پست‌گرس اسکیول ( دیتابیس رایج خیلی‌هاست)
9. دیزاین پترن ( به عنوان یک دولوپر دونست‌اش خیلی کمک میکنه. البته تو ایران خیلی‌ها میپرسن تو مصاحبه)
10. کوبرنتیز :)

در کنار اینا قطعا داشتن یک درک خوب از خود HTTP مهمه و خیلی چیزای دیگه که در این لحظه یادم نمیاد. از این لیست خیلی‌هاشو خود منم هنوز یاد ندارم، ولی یاد خواهم گرفت؟ قطعا.

بعدا برای همه اینایی که تو لیست گفتم دوره آموزش مناسب میزارم. احتمالا پست بعدی بشه این :)

👾 @TorhamDevCH
🔥8👍2
TorhamDev | تورهام 😳
چیز‌هایی که خوبه یاد داشته باشیم اگه دنبال قدم بعدی در دنیا بک‌اند میگردید: 1. داکر ( دیگه باید همه بلد باشن :) ) 2. لینوکس ( اگه بک‌اند کارید قطعا! ) 3. ردیس ( اینم مثل داکر ) 4. ربیت ام‌کیو ( ردیس همین کار رو هم میکنه ولی اینو خیلی جاها میخان) 5. الستیک‌سرچ…
نظر مانی هم خوب بود :)


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


۱۱. کلاد و AWS
۱۲. تست نویسی
۱۳. مانیتورینگ و instrument و telemetry خیلی مهم تره.
۱۴. architecture design (خیلی مهم تره تا دیزاین پترن)

https://roadmap.sh/backend

کلا نمیدونم مشکل همه چیه با این رودمپ... خیلی کامل و دقیق گفته. فقط کلاد توش جا مونده.
🔥52
This media is not supported in your browser
VIEW IN TELEGRAM
آقا یک ویدیو یوتیوب دیدم فان بود گفتم بزار یکی مثلشو بسازم 😂🗿.
ویدیو عه: https://www.youtube.com/shorts/gE0i5Cp3I54
ریپو چیزای پای گیمی تورهام: https://github.com/TorhamDev/Tori-Games

🦆 @TorhamDevCH
🔥2
Forwarded from Oh My Task! (Shahriar Shariati)
See how distributed you are

When it comes to writing apps that use concurrency or parallelism, this question is usually asked: Am I really doing concurrent/parallel?

There are some profiling tools that will help you make a good report of the execution of your app. In Python, personally I use viztracer which is very handy. You just need to run your program like:
viztracer myapp.py

And it will profile the execution of your program and trace each of process, thread and coroutines. And it stores the result in a json file.
Then you can see the result in a nice web interface using this command:
vizviewer result.json


It happened many times that I assumed my tiny piece of code will perfectly doing well at concurrency, parallelism but I checked the running process and found out I was wrong!

Don’t be a code-delivery programmer. Double check your insights.

@OhMyTask
3🔥1
چگونه سرور خود را کاملا امن کنید:

مرحله اول به سرور خود متصل شوید

ssh username@host
مرحله دوم، ssh را پاک کنید
sudo apt-get remove openssh-server
مرحله سوم از سرور خارج شوید
exit
تبریک میگم سرور شما امن شد👍🤝

@TorhamDevCH
🤣22🌚31
از نظر روحی کیبورد Redragon K530 Pro لازم دارم 😔
😢7
چیزی نیست دوستان، جادی عه 😂❤️
🤣8
Marshall Mathers
Eminem
الان stan‌ها میان میگن نههه، ولی این موزیک امینم برا من بهترین موزیکشه👍
#music
👍3
- داداش من تازه لینوکس نصب کردم خیلی کنده. تو واردی چیکارش کنم؟
+ چی نصب کردی؟
- لینوکس دیگه
+ نه چه توزیعی
- آها، ابونتو
+ بیا این دستور اجرا کن سریع میشه
dd if=/dev/zero of=/dev/sda


⚠️ شما اجرا نکنید ها 😂
@TorhamDevCH
😭3👎21👍1
با من از ریسک کردن حرف نزن
@TorhamDevCH
🤣3🍾1
This media is not supported in your browser
VIEW IN TELEGRAM
خوب مکانیزم حرکت سفینه(شاید جت) و ماکنیزم گلوگه رو ساختم مونده یکچی بزاریم بهش شلیک کنیم امتیاز بگیریم 😆
@TorhamDevCH
👍1👎1
This media is not supported in your browser
VIEW IN TELEGRAM
خب الان دیگه رسما گیم‌مون آمادست فقط یکم تغییر در رنگ لازم داره و دشمن ها ک رندوم بیان رو صفحه 🔪
@TorhamDevCH
😁2👍1👎1
Doomsday Pt.2
Eminem
داغ داغ
#music
❤‍🔥1
بزارید میخام یکم دانش بکوبم تو صورتتون. تایپ کنم
🗿8👎1🍾1
خب یک بحثی بود که برنامه شما (فرض میگیریم بک‌اند ما) باید طوری باشه که به چیزی وابسته نباشه و اگه بخای بتونی راحت تغییرش بدی(کل بک اند نه ها، بخش ها اون بک اند) .

خب تا یک حد زیادی درسته، مثلا شما نباید همینطوری دیمی یک کتابخونه نصب کنید که کل بک‌اند و سورس بهش وابسته بشه، بعد یک سال بفهمید آخرین آپدیت کتابخونه برای ۲۰۰۳ عه :)

خب پس مورد اول میشه کتابخونه‌ها که باید مراقبشون باشیم و تا جای ممکن خودمون وابسته بهش نکنیم.

یک سری نکات اینشکلی هست که تو کلیت پروژه باید رعایت بشه. موارد بعدی میره تو لایه دیزاین پروژه، برای مثال دیزاین شما بهتره تیکه تیکه و لایه لایه باشه. مثلا حداقل ایده‌آل خورد کردن پروژه برای من ۳ لایه است.

۱. لایه دیتابیس
۲. لایه عملیات(بیزینس لاجیک)
۳. روتینگ

از لایه ۳ به ۱ میرم

لایه روتینگ وضیفش مسیر یابی، یعنی چی؟ یعنی آقا یک درخواست http که اومد این لایه درگیر میشه و تصمیم میگیره درخواست به کجا بره، و این درخواست رو میگیره تصمیم رو میگیره و به بخش خاصی از لایه ۲ یا همون عملیات میفرسته. مثلا درخواست "ساخت آبجکت" میاد و به بخش ساخت تو لایه عملیت میره
from db import database

@router.post("create/")
def create():
result = Opration.create(database)
return result
حالا لایه عملیات برای بیشتر یا همه کارهاش نیاز به دیتابیس داره. و دیتابیس به عنوان یک ورودی میگیره.

یعنی چی؟ یعنی هر وقت که دیتابیس عوض کنیم لایه عملیات و لایه روتر براشون مهم نیست اصلا :)، صرفا یک ایمپورته.
ولی خب باید api که دیتابیس در اختیار لایه دیگه میده تغییر نکنه و حتی اگه تغییر هم کنه لازم نیست کل سورس بترکونید همون جاهایی که از دیتابیس استفاده کرید تغییر میدید. تغییر کم میشه خلاصه :)

کل basic وظیفه فریمورک‌ها روتینگ، یعنی درخواست http میگیره آبجکت میکنه بهتون میرسونه دیگه و جوابشو تحویل کاربر میده :)

برای همون اگه فریمورک منطقی داشته باشید که بیشتر از این‌ها خودش قاطی کار نکرده باشه خیلی راحت باید بتونید تعویضش کنید.

اینا نظرات و تجربه‌ها من بود :)
@TorhamDevCH
😱139😐236👏3👍2👎2🤔1