✔️ Dependency Injection
اگر کدها بتونن باهم صحبت کنن، چطوری dependency رو inject میکنن؟
〰️〰️〰️〰️〰️〰️
© @DjangoEx
اگر کدها بتونن باهم صحبت کنن، چطوری dependency رو inject میکنن؟
〰️〰️〰️〰️〰️〰️
© @DjangoEx
Django Expert
✔️ Dependency Injection اگر کدها بتونن باهم صحبت کنن، چطوری dependency رو inject میکنن؟ 〰️〰️〰️〰️〰️〰️ © @DjangoEx
✔️ Dependency Injection در جنگو
جنگو به صورت سنگینی از Dependency Injection استفاده میکنه.
مثلا میبینید که خیلی راحت میتونیم در فایل settings.py یک سری تنظیمات رو مشخص کنیم و خیلی خوشحال اپلیکیشن رو به دیتابیس متصل کنیم. برای نمونه:
یا مثلا در DRF هم شاهد DI های زیادی هستیم
C
متاسفانه توی جامعه پایتونیک راجع به Dependency Injection صحبت زیادی نمیشه. اما بسیار مهم هست و همچنین جزو یکی از اصول SOLID هست و علم به این موضوع هم خالی از لطف نیست.
برای مطالعه کامل تر میتونید Dependency Injection in Python رو سرچ کنید.
〰️〰️〰️〰️〰️〰️
© @DjangoEx
جنگو به صورت سنگینی از Dependency Injection استفاده میکنه.
مثلا میبینید که خیلی راحت میتونیم در فایل settings.py یک سری تنظیمات رو مشخص کنیم و خیلی خوشحال اپلیکیشن رو به دیتابیس متصل کنیم. برای نمونه:
CACHES = {
'default': {
'BACKEND': 'django_redis.cache.RedisCache',
'LOCATION': REDIS_URL + '/1',
},
یا مثلا در DRF هم شاهد DI های زیادی هستیم
C
lass FooView(APIView):
# The "injected" dependencies:
permission_classes = (IsAuthenticated, )
throttle_classes = (ScopedRateThrottle, )
renderer_classes = (renderers.JSONRenderer,)
متاسفانه توی جامعه پایتونیک راجع به Dependency Injection صحبت زیادی نمیشه. اما بسیار مهم هست و همچنین جزو یکی از اصول SOLID هست و علم به این موضوع هم خالی از لطف نیست.
برای مطالعه کامل تر میتونید Dependency Injection in Python رو سرچ کنید.
〰️〰️〰️〰️〰️〰️
© @DjangoEx
✔️ Monkey Patching در پایتون
🔶 پایتون یک زبان اسکریپتی و duck-type هست (شبیه اردک که اگه بگه کواک یعنی اردک هست!)
🔷 به همین دلیل در هنگام run-time یک برنامه پایتونی میتونیم متدها یا پراپرتی هایی رو به آبجکت ها اضافه کنیم یا تغییرشون بدیم. دقت کنید که این اتفاق در زمان اجرای برنامه رخ میده
✅ به این کار که در پاراگراف بالا توضیح دادیم در دنیای پایتونیک میگیم Monkey Patching. یعنی در هنگام run-time اپلیکیشن یک سری متد(رفتار) یا پراپرتی(ویژگی) به یک آبجکت اضافه میکنیم یا میتونیم تغییرشون بدیم.
نمونه کد برای درک بهتر:
پ ن: میبینیم که متد speak به آبجکت SomeClass مثل یک میمون چسبیده (مفهوم مانکی پچینگ) و از این به بعد این آبجکت دارای رفتار speak خواهد بود.
پ ن۲: عکسی که مشاهده میکنید هیرو مانکی کینگ دوتا۲ هست
پ ن ۳: به باغ وحش پایتون خوش اومدید
〰️〰️〰️〰️〰️〰️
© @DjangoEx
🔶 پایتون یک زبان اسکریپتی و duck-type هست (شبیه اردک که اگه بگه کواک یعنی اردک هست!)
🔷 به همین دلیل در هنگام run-time یک برنامه پایتونی میتونیم متدها یا پراپرتی هایی رو به آبجکت ها اضافه کنیم یا تغییرشون بدیم. دقت کنید که این اتفاق در زمان اجرای برنامه رخ میده
✅ به این کار که در پاراگراف بالا توضیح دادیم در دنیای پایتونیک میگیم Monkey Patching. یعنی در هنگام run-time اپلیکیشن یک سری متد(رفتار) یا پراپرتی(ویژگی) به یک آبجکت اضافه میکنیم یا میتونیم تغییرشون بدیم.
نمونه کد برای درک بهتر:
from Module import SomeClass
def speak(self):
return "ook ook eee eee eee!"
SomeClass.speak = speak
پ ن: میبینیم که متد speak به آبجکت SomeClass مثل یک میمون چسبیده (مفهوم مانکی پچینگ) و از این به بعد این آبجکت دارای رفتار speak خواهد بود.
پ ن۲: عکسی که مشاهده میکنید هیرو مانکی کینگ دوتا۲ هست
پ ن ۳: به باغ وحش پایتون خوش اومدید
〰️〰️〰️〰️〰️〰️
© @DjangoEx
Forwarded from DevOps Expert (Aliakbar Hemmati)
✔️ داکر برای برنامه نویسان - قسمت ۷ منتشر شد
در این دوره یاد میگیریم کانتینرها چی هستند و چطور با داکر میتونیم اونها اجرا کنیم. همچنین مطالبی که یک برنامه نویس باید برای نوشتن برنامههای داکرایز شده بدونه رو پوشش میدیم.
🔹 قسمت سوم - دستورات ابتدایی در داکر
👉 Link: https://vrgl.ir/MKlNQ
🔸 قسمت چهارم - حذف تصویر و کانتینر در داکر
👉 Link: https://vrgl.ir/CfTbq
🔹 قسمت پنجم - ارتباط با کانتینر
👉 Link: https://vrgl.ir/arPBF
🔸 قسمت ششم - اشتراک و جابجایی فایل در کانتینر
👉 Link: https://vrgl.ir/JX3XR
🔹 قسمت هفتم - دستورات متفرقه ولی مفید
👉 Link: https://vrgl.ir/QlqEd
#داکر #docker
〰️〰️〰️〰️〰️
©️ @DevOpsEx
در این دوره یاد میگیریم کانتینرها چی هستند و چطور با داکر میتونیم اونها اجرا کنیم. همچنین مطالبی که یک برنامه نویس باید برای نوشتن برنامههای داکرایز شده بدونه رو پوشش میدیم.
🔹 قسمت سوم - دستورات ابتدایی در داکر
👉 Link: https://vrgl.ir/MKlNQ
🔸 قسمت چهارم - حذف تصویر و کانتینر در داکر
👉 Link: https://vrgl.ir/CfTbq
🔹 قسمت پنجم - ارتباط با کانتینر
👉 Link: https://vrgl.ir/arPBF
🔸 قسمت ششم - اشتراک و جابجایی فایل در کانتینر
👉 Link: https://vrgl.ir/JX3XR
🔹 قسمت هفتم - دستورات متفرقه ولی مفید
👉 Link: https://vrgl.ir/QlqEd
#داکر #docker
〰️〰️〰️〰️〰️
©️ @DevOpsEx
تا چه میزان از مطالب کانال رضایت دارید؟
Anonymous Poll
23%
معرکه است😍
40%
خوبه😃
17%
بد نیست 😒
2%
بده 😤
5%
اینا چیه میزارید 🤬
13%
اصلا نمیدونم جنگو چیه🙄 (دیدن نتایج)
👍1
#کارجو #کارآموز #کارآموزی
سلام و وقت بخیر مهدی حسینی هستم به دنبال یک فرصت کاراموزی جنگو و پایتون هستم.
من حدود دو سالی میشه پایتون رو شروع کردم و تسلط نسبتا خوبی به پایتون دارم. علاوه بر این شش ماهی میشه یادگیری جنگو رو شروع کردم و برای اینکه ادامه یادگیریم بازده بالا تری داشته باشه به دنبال کارآموزی تو محیط کاری هستم تا علاوه بر افزایش مهارتم تو برنامه نویسی بتونم تجربه کار تو محیط کاری رو داشته باشم .
مهارت هایی که دارم:
python, Django, html & css, bootstrap, Git, Linux(lpic)
آشنایی مقدماتی با nlp و ماشین لرنینگ
سن : 20
شهر : زنجان(امکان دورکاری را دارم)
مدرک : دانشجوی ترم ۴ کامپیوتر
ایمیل :
👉🏻Link: mahdihos38@gmail.com
آدرس لینکداین:
👉🏻Link: www.linkedin.com/in/mehdi-hoseyni/
رزومه :
👉🏻Link:https://cvbuilder.me/Resume/en/c7001685-f954-4531-8135-28da94f056bb?template=Template6
〰〰〰〰〰
@DjangoEx
سلام و وقت بخیر مهدی حسینی هستم به دنبال یک فرصت کاراموزی جنگو و پایتون هستم.
من حدود دو سالی میشه پایتون رو شروع کردم و تسلط نسبتا خوبی به پایتون دارم. علاوه بر این شش ماهی میشه یادگیری جنگو رو شروع کردم و برای اینکه ادامه یادگیریم بازده بالا تری داشته باشه به دنبال کارآموزی تو محیط کاری هستم تا علاوه بر افزایش مهارتم تو برنامه نویسی بتونم تجربه کار تو محیط کاری رو داشته باشم .
مهارت هایی که دارم:
python, Django, html & css, bootstrap, Git, Linux(lpic)
آشنایی مقدماتی با nlp و ماشین لرنینگ
سن : 20
شهر : زنجان(امکان دورکاری را دارم)
مدرک : دانشجوی ترم ۴ کامپیوتر
ایمیل :
👉🏻Link: mahdihos38@gmail.com
آدرس لینکداین:
👉🏻Link: www.linkedin.com/in/mehdi-hoseyni/
رزومه :
👉🏻Link:https://cvbuilder.me/Resume/en/c7001685-f954-4531-8135-28da94f056bb?template=Template6
〰〰〰〰〰
@DjangoEx
cvbuilder.me
mehdi hoseyni's Resume
computer science student
I am python and django web developer(and also drf)
Has the ability linux and Postgras
I am python and django web developer(and also drf)
Has the ability linux and Postgras
#استخدام #ریموت #شغل #موقعیت_شغلی #job #career #react_native #js
استخدام برنامهنویس موبایل (سطح Mid - Senior) مسلط به React Native به صورت تماموقت و ریموت
🏢شرکت agileful
اطلاعات بیشتر: (WebSite) (LinkedIn)
موقعیت شرکت: آلمان 🇩🇪، برلین (ریموت)
📨ارسال رزومه و اطلاعات بیشتر:
mohammad.m@agileful.com
〰️〰️〰️〰️〰️
@DjangoEx
استخدام برنامهنویس موبایل (سطح Mid - Senior) مسلط به React Native به صورت تماموقت و ریموت
🏢شرکت agileful
اطلاعات بیشتر: (WebSite) (LinkedIn)
موقعیت شرکت: آلمان 🇩🇪، برلین (ریموت)
📨ارسال رزومه و اطلاعات بیشتر:
mohammad.m@agileful.com
〰️〰️〰️〰️〰️
@DjangoEx
✔️ جاوا اسکریپت مدرن (از پایه با کلی پروژه)
۰۶۱ - مینی پروژه ۲: آکاردیون منو با جاوا اسکریپت!
🖥 تماشا در یوتیوب
۰۶۲ - داینامیک کردن آکاردیون
🖥 تماشا در یوتیوب
۰۶۳ - حذف کلاس show از سایر wrapper ها
🖥 تماشا در یوتیوب
۰۶۴ - افزودن انیمیشن باز و بسته شدن آکاردیون منو
🖥 تماشا در یوتیوب
۰۶۵ - اضافه کردن استایل های بیشتر به منوی آکاردیون
🖥 تماشا در یوتیوب
۰۶۶ - چطوری بتونیم هر چقدر که بخواییم آکاردیون داشته باشیم؟
🖥 تماشا در یوتیوب
#جاوا_اسکریپت #es6 #منهای_جنگو
〰️〰️〰️〰️〰️
©️ @DjangoEx
۰۶۱ - مینی پروژه ۲: آکاردیون منو با جاوا اسکریپت!
🖥 تماشا در یوتیوب
۰۶۲ - داینامیک کردن آکاردیون
🖥 تماشا در یوتیوب
۰۶۳ - حذف کلاس show از سایر wrapper ها
🖥 تماشا در یوتیوب
۰۶۴ - افزودن انیمیشن باز و بسته شدن آکاردیون منو
🖥 تماشا در یوتیوب
۰۶۵ - اضافه کردن استایل های بیشتر به منوی آکاردیون
🖥 تماشا در یوتیوب
۰۶۶ - چطوری بتونیم هر چقدر که بخواییم آکاردیون داشته باشیم؟
🖥 تماشا در یوتیوب
#جاوا_اسکریپت #es6 #منهای_جنگو
〰️〰️〰️〰️〰️
©️ @DjangoEx
This media is not supported in your browser
VIEW IN TELEGRAM
✔️ دمو مینی پروژه ۲: آکاردیون منو با جاوا اسکریپت!
🖥 تماشا در یوتیوب
#جاوا_اسکریپت #es6 #منهای_جنگو
〰️〰️〰️〰️〰️
©️ @DjangoEx
🖥 تماشا در یوتیوب
#جاوا_اسکریپت #es6 #منهای_جنگو
〰️〰️〰️〰️〰️
©️ @DjangoEx
✔️ ساخت سرویس Online Judge
شاید با سرویسهای Hakerrank و LeetCode و Quera.ir کار کرده باشید.
یکی از امکانات این سایتها ساخت contest برای زبانهای برنامهنویسی است. بخش جالب ماجرا آنجاست که این سرویسها قابلیت اجرای کد در اکثر زبانها را دارند و صحت خروجی را نیز بررسی میکنند.
پیادهسازی چنین سرویسهایی پر از چالش است. مهمترین آن ایجاد فضای ایزوله و امن برای اجرای هر قطعه کد است.
دیدن نمونه زیر که با فریمورک جنگو طراحی شدهاست میتواند بسیار مفید باشد.
https://github.com/DMOJ/online-judge
#django #online_judge
〰️〰️〰️〰️〰️
©️ @DjangoEx
شاید با سرویسهای Hakerrank و LeetCode و Quera.ir کار کرده باشید.
یکی از امکانات این سایتها ساخت contest برای زبانهای برنامهنویسی است. بخش جالب ماجرا آنجاست که این سرویسها قابلیت اجرای کد در اکثر زبانها را دارند و صحت خروجی را نیز بررسی میکنند.
پیادهسازی چنین سرویسهایی پر از چالش است. مهمترین آن ایجاد فضای ایزوله و امن برای اجرای هر قطعه کد است.
دیدن نمونه زیر که با فریمورک جنگو طراحی شدهاست میتواند بسیار مفید باشد.
https://github.com/DMOJ/online-judge
#django #online_judge
〰️〰️〰️〰️〰️
©️ @DjangoEx
GitHub
GitHub - DMOJ/online-judge: A modern open-source online judge and contest platform system.
A modern open-source online judge and contest platform system. - DMOJ/online-judge
#python #cli #terminal
Rich is a Python library for rich text and beautiful formatting in the terminal.
The Rich API makes it easy to add color and style to terminal output. Rich can also render pretty tables, progress bars, markdown, syntax highlighted source code, tracebacks, and more — out of the box.
https://github.com/willmcgugan/rich
〰️〰️〰️〰️〰️
©️ @DjangoEx
Rich is a Python library for rich text and beautiful formatting in the terminal.
The Rich API makes it easy to add color and style to terminal output. Rich can also render pretty tables, progress bars, markdown, syntax highlighted source code, tracebacks, and more — out of the box.
https://github.com/willmcgugan/rich
〰️〰️〰️〰️〰️
©️ @DjangoEx
#کارجو #استخدام #موقعیت_شغلی
ما در گروه نرم افزاری Gathersa جهت تکمیل نیروها متخصص خود، به دنبال یک همکار در موقعیت شغلی توسعه دهنده سینیور هستیم
.
اکثر پروژه های این گروه نرم افزاری، پروژه های خارجی می باشد، از این رو نیاز به تسلط کافی به زبان انگلیسی می باشد.
با توجه به شرایط کرونا، تمامی کارها به صورت دورکاری انجام می پذیرد.
شرایط کامل تر و لینک ارسال رزومه:
👉🏻Link: https://jobinja.ir/companies/gathersa/jobs/QfK/1
〰〰〰〰〰〰
©@DjangoEx
ما در گروه نرم افزاری Gathersa جهت تکمیل نیروها متخصص خود، به دنبال یک همکار در موقعیت شغلی توسعه دهنده سینیور هستیم
.
اکثر پروژه های این گروه نرم افزاری، پروژه های خارجی می باشد، از این رو نیاز به تسلط کافی به زبان انگلیسی می باشد.
با توجه به شرایط کرونا، تمامی کارها به صورت دورکاری انجام می پذیرد.
شرایط کامل تر و لینک ارسال رزومه:
👉🏻Link: https://jobinja.ir/companies/gathersa/jobs/QfK/1
〰〰〰〰〰〰
©@DjangoEx
جابینجا، شغلی رویایی خود را پیدا کنید
استخدام برنامهنویس Django (دورکاری) در گدرسا
استخدام برای فرصت شغلی برنامهنویس Django (دورکاری) در Gathersa, تسلط به زبان برنامه نویسی پایتون و مباحث OOP تسلط به Django تسلط به مفاهیم Rest Api تسلط به DRF تسلط به مفاهیم دیتابیس SQL ...
✔️ وبفریمورکها چگونه کار میکنند؟
🟣 قسمت ۴: شروع ساخت یک وبفریمورک با پایتون
برای بهتر یاد گرفتن یک وبفریمورک باید دست به کار شد و نمونهای ساده از اون رو نوشت. ماهم قصد داریم تا در چند قسمت یک میکرو فریمورک برای توسعه وباپلیکیشن بسازیم. همچنین در حین ساخت سری به سورس کد فریمورکهای معروف میزنیم تا ببینیم اونها چطوری مسئله رو حل کردند.
🌐 https://youtu.be/d7uOsjhb-cM
#web_framework #python #http #web_server
#یوتوب #یوتیوب #یوتوب_فارسی #یوتیوب_فارسی
〰️〰️〰️〰️〰️
©️ @DjangoEx
🟣 قسمت ۴: شروع ساخت یک وبفریمورک با پایتون
برای بهتر یاد گرفتن یک وبفریمورک باید دست به کار شد و نمونهای ساده از اون رو نوشت. ماهم قصد داریم تا در چند قسمت یک میکرو فریمورک برای توسعه وباپلیکیشن بسازیم. همچنین در حین ساخت سری به سورس کد فریمورکهای معروف میزنیم تا ببینیم اونها چطوری مسئله رو حل کردند.
🌐 https://youtu.be/d7uOsjhb-cM
#web_framework #python #http #web_server
#یوتوب #یوتیوب #یوتوب_فارسی #یوتیوب_فارسی
〰️〰️〰️〰️〰️
©️ @DjangoEx
✔️ استخدام در adtrace
ما تو ادتریس به دنبال چند توسعهدهنده Back-end برای اضافه کردن به تیممون هستیم که توانایی یادگیری بالا، خلاقیت و انگیزه از مهمترین ویژگیهای این اعضای جدیده که جاشون تو تیم ما خالیه.
نیازمندیهای فنی:
تسلط نسبی به زبان برنامهنویسی Python
تسلط نسبی به فریمورکهای پایتونی Django یا Flask
آشنا به Elastic Search
آشنایی با سیستم عامل Linux
داشتن موارد زیر مزیت محسوب میشه:
آشنایی با REST API
آشنایی با مفاهیم و اصول Microservice Architecture
آشنایی با ابزارهای Redis, Kafka, Zookeeper
آشنایی با طراحی و پیاده سازی Relational database
آشنایی با سیستم کنترل سورس کد Git
آشنایی با متودولوژی اسکرام
اگر علاقهمند به همکاری هستید رزومه خودتون رو به jobs@adtrace.io ارسال کنید تا بیشتر با هم آشنا بشیم.
#کارجو
#استخدام #موقعیت_شغلی
#فرصت_شغلی
〰〰〰〰〰〰
©@DjangoEx
ما تو ادتریس به دنبال چند توسعهدهنده Back-end برای اضافه کردن به تیممون هستیم که توانایی یادگیری بالا، خلاقیت و انگیزه از مهمترین ویژگیهای این اعضای جدیده که جاشون تو تیم ما خالیه.
نیازمندیهای فنی:
تسلط نسبی به زبان برنامهنویسی Python
تسلط نسبی به فریمورکهای پایتونی Django یا Flask
آشنا به Elastic Search
آشنایی با سیستم عامل Linux
داشتن موارد زیر مزیت محسوب میشه:
آشنایی با REST API
آشنایی با مفاهیم و اصول Microservice Architecture
آشنایی با ابزارهای Redis, Kafka, Zookeeper
آشنایی با طراحی و پیاده سازی Relational database
آشنایی با سیستم کنترل سورس کد Git
آشنایی با متودولوژی اسکرام
اگر علاقهمند به همکاری هستید رزومه خودتون رو به jobs@adtrace.io ارسال کنید تا بیشتر با هم آشنا بشیم.
#کارجو
#استخدام #موقعیت_شغلی
#فرصت_شغلی
〰〰〰〰〰〰
©@DjangoEx
👍1
This media is not supported in your browser
VIEW IN TELEGRAM
جناب واعظی هستند ۴ سال وزیر سابق وزارت ارتباطات و فناوری اطلاعات
#موقت
#موقت
✔️ 958 پروژه اوپن سورس جنگو برای یادگیری
🔶 دانش خوب در برنامه نویسی با مطالعه دستخط کدهای آدمهای حرفهای تر به دست میاد، چیزی که توی Tutorial ها و منابع آموزشی مختلف پیدا نمیکنید. مثل طراحی که هرروز طرحهای زیادی رو میبینه تا بتونه ازشون الهام بگیره. پس سعی کنید کدهای خوبی که با جنگو نوشته شده رو بخونید تا ایدههای جدید و بهتری به ذهنتون برسه و در عمل داخل پروژه خودتون پیادهسازیش کنید.
👉🏻Link: https://awesomeopensource.com/projects/django
#django #جنگو
〰️〰️〰️〰️〰️〰️
©@DjangoEx
🔶 دانش خوب در برنامه نویسی با مطالعه دستخط کدهای آدمهای حرفهای تر به دست میاد، چیزی که توی Tutorial ها و منابع آموزشی مختلف پیدا نمیکنید. مثل طراحی که هرروز طرحهای زیادی رو میبینه تا بتونه ازشون الهام بگیره. پس سعی کنید کدهای خوبی که با جنگو نوشته شده رو بخونید تا ایدههای جدید و بهتری به ذهنتون برسه و در عمل داخل پروژه خودتون پیادهسازیش کنید.
👉🏻Link: https://awesomeopensource.com/projects/django
#django #جنگو
〰️〰️〰️〰️〰️〰️
©@DjangoEx
Awesomeopensource
The Top 22,650 Django Open Source Projects
Browse The Most Popular 22,650 Django Open Source Projects
👍1
یک نصیحت دوستانه
اگر روزی در زندگی محتاج پول نون شب بودید هیچ وقت سوال امتحانی (برنامه نویسی یا دروس تخصصی دیگه) حل نکنید
شاید شب رو گرسنه بخوابید
ولی تلاشتون رو کردید برای جلوگیری از تولید شدن یک فرد مدرک دار بی سواد
پسفردا اون آقا/خانم خواست با مدرکش جایی استخدام بشه ولی مهارت نداشت شما مسئولی عزیزم
#سید
#توصیه
〰〰〰〰〰〰
© @DjangoEx
اگر روزی در زندگی محتاج پول نون شب بودید هیچ وقت سوال امتحانی (برنامه نویسی یا دروس تخصصی دیگه) حل نکنید
شاید شب رو گرسنه بخوابید
ولی تلاشتون رو کردید برای جلوگیری از تولید شدن یک فرد مدرک دار بی سواد
پسفردا اون آقا/خانم خواست با مدرکش جایی استخدام بشه ولی مهارت نداشت شما مسئولی عزیزم
#سید
#توصیه
〰〰〰〰〰〰
© @DjangoEx
👍1