پایتون و 4 دلیل برای یادگیری آن

آشنایی با زبان برنامه نویسی پایتون:پایتون یک زبان برنامه نویسی بسیار ساده و با قابلیت شی‌گرایی بسیار قدرتمند می‌باشد، که قابل مقایسه با زبان‌های برنامه نویسی دیگر مانندPerl , Ruby, Scheme, C++ و یا حتی جاوا می‌باشد. این زبان برنامه نویسی دارای ویژگی‌های برجسته‌ای می‌باشد:– دارای زبان نوشتاری ساده‌ای است که می‌توانید به راحتی برنامه خود را بخوانید.– به دلیل سهولت استفاده، برنامه‌های گوناگون در آن به راحتی قابل اجرا هستند و همین موضوع باعث می‌شود تا پایتون به عنوان ایده آلی برای ایجاد نمونه‌ها و سایر برنامه‌های موردی به شمار بیاید.– این برنامه دارای کتابخانه استاندارد بزرگی است که می‌تواند انواع وظایف برنامه نویسی متداول را به اجرا در بیاورد (برای مثال: ارتباط با وب سرور، جستجوی متن با استفاده از اصطلاحات متدوال، خواندن و دست‌کاری فایل‌ها و …)– حالت تعاملی پایتون اجازه آزمون و اجرای قطعه کدهای کوتاه رو فراهم می‌آورد و همچنین محیط توسعه IDLE نیز از ویژگی‌های دیگر آن است.– می‌توان آن را با استفاده از ماژول‌های جدیدی که در زبان‌های کامپایل شده دیگر مانند C و C++ اجرا شده‌اند، گسترش و توسعه داد.– می‌توان آن را درون برنامه‌های کاربردی دیگر جاسازی کرده و یک واسط کاربری قابل برنامه‌ریزی را ایجاد نمود.– در محیط‌های گوناگون مانند سیستم عامل‌های مَک، ویندوز، لینوکس و یونیکس و یا حتی بر روی گوشی‌های اندروید و ios نیز قابل اجرا است.– دانلود و استفاده از پایتون حتی درون برنامه‌های دیگر، رایگان است، همچنین می‌توان به صورت رایگان بر روی آن تغییراتی را اعمال نمود زیرا یک برنامه منبع باز میباشد .سایت‌های زیادی امکان کدنویسی تحت وب برای زبان برنامه نویسی پایتون و یادگیری آن را فراهم کرده‌اند که می‌توان به موارد زیر اشاره نمود ؛ – Codecademy– Coding Bootcamps– DataCamp– Dataquestfor Python for data science– HackInSciencefree and open source platform– High School Technology Servicesfor general Python– com for highschool students and teachersهمچنین از سایت https://pythonbooks.org می‌توانید کتاب‌های مورد نیاز خود را در حوزه برنامه نویسی پایتون به آسانی بیابید.پایتون در مدارس“چه ویژگی‌هایی زبان برنامه نویسی پایتون را برای آموزش، مناسب و ایده آل می‌سازد؟”در کتاب Python in Education اهمیت و دلایل انتخاب زبان برنامه نویسی پایتون برای یادگیری و آموزش عنوان شده است، که در اینجا به بررسی قسمت‌هایی از این کتاب می‌پردازیم تا برای سوال بالا پاسخ صحیحی را بیابیم (البته برای رسیدن به پاسخ، باید ابتدا کمی با یادگیری پایتون و خواندن کدهای آن آشنا شویم؛1) خوانایی بالای کدها:زمانی که می‌خواهیم لیستی از کارهای روزمره را تهیه کنیم، احتمالا به صورت زیر موارد را لیست می‌کنیم:ShoppingFix broken gutterMow the lawnو اگر بخواهیم آن را به صورت جزیی‌تر یادداشت کنیم لیستی مشابه زیر خواهیم داشت::ShoppingEggs –Bacon –Tomatoes –:Fix broken gutterBorrow ladder from next door –Find hammer and nails –Return ladder –:Mow the lawnCheck lawn around pond for frogs –Check mower fuel level –با یک نگاه ساده به این لیست می‌توانیم به راحتی دریابیم که فعالیت‌های اصلی کدام موارد هستند، و کدام وظایف زیر مجموعه هر یک از این فعالیت‌ها قرار می‌گیرند و در واقع با فاصله‌ای از کناره‌های سمت چپ قرار گرفته‌اند. به این تورفتگی‌ها یا Indentation در زبان برنامه نویسی پایتون scoping گفته می‌شود. برای نمونه کد زیر، نشان دهنده این است که تابعی به نام say_hello از کاربر می‌خواهد تا نام خود را وارد کند::()def say_hello(‘?name = input(‘What is your name(print(‘Hello, ‘ + nameخروجی این تابع به صورت زیر خواهد بود:What is your name? NicholasHello, Nicholasبه فاصله گذاری‌ها و تورفتگی‌های این تابع توجه نمایید که کاملا مشابه لیست فعالیت‌های روزمره می‌باشد. همین موضوع سبب شده است تا خواندن و درک کدها در پایتون به سادگی صورت پذیرد.2) سادگی:مفاهیم پایه‌ای و دانش مورد نیاز برای کدنویسی پایتون به آسانی محقق خواهد شد زیرا برای یادگیری، استفاده و به یاد آوردن بسیار ساده هستند و یکی دیگر از دلایل محبوبیت پایتون محسوب می‌شود. همچنین در صورتی که کاربر بخواهد دستوری را که اشتباه است اجرا نماید اجازه اجرا به او نخواهد داد. در ضمن مفاهیم مختلف در پایتون با واژگان انگلیسی متداول نام گذاری شده‌اند.مثال زیر را در نظر بگیرید:در برخی از زبان‌ها، در صورتی که بخواهید لیستی از فعالیت‌ها را داشته باشید، نیاز به ساختارهای گوناگون مانند آرایه‌ها، لیست آرایه‌ها یا مجموعه‌ها خواهید بود. اما در پایتون صرفا ساختاری به نام لیست موجود می‌باشد. در زیر لیست فعالیت‌های روزمره را که پیشتر در مورد آن صحبت کردیم در محیط پایتون می‌بینید:[‘todo_list = [‘Shopping’, ‘Fix broken gutter’, ‘Mow the lawnاین کد لیستی از مقادیر (رشته‌ها که برابر با فعالیت مورد نظر می‌باشند) را به شی‌ای به نام todo_list اختصاص داده است.در برخی از زبان‌های برنامه نویسی، در صورتی که بخواهیم دیکشنری از داده‌ها داشته باشیم (که به کمک آن ذخیره‌سازی و جستجوی مقادیر اسمی را انجام می‌دهیم) باید از ساختارهایی مانند جداول هش، آرایه‌های انجمنی، نگاشت‌ها و یا جداول استفاده نماییم. اما در پایتون به آسانی از مفهومی به نام دیکشنری استفاده می‌کنیم. در اینجا یک دیکشنری داده را می‌بینیم که انتخاب پایتخت کشورها را انجام داده است:} = capital_cities‘China’: ‘Beijing’,’Germany’: ‘Berlin’,’Greece’: ‘Athens’,’Russia’: ‘Moscow’,’United Kingdom’: ‘London’{به آسانی با تخصیصِ نام دیکشنری به capital_cities توانسته‌ایم تا در صورت نیاز به جستجو برای پایتخت کشورها از این دیکشنری استفاده نماییم:[capital_cities[‘China’‘Beijing’پایتونمزیت استفاده از پایتون در استفاده از دیکشنری این است که:– ساختار داده‌ای بسیار خوبی را به عنوان قسمت مرکزی زبان برنامه نویسی خود دارا می‌باشد.– به این ساختارها اسامی واقعی را نسبت می‌دهد.– و سادگی فزاینده‌ای را ایجاد می‌کند.سادگی و شفافیت پایتون، فراگیران و کدنویسان حرفه‌ای را قادر ساخته است تا کدهای قابل درک خوبی را ایجاد کنند، و احتمال اینکه این کدها، ارور و باگ‌های کمتری داشته باشند، بالاتر است، (زیرا بسیاری از خطاهای برنامه نویسی، ناشی از عدم درک درستِ کار یک قطعه کد در مقایسه با چیزی که شما فکر می‌کنید باید انجام دهد، می‌باشد.)3) توسعه پذیری:با وجود سادگی بالای زبان برنامه نویسی پایتون، مورد دیگری که بسیاری از برنامه نویسان اغلب به دنبال آن هستند استفاده از ماژولِ کتابخانه‌های استفاده شده می‌باشد (تا بتوان یک فعالیت معمولی را اجرا نمایند). ماژولِ کتابخانه مانند کتابی از دستورالعمل‌ها می‌باشد که در آن دستورالعملِ فعالیت‌های مشخصی گنجانده شده است. به زبان دیگر می‌توان گفت که برنامه نویسان مجبور نیستند تا در هنگام مواجهه با یک مشکل و خطای متداول از ابتدا شروع به رمزگشایی مشکل خود نمایند و به راحتی با استفاده از این ماژول‌ها می‌توانند مشکل خود را حل نمایند.در حالی که بسیاری از زبان‌های برنامه نویسی مکانیزم‌هایی برای نوشتن و استفاده مجدد از کتابخانه‌ها را دارند، پایتون نیز به صورت کاملا حرفه‌ای از کتابخانه استاندارد بزرگی بهره مند است و حتی امکان توسعه با استفاده از ماژولهای ثالث را نیز فراهم کرده است.برای مثال یکی از فرایندهای متداول، بازیابی داده‌ها از یک وب سایت اینترنتی می‌باشد. با استفاده از ماژول requests می‌توان صفحات وب سایت را در زبان برنامه نویسی پایتون دانلود نمود:import requests <<<(‘/response = requests.get(‘http://python.org <<<response.ok <<<True[response.text[:42 <<<‘ doctype html>\n<!–[if lt IE 7]> <html!>’این قطعه کد به پایتون می‌گوید که می‌خواهیم از کتابخانه requests استفاده نماییم:کد HTML صفحه اصلی سایت را دریافت کرده، و از صحت آن اطمینان می‌یابد و سپس 42 کاراکتر ابتدایی از کد HTML را نشان می‌دهد.برخی دیگر از ماژول‌ها با هدف ایجاد فریم ورک‌های برنامه‌های کاربردی سازمان‌دهی شده‌اند، که قادر هستند فعالیت‌های تکراری مورد نیاز برای نوشتن انواع برنامه‌های متداول را انجام دهند. برای مثال Django یکی از فریم ورک‌های ایجاد سایت اینترنتی می‌باشد.این فریم ورک انجام صحیح فعالیت‌های متداولی مانند مدل‌سازی داده‌ها، تعامل با یک پایگاه داده، نوشتن تمپلیت‌ها برای صفحات وب، امنیت، مقیاس‌پذیری و … را بررسی می‌کند. از آنجایی که این فعالیت‌ها توسط Django قابل اجرا هستند، در نتیجه برنامه نویسان می‌توانند تمرکز خود را بر روی فعالیت‌های مهم‌تری مانند طراحی سایت و پیاده‌سازی منطقِ کسب و کار معطوف نمایند.بسیاری از زبان‌های برنامه نویسی کتابخانه‌های گسترده و فریم ورک‌های فراوانی دارند، اما قدرت پایتون در وسعت استفاده از این کتابخانه‌ها می‌باشد.کتابخانه‌های SciPy و NumPy توسط دانشمندان و ریاضیدانان مورد استفاده قرار می‌گیرد، (NLTK (the Natural LanguageTool Kit) برای پردازش زبان طبیعی به کار می‌رود، Pandas به صورت گسترده‌ای توسط آمارشناسان و OpenStack برای سازمان‌دهی و کنترل منابع محاسباتی مبتنی بر ابر استفاده می‌شود، کتابخانه Pygame برای ساخت بازی و برنامه‌های چندرسانه‌ای قابل استفاده است و این لیست همین طور ادامه خواهد داشت.آموزش چنین زبانی که قابلیت‌های استفاده در دنیای واقعی را دارد مزایای بسیاری را برای فراگیران به همراه می‌آورد، زیرا آن‌ها مهارتی در زبان برنامه نویسی کسب کرده‌اند که ارزش اقتصادی واقعی خواهد داشت.4) قابلیت اجرای بر روی پلت فرم‌های متفاوت:زبان برنامه نویسی پایتون قابلیت اجرای بر روی ویندوز، مک و یا سایر سیستم‌های عامل‌ها و دستگاه‌ها را دارا می‌باشد. حتی امکان استفاده از پایتون به عنوان سرویسی بر روی وب سایت‌های مختلف نیز وجود دارد (مثل Python Anywhere).این موضوع از اهمیت بالایی در حوزه آموزش برخوردار است زیرا زمانی که دانش‌آموزان از پایتون بر روی سیستم‌های مدارس خود استفاده می‌کنند، می‌توانند همچنین آن را بر روی کامپیوتر منازل خود نیز به اجرا در بیاورند.به علاوه این قابلیت راه حل مناسبی برای مدرسینی است که از طرف مدیران مدارس اجازه نصب نرم افزار بر روی سیستم مدارس را ندارند، زیرا دانش‌آموزان می‌توانند به راحتی و با استفاده از مرورگر خود و یک سایت اینترنتی از تمامی قابلیت‌های محیط پایتون بهره‌مند شوند و در ضمن هیج گونه محدودیت سخت افزاری نیز در میان نخواهد بود.منبع: آکادمی یاسان