مجله خبری برنامه‌نویسی پایتون

مرکز آموزش و رقابت برنامه نویسی پایتون

مجله خبری برنامه‌نویسی پایتون

مرکز آموزش و رقابت برنامه نویسی پایتون

مجله خبری برنامه‌نویسی پایتون

زبان پایتون (Python) در سال ۱۹۹۱ توسط یک برنامه‌نویس هلندی به نام گیدو ون روسوم (Guido van Rossum) ابداع شد و از آن زمان تا کنون رشد قابل ملاحظه‌ای را شاهد بوده است.

اگر چه وی در آن زمان گفته بود: «من به هیچ وجه قصد ندارم زبانی بسازم که به طور گسترده مورد استفاده قرار بگیرد» ولی اکنون و با گذشت نزدیک به سه دهه از آن تاریخ، پایتون تقریباً تمام رقبای خود را کنار زده و به اندازه‌ای محبوبیت یافته که حتی افراد مبتدی نیز کدنویسی را با آن شروع می‌کنند.

در یک سال گذشته، «Python» یکی از کلماتی بود که شهروندان آمریکایی بسیار زیاد در گوگل جستجو کرده‌اند، حتی بیشتر از نام ستاره‌های تلویزیونی.

۲۱ مطلب با موضوع «اخبار» ثبت شده است

در سال های اخیر، یادگیری عمیق، تحول بزرگی را در یادگیری ماشین و هوش مصنوعی ایجاد کرده است.دلیل اصلی نهفته در پس «یادگیری عمیق» این ایده است که «هوش مصنوعی» باید از مغز انسان الهام بگیرد.

در پیاده سازی پروژه ها از جدید ترین نسخه کتابخانه تنسورفلو یعنی (Tensorflow 2) و Keras استفاده شده است.

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


⏰زمان : 5 ساعت 30 دقیقه

 

🔹 پروژه کاربردی که در این دوره پیاده سازی شده است:

▪️تخمین توابع با شبکه های Fully-Connected
▪️دسته بندی دیتاست Fashion MNIST با شبکه های SLP
▪️دسته بندی دیتاست MNIST Digits با شبکه های Fully-Connected
▪️دسته بندی دیتاست CIFAR-10 (ده نوع مختلف از اشیاء در تصاویر) با شبکه های CNN

 

☑️ کد تخفیف : nrz99

💵 میزان تخفیف : 50 درصد
💵 هزینه آموزش : 40000 تومان

 

💎 لینک دوره : pythonchallenge.ir/deep_learning.html

 

📆 آخرین مهلت استفاده : چهارشنبه 13 فروردین
 

🎁 کد تخفیف 50 درصدی : nrz99

 

مشاهده سرفصل و تهیه آموزش : pythonchallenge.ir

 

📍در این روزهای قرنطینه، بهترین فرصت برای افزایش دانش و استفاده از آموزش های کاربردی و پروژه محور و آماده شدن برای بازار کار می باشد.

 

⏰ فرصت استفاده : روز چهارشنبه 13 فروردین 1399

 

ثبت نام

نکته : وبینار بصورت آنلاین در روز جمعه ۱۸ آبان ساعت ۱۴ تا ۱۶ برگزار خواهد شد.فیلم وبینار برای افرادی که در این بخش ثبت نام کردند ارسال خواهد شد. هر گونه سوالی در مورد وبینار داشتید میتوانید از طریق آی دی تلگرامی aiuni_admin ارسال کنید.

توضیحات دوره : در بسیاری از مواقع، هنگام کار با داده ها نیاز به کاهش ابعاد آن ها احساس می شود. یکی از راه های معروف و متداول کاهش ابعاد استفاده از تئوری معروف PCA می باشد. از دیگر کاربرد های معروف PCA می توان به استخراج اطلاعات مهم و کلیدی از داده ها اشاره کرد. در این وبینار ابتدا به معرفی تئوری PCA می پردازیم و سعی می کنیم مفاهیم آن را به خوبی درک کنیم. سپس به پیاده سازی پروژه کاهش حجم تصاویر و کد کردن آن ها توسط PCA می پردازیم.

گواهی آموزشی : در صورت ثبت نام و درخواست صدور گواهی آموزشی، برای افرادی که این نوع بلیت را تهیه کرده اند بدون برگزاری آزمون گواهی حضور در وبینار صادر و از طریق پست الکترونیکی ارسال خواهد شد. نمونه گواهینامه آموزشی در زیر مشاهده می کنید.

پایتون یا جاوا: مقایسه عملکرد

در زبان‌های برنامه‌نویسی، سرعت مفهوم ندارد؛ بلکه، «معناشناسی» (Semantics) در برنامه‌نویسی معتبر شناخته می‌شود. اگر جامعه برنامه‌نویسی، قصد مقایسه عملکرد دو یا چند زبان برنامه‌نویسی را داشته باشند، لازم است تا سرعت اجرا، حافظه مصرفی و قدرت پردازشی لازم برای پیاده‌سازی و اجرای توابع یا عملکردهای خاص در زبان‌های برنامه‌نویسی مختلف سنجیده شود.

