Telegram Web
یکی از مزایا اصلی PaaS یا Platfrom as a Service این هست که حداقل درگیری رو با کانفیگ سرور داشته باشیم و تمام تمرکزمون رو روی توسعه اپلیکیشن بزاریم و همچنین میتونیم فرایند هامون رو هم به راحتی خودکار کار کنیم، مثلا به محض اینکه کد مون رو آپدیت کردیم به صورت خودکار دیپلوی بشه :)

توی این ویدیو آموزش نصب و راه اندازی CapRover به همراه دیپلوی خودکار اپلیکیشن‌هامون با وب‌هوک گیت‌هاب رو رکورد کردم که میتونید ببینید.

پروژه CapRover:
https://caprover.com/
لینک ویدیو:
https://youtu.be/h95EckycMLg

@DjangoIR
〰️〰️〰️〰️〰️〰️
© @DjangoEx
🔥9👍62
برنامه نویس خوب کیه؟

این بار میخوایم با هیمن حسینی پناه در مورد تعریف های مختلف یه برنامه نویس گپ و گفت کنیم

هیمن جان رو اینجا بیشتر به عنوان یه تولید کننده محتوا (کانال میکروفرانت اند) میشناسید ولی مهندس حسینی پناه بیشتر از ده سال سابقه تولید سیستم های نرم افزاری رو داره


شنبه 7 بهمن ماه 1402 مهمان هیمن هستیم

™️ @DjangoIR

© @DjangoEX | @Djangogap
🔥205👍5👏1🐳1
به بخش دوم, قسمت هفتم پلی لیست دیزاین پترن رسیدیم 🎉

همیشه مدیریت state و رفتار کد هامون سخت بوده. دیزاین پترن های Behavioral به ما کمک میکنن که بتونیم بین آبجکت هامون ارتباط قوی تری داشته باشیم و state رو داخل کدمون بهتر هندل کنیم. نکته مهم دیزاین پترن ها به طور کلی اینه که کانپست پشتشون رو درک کنید به جای اینکه فقط سعی کنید theoryشون رو حفظ کنید و تکرارشون کنید.

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

https://www.youtube.com/watch?v=bPTBXprf2kc

لینک گیتهاب دوره دیزاین پترن; جزوه و مثال های دوره همه اینجا ذخیره خواهند شد.
https://github.com/ManiMozaffar/design-101



© @DjangoEX | @ManiFoldsPython
👍63
در قسمت هشتم پلی لیست دیزاین پترن
تو این قسمت State Pattern رو بررسی کردیم, توضیح دادم که چرا این پترن خیلی خوبه و میتونه encapsulation تمیزی بهتون بده برای هر state از context و سیستمتون و البته گفتم چرا design pattern ناقصی هست و ضعفش چیه که مقدمه ای شد برای ویدیو بعدی, پترن Type State که بنظرم بهترین ویدیو این پلی لیسته خواهد شد.

لینک ویدیو:
https://youtu.be/wGAzhp8ljAk

لینک گیتهاب دوره دیزاین پترن; جزوه و مثال های دوره همه اینجا ذخیره خواهند شد:
https://github.com/ManiMozaffar/design-101



© @DjangoEX | @PyBackEndHub
👍5
در قسمت نهم پلی لیست دیزاین پترن و مهم ترین قسمت این پلی لیست, پرداختم به دیزاین پترن Type State. پترنی که سبک کد نویسی من رو به شدت تغییر داد و هر روز ازش استفاده میکنم

مفاهیم زیر رو ابتدا توضیح دادم:
- Don't validate, parse!
- Type safe operations

و توضیح دادم چطور به صورت غریزی و ابتدایی از type state استفاده میکنیم. همینطور یوزکیس های خیلی بهتر و advance تر هم توضیح دادم و دلیل محبوبیت Pydantic هم توضیح دادم.
با Type state pattern کد هاتون به شدت باگ کمتری خواهند داشت پس اگه دوست دارین کمتر با باگ سروکله بزنید این ویدیو رو از دست ندید. حتما توصیه میشه قبل از دیدن این ویدیو, ویدیو قبلی راجب state pattern هم ببینید که ۱۰ دقیقه هست.


