Django Expert
9.71K subscribers
992 photos
81 videos
114 files
1.34K links
✔️ بزرگترین کانال و جامعه جنگو به فارسی
Contact:
@majid_aghamohamad
@BobyCloud

Group:
@DjangoIR

Our Site ;coming soon:
🔜 PyExpert.ir

تبلیغات نداریم فقط درج آگهی های استخدامی مرتبط پذیرفته می‌شود
Download Telegram
چند جمله در خصوص بهتر شدن گروه

من خیلی وقته دنبال بزرگتر کردن این گروه جنگو نیستم عوضش دنبال مفیدتر کردنش رفتم

به همین دلیل برای جلو گیری از اسپم و سوالات و بحث های بی مورد از این به بعد اعضای گروه که علاقمند به فعالیت هستند اکانتشون باید نشان دهنده یک هویت حقیقی باشه ( میتونه اسم و فامیل شما باشه میتونه لینک لینکدین شما در بایو تون باشه میتونه عکستون باشه هدف ما از این موضوع مشخص کردن این مطلب هست که هرکس با هویت واقعی خودش در قبال بیاناتش در این گروه مسئول و پاسخگو باشه)

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

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

اینجا هم نه دیکتاتوری هست نه پادگان که حرف زور بزنیم یک گروه هست که ما دوست داریم هر روز شاهد پیشرفت اعضاء اش باشیم این فقط یک محدودیت مثبت در نظر گرفته شده برای تمام اعضاء گروه


@DjangoIR
〰️〰️〰️〰️〰️〰️
© @DjangoEx
👎93👍403🔥2
توی این ویدیو در مورد آرگمان های اختیاری که مشابه شبه کد زیر هست + آنپکینگ کردن متغییرها صحبت کردیم

def some_method(*args, **kwargs):
pass

(این ویدیو آخرین بخش فصل ۳ کتاب ترفندهای پایتون می‌باشد)

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

پیج اینستاگرام:
https://instagram.com/am.mthri?igshid=OGQ5ZDc2ODk2ZA==

@DjangoIR
〰️〰️〰️〰️〰️〰️
© @DjangoEx | @mthri_tips
👍9👎2🔥1
برگشتم با یک ویدیو جدید از ادامه دوره دیزاین پترن
تو این ویدیو راجب ‍دیزاین پترن متود فکتوری صحبت کردم و مثال با کد زدم, گفتم کجا و چقدر میتونه استفاده شه و کاربردش چیه و مزایا و معایب استفاده ازش چیه؟

https://www.youtube.com/watch?v=Ci_noxGINY4&list=PLEQ3RnweNGA5XLLANrPl5erS90EREs0F0&index=4

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

〰️〰️〰️〰️〰️〰️
© @DjangoEx | @ManiFoldsPython
10🔥3👍2😁1
تو این قسمت از khat weekly، مهمون ما امین علی مزاریان هست که توسعه دهنده بک انده (Python Back-end developer)

اما جز اینکه تو برنامه نویسی کارش خوبه،‌توی مهارت های نرم و رزومه نویسی هم تجربیات خوبی داره و قراره تو میت از ساخت یک رزومه مناسب تا مصاحبه صحبت کنیم 💥

پیشنهاد میکنم حتما این قسمتو دنبال کنید چون قراره کلی چیز از امین علی یاد بگیریم.

همچنین هر سوالی دارید، تو کامنت بپرسید تا توی پادکست دربارش صحبت کنیم

تاریخ میت:
چهارشنبه ۱۹ مهر ساعت ۱۹:۰۰

#meet #weekly

@khat_academy
🤣30🔥9👎5👍2🤔1
ما در کارنامه در حال جذب Back-End Developer سطح mid level هستیم.

اگر در حل مسئله ها و یادگیری موضوعات جدید توانمند هستی و در حوزه‌ی برنامه نویسی تخصص و تجربه ی کافی داری، حتما برای پیوستن به تیم فنی کارنامه اقدام کن.

🔸 میتونید رزومه هاتون رو به آیدی Mahdi یا صفحه career کارنامه ارسال کنید.