پروژه‌ای تحت عنوان benchmarks-game، مقایسه جامعی از عملکرد دو زبان جاوا و پایتون انجام داده است. برای مشاهده قابلیت‌های آزمایش شده و معیارهای استفاده برای این مقایسه، می‌توانید به لینک [+] مراجعه کنید. در ادامه، خلاصه‌ای از نتایج مقایسه عملکرد پایتون و جاوا ارائه شده است.

پایتون یا جاوا: مقایسه عملکرد با استفاده از قابلیت‌ pidigits

قابلیت pidigits
زبان زمان (ثانیه) حافظه (کیلوبایت) قدرت پردازشی (پردازنده 4 هسته‌ای)
پایتون نسخه 3 3.47 10,140 0% 1% 100% 0%
جاوا 3.07 39,680 99% 3% 0% 5%

پایتون یا جاوا: مقایسه عملکرد با استفاده از قابلیت‌ regex-redux

قابلیت regex-redux
زبان زمان (ثانیه) حافظه (کیلوبایت) قدرت پردازشی (پردازنده 4 هسته‌ای)
پایتون نسخه 3 17.64 444,704 51% 80% 27% 28%
جاوا 10.48 645,680 72% 87% 74% 68%

پایتون یا جاوا: مقایسه عملکرد با استفاده از قابلیت‌ reverse-complement

قابلیت reverse-complement
زبان زمان (ثانیه) حافظه (کیلوبایت) قدرت پردازشی (پردازنده 4 هسته‌ای)
پایتون نسخه 3 18.59 1,007,292 22% 29% 59% 21%
جاوا 3.27 740,524 44% 57% 84% 43%

پایتون یا جاوا: مقایسه عملکرد با استفاده از قابلیت‌ binary-trees

قابلیت binary-trees
زبان زمان (ثانیه) حافظه (کیلوبایت) قدرت پردازشی (پردازنده 4 هسته‌ای)
پایتون نسخه 3 81.03 451,324 95% 87% 86% 88%
جاوا 8.28 907,060 86% 90% 80% 77%

پایتون یا جاوا: مقایسه عملکرد با استفاده از قابلیت‌ n-body

قابلیت n-body
زبان زمان (ثانیه) حافظه (کیلوبایت) قدرت پردازشی (پردازنده 4 هسته‌ای)
پایتون نسخه 3 774.34 7,844 29% 0% 0% 72%
جاوا 21.94 35,588 100% 0% 1% 1%

توجه داشته باشید که عملکرد یک زبان برنامه‌نویسی تنها تابعی از سرعت اجرای برنامه‌ها در آن زبان نیست؛ بلکه عواملی نظیر نحوه کد نویسی و پیاده‌سازی برنامه توسط برنامه‌نویسان و عملکرد کتابخانه‌های «شخص سوم» (Third party)، نقش مهمی در تعیین عملکرد یک زبان برنامه‌نویسی در  هنگام اجرای کد دارد.

نکته قابل توجه در نتایج نمایش داده این است که زبان جاوا، زمان پردازشی کمتری برای اجرای کدها، نسبت به زبان پایتون می‌طلبد. همچنین، جاوا قدرت پردازشی و حافظه به مراتب کمتری نسبت به پایتون مصرف می‌کند.

پایتون یا جاوا

به طور کلی، در صورتی که روی پروژه برنامه‌نویسی کار می‌کنید که سرعت بهینه در اجرای آن بسیار حیاتی است، بهتر است که از زبان جاوا استفاده کنید. دلیل این امر، وجود مفسر به جای کامپایلر در زبان پایتون است. در زبان‌هایی که از مفسر استفاده می‌کنند، نوع داده‌ای متغیرها در زمان اجرا مشخص می‌شود. در نتیجه، سرعت اجرای کدها، به ویژه برای پروژه‌های بزرگ، کندتر از زبان‌هایی خواهد بود که از کامپایلر استفاده می‌کنند.

منبع : فرادرس

نچه از گزارش اخیر مایکروسافت برمی‌آید، آن است که برنامه‌نویسان عاشق زبان پایتون هستند.