لینک ویدیو:
https://youtu.be/DwAQ6dm-Vn8

لینک گیتهاب دوره دیزاین پترن; جزوه و مثال های دوره همه اینجا ذخیره خواهند شد:
https://github.com/ManiMozaffar/design-101



© @DjangoEX | @PyBackEndHub
👍93
@Djangogap

فایل های گفت و گومون رو اینجا منسجم نگهداری میکنیم 👨🏻‍🦯
8👍6🔥1👏1😁1
برنامه نویس خوب کیه؟

این بار میخوایم با هیمن حسینی پناه در مورد تعریف های مختلف یه برنامه نویس گپ و گفت کنیم

امروز شنبه 7 بهمن ماه 1402 ساعت 18 به وقت تهران مهمان هیمن هستیم

™️ @DjangoIR

© @DjangoEX | @Djangogap
👍8🔥43👏2
Live stream started
Live stream finished (59 minutes)
میدونم صدا خوب نبود.
اگر اپلیکیشنی برای استریم کردن میشناسید که بشه اونجا ببریم صحبت هامون رو که فیتلر هم نباشه که به مشکل اینترنت بخوریم ممنون میشم پیشنهاد بدید تا بتونیم با کیفیت بیشتری ظبط کنیم این گفت و گو ها رو


™️ @DjangoIR

© @DjangoEX
👍7
گفت و گو با هیمن حسینی پناه
Django Expert
فایل گفت و گو با مهندس هیمن حسینی پناه

™️ @DjangoIR

© @DjangoEX |
@Djangogap
👍8🔥4🙏3😁1🍓1
Django Expert
Django Expert – گفت و گو با هیمن حسینی پناه
#موقت اگر کسی کیفیت فایل رو می‌تونه بالاتر ببره
فایل نهایی رو برام پیوی (@majid_aghamohamad) بفرسته ❤️

(حداکثر ۲۴ ساعت) چون بعدش فایل رو باید بذارم توی کانال پادکستمون
👍1
در قسمت دهم پلی لیست دیزاین پترن
تو این قسمتChain of Responsibility رو بررسی کردیم. یک مثال پروداکشنی با کد بویلرپلیت هم نمایش دادم که نسبتا مثال پیچیده ای بود تا واقعا یوزکیس این دیزاین پترن رو درک کنید. در نهایت به نقاط ضعف و قوت این دیزاین پترن پرداختیم. اگه سوالی داشتین حتما زیره ویدیو کامنت کنید. برای حمایت ممنون میشم سابسکرایب کنید و داخل گیتهاب استار بدین به ریپو.


لینک ویدیو:
https://youtu.be/F0YyisF7Hq4

لینک گیتهاب دوره دیزاین پترن; جزوه و مثال های دوره همه اینجا ذخیره خواهند شد:
https://github.com/ManiMozaffar/design-101




© @DjangoEX | @PyBackEndHub
👍14
Django Expert
آموزش داکر - Linux Busybox and chroot در این به بررسی مفهوم jail process در لینوکس پرداختیم. بعد از اجرای پروسس در لینوکس به صورت پیش فرض به همه فایل سیستم دسترسی دارد. از طریق دستور chroot میتوان یک پروسس را با یک روت دایرکتوری مشخص و ایزوله اجرا کرد به…
آموزش داکر - Mount Namespace

در قسمت چهارم از آموزش Docker به بررسی Mount Namespace در لینوکس و شیوه استفاده از آن پرداختیم. از طریق این مفهوم می توان Mount Point های یک پروسس را ایزوله کرد. برای این کار unshare Linux Api استفاده کردیم و شیوه فراخوانی آن در پایتون را بررسی کردیم.



Link: https://youtu.be/SrxytU6eZ68

Git: https://github.com/hemanhp/container-course

Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7

〰️〰️〰️〰️〰️〰️
© @microfrontend_ir
👍76🔥3
رویداد پیاده سازی جنگو در پلتفرم های مختلف