🟢 Careers 🟡 Website 🟢 Linkdin
🔥9👍5
✔️ اخیرا code review برای یک سری از دوستان انجام دادم و یک موردی که در اکثر کدها میدیدم عبارات شرطی (if/else) های غیرضروری و تورفتگی های بیش از حد کدها بود که باعث میشد خوانایی کد پایین بیاد، کدها کثیف بشن و دیباگ و نگهداری کد هم سخت تر بشه. این مورد انقدر زیاد بود که تصمیم گرفتم راجع بهش یه ویدیو بسازم.

توی این ویدیو راجع به تکنیک گارد کلاوز (Guard Clause) صحبت میکنیم که با استفاده از برعکس کردن شرط‌های if، میشه کدهای تمیزتری نوشت و دیباگ، نگهداری و در نهایت زندگی راحت تری داشته باشیم.

🖥 مشاهده در یوتوب
👉 Link: https://youtu.be/Q3FLJ95Mc1g?si=JnCE5PYehlrTyQMl

〰️〰️〰️〰️〰️〰️
@DjangoEx | @BobyDotCloud
👍317🤣3🔥1🌚1🏆1
در این ویدیو از پلی لیست آموزش رایگان پروژه محور Django به بررسی مفهوم Authentication یا احراز هویت و Authorization یا اعتبار سنجی و تفاوت های آنها سیستم های نرم افزاری پرداختیم. در کنار رویکرد احراز هویت مبتنی بر مدل که در جنگو وجود دارد روش های مختلفی همچون LDAP و همچنین روش‌های مدرن WebAuthn که امکان احراز هویت بدون پسورد و مبتنی بر کریپتو گرافی است را معرفی کردیم.
روش های مختلفی هم برای Authorization وجود دارد که مهمترین آن Role-Base Access Control است که به راحتی در جنگو قابل پیاده سازی است. همچنین مفهوم Object level permission را مطرح کردیم.

https://youtu.be/wDt3M4Vv-GE

PlayList: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBwnWCHfoka0G57oL-8fuMGW

Git: https://github.com/hemanhp/djshop

〰️〰️〰️〰️〰️〰️
© @DjangoEx | @microfrontend_ir
🔥17👍73
پند روز : من تازه الان فهمیدم چرا اینقدر میگن TDD خوبه نایسه فلانه بهمانه؟

شما خفن ترین معماری جهان رو بچین بعد موقع تست نویسی عالم و آدم رو فش کش می‌کنی 😁
برای همینه که TDD علاوه اینکه دستت رو موقع دولوپ باز میذاره و شجاعت راحت تغییر دادن کد رو بهت میگه اما در عین حال مجبورت میکنه کد رو ساده و تا حد امکان flat نگهداری :))
@DjangoIR
〰️〰️〰️〰️〰️〰️
© @DjangoEx
👍34🔥6
در این ویدیو از پلی لیست آموزش رایگان پروژه محور Django به مررسی مفهوم کاربر در جنگو پرداختیم. ابتدا تنظیمات مرتبط با مدل یوزر در جنگو را مرور و سپس کلاس های پایه User در جنگو و فیلدهای آن را مرور کردیم. سپس برای Extend Django User Model یک اپ مستقل ساختیم و Custom User خود را نوشتیم و به پروژه اضافه کردیم. همچنین برای مدیریت آن به Django Admin هم اضافه کردیم


Video: https://youtu.be/wXBxfttOGUo

PlayList: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBwnWCHfoka0G57oL-8fuMGW

Git: https://github.com/hemanhp/djshop

〰️〰️〰️〰️〰️〰️
© @DjangoEx | @microfrontend_ir
👍74🔥1
در این ویدیو از آموزش پروژه محور جنگو به بررسی سیستم Authentication در جنگو پرداختیم. ابتدا به چرایی مساله احراز هویت بر بستر HTTP پرداختیم و اینکه چگونه می توان با یک شناسه منحصر بفرد پروتکل stateless به صورت stateful در آید. سپس فرایند احراز هویت جنگو را از طرریق کد جنگو مرور کردیم. پس از DRF را وارد بازی کردیم و نخست view پیش فرض آن و در نهایت این view را به گونه ای تغییر دادیم که فقط کاربران superuser بتوانند لاگین کنند.