زبان برنامه‌نویسی پایتون با پیشی‌گرفتن از جاوا که زمانی زبان غالب برنامه‌نویسی بود، به دومین زبان پرطرفدار برنامه‌نویسی در گیت‌هاب (GitHub)، سایت متعلق به مایکروسافت برای به‌اشتراک‌گذاری کدهای متن‌باز، تبدیل شد. پایتون اکنون موفق شده است جاوا را براساس تعداد مشارکت‌کنندگان در منبع پشت‌سر بگذارد و بر این مبنا، این زبان برنامه‌نویسی اکنون پس از جاوااسکریپت که از سال 2014 در رتبه‌ی اول جا خوش کرده است، دومین زبان پرطرفدار به‌شمار می‌آید. آمار ارائه‌شده براساس گزارش رتبه‌بندی Octoverse برای سال 2019 به‌دست آمده است. کسب رتبه‌ی دوم در این سایت نقطه‌ی عطف بزرگی برای پایتون 30 ساله است که خالق آن، خیدو فن‌روسوم (Guido van Rossum)، در همین هفته و پس از ترک سِمَت خود در شرکت ذخیره‌سازی کلاد دراپ‌باکس (Dropbox)، اعلام بازنشستگی کرد. بیشتر خدمات پیشرفته و اپلیکیشن‌های دسکتاپ این شرکت با استفاده از پایتون نوشته شده‌اند. جنبه‌ی جالب دیگر گزارش گیت‌هاب، رتبه‌بندی زبان‌ها براساس سرعت رشد آن‌ها است. زبان برنامه‌نویسی دارت گوگل و فریم‌ورک فلاتر که برای تولید رابط‌های کاربری برای برنامه‌های تحت اندروید و iOS کاربرد دارد، بیشتر از سایر زبان‌ها مدنظر برنامه‌نویسان در گیت‌هاب قرار گرفته است. در سال‌های 2018 و 2019، دارت از بیشترین رشد برخوردار بوده و استفاده از آن در میان برنامه‌نویسان، 532 درصد بیشتر شده است. همچنین، زبان راست (Rust) موزیلا با رشد چشمگیر 235 درصد، پس از دارت در رتبه‌ی دوم قرار دارد.
نمودار زبان‌های برنامه‌نویسی برتر در گیت‌هاب در پنج سال گذشته بیانگر افزایش محبوبیت پایتون است.
گیت هاب اکنون از 40 میلیون توسعه‌دهنده میزبانی می‌کند پایتون محبوب‌ترین زبان برنامه‌نویسی 2019 لقب گرفت زبان برنامه‌نویسی جاوا 13؛ ابزاری برای بهره‌وری بیشتر برنامه‌نویسان
زبان برنامه‌نویسی راست برای برطرف‌کردن باگ‌های امنیتی مرتبط‌ با حافظه طراحی شده که رایج‌ترین نقص امنیتی در نرم‌افزارهای مایکروسافت در یک دهه‌ی گذشته بوده است؛ به‌همین‌دلیل، مایکروسافت آن را در پایگاه کدهای ویندوز خود استفاده و آزمایش می‌کند. سال گذشته، زبان برنامه‌نویسی کاتلین، زبان تأییدشده‌ی گوگل برای تولید برنامه‌های اندرویدی، بیشترین روند رشد را در گیت‌هاب تجربه کرد؛ اما با وجود رشد 182 درصدی در طول سال، دیگر در میان 10 زبان برتر 2019 مشاهده نمی‌شود. زبان تایپ‌اسکریپت هم که مایکروسافت از آن پشتیبانی می‌کند و یکی از مجموعه‌های مافوق جاوااسکریپت به‌شمار می‌آید، با 161 درصد رشد سریعی در سال گذشته تجربه کرد. دلیل رشد سریع این زبان برنامه‌نویسی را می‌توان به تعداد زیاد برنامه‌نویسانی نسبت داد که از آن برای دست‌وپنجه نرم‌کردن با برنامه‌های بزرگ نوشته‌شده با جاوااسکریپت استفاده می‌کنند. زبان‌های دیگری که درزمره‌ی 10 زبان دارای بیشترین سرعت رشد در سال‌های 2018 و 2019 قرار می‌گیرند، عبارت‌اند از: اچ‌سی‌ال، پاورشل، اپکس، ‌پایتون، اسمبلی و گو (Go). دارت: 532 درصد راست: 235 درصد اچ‌سی‌ال: 213 درصد کاتلین: 182 درصد تایپ‌اسکریپت: 161 درصد پاورشل: 154 درصد اپکس: 151 درصد پایتون: 151 درصد اسمبلی: 149 درصد گو: 147 درصد قهرمان اصلی گزارش گیت‌هاب پایتون است که محبوبیتش را مدیون طرفداران علوم داده‌ای و علاقه‌مندان به سرگرمی و غنای کتابخانه‌های علوم داده‌ای، مانند نامپای است که این فرصت را دراختیار برنامه‌نویسان قرار داد تا کدهای پایتون را برای امور مربوط‌ به یادگیری ماشین به‌کار بگیرند. بخشی از انگیزه‌ی مایکروسافت برای راه‌اندازی دوره‌های رایگان آموزش برنامه‌نویسی با پایتون در ماه‌های گذشته، جلب توجه برنامه‌نویسان به خدمات هوش مصنوعی آن در آژور است. یکی دیگر از نشانه‌های رونق علوم داده‌ای در گیت‌هاب، رشد نوت‌بوک‌های ژوپیتر است که محیطی برای نوشتن و اجرای کدها با پشتیبانی از پایتون و آر و جولیا است.

