نویسنده : 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