مرجع یادگیری ترفندهای برنامه نویسی

آموزش گام به گام برنامه نویسی

مرجع یادگیری ترفندهای برنامه نویسی

آموزش گام به گام برنامه نویسی

پایتون بهتر است یا R ؟ کدام زبان برنامه نویسی برای ورود به دنیای علم داده مناسب تر است؟


این روزها علم داده یا data science طرفدارهای بسیار زیادی پیدا کرده و به سرعت در حال گسترش است. اما سوالی که برای بسیاری از برنامه نویسان مطرح می شود این است که کدام زبان برنامه نویسی برای این کار بهتر است؟ قبل از اینکه در مورد زبان های برنامه نویسی صحبت کنیم، بهتر است کمی بیشتر در مورد خود علم داده اطلاع پیدا کنیم.

 

علم داده یا data science چیست؟

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

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

 

علم داده data science

 

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

 

جمع آوری داده (data collection)

اولین تفاوت مهم زبان های پایتون و R در حوزه جمع آوری داده است. برای مثال زبان پایتون از انواع فرمت های گوناگون از csv گرفته تا json و حتی جداول sql پشتیبانی می کند. در حوزه توسعه وب هم پایتون این اجازه را می دهد که داده ها را از دنیای وب جمع آوری کنید و در جداولی که خودتان ساختارش را مشخص کرده اید، قرار دهید. در مقابل زبان R برای وارد کردن داده هایی با فرمت excel ، csv و txt بهینه سازی شده است.

 

اکتشاف داده (exploring data)
پایتون یک کتابخانه بسیار قدرتمند برای تحلیل و اکتشاف داده به نام Pandas دارد که می توانید از آن برای عملیات گوناگونی مثل فیلتر کردن داده ها، مرتب سازی و نمایش داده ها به راحتی استفاده کنید. در مقابل زبان R برای آنالیزهای آماری در دیتاست های بزرگ بهینه شده و شامل قابلیت های متنوعی برای انجام عملیات اکتشاف داده است. با استفاده از زبان R شما می توانید توزیع احتمال های مختلفی برای داده هایتان در نظر بگیرید، تست های آماری زیادی به کار ببرید و عملیات های مختلف داده کاوی و یادگیری ماشین اجرا کنید.

 

مدل سازی داده (data modeling)

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

 

تصویرسازی داده (data visualization)

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

 

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

 

با این تفاسیر کدام زبان برای افراد مبتدی بهتر است؟

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

12 کتاب و مرجع آنلاین برای برنامه نویسان در سال 2021 - قسمت دوم


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

7-

Effective Java by Joshua Bloch

مرجع آموزش برنامه نویسی الگوریتم اول

کتاب effective java یک منبع عالی برای یادگیری تکنیک ها، ترفندها و کاربردهای زبان برنامه نویسی جاوا است. این کتاب یک راهنمای جامع است که تمام اطلاعات و مفاهیم موردنیاز برای یادگیری این زبان برنامه نویسی را پوشش میدهد مانند:

  • Object
  • Class
  • Library
  • Method
  • Serialization
  • ...

اگر به زبان جاوا علاقه مندید و قصد دارید این زبان را به طور کامل یاد بگیرید، خواندن این کتاب برایتان از نان شب واجب تر است.

8-

Eloquent Ruby by Russ Olsen

آموزش برنامه نویسی الگوریتم اول

کتاب eloquent Ruby یک فرصت بسیار مناسب برای شروع یادگیری زبان ruby فراهم می کند. این کتاب به شما کمک می کند با استفاده از زبان ruby بتوانید برنامه های خود را به راحتی بنویسید و اجرا کنید. نویسنده ی کتاب تجربیات ارزشمند خود را در زمینه مفاهیم و کاربردهای آن به زیبایی و بسیار قابل فهم بیان میکند.

9-

Python Crash Course, 2nd Edition: A Hands-On, Project-Based Introduction to Programming by Eric Matthes

آموزش برنامه نویسی پایتون الگوریتم اول

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

در قسمت اول مفاهیم اصلی و اولیه زبان پایتون مانند متغیرها، لیست ها، حلقه ها، کلاس ها و... آموزش داده شده که با تمرینات زیادی همراه است. در قسمت دوم نیز 3 پروژه معرفی شده که بتوانید دانش خود را در این زبان برنامه نویسی به کاربردهای عملی تبدیل کنید. همچنین این کتاب به شما نحوه استفاده از کتابخانه های پرقدرت پایتون مانند pygame ، matplotlib ،   Django و... را آموزش میدهد.

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

10-

Codeacademy’s Free Course

یادگیری از طریق کتاب یکی از بهترین روش های جمع آوری اطلاعات و فراگیری مقدمات اولیه برای انجام دادن پروژه های آینده است. اما تمرین روی پروژه های واقعی است که برای شما تجربه های فراوانی به ارمغان می آورد. سایت codeacademy یک منبع بسیار خوب برای یاد گرفتن html, css, bootstrap است که به شما آموزش میدهد چطور یک وبسایت را بسازید و با چالش های آن مواجه شوید.

11-

Udemy’s Course

 Udemy یکی از بهترین پلتفرم های یادگیری برای کسانی است که میخواهند به طور خودآموز مطلبی را یاد بگیرند. اگر وارد سایت شوید و قصد داشته باشید کدنویسی را شروع کنید، با انواع دوره های آموزشی مختلف مواجه می شوید.یکی از بهترین دوره ها برای شروع coding for begginers1: you can learn to code است که زبان های برنامه نویسی مختلفی مانند اسکرچ ، پایتون ، جاوا اسکریپت ، روبی ، سی شارپ و... را پوشش می دهد و بیش از 15 هزار نفر این در این دوره شرکت کرده اند.

این دوره آموزشی در 8 ساعت و 34 قسمت مفاهیم اصلی کدنویسی ، زبان های برنامه نویسی ، پروژه ها و اصول و قواعد کار را آموزش می دهد.

12-

Udacity’s Free Course

Udacity یکی دیگر از پلتفرم های آموزش کدنویسی است که دارای انواع دوره های آموزشی رایگان و غیر رایگان است. دوره آموزشی که ما در این پست قصد معرفی آن را داریم، intro to html and css است.

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