خیدو فن‌روسوم، خالق زبان برنامه‌نویسی پایتون، هفته‌ی گذشته بازنشسته شد. علاوه‌بر آنچه گفته شد، گیت‌هاب در چند سال گذشته روی مسئله‌ی امنیت نیز سرمایه‌گذاری و توجه زیادی به کمک به برنامه‌نویسان برای یافتن و برطرف‌سازی آسیب‌پذیری‌ها در کتابخانه‌های نرم‌افزاری متن‌باز یا نرم‌افزارهای وابسته به آن‌ها کرده است. مسئولان شرکت می‌گویند هشدار آن‌ها به برنامه‌نویسان موجب ترمیم بیش‌از 7٫6 میلیون وابسته در همین سال شد. همچنین، این کار به انتشار بیش‌ از 209 هزار ترمیم خودکار ازطریق سرویس رایگان Dependabot آن انجامیده است که ماه مه گذشته راه‌اندازی شد. بیش‌ از 10 هزار همکار در بزرگ‌ترین پروژه‌های متن‌بازی که در‌حال‌حاضر در گیت‌هاب قرار دارند، مشغول همکاری هستند. بزرگ‌ترین پروژه تا زمان حال، ویژوال استودیو کد (Visual Studio Code) است که به محیط برنامه‌نویسی بسیار محبوبی برای برنامه‌نویسان فعال در پلتفرم گوگل تبدیل شده است. پروژه‌ی ویژوال استودیو کد، 19،100 مشارکت‌کننده دارد. البته مایکروسافت پیش از آنکه شرکت گیت‌هاب را تصاحب کند، بزرگ‌ترین مشارکت‌کننده در پروژه‌های متن‌باز آن به‌شمار می‌آمد. پروژه‌های دیگری که بیش‌ از 10 هزار مشارکت‌کننده دارند، عبارت‌اند از: مستندسازی مایکروسافت آژور و فلاتر و فرست کانتریبیوشنز (First Contributions). نکته‌ی مهمی که در این گزارش به‌چشم می‌خورد، مربوط‌به متن‌باز‌بودن و استفاده‌ی گیت‌هاب به‌وسیله‌ی کشورهایی است که با تحریم‌های آمریکا مواجه هستند. در ابتدای همین سال، گیت‌هاب دسترسی کاربران ساکن در کریمه و ایران را محدود کرد. این شرکت نمی‌خواهد کاری بیشتر از این انجام دهد که در قانون ایالات متحده‌ی آمریکا لازم دانسته شده است.
در ژوئیه، گیت‌هاب به کاربران خود در کشورهای تحریم‌شده پیشنهاد کرد از سرور تجاری گیت‌هاب (GitHub Enterprise Server) استفاده کنند که نسخه‌ی پولی و یک‌بار خرید (on-premise) این وب‌سایت برای میزبانی کدها به‌صورت شخصی است؛ اما این وب‌سایت دیگر نمی‌تواند مجوز استفاده از محصول خود را به‌صورت قانونی به کشورهای تحریم‌شده بفروشد. کاربران ساکن در کشورهای تحریم‌شده همچنان می‌توانند در مخازن عمومی مشارکت کنند. در بخش سؤال‌ها و جواب‌های مطرح‌شده (FAQ) در سایت گیت‌هاب، درباره‌ی تحریم‌های تجاری ایالات متحده‌ی آمریکا آمده است: سرور تجاری گیت‌هاب را نمی‌توان به هیچ‌کدام از کشورهای مندرج در فهرست کشورهای گروه E:1 در الحاقیه‌ی شماره‌ی 1 تا بخش 740 در قسمت EAR یا به منطقه‌ی کریمه واقع در اوکراین فروخت. این فهرست در‌حال‌حاضر شامل کشورهای کوبا، ایران، کره‌‌شمالی و سوریه است؛ اما احتمال تغییر آن وجود دارد. این محدودیت‌ها موجب بروز مشکلاتی در مسیر رشد گیت‌هاب شده است. دراین‌زمینه، در گزارش Octoverse آمده است: برنامه‌نویسان ایرانی دومین گروه با بیشترین نرخ رشد در پروژه‌های متن‌باز ایجادشده در مخازن عمومی گیت‌هاب هستند.

در چند سال اخیر شبکه های GAN در مرز علم یادگیری عمیق قرار گرفته اند و مورد توجه بسیاری از محققان این حوزه قرار گرفته اند. در این دوره 2 ساعته، ابتدا بدون تمرکز بر مباحث تئوری این شبکه ها به ارائه ایده ها و مفاهیم آن ها خواهیم پرداخت و در پایان یکی از پروژه های معروف و جذاب مربوط به این شبکه ها، یعنی تولید تصاویر صورت انسان توسط شبکه های GAN را در پایتون پیاده سازی می کنیم. این دوره برای کسانی که به تازگی وارد دنیای یادگیری عمیق شده اند و کسانی که قصد شروع یادگیری شبکه های GAN را دارند مفید خواهد بود.

 

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

 

ظرفیت ثبت نام : 100 نفر

 

لینک ثبت نام :  https://evnd.co/yK8bU

 شبکه اجتماعی لینکدین اطلاعاتی را در مورد مشاغلی که طی چند سال اخیر بیش‌ترین رشد را تجربه کرده‌اند منتشر کرد و بر اساس آن مشخص شد مهارت‌های مرتبط با حوزه فناوری و داده از جمله بخش‌هایی بودند که میزان اشتغال‌زایی در آن‌ها سریع‌ترین رشد را داشته است و به خصوص آن دسته از افرادی که در عرصه مرتبط با داده‌ها فعالیت می‌کنند بیش‌تر از بقیه این رشد را پیش روی خود دیده‌اند.

در رتبه نخست لیست مشاغل با بیش‌ترین رشد، مهندسان حوزه یادگیری ماشینی قرار دارند که گفته می‌شود این عنوان شغلی بین سال‌های ۲۰۱۲ تا ۲۰۱۷ میلادی رشد ۱۰ برابری را تجربه کرده است. پس از آن متخصصان حوزه داده پررونق ترین بازار کاری را پیش روی خود دیدند که در این بازه‌ی زمانی این حوزه رشد ۷ برابری داشت. همچنین گفته شد کارشناسان توسعه‌دهنده‌ی کلان داده و مهندسان پشتیبانی هم  رشد ۶ برابری داشتند.
به گزارش وب‌سایت Zdnet؛ در گزارش نهایی لینکدین آمده است: «مجموعه جامعی از مهارت‌هایی که رشته‌های مختلف را پوشش می‌دهند در سال های اخیر بیشترین تقاضا را داشته‌اند. بیشتر این فرصت‌های شغلی در لیست جاری رشته‌های مختلفی را شامل می‌شدند که قابلیت استفاده از آن‌ها در صنایع مختلف وجود داشت.»

۱۰ عنوان شغلی برتر با پررونق‌ترین بازارکاری در پنج سال گذشته بر اساس گزارش لینکدین عبارتند از:

  • مهندس یادگیری ماشینی (رشد ۹.۸ برابری تعداد کارفرمایان نسبت به سال ۲۰۱۲)
  • کارشناس داده (رشد ۶.۵ برابری نسبت به سال ۲۰۱۲)
  • توسعه دهنده سیستم‌های فروش (رشد ۵.۷ برابری نسبت به سال ۲۰۱۲)
  • مدیر ارتباط با مشتری (رشد ۵.۶ برابری نسبت به سال ۲۰۱۲)
  • توسعه‌دهنده کلان داده (رشد ۵.۵ برابری نسبت به سال ۲۰۱۲)
  • مهندس پشتیبان (رشد ۵.۵ برابری نسبت به سال ۲۰۱۲)
  • توسعه‌دهنده نرم‌افزارهای کاربردی (رشد ۵.۱ برابری نسبت به سال ۲۰۱۲)
  • مدیر علوم داده (رشد ۴.۹ برابری نسبت به سال ۲۰۱۲)
  • شرکای تجاری برندها (رشد ۴.۵ برابری نسبت به سال ۲۰۱۲)
  •  توسعه‌دهنده سیستم‌های پشتیبانی (رشد ۴.۵ برابری نسبت به سال ۲۰۱۲)

Programming language of the year? Python is standout in latest rankings


نویسنده : javinpaul

مترجم: آزاده رضازاده همدانی

لینک : منبع


اگر وبلاگ من رو به طور منظم دنبال کرده باشید حتما از اینکه مقاله ای در باره لزوم یادگیری پایتون مینویسم تعجب کنید! شاید به خاطر داشته باشید که چند سال پیش مقاله ای با این مضمون که چرا بین جاوا و پایتون, باید جاوا را انتخاب کرد؟ نوشتم. درسته خیلی چیزها از آن سالها تا به امروز تغییر کرده است. در سال 2016 پایتون در بسیاری از دانشکده ها و دانشگاه ها به عنوان محبوب ترین زبان برنامه نویسی جایگزین بقیه زبانها شد و هیچ وقت به دوران قبلش باز نگشت. پایتون روز بروز بزرگ و بزرگ تر میشد و اگر شما اخبار مربوط به آخرین تکنولوزی ها و برنامه نویسی رو دنبال کنید متوجه میشوید که در بسیاری از سایت های معروف برنامه نویسی مثل Stackoverflow و CodeAcademy پایتون روند رو به رشدی دارد و از آن به عنوان یک زبان برنامه نویسی مهم ذکر شده است. اما بزرگترن سوال ما این است که چرا یک برنامه نویس باید پایتون را یادبگیرد؟ درسته که پایتون در حال رشد است اما این به معنی در حال سقوط بودن جاوا و یا c++  نیست؟

بله من افتخار میکنم که برنامه نویس جاوا هستم و جاوا زبان محبوب من بوده و هست و خواهد بود اما این امر باعث نمیشود که من مشتاق به یادگیری و استفاده از  ابزار ها و تکنولوژی های جدید نباشم.پایتون دقیقا همان زبانی است که من به دنبالش هستم تا من با یادگیری آن به برنامه نویس بهتری مبدل شوم. یادگیری پایتون برای افراد مبتدی و تازه کار بسیار آسان است و قدرت کافی برای ایجاد برنامه های مبتنی بر وب و همچنین سیستم های اتوماسیون اداری کسل کننده را داراست. چندین سال پیش, تنها دلیل جذابیت و انتخاب پایتون از نظر من , توانایی اسکریپت نویسی آن بود و در مقایسه با perl که زبان اسکریپت نویسی محبوب دیگری در آن زمان بود ترجیح دادم.

برای برنامه نویسان حرفه ای و یا هرکسی که از قبل با Ruby,Java,Javascript آشنایی دارد یادگیری پایتون نیز به منزله کسب یک ابزار قدرتمند می باشد . همانطور که در کتاب Automate the Boring stuff with python ذکر شده است پایتون به شما این توانایی را می دهد تا کارهای تکراری و کسل کننده را به طور اتومات انجام داده و بر روی موارد جذاب و سودمند بیشتر متمرکز شوید.

اگر برنامه نویس جاوا باشید شاید تصور کنید که میتوانید با استفاده از Groovy این کارها را انجام دهید . اما لازم است بدانید که Groovy هرگز امکانات متعدد پایتون مثل api ها و کتابخانه ها, فریم ورک ها و همچنین حوزه های مختلف مثل علوم داده , یادگیری ماشین و برنامه نویسی وب را در اختیار شما قرار نخواهد داد.

 

چرا برنامه نویسان باید در سال 2018 پایتون را فرابگیرند؟

اگر تصمیم به یادگیری پایتون دارید اما هنوز برای انجام آن مطمین نیستید, بهتر است خواندن این مطلب را ادامه دهید تا  از 10 دلیل که  نشان دهنده مزایای یادگیری پایتون در سال 2018 است, مطلع شوید. اما بسته به اینکه این سوال توسط چه کسی پرسیده میشود میتوان برداشت های متفاوتی از آن داشت . مثلا اگر یک برنامه نویس مبتدی این سوال را بپرسد میتوان سادگی یادگیری پایتون را به عنوان دلیل ذکر کرد ولی اگر سوال  توسط یک برنامه نویس حرفه ای که قصد ورود به دنیای علوم داده و یادگیری ماشین را دارد مطرح شود , محبوب بودن زبان پایتون و وجود کتابخانه های متعدد و در دسترس در زمینه هوش مصنوعی , علوم داده و یادگیری ماشین , را دلیلی قانع کننده برای یادگیری این زبان دانست.

به هر حال در ادامه 10 دلیل مهم برای یادگیری پایتون در سال 2018 را خواهید دانست:

1-    علم داده :

این دلیل خود به تنهایی بزرگترین عامل یادگیری پایتون توسط بسیاری از برنامه نویسان در سال 2018 بوده است. بسیاری از دوستان من که از پروژه های برنامه نویسی جاوا خودشون که در ارتباط با بانکهای سرمایه گذاری بود خسته شده اند و بدنبال یادگیری پایتون از طریق سایت های آموزش آنلاین مثل Udemy هستند تا بتوانند شغلی هیجان انگیز با حقوق بالا در زمینه علم داده پیدا نمایند.

اما چه عاملی باعث محبوبیت پایتون در زمینه علم داده و یادگیری ماشین شده است؟

در سالهای نه چندان دور زبان R یکی از بهترین زبان ها در این حوزه محسوب میشد. اما من تصور میکنم پایتون به دلیل دارابودن کتابخانه ها و فریم ورک های متعدد مثل PyBrain , NumPy و PyMySql در هوش مصنوعی , علم داده و یادگیری ماشین به محبوبیت فراوانی دست یافته است.

دلیل دیگر محبوبیت پایتون , کاربرد های متنوع تر آن نسبت به زبان R است مثلا شما میتوانید اسکریپت هایی را  برای  اتوماسیون اداری, طراحی وب و یا موارد بیشتر ایجادکنید.

حال اگر علاقه مندید که به یک محقق  علوم داده در سال جدید مبدل شوید به شما پیشنهاد می کنم که مجموعه ارزشمند Data Science, Deep Learning, & Machine Learning with Pythonدر سایت آموزش آنلاین Udemy با قیمت 10 دلار تهیه و مطالعه نمایید.

 