در این وبینار به بررسی مدل های مختلف پیاده سازی پروژه های جنگو در پلتفرم های Liara ، Hamravesh و همچنین پیاده سازی در VPS خواهیم پرداخت. با در نظر گرفتن یک پروژه قالب مدل های مختلف را در پیاده سازی بر روی هر یک تست خواهیم کرد.

زمان برگزاری ۲۶ بهمن - ساعت ۲۰:۰۰

لینک ثبت نام:
https://thealibigdeli.ir/event/پیاده-سازی-جنگو-در-پلتفرم-های-مختلف/

Thank to: @BlackFox01

™️ @DjangoIR
〰️〰️〰️〰️〰️〰️
© @DjangoEX
👍1610👀2👎1
Forwarded from تهلاگ / Tehlug
جلسه ۲۷۲ گروه کاربران گنو/لینوکس تهران و جلسه ۸۲ گروه کاربران پایتون تهران و جلسه گروه گوفرکانف (GopherConf) به صورت مشترک در روز پنج‌شنبه مورخ ۱۴۰۲/۱۱/۲۶ با حمایت کدانو برگزار می‌گردد.

این جلسه از ساعت ۱۶:۰۰ الی ۲۰:۳۰ برگزار می‌شود و ۹۰ دقیقه ابتدایی جلسه مربوط به جلسه گوفرکانف و ۹۰ دقیقه میانی مربوط به جلسه تهران‌پاگ و ۹۰ دقیقه انتهایی مربوط به جلسه تهران‌لاگ خواهد بود.

ثبت‌نام رایگان از طریق https://evand.com/tehlug امکان‌پذیر است.

زمان‌بندی برنامه‌ها و ارائه‌ها:

از ساعت ۱۶:۰۰ الی ۱۶:۳۰ : گوفرکانف: ارائه «Concurrency in Go» توسط پیام کمرزرین
از ساعت ۱۶:۳۰ الی ۱۷:۰۰ : گوفرکانف: ارائه «گولنگ: چرا و چطور؟» توسط محمود اسکندری
از ساعت ۱۷:۰۰ الی ۱۷:۳۰ : پذیرایی و نتورکینگ
از ساعت ۱۷:۳۰ الی ۱۸:۱۰ : پاگ: ارائه «کُد برای کیش مات: ساخت هوش مصنوعی شطرنج باز با پایتون» توسط محمد فاضلی
از ساعت ۱۸:۱۰ الی ۱۸:۵۰ : پاگ: ارائه «استفاده از پایتون به عنوان یک مهندس نرم‌افزار» توسط «سید حمید مهدوی»
از ساعت ۱۸:۵۰ الی ۱۹:۱۰ : پذیرایی و نتورکینگ
از ساعت ۱۹:۱۰ الی ۱۹:۴۰ : لاگ: ارائه «Elastic Stack» توسط سعید رسولی
از ساعت ۱۹:۴۰ الی ۲۰:۰۰ : لاگ: ارائه «معرفی افزونه‌های کاربردی گنوم» توسط سینا جعفری
از ساعت ۲۰:۰۰ الی ۲۰:۳۰ : پذیرایی و نتورکینگ
8👍1👎1
Django Expert
آموزش داکر - Mount Namespace در قسمت چهارم از آموزش Docker به بررسی Mount Namespace در لینوکس و شیوه استفاده از آن پرداختیم. از طریق این مفهوم می توان Mount Point های یک پروسس را ایزوله کرد. برای این کار unshare Linux Api استفاده کردیم و شیوه فراخوانی آن…
آموزش داکر - مفهوم Process در لینوکس

در قسمت پنجم از آموزش Docker به بررسی مفهوم Process در لینوکس پرداختیم. ابتدا در مورد فایل سیستم procfs و ضرورت mount شدن آن صحبت کردیم. سپس شیوه ایجاد پروسس در لینوکس پرداختیم. در لینوکس معمولا از دو رویکرد برای ساخت پروسس استفاده می شود. در حالت اول از fork استفاده می شود که یک ساختار پدر فرزندی ایجاد می کند و حالت دوم از سیستم کال execve استفاده می شود که پروسس را جایگزین می کند. و در نهایت تفاوت زامبی و اروفان پروسس را که یکی از سوالات پر تکرار در مصاحبه
های فنی است را با یک مثال شرح دادیم.



Link: https://youtu.be/A9la8hJvp2k

Git: https://github.com/hemanhp/container-course

Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7

〰️〰️〰️〰️〰️〰️
© @DjangoEx | @microfrontend_ir
15👏3👎1
Django Expert
آموزش داکر - مفهوم Process در لینوکس در قسمت پنجم از آموزش Docker به بررسی مفهوم Process در لینوکس پرداختیم. ابتدا در مورد فایل سیستم procfs و ضرورت mount شدن آن صحبت کردیم. سپس شیوه ایجاد پروسس در لینوکس پرداختیم. در لینوکس معمولا از دو رویکرد برای ساخت…
در قسمت ششم از آموزش Docker به بررسی PID and UTS Linux Namespace پرداختیم.

به طور کلی، فضای نام UTS شامل اطلاعاتی مانند نام میزبان (hostname) و نسخه کرنل است که هر فرآیندی در سیستم لینوکس می تواند دسترسی داشته باشد. با استفاده از namespace UTS، می توانید این اطلاعات را برای هر فرآیند جداگانه تغییر دهید، بدون اینکه اثری بر روی سایر فرآیندها داشته باشد. این کار امکان ایجاد محیط های مجازی مستقل از یکدیگر را فراهم می کند.

استفاده از PID namespace به ارائه امکانات مانند ایجاد محیط‌های مجازی (virtual environments) و ایزوله کردن فرآیندها از یکدیگر کمک می‌کند. به این صورت که هر فضای نام PID می‌تواند دارای یک سلسله مراتب از شناسه‌های فرآیندها باشد که مستقل از سلسله مراتب دیگر PID namespace هاست. این امکان به سیستم عامل کمک می‌کند تا فرآیندها را در محیط‌های جداگانه اجرا کند و از همدیگر جدا نگه دارد.


Link: https://youtu.be/WBqTTdBEVps

Git: https://github.com/hemanhp/container-course

Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7

〰️〰️〰️〰️〰️〰️
© @DjangoEx | @microfrontend_ir
👍183🔥1
Django Expert
در قسمت ششم از آموزش Docker به بررسی PID and UTS Linux Namespace پرداختیم. به طور کلی، فضای نام UTS شامل اطلاعاتی مانند نام میزبان (hostname) و نسخه کرنل است که هر فرآیندی در سیستم لینوکس می تواند دسترسی داشته باشد. با استفاده از namespace UTS، می توانید…
در قسمت هفتم از آموزش Docker به بررسی رویکرد مدیریت منابع در لینوکس با استفاده از cgroup پرداختیم.
در لینوکس، cgroups یا "control groups" ابزاری برای محدود کردن، اختصاص دادن منابع سیستم مانند CPU، حافظه، پهنای باند شبکه و... به پروسه‌ها یا گروه‌های پروسه است. این امکان را فراهم می‌کند تا منابع سیستم به بهترین شکل ممکن بین برنامه‌ها یا خدمات تقسیم شود و همچنین به نظارت و کنترل دقیق‌تری بر روی مصرف منابع سیستم دست یافت.
در این ویدیو ابتدا یک برنامه ساده پایتونی که حافظه زیادی را در گیر می‌کند را نوشتیم و سپس با استفاده از cgroup سعی کردیم مموری استفاده شود توسط برنامه را محدود و کنترل کردیم.

Link: https://youtu.be/i8Q2YoYWYKE

Git: https://github.com/hemanhp/container-course

Playlsit: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBzLTI3VNE8Vp4JpXNn_yRR7

〰️〰️〰️〰️〰️〰️
© @DjangoEx | @microfrontend_ir
🔥123👍2
2025/07/09 16:35:15
Back to Top
HTML Embed Code: