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

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

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

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

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

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

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

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

نویسنده : Robert Carver

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

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

1-    کدام نسخه پایتون مناسب شما است؟ پایتون 2  یا پایتون 3 ؟

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

این امر واضح است که انتخاب نسخه های جدید پایتون 3 و بهره گیری از امکانات جدید آن,  به پیشبرد پروژه های جدید کمک بیشتر خواهد کرد اما گاهی ممکن است در شرایط کاری قرار بگیرید که مجبور به کار با پایتون 2 باشید.پس بهتر است خود را از هم اکنون برای کار با هر نسخه پایتون آماده کنید.

 

2-    کتابخانه های موردنیاز

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

برای استفاده از پایتون در پروژه های مالی ,  شما به کتابخانه های : numpy (برای کار با آرایه های بزرگ و عملیات مربوط بر روی آنها) , Scipy ( عملیات آماری و توابع ریاضی پیشرفته) , matplotlib (نمایش داده)   نیاز دارید. همچنین به منظور کار های پیچیده تر به کتابخانه های tensorflow( برای بکارگیری الگوریتم های یادگیری ماشین) , pandas ( برای کار با داده ها) و کتابخانه pedigree که توسط شرکت بزرگ AQR پیاده سازی شده است نیاز خواهید داشت.

لازم بذکر است که میتوان از نرم افزار anaconda برای نصب پایتون و هر یک از کتابخانه های دلخواه بهره گرفت.

3-    چگونه میتوان مشکل سرعت را در پایتون حل کرد؟

ممکن است برنامه نویسانی که با زبان هایی مثل c,c++ , Java و ... کار کرده باشند , پایتون را کندتر بدانند هرچند که پایتون در مقایسه با سایر زبانهای محاسباتی مثل Matlab و R از سرعت بالاتری برخوردار می باشد. عموما برنامه نویسان از اغراق در مورد سرعت کدهای ود و کارایی آن لذت می برند اما در واقع بسیاری از کدها چندان ضرورتی برای اجرای سریع ندارند. پایتون در شرایطی که مجبور به اجرای عملیات تکراری بر روی مجموعه داده های بزرگ باشد , بسیار کند و آهسته عمل می کند.

خوشبختانه برای این مشکل یک راه خوب وجود دارد. شما به راحتی می توانید کدهای نوشته شده به زبان های c و c++ را در پایتون جایگذاری نموده و از سرعت و کارایی آنها بهره مند شوید. پس حتما نحوه انجام این کار را فرا بگیرید!

 

4-    پایتون قابلیت کار با داده های حجیم را دارد

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

خوشبختانه پایتون با استفاده از کتابخانه های spark و Hadoop با این قضیه کنار آمده است . واسط های کاربری نیز برای ارتباط پایتون با پایگاه داده هایی غیر از SQL مثل MongoDB و یا ارتباط با provider های فضای ابری پیاده سازی شده اند.

 

5-    از GIL نترسید!

GIL مخفف عبارت Global Interpreter Lock مکانیزمی است که مفسرهای زبان های برنامه نویسی از آن برای همگام سازی thread ها استفاده می کنند . به عبارتی مفسری  که از GIL استفاده می کند تنها در هر لحظه قادر به اجرای یک Thread بر روی پردازنده خواهد بود حتی اگر پردازنده دارای امکانات پردازش چند هسته ای باشد! این ویژگی از دید مخالفان پایتون بسیار مورد نقد واقع شده است. زیرا اجرای تنها یک Thread  در هر لحظه باعث کاهش سرعت اجرا و عدم بهره وری کامل از پردازنده های چندهسته ای می شود.  در واقعیت, چون برنامه ها زمان بسیاری را صرف اتلاف وقت برای وروودی و خروجی می کنند , استفاده از مکانیزم GIL به ندرت ایجاد مشکل می کند. هرچند که عملیات محاسباتی حساس و عظیم می تواند توسط این مکانیزم تحت تاثیر قرار بگیرد. اما باید در نظر گرفت که اجرای چنین عملیاتی بر روی سیستم های رومیزی و لپ تاپ منطقی نبوده و نوعی خودآزاری محسوب می شود! پس به عنوان راه حل می توان کدهای پیچیده خود را به طور موازی بر روی پردازنده های موجود در فضای ابری اجرا نمود.

 

در انتها شاید جالب باشد بدانید که نویسنده مقاله فوق آقای Robert Carver مدیر سابق شرکت بیمه AHL  و نویسنده کتاب های Systematic Trading و Smart Portfolios از حدود 7 سالگی شروع به یادگیری زبان های برنامه نویسی کرده است و زبان های بسیاری را آموخته اما زبانی که هر روز با آن برنامه نویسی می کند , پایتون است!


منبع (+)

نظرات (۰)

هیچ نظری هنوز ثبت نشده است
ارسال نظر آزاد است، اما اگر قبلا در بیان ثبت نام کرده اید می توانید ابتدا وارد شوید.
شما میتوانید از این تگهای html استفاده کنید:
<b> یا <strong>، <em> یا <i>، <u>، <strike> یا <s>، <sup>، <sub>، <blockquote>، <code>، <pre>، <hr>، <br>، <p>، <a href="" title="">، <span style="">، <div align="">
تجدید کد امنیتی