2-    یادگیری ماشین:

دومین دلیل برای یادگیری پایتون , یادگیری ماشین است. در چند سال اخیر رشد یادگیری ماشین فوق العاده بوده و به سرعت در حال تغییر محیط پیرامون ما است.

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

حال اگر شما به یادگیری ماشین علاقه دارید و تصمیم دارید پروژه هایی را بر حسب میل و علاقه شخصی خود انجام دهید, پایتون اصلی ترین زبان برنامه نویسی است که این کار را برای شما آسان می کند.

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

در صورتی که تمایل به شروع برنامه نویسی وب در این حوزه دارید پیشنهاد میکنم واحد  Machine Learning A-Z™: Hands-On Python & R In Data Science  را در سایت آموزش آنلاین Udemy مطالعه نمایید.

 

3-    برنامه نویسی تحت وب

وجود کتابخانه ها و فریم ورک های بسیار خوبی از جمله Django و Flask  در پایتون ,که برنامه نویسی تحت وب را آسان می کند, سومین دلیل یادگیری این زبان می باشد. 

به عنوان مثال انجام کارهایی که در PHP به صرف چندین ساعت زمان نیاز است, به راحتی در عرض چند دقیقه در پایتون انجام می شوند. همچنین از پایتون در زمینه Web Scraping که به مجموعه روش های مورد استفاده برای جمع آوری اطلاعات  از سایتهای اینترنتی اطلاق می شود, نیز بسیار کاربرد دارد. از جمله این سایتها میتوان به سایت معروف Reddit اشاره نمود.

اگر به این مبحث علاقه دارید پیشنهاد میشود مباحث مربوط به پایتون و Django را در سایت JoshPortilla مطالعه نمایید.همچنین یک واحد درسی رایگان در سایت udemy نیز پیرامون همین موضوع وجود دارد .

 

4-    سادگی

یکی از بزرگترین دلایل انتخاب پایتون توسط برنامه نویسان مبتدی , سادگی این زبان است. زیرا هنگامی که برای بار اول برنامه نویسی و کدنویسی را آغاز می کنید طبیعتا به دنبال یادگیری زبانی با دستورات و قواعد دشوار و گیج کننده نخواهید بود.

پایتون زبانی خوانا و ساده است. همچنین نصب و راه اندازی آن بسیار ساده است به صورتی که مشکلات مربوط به مسیر کلاس ها در جاوا و مسایل مربوط به کامپایلر را در C++ ندارید. فقط کافی است پایتون را نصب و شروع به کار کنید. فقط در هنگام نصب سوالی مبنی بر اضافه کردن پایتون به PATH از شما پرسیده میشود که بدین معنی است : شما میتوانید پایتون را از هر جا در سیستم خود اجرا نمایید.

 

5-    انجمن عظیم برنامه نویسان

شما برای یادگیری یک زبان و یک تکنولوژی جدید به گروهی از دوستان برنامه نویس احتیاج دارید تا زمانی که به شدت درگیر و مستاصل در حل یک مشکل و خطا شده اید به شما کمک کنند!

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

 

6-    کتابخانه ها و فریم ورک ها

یکی از شباهت های پایتون و جاوا, وجود تعداد بسیار زیاد کتابخانه ها, فریم ورک ها و ماژول های متن باز و در دسترس  برای انجام هر آنچه که در ذهن شما است, می باشد و این امر توسعه برنامه ها و نرم افزار ها را بسیار آسان کرده است.

حتی تصور اینکه شما بخواهید برنامه نویسی تحت وب را بدون استفاده از Spring در جاوا یا Django  و Flask در پایتون انجام دهید, هم بسیار سخت است. وجود این کتابخانه ها باعث ساده تر شده کار شما شده است و شما تنها کافی است بر روی منطق تجاری (Business Logic) تمرکز کنید.

پایتون کتابخانه های متعددی به منظور رفع نیاز های متفاوت دارد. بعنوان مثال میتوان از Django و Flask برای طراحی و برنامه نویسی وب و از NumPy و SciPy در زمینه علوم داده نام برد.

در واقع پایتون مجموعه بسیارخوبی از کتابخانه های مربوط به یادگیری ماشین و علوم داده مثل TensorFlow,Scikit-Learn,Pandas,Keras و ... را جمع آوری نموده است.

برای اطلاعات بیشتر می توانید به لینک پایتون در یادگیری ماشین و علوم داده مراجعه نمایید.

 

7-    اتوماسیون