** یکی از حملات مهم به وب سایت تایمینگ اتکه. در این حمله مهاجم برای یک کار مشخص چندین درخواست ارسال میکنه و براساس زمان پاسخگویی سرور به نتایج مدنظر خودش میرسه. مثلا فرض کنید مهاجم میخواد بدونه یک کاربر کلن وجود نداره یا پسوردشش غلطه، اگر شما به درستی فرایند احراز هویت رو مدیریت نکنید مهاجم نتیجه دلخواه رو خواهد گرفت. تو این کد جنگو را برای مدیریت این فرایند ریویو کردیم.

Video: https://youtu.be/wx8eTO5dWMc

PlayList: https://www.youtube.com/playlist?list=PLJ9zDGwhhsBwnWCHfoka0G57oL-8fuMGW

Git: https://github.com/hemanhp/djshop

〰️〰️〰️〰️〰️〰️
© @DjangoEx | @microfrontend_ir
7👍2🔥1
ما در مجموعه "سرمایه دیجیتال" به دنبال یک نیروی با تجربه و سنیور backend به صورت پاره وقت و ریموت نیاز داریم که توانایی کار با تفکر اسکرام همراه با فرهنگ دواپس را داشته باشد.

تخصص‌های مورد نیاز:

- Django
- RabbitMQ
- Redis (High Level)
- Elastic Search
- CI/CD
- Git Flow
- Prometheus
- Security-first minded
- Design Pattern (advance)
- Nginx
- PostgreSQL (advance)
- Django ORM (advance)
- TDD
- Familiar with K8s


لطفا رزومه خود را به آدرس ایمل
[email protected]
یا به منابع‌ انسانی مجموعه به شماره 9057220251 واتس‌اپ یا تلگرام فرمایید.
👎38👍20😁3😐3👏1
توی این ویدیو کوتاه در مورد تفاوت is و == برای مقایسه آبجکت‌ها و مجیک متدهای str و repr صحبت کردیم.

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


@DjangoIR
〰️〰️〰️〰️〰️〰️
© @DjangoEx | @mthri_tips
👍13🔥3🤣3😁1
ویدیو جدید راجع به ۵ کتابی هست که هر برنامه نویس پایتون لازم داره بخونه تا توی پایتون حرفه ای بشه و کارهایی رو بتونه انجام بده که اکثر آدم ها بخاطر نداشتن دانش فنی کافی نمیتونن انجام بدن. اگه دوست داشتید میتونید روی یوتوب ببینید:

🖥 مشاهده در یوتوب
👉 Link: https://youtu.be/DlZGvsg655A?si=tsrn3Sy9k6aporRe

〰️〰️〰️〰️〰️〰️
@DjangoEx | @BobyDotCloud
25🫡5🔥4👍2😍2🐳1🤓1
قسمت جدید دوره تست نویسی راجب Parametrized Testing اضافه شد.
تو این قسمت پارامترایز تستینگ رو توضیح دادم, گفتم کجا به درد میخوره و مزیت و معایبش چیه و کجا باید استفاده شه.

https://www.youtube.com/watch?v=2tE6REdDjp8&list=PLEQ3RnweNGA6v7qTMrDCcpgr9u91zvpq_&index=8

سوالی داشتین حتما کامنت کنید زیر ویدیو.
〰️〰️〰️〰️〰️〰️
@DjangoEx | @ManiFoldsPython
🔥126😭1
CV_NimaGhanbari.pdf
542.7 KB
سلام دوستان ,امیدوارم حالتون خوب باشه
حدود ۴-۵ ماه پیش بود که برای اولین بار دنبال پیدا کردن یک موقعیت شغلی (جونیور-کارآموز) بودم که به نتیجه‌ای نرسیدم ولی رفتم و ادامه دادم به تلاش کردن برای رسیدن به یک فرصت مطلوب و الان فکر میکنم وقتش رسیده.
ممنون میشم اگر موقعیتی برای بک اند(پایتون٫جنگو) سراغ دارید بهم اطلاع بدید.

تجربه کار با
Python
Django
Django REST Framework
Git
Gitflow
Mysql
Postgresql
Django Orm
Docker
ارادت.

Telegram: @niwaghanbari
E-Mail: [email protected]
#جویای_کار
#کارآموز
#جونیور
👍202
توی این ویدیو از GPT Engineer که یک کتابخانه پایتونی هست استفاده میکنیم و بهش میگیم یک پروژه برنامه نویسی رو با پایتون/جنگو بسازه و میخوایم ببینیم آیا GPT Engineer میتونه جایگزین بابی به عنوان یه برنامه نویس بشه یا نه؟ 😎

🖥 مشاهده در یوتوب
👉 Link: https://www.youtube.com/watch?v=5uksQCRZxSU

〰️〰️〰️〰️〰️〰️
@DjangoEx | @BobyDotCloud
🔥164👍3🆒2
چطور issue رو به صورت حرفه ای تو یک community مطرح کنیم و به جواب برسیم؟

اولین مشکلی که من خیلی میبینم مشکل xy هست.

https://en.wikipedia.org/wiki/XY_problem
مشکل xy چیه؟ به جای اینکه راجب صورت سوال, سوال بپرسن راجب مشکلی میپرسن که در طی پاسخ به اون سوال از اون روش بهش برخوردن. مثلا یک مثال ساده:‌ من چطور تو پایتون میتونم سه کاراکتر اخر از یک string که میاد رو بگیرم؟‌
حالا سوال و چالش واقعی:‌من چطور میتونم ببینم فایلی که کلاینت برام فرستاده همون فایلیه که ادعا میکنه؟ جوابش: مقایسه مجیک بایت و تطابقش با file extension که بعد آخرین نقطه میاد.
پس همیشه سوالتون رو بپرسید. میتونید راهکاری هم که داشتین در کنارش معرفی کنید. ولی راجب راهکارتون مستقیم سوال نپرسین چون ممکنه خودش اشتباه باشه.

دومین مشکل همون مشکل dont ask to ask هست که احتمال پاسخ گرفتنتون رو به شدت کاهش میدین.
https://dontasktoask.com

و آخرین مشکل نحوه و کالچر مطرح کردن مشکلتون هست. لایبری های اوپن سورس اگه ایشو زده باشین حتما با کالچر مطرح issue آشنا هستین, این موارد شامل:
۱. جدایی لاجیک از کدتون. هرچقدر لاجیک لای کدتون بیشتر باشه خواناییش کمتر میشه برای کسی که مسلط نیست به اون لاجیک.
۲. نوشتن یک failing test. خیلی وقتا همه مشکلشونو میگن ولی واقعا نمیفهمم کجاش مشکل بوده 😁
۳. اگه مورد دو رو انجام ندادین, میتونید یک قطعه کد کوتاهی بذارین که مشکلتون رو reproduce کنه! expected result مشخص باشه.
۴. محیطتون رو کامل شرح بدید. سیستم عاملتون, چه نسخه ای از لایبری و پایتون رو دارین استفاده میکنید‍.
۵. اسکرین شات با ‍سایت هایی مشابه ray.so بنویسید یا از قابلیت جدید تلگرام استفاده کنید برای ارسال کد.


〰️〰️〰️〰️〰️〰️
@DjangoEx | @ManiFoldsPython
👍27👎5👌21🔥1😐1
برنامه‌ نویسی تدافعی (Defensive Programming) در پایتون مساله مهمی هست، متاسفانه بخاطر EAFP در پایتون، خیلی از برنامه نویس‌های پایتون با تکنیک‌های برنامه نویسی تدافعی برای افزایش پایداری و اطمینان نرم افزارها و همچنین کاهش باگ‌ها و اتفاقات غیرمنتظره، آشنا نیستند. اگر به ساخت نرم افزارهای قابل اطمینان و پایدار با پایتون علاقمند هستید این ویدیو رو از دست ندید.

🖥 مشاهده در یوتوب
👉 Link: https://youtu.be/wNiQwj9qKvc?si=MHlWs0iTPn3ddYZH

〰️〰️〰️〰️〰️〰️
@DjangoEx | @BobyDotCloud
🔥15🫡11👍4