▪️توی یکی از بزرگترین انجمنهای تخصصی برنامهنویسان به اسم Stack Overflow، تعداد سوال و جوابها 25 درصد کم شده!
▪️این کاهش درست از زمانی شروع شده که مدل زبانی OpenAI، یعنی همون ChatGPT، عرضه شد. بیشترین تأثیر این موضوع هم روی سوالات مربوط به Python و JavaScript بوده.
▪️محققان میگن اگه این روند ادامه پیدا کنه و برنامهنویسان دیگه توی انجمنها بحث نکنن، ممکنه یه مشکل جدید به وجود بیاد: دیگه اطلاعات کافی برای آموزش مدلهای هوش مصنوعی وجود نخواهد داشت!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍18☃3👀3❤1
✔️ برنامهنویسی Async و Sync؛ تفاوتها و کاربردها
برنامه نویسی Async (غیر همزمان) و Sync (همزمان) دو مدل متفاوت از اجرای کدها در برنامهنویسی هستند. اما فرق آنها در چیست؟
در برنامه نویسی Sync (همزمان)، دستورات به صورت دنبالهدار و پشت سر هم اجرا میشوند. هر خط کد باید کامل اجرا شود تا نوبت به خط بعدی برسد. به زبان ساده، برنامه باید منتظر بماند تا یک کار تمام شود و سپس کار بعدی را آغاز کند. فرض کنید شما در صف خرید ایستادهاید، تا نفر قبلی خریدش تمام نشود، نوبت به شما نمیرسد.
+ ساده و قابل پیشبینی
+ مناسب برای کارهای ساده و بیوقفه
- برای عملیاتهای زمانبر (مانند درخواستهای شبکه) باعث کند شدن برنامه میشود.
در این برنامهنویسی Async (غیر همزمان)، برنامه منتظر تکمیل یک دستور نمیماند و به کارهای دیگر ادامه میدهد. این به شما اجازه میدهد تا عملیاتهای طولانی (مثل دریافت داده از سرور) بهطور موازی و بدون انتظار انجام شوند. تصور کنید شما سفارش خود را به رستوران میدهید و در حالی که غذا آماده میشود، میتوانید به کارهای دیگر بپردازید.
+ مناسب برای عملیاتهای طولانی و زمانبر
+ افزایش کارایی و سرعت برنامه
- پیچیدگی بیشتر در کدنویسی و مدیریت خطاها
در کل، اگر برنامهای دارید که با منابع بیرونی مثل شبکه، فایلها یا دیتابیس کار میکند، Async گزینه بهتری است. اما اگر کار شما ساده است و نیازی به همزمانی ندارید، Sync سادهتر و قابل فهمتر است.
💻 @Teachify | برنامه نویسی
برنامه نویسی Async (غیر همزمان) و Sync (همزمان) دو مدل متفاوت از اجرای کدها در برنامهنویسی هستند. اما فرق آنها در چیست؟
در برنامه نویسی Sync (همزمان)، دستورات به صورت دنبالهدار و پشت سر هم اجرا میشوند. هر خط کد باید کامل اجرا شود تا نوبت به خط بعدی برسد. به زبان ساده، برنامه باید منتظر بماند تا یک کار تمام شود و سپس کار بعدی را آغاز کند. فرض کنید شما در صف خرید ایستادهاید، تا نفر قبلی خریدش تمام نشود، نوبت به شما نمیرسد.
+ ساده و قابل پیشبینی
+ مناسب برای کارهای ساده و بیوقفه
- برای عملیاتهای زمانبر (مانند درخواستهای شبکه) باعث کند شدن برنامه میشود.
در این برنامهنویسی Async (غیر همزمان)، برنامه منتظر تکمیل یک دستور نمیماند و به کارهای دیگر ادامه میدهد. این به شما اجازه میدهد تا عملیاتهای طولانی (مثل دریافت داده از سرور) بهطور موازی و بدون انتظار انجام شوند. تصور کنید شما سفارش خود را به رستوران میدهید و در حالی که غذا آماده میشود، میتوانید به کارهای دیگر بپردازید.
+ مناسب برای عملیاتهای طولانی و زمانبر
+ افزایش کارایی و سرعت برنامه
- پیچیدگی بیشتر در کدنویسی و مدیریت خطاها
در کل، اگر برنامهای دارید که با منابع بیرونی مثل شبکه، فایلها یا دیتابیس کار میکند، Async گزینه بهتری است. اما اگر کار شما ساده است و نیازی به همزمانی ندارید، Sync سادهتر و قابل فهمتر است.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤1☃1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁28👌2🤣2☃1
✔️ چطوری گیت رو بهتر یاد بگیریم؟
یادگیری Git تنها با مطالعهی مستندات و مقالههای مختلف میتواند چالشبرانگیز باشد. چیزی که میتواند این مسیر را هم سریعتر و هم جذابتر کند، استفاده از ابزارهایی است که دستورات Git را بهصورت تصویری و تعاملی نمایش میدهند. این ابزارها امکان تجربهی زندهی دستورات و مشاهدهی نتایج آنها را فراهم میکنند، که برای درک بهتر مفاهیم بسیار مفید است.
دو ابزار شناختهشده در این زمینه، LearnGitBranching و Visualizing Git هستند. این ابزارها به کاربران اجازه میدهند که دستورات Git را بهصورت بصری تجربه کرده و تأثیر آنها را در لحظه مشاهده کنند. حتی اگر به Git تسلط کافی دارید، این ابزارها میتوانند درک شما را از نحوهی کار این سیستم نسخهسازی عمیقتر کنند.
شما برای یادگیری و تسلط بر Git از چه ابزارها و منابعی استفاده میکنید؟
💻 @Teachify | برنامه نویسی
یادگیری Git تنها با مطالعهی مستندات و مقالههای مختلف میتواند چالشبرانگیز باشد. چیزی که میتواند این مسیر را هم سریعتر و هم جذابتر کند، استفاده از ابزارهایی است که دستورات Git را بهصورت تصویری و تعاملی نمایش میدهند. این ابزارها امکان تجربهی زندهی دستورات و مشاهدهی نتایج آنها را فراهم میکنند، که برای درک بهتر مفاهیم بسیار مفید است.
دو ابزار شناختهشده در این زمینه، LearnGitBranching و Visualizing Git هستند. این ابزارها به کاربران اجازه میدهند که دستورات Git را بهصورت بصری تجربه کرده و تأثیر آنها را در لحظه مشاهده کنند. حتی اگر به Git تسلط کافی دارید، این ابزارها میتوانند درک شما را از نحوهی کار این سیستم نسخهسازی عمیقتر کنند.
شما برای یادگیری و تسلط بر Git از چه ابزارها و منابعی استفاده میکنید؟
Please open Telegram to view this post
VIEW IN TELEGRAM
❤14
✔️ 4 مفهوم اصلی در برنامه نویسی شی گرا
✔️ کپسولهسازی یا Encapsulation: مخفی کردن دادهها و دسترسی به آنها فقط از طریق متدها.
✔️ وراثت یا Inheritance: ایجاد کلاسهای جدید از کلاسهای موجود و استفاده مجدد از کد.
✔️ چندریختی یا Polymorphism: توانایی استفاده از متدهای یکسان با رفتارهای مختلف در کلاسهای متفاوت.
✔️ انتزاع یا Abstraction: مخفی کردن جزئیات پیچیده و نمایش دادن فقط بخشهای مهم از طریق کلاسهای انتزاعی.
❤️ @Teachify | برنامه نویسی
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12
✔️ بهینهسازی زمان کدنویسی مثل حرفهایها با افزونه WakaTime در VSCode
اگه میخوای بدونی چقدر از وقتت رو پشت سیستم به کدنویسی، دیباگ و یادگیری زبانهای برنامهنویسی مختلف میگذرونی، WakaTime بهترین ابزار برای توئه!
بهتازگی این اکستنشن رو توی VSCode نصب کردم (خیالت راحت، برای بقیه IDEها هم هست!) و فقط با گرفتن یه API Key از سایتش، تونستم به سادگی زمانهای کدنویسیم رو ردیابی کنم. حالا میتونم دقیق ببینم چقدر برای هر زبان وقت گذاشتم و کجاها باید بهینهتر کار کنم!
شما هم تست کنین.
💻 @Teachify | برنامه نویسی
اگه میخوای بدونی چقدر از وقتت رو پشت سیستم به کدنویسی، دیباگ و یادگیری زبانهای برنامهنویسی مختلف میگذرونی، WakaTime بهترین ابزار برای توئه!
بهتازگی این اکستنشن رو توی VSCode نصب کردم (خیالت راحت، برای بقیه IDEها هم هست!) و فقط با گرفتن یه API Key از سایتش، تونستم به سادگی زمانهای کدنویسیم رو ردیابی کنم. حالا میتونم دقیق ببینم چقدر برای هر زبان وقت گذاشتم و کجاها باید بهینهتر کار کنم!
شما هم تست کنین.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15
✔️ 48 قانون قدرت که توی سیاست و کسب و کار دونستنش از نون شب واجبتره:
1. هرگز مافوق خود را تحتالشعاع قرار ندهید.
2. دوستانتان را خیلی نزدیک به خود نگه ندارید، دشمنانتان را به خدمت بگیرید.
3. نیت واقعی خود را پنهان کنید.
4. کمتر از آنچه که لازم است بگویید.
5. بیش از حد وابسته به دیگران نباشید، یاد بگیرید خودتان کاری انجام دهید.
6. شهرت خود را به هر قیمتی حفظ کنید.
7. توجه و تمرکز دیگران را به سمت خود جلب کنید.
8. دیگران را وادار به انجام کارهای خود کنید، اما اعتبار آن را برای خود نگه دارید.
9. در زمان درست دست به اقدام بزنید.
10. از هرگونه آلوده شدن به افراد شکست خورده بپرهیزید.
11. دیگران را در حالت نامطمئن و ترس نگه دارید.
12. برای دیگران با صداقت و وفاداری کامل رفتار کنید، اما به آنها اعتماد نکنید.
13. وقتی از دشمنان خود کمک میگیرید، آنان را کاملاً نابود کنید.
14. ظاهری دوستانه و مهربان نشان دهید، اما هرگز به دیگران اجازه سوءاستفاده ندهید.
15. دشمن خود را کاملاً نابود کنید.
16. در حین صحبت کردن، طوری صحبت کنید که آنچه نگفتید تأثیر بیشتری داشته باشد.
17. در کارهای خود اسرارآمیز باشید.
18. دیگران را وادار کنید برای شما کار کنند و خودتان در پشت صحنه بمانید.
19. هرگز از کسی که آسیبدیده است سوءاستفاده نکنید.
20. برای دشمنانتان راه فرار بگذارید.
21. برای دسترسی به اطلاعات، تظاهر به اعتمادسازی کنید.
22. به وسیله همدردی با دیگران خود را دوستداشتنی نشان دهید.
23. پایان کارهای خود را از قبل برنامهریزی کنید.
24. نقش خود را در بازی قدرت با دقت انتخاب کنید.
25. خود را از نو بسازید.
26. ذهن دیگران را با استفاده از محیطی که در آن قرار دارند تحت تأثیر قرار دهید.
27. برای دیگران ارزش قائل شوید و احترام جلب کنید.
28. با جسارت وارد عمل شوید.
29. همه چیز را تا انتها برنامهریزی کنید.
30. موفقیتهای خود را برای ایجاد یک موقعیت محکم و بادوام استفاده کنید.
31. گزینهها را کنترل کنید: کاری کنید که دیگران با انتخابهای محدود شما بازی کنند.
32. از رؤیاهای دیگران استفاده کنید.
33. افراد را بیازمایید و نقاط ضعف آنها را کشف کنید.
34. خود را به شکل پادشاه یا ملکه جلوه دهید و مانند آنان عمل کنید.
35. هنر زمانبندی را بیاموزید.
36. چیزهایی را که نمیتوانید داشته باشید، بیاهمیت نشان دهید.
37. فضایی برای خود ایجاد کنید تا مردم به شما نیاز پیدا کنند.
38. به چیزهای کوچک خود توجه نکنید، با چشماندازهای بزرگ تأثیر بگذارید.
39. مردم را با رفتارهای غیرمنتظره شگفتزده کنید.
40. آنچه رایگان بهدست میآید، بیارزش است.
41. هرگز قدم در کفشهای فرد بزرگی نگذارید.
42. حملههایتان را به قلب دشمن بزنید، اما با دقت.
43. دیگران را وادار به ترس و لرز نکنید.
44. به راحتی اظهار به پیروزی نکنید، افراد را وادار کنید که برای آن بجنگند.
45. خودتان را بازآفرینی کنید.
46. هیچگاه از دیگران بیش از اندازه جلو نزنید.
47. هر زمان که قدرتی بهدست آوردید، بر روی آن تمرکز کنید.
48. در حین پیروزی، دست از تلاش نکشید.
💻 @Teachify | برنامه نویسی
1. هرگز مافوق خود را تحتالشعاع قرار ندهید.
2. دوستانتان را خیلی نزدیک به خود نگه ندارید، دشمنانتان را به خدمت بگیرید.
3. نیت واقعی خود را پنهان کنید.
4. کمتر از آنچه که لازم است بگویید.
5. بیش از حد وابسته به دیگران نباشید، یاد بگیرید خودتان کاری انجام دهید.
6. شهرت خود را به هر قیمتی حفظ کنید.
7. توجه و تمرکز دیگران را به سمت خود جلب کنید.
8. دیگران را وادار به انجام کارهای خود کنید، اما اعتبار آن را برای خود نگه دارید.
9. در زمان درست دست به اقدام بزنید.
10. از هرگونه آلوده شدن به افراد شکست خورده بپرهیزید.
11. دیگران را در حالت نامطمئن و ترس نگه دارید.
12. برای دیگران با صداقت و وفاداری کامل رفتار کنید، اما به آنها اعتماد نکنید.
13. وقتی از دشمنان خود کمک میگیرید، آنان را کاملاً نابود کنید.
14. ظاهری دوستانه و مهربان نشان دهید، اما هرگز به دیگران اجازه سوءاستفاده ندهید.
15. دشمن خود را کاملاً نابود کنید.
16. در حین صحبت کردن، طوری صحبت کنید که آنچه نگفتید تأثیر بیشتری داشته باشد.
17. در کارهای خود اسرارآمیز باشید.
18. دیگران را وادار کنید برای شما کار کنند و خودتان در پشت صحنه بمانید.
19. هرگز از کسی که آسیبدیده است سوءاستفاده نکنید.
20. برای دشمنانتان راه فرار بگذارید.
21. برای دسترسی به اطلاعات، تظاهر به اعتمادسازی کنید.
22. به وسیله همدردی با دیگران خود را دوستداشتنی نشان دهید.
23. پایان کارهای خود را از قبل برنامهریزی کنید.
24. نقش خود را در بازی قدرت با دقت انتخاب کنید.
25. خود را از نو بسازید.
26. ذهن دیگران را با استفاده از محیطی که در آن قرار دارند تحت تأثیر قرار دهید.
27. برای دیگران ارزش قائل شوید و احترام جلب کنید.
28. با جسارت وارد عمل شوید.
29. همه چیز را تا انتها برنامهریزی کنید.
30. موفقیتهای خود را برای ایجاد یک موقعیت محکم و بادوام استفاده کنید.
31. گزینهها را کنترل کنید: کاری کنید که دیگران با انتخابهای محدود شما بازی کنند.
32. از رؤیاهای دیگران استفاده کنید.
33. افراد را بیازمایید و نقاط ضعف آنها را کشف کنید.
34. خود را به شکل پادشاه یا ملکه جلوه دهید و مانند آنان عمل کنید.
35. هنر زمانبندی را بیاموزید.
36. چیزهایی را که نمیتوانید داشته باشید، بیاهمیت نشان دهید.
37. فضایی برای خود ایجاد کنید تا مردم به شما نیاز پیدا کنند.
38. به چیزهای کوچک خود توجه نکنید، با چشماندازهای بزرگ تأثیر بگذارید.
39. مردم را با رفتارهای غیرمنتظره شگفتزده کنید.
40. آنچه رایگان بهدست میآید، بیارزش است.
41. هرگز قدم در کفشهای فرد بزرگی نگذارید.
42. حملههایتان را به قلب دشمن بزنید، اما با دقت.
43. دیگران را وادار به ترس و لرز نکنید.
44. به راحتی اظهار به پیروزی نکنید، افراد را وادار کنید که برای آن بجنگند.
45. خودتان را بازآفرینی کنید.
46. هیچگاه از دیگران بیش از اندازه جلو نزنید.
47. هر زمان که قدرتی بهدست آوردید، بر روی آن تمرکز کنید.
48. در حین پیروزی، دست از تلاش نکشید.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤13👍4👎2
✔️ آموزش استفاده از متد bulk_create در جنگو
اگر شما تعداد زیادی شیء برای ایجاد دارید و نمیخواهید با هر فراخوانی یک کوئری جدید به پایگاه داده بزنید، متد
فرض کنید یک مدل به نام
حالا میخواهیم چند دانشآموز را با استفاده از
با این کار، هر سه دانشآموز با یک کوئری به پایگاه داده اضافه میشوند! این روش به طور قابل توجهی سریعتر از ایجاد هر شیء به صورت جداگانه است.
#جنگو #Django #پایتون #bulk_create #پایگاه_داده #کدنویسی #آموزش
💻 @Teachify | برنامه نویسی
اگر شما تعداد زیادی شیء برای ایجاد دارید و نمیخواهید با هر فراخوانی یک کوئری جدید به پایگاه داده بزنید، متد
bulk_create میتواند به شما کمک کند. این متد به شما اجازه میدهد تا چندین شیء را تنها با یک کوئری به پایگاه داده اضافه کنید، که این باعث افزایش سرعت و بهینهسازی عملکرد برنامه شما میشود.فرض کنید یک مدل به نام
Student داریم:from django.db import models
class Student(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
age = models.IntegerField()
حالا میخواهیم چند دانشآموز را با استفاده از
bulk_create اضافه کنیم:from .models import Student
# لیستی از اشیاء Student
students = [
Student(first_name="Ali", last_name="Ahmadi", age=12),
Student(first_name="Sara", last_name="Hosseini", age=11),
Student(first_name="Reza", last_name="Moradi", age=13),
]
# ایجاد تمام اشیاء با یک کوئری
Student.objects.bulk_create(students)
با این کار، هر سه دانشآموز با یک کوئری به پایگاه داده اضافه میشوند! این روش به طور قابل توجهی سریعتر از ایجاد هر شیء به صورت جداگانه است.
#جنگو #Django #پایتون #bulk_create #پایگاه_داده #کدنویسی #آموزش
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥2
شما توی کدنویسی هاتون چیا رو تبدیل به کد میکنید؟
پ.ن: من خودم چای و قهوره :))
💻 @Teachify | برنامه نویسی
پ.ن: من خودم چای و قهوره :))
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15👎3🤪3☃1😁1
حدودا یکی دو هفته بود که توی لینکدین فقط مطالبی در مورد سیگنال ها در جنگو برام میومد! و جالبیش اینه که دیروز مصاحبه داشتم و یکی از سوالاتی که مصاحبه کننده زیاد روش مانور داد همین سیگنال ها بود!
اینکه خوبن یا نه؟ به جاش میشه از چیا استفاده کرد؟ جایگزین خوبش چیه؟ و ...
💻 @Teachify | برنامه نویسی
اینکه خوبن یا نه؟ به جاش میشه از چیا استفاده کرد؟ جایگزین خوبش چیه؟ و ...
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤1
✔️ مرحلهی آخر استخدامتون، مواظب افکار سمی مصاحبه کننده باشید!
ممکنه به شما بگن که قبول شدی. اما یه شرکت بهتر برات سراغ دارم حقوق و شرایط بهتر و دورکاری کامل. تورو برای اونجا استخدام میکنم!
اگه به اشتباه یک لحظه از اون شرکت سوالی پرسیدین، طرف میفهمه که شرکت اون رو دوست ندارید و ....
برگرفته از افکار یک برنامه نویس تاکسیک !
پ.ن: تصویر هم chatgpt ساخته.
💻 @Teachify | برنامه نویسی
ممکنه به شما بگن که قبول شدی. اما یه شرکت بهتر برات سراغ دارم حقوق و شرایط بهتر و دورکاری کامل. تورو برای اونجا استخدام میکنم!
اگه به اشتباه یک لحظه از اون شرکت سوالی پرسیدین، طرف میفهمه که شرکت اون رو دوست ندارید و ....
برگرفته از افکار یک برنامه نویس تاکسیک !
پ.ن: تصویر هم chatgpt ساخته.
Please open Telegram to view this post
VIEW IN TELEGRAM
👌18👍9🗿2❤1
Please open Telegram to view this post
VIEW IN TELEGRAM
🤣37👍3
سلام
دوستان میخوام لوگو کانال رو عوض کنم
اگه مایلید از طرح شما استفاده کنم، لوگو مد نظرتون رو توی قسمت کامنت برام ارسال کنید.🙏
💻 @Teachify | برنامه نویسی
دوستان میخوام لوگو کانال رو عوض کنم
اگه مایلید از طرح شما استفاده کنم، لوگو مد نظرتون رو توی قسمت کامنت برام ارسال کنید.🙏
Please open Telegram to view this post
VIEW IN TELEGRAM
☃4
✔️ تایپ هینت در پایتون
تایپ هینت (Type Hint) روشی برای مشخص کردن نوع دادههای ورودی و خروجی تابعها است. این قابلیت از نسخه 3.5 به پایتون اضافه شده و کد رو خواناتر و قابلفهمتر میکنه.
در این مقاله بخوانید: تایپ هینت (Type Hint) در پایتون
💻 @Teachify | برنامه نویسی
تایپ هینت (Type Hint) روشی برای مشخص کردن نوع دادههای ورودی و خروجی تابعها است. این قابلیت از نسخه 3.5 به پایتون اضافه شده و کد رو خواناتر و قابلفهمتر میکنه.
در این مقاله بخوانید: تایپ هینت (Type Hint) در پایتون
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5
✔️ گرفتن اطلاعات جغرافیایی IP با پایتون
با یک برنامه ساده پایتون میتوانیم اطلاعات مهمی مثل کشور، منطقه زمانی و ISP یک آدرس IP را به دست بیاوریم. در این مقاله، نحوه استفاده از API و کتابخانههای استاندارد پایتون برای این کار را توضیح دادهایم.
در این مقاله بخوانید: نحوه پیدا کردن اطلاعات IP با پایتون
💻 @Teachify | برنامه نویسی
با یک برنامه ساده پایتون میتوانیم اطلاعات مهمی مثل کشور، منطقه زمانی و ISP یک آدرس IP را به دست بیاوریم. در این مقاله، نحوه استفاده از API و کتابخانههای استاندارد پایتون برای این کار را توضیح دادهایم.
در این مقاله بخوانید: نحوه پیدا کردن اطلاعات IP با پایتون
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9
✔️ یه ریپو خوب براتون پیدا کردم: تمامی الگوریتم های پیاده سازی شده در پایتون
📱 https://github.com/TheAlgorithms/Python
💻 @Teachify | برنامه نویسی
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥2