پایتون برای چه کاربردهایی مناسب نیست؟

پایتون برای چه کاربردهایی مناسب نیست؟

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



پایتون در چه مواردی کارایی دارد؟

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



۱. زمانی که می خواهید توسعه دهنده وب شوید!

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


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


مشکل این نیست که جانگو از پس انجام کارها برنمی آید چون جانگو فریمورکی قوی و کارآمد است. بلکه سوال این است که چرا باید جانگو را یاد گرفت آن هم در حالی که جاوا اسکریپت هنوز زبان اصلی حوزه وب است.
فریمورک های جاوااسکریپت مثل ری اکت و Vue.js با جانگو و دیگر موارد بک اند نظیر روبی آن ریلز سازگاری داشته و محبوبیت بالایی دارند. از انجا که هر دو مورد زبان های مبتنی بر جاوا اسکریپت بوده و کارایی قابل توجهی دارند چرا باید سراغ موارد دیگری نظیر Node.js رفت؟ با استفاده از چارچوب های جاوا اسکریپت نه تنها کار کدنویس راحت تر می شود بلکه محصول نهایی هم یکپارچگی بیشتری خواهد داشت.
منظور ما این نیست که جاوا اسکریپت زبان فوق العاده و بی نقصی است چرا که بسیاری با آن موافق نیستند؛ با این حال اگر قصد یادگیری توسعه وب را دارید، بهترین انتخاب جاوا اسکریپت است.



۲. زمانی که می خواهید برنامه نویس game شوید!

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


برای کار با یونیتی زبان C# را فرا بگیرید

برنامه نویسی در یونیتی بر پایه زبان C# صورت می گیرد و تعداد زیادی کتابخانه هم برای کمک به توسعه بازی در دسترس قرار دارد. ویرایشگر یونیتی ابزار قدرتمندی است که امکان پیاده سازی سریع مفاهیم را ممکن ساخته و به تازه کارها اجازه می دهد هرچه سریعتر اولین بازی خود را توسعه دهند. از میان بازی هایی که با استفاده از این موتور ساخته شده اند می توان به Escape From Tarkov اشاره کرد.


برای کار با Unreal زبان C++ را فرا بگیرید

اغلب افراد بر این باورند که یادگیری C++ چندین کار ساده ای نیست با این حال منابع آنلاین زیادی برای تازه کارها در دسترس قرار دارد. وب سایت رسمی Unreal هم ابزارهای قابل توجهی را برای آموزش این زبان ارائه کرده است. برای اثبات کارایی موتور Unreal کافی است بدانید بازی فوق العاده موفق فورتنایت که امکان اجرا روی پلتفرم های مختلف را دارد، با استفاده از همین موتور طراحی شده است. توسعه بازی های شبیه فورتنایت با رزولوشن 1080p و فریم ریت بالا از طریق پایتون وجود ندارد. بنابرین افرادی که به دنبال توسعه بازی هستند بهتر است سراغ زبان های دیگری بروند.



۳. زمانی که می خواهید با سیستم های سطح پایین کار کنید!

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


سیستم های نهفته

هرچند تعریف دقیق سیستم نهفته در سال های اخیر تا حدودی ناممکن شده اما می توان با اطمینان گفت که بوردهای توسعه کوچک نظیر آردوینو در این دسته قرار می گیرند اما دستگاه های پیچیده تر مثل رزبری پای یا دیگر کامپیوترهای تک بورد معمولا سیستم نهفته به شمار نمی روند.
مشکل اصلی پایتون با این سیستم ها در محدودیت حافظه و زمان بندی نهفته است. برای مثال حافظه محدود یک چیپ ۸ بیتی بکار رفته در سخت افزارهای نهفته باید به دقت مدیریت شود اما این کاری نیست که پایتون برای آن مناسب باشد. به همین خاطر زبان ویژه آردوینو نسخه ساده ای از C/C++ است که یاد گرفتن آن به مراتب آسان تر از آن چیزی است که فکرش را می کنید.
زبان C علی رغم قدرتمند بودن ممکن است گاهی خطرناک هم باشد. هرچندC و C++ به عنوان زیر مجموعه آن سطح بالا به شمار می روند اما توانایی دسترسی به پردازش های سطح پایین را هم دارند. فراموش نکنید که C حاصل نخستین برگردان کدهای ماشین به شکل قابل درک برای انسان است.


سرعت و دقت

C به لطف توانایی بالا در مدیریت سیستم های سطح پایین، امکان دستیابی به سرعت بالا را میسر می سازد. این زبان، خام محسوب شده و عاری از سربار یا مجموعه های بی فایده ای است که سرعت را کاهش می دهند. البته این موارد گاهی به مشکلات خطرناکی نظیر نشت حافظه هم منجر می شود. با این حال نمی توان از مزایای آن در زمینه سرعت و زمانبندی به سادگی عبور کرد.
تمام افرادی که در پی ورود به حوزه برنامه نویسی سخت افزار، توسعه درایورهای دستگاه ها یا کدنویسی کرنل هستند نباید قابلیت های زبان C را نادیده بگیرند. آیا تا به حال با VSTs برای تولید موزیک های دیجیتال کار کرده اید؟ با استفاده از C++ می توانید ابزارهایی نظیر این را مطابق نیازهای خودتان طراحی کنید.



۴. آیا به پایتون نیاز دارید؟

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



شاید پایتون برای شما هم گزینه مطلوبی باشد

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


می توانید از طریق دکمه زیر، مقاله را با دوستانتان در تلگرام به اشتراک بگذارید




منبع: 
4 Reasons Why Python Isn’t the Programming Language for You
تاریخ درج: 1398/05/07
دانلود مقاله