اولین باری که با پایتون آشنا شدم مربوط به زمانی بود که در حال نوشتن برنامه ای برای دریافت پیغام ها ی UDP بودم که به مشکل عدم وجود پیغام ها در log برخوردم. در واقع به دنبال این بودم که آیا بر روی این پورت خاص آیا ترافیک UDP دریافت می کنم یا خیر اما هیچ دستور UNIX برای حل این مشکل پیدا نمیکردم. تا این که همکار بغل دستی من که در حال یادگیری پایتون بود فقط در عرض 5 دقیقه توانست اسکریپتی باا استفاده از ماژول های پایتون برای دریافت پیغام های UDP بنویسد!

زمانی که همکارم صرف نوشتن این ابزار کره بود به شدت من رو تحت تاثیر قرار داد و قدرت پایتون را بیش از پیش در نوشتن اسکریپت, ابزار و یا هر کار تکراری دیگر به  من نشان داد.

حال اگر به دنبال مطالعه بیشتر در این زمینه هستید پیشنهاد میکنم مطالعه کتاب Automate the boring stuff with python را که به شدت کتاب ساده ای است از دست ندهید.

 

8-    همه منظوره بودن

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

با استفاده از Django و flask میتوانید برنامه نویسی تحت وب و با استفاده از NumPy,SciPy,Scikit-Learn,NLTK داده ها را تحلیل نمایید. حداقل حداقل میتوانید با استفاده از پایتون اسکریپتی برای انجام کارهای تکراری و روزمره خود بنویسید.

 

9-    شغل

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

 

10-                       حقوق

حقوق برنامه نویسان پایتون یکی از بالاترین مبالغ تعیین شده به عنوان دستمزد برای برنامه نویسان است مخصوصا اگر در زمینه یادگیری ماشین, علوم داده و برنامه نویسی وب فعالیت داشت باشند.

به طور میانگین مبلغ دریافتی یک برنامه نویس پایتون بین 70000 تا 150,000 دلار آمریکا ست که بنابر سابقه , موقعیت و زمینه کاری میتواند متفاوت باشد.

اگر به دنبال شغل های با درآمد بالا در زمینه تکنولوژی هستید بهتر است مقاله من در باره 10 شغل برتر حوزه مهندسی نرم افزار در سال 2018 را مطالعه نمایید.

منابع سودمند برای یادگیری پایتون :

اگر قصد شروع به یادگیری پایتون را دارید در ادامه لیستی از منابع آموزشی این زبان زیبای برنامه نویسی آمده است:

1-   The Complete Python MasterClass

2-   The Python Bible — Everything You Need to Program in Python

3-   Python Fundamentals by Pluralsight

4-   5 Courses to Learn Data Science and Machine learning

5-   10 Free Python Programming EBooks and PDF

6-   Top 5 Courses to Learn Python in 2018

و اگر هنوز برای یادگیری پایتون احساس راحتی نمیکنید شاید عکس زیر نمای درستی از زندگی یک برنامه نویس پایتون را بخوبی به شما نشان دهد:

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

یادگیری پایتون  برای برنامه نویسانی که قبلا با جاوا و یا C++ کار کرده اند, نه تنها باعث میشود به یک برنامه نویس چند زبانه تبدیل شده بلکه ابزاری قدرتمند را برای ایجاد اسکریپت ها, برنامه نویسی وب و ورود بدنیای جذاب و پر هیجان یادگیری ماشین و علوم داده در اختیار آنها قرار میدهد.

به طور خلاصه اگر امسال تنها میتوانید یک زبان را یادبگیرید حتما پایتون را انتخاب کنید و The complete Python MasterClass یکی از بهترین منابع در این زمینه است.

در ادامه سایر مقالات مهم در این حوزه آمده است:

1-   Top 8 Python Data Science and Machine Learning libraries

2-   10 Machine Learning and Data Science courses for Programmers

3-   10 Programming languages You can Learn in 2018

4-   10 Reasons to Learn Scala Programming Languages

5-   5 Free R Programming Courses for Data Scientists

6-   Top 5 TensorFlow courses for Python Programmers

7-   Top 5 Courses to Learn Data Science and Machine Learning

8-   50+ Data Structure and Algorithms Interview Questions

 

حرف آخر

خیلی ممنونم که این مقاله رو مطالعه کردید سفر خوبی در پایتون داشته باشید مطمینا تصمیم به شروع پایتون تصمیم بزرگی است اما حتما در آینده مبالغ دریافتی خوبی بابت این تصمیم خواهید گرفت. من منابع بسیاری را برای یادگیری پایتون در حوزه یادگیری ماشین , علوم داده, برنامه نویسی وب ,.. معرفی کردم و درصورتی که مورد علاقه شما واقع شده اند لطفا با دوستان و همکاران تان به اشتراک بگذارید و حتما من را در توییتر با شناسه javarevisited و در Medium با شناسه Javinpaul دنبال کنید.

و در آخر اگر به دنبال منابع رایگان برای یادگیری پایتون هستید حتما به آدرس زیر مراجعه نمایید:

https://hackernoon.com/tagged/python