سفارش تبلیغ
مجله هاست ایران
مجله هاست ایران

 

آیا شما هم علاقه­‎مند به یادگیری یک زبان برنامه­‎نویسی جدید هستید؟ احتمالا گوگل را برای مقایسه­‎ی انواع زبان­‎های برنامه­‎نویسی موجود زیرو رو کرده­‎اید ولی هنوز در انتخاب زبان مناسب سردرگم هستید. اگر جواب شما مثبت است خواندن این مطلب را به شما توصیه می­‎کنیم.

برای دستیابی به مقایسه­‎ای مناسب بین زبان­‎های برنامه­‎نویسی موجود، از منابع اطلاعاتی زیادی می­‎توان استفاده کرد. این منابع شامل مخزن­‎های کد (Code Repositories) مانند GitHub، انجمن­‎های سوال و جواب، تبلیغات مشاغل، تگ­‎های شبکه­‎های اجتماعی، میزان بازدید از دوره­‎های آموزشی هرکدام از زبان­‎ها و بررسی مقالات توسعه­‎دهندگان وب هستند. هرکدام از این منابع مزایا و معایب خود را دارند و به‎­طور دقیق نمی­‎توان به آنها استناد کرد، ولی تا حدود زیادی به ما در انتخاب صحیح زبان­‎برنامه نویسی مناسب کمک خواهند کرد.

در ادامه به بررسی برخی از این رتبه­‎بندی­‎های انجام شده می­‎پردازیم.

GitHut

سرویس GitHut منبع جدیدی است که 2.2 میلیون مخزن کد فعال GitHub را آنالیز می­‎کند. طبق آمار این منبع ده زبان اول به شرح زیر هستند:

  1. JavaScript
  2. Java
  3. Python
  4. CSS
  5. PHP
  6. Ruby
  7. C++
  8. C
  9. Shell
  10. C#

 

RedMonk

طبق مقاله­‎ی منتشر شده در ژانویه 2015 در RedMonk رتبه­‎های اول براساس میزان فعالیت در GitHub و Stack Overflow به ترتیب به زبان­‎های زیر اختصاص داده شده­‎اند:

  1. JavaScript
  2. Java
  3. PHP
  4. Python
  5. C#
  6. C++
  7. Ruby
  8. CSS
  9. C
  10. Objective-C

 

محور عمودی میزان محبوبیت را در Stack Overflow براساس تعداد تگ نشان داده و محور افقی میزان محبوبیت در GitHub براساس تعداد پروژه‎­ها را نشان می­‎دهد.

Jobs Tractor

سایت Jobs Tractor با رصد و آنالیز هزاران توییت منتشر شده در توییتر مربوط به مشاغل و زبان­‎های برنامه نویسی رتبه­‎بندی زیر را ارائه می­‎دهد:

  1. Java
  2. Objective-C
  3. PHP
  4. SQL
  5. Java (Android)
  6. C#
  7. JavaScript
  8. Python
  9. Ruby
  10. C++

 

TOIBE Index

سرویس TOIBE Index با بررسی تعداد مهندسین این حوزه، دوره­‎های آموزشی و رتبه­‎بندی موتورهای جستجو رنکینگ زیر را ارائه می­‎کند:

  1. C
  2. Java
  3. Objective-C
  4. C++
  5. C#
  6. PHP
  7. JavaScript
  8. Python
  9. Visual Basic.NET
  10. Visual Basic

چند نکته درمورد آمارهای ارائه شده:

GitHut و RedMonk به دلیل اینکه منبع اطلاعاتی­شان GitHub بوده آماری شبیه به هم ارائه داده­‎اند. هردو، مخازن کد با دسترسی عمومی را بررسی کرده و از بررسی مخازن Private خودداری کرده‎­اند که این باعث می­شود آمارشان به سمت زبان­های Open Source متمایل شود.

TOIBE نیز تحت تاثیر موتورهای جستجو قرار گرفته است. شاید به همین دلیل زبان C را در صدر این آمار می­‎بینیم. زبان C در سال 1969 توسعه یافت و از سالیان گذشته مقالات زیادی از آن در وب موجود است. و احتمالا به همین دلیل نیز زبان­‎های جدیدتری مانند Ruby رتبه­‎های پایین­‎تری را کسب کرده­‎اند.

بررسی منابع آموزشی نیز به­‎طوری خاص آمار را تحت تاثیر قرار داده‎­اند. برای مثال، زبان پایتون (Python) به طور عمده در اکثر دوره­‎ها و کلاس­‎های آموزش برنامه‎­نویسی (خارج از ایران) یاد داده می­‎شود. ولی مشاغل مرتبط با پایتون به نسبت PHP و Ruby بسیار کمتر هستند.

نکته­‎ی دیگر اینکه CSS را نمی­‎توان یک زبان برنامه­‎نویسی در نظر گرفت ولی بدلیل استفاده­‎ی مهم آن در طراحی وب، درمنابع از آن به عنوان زبان برنامه­‎نویسی یاد شده است.

به هرصورت با مشاهده­‎ی آمار و بالاتر بودن نسبی رتبه­‎ی زبان­ه‎ای تحت وب به نسبت زبان­ه‎ای دسکتاپ، به دو نکته­ باید توجه داشت:

  1. یک وب­‎سایت یا نرم­‎افزار تحت وب به تکنولوژی­‎ها و زبان­‎های وابسته­‎ی زیادی نیاز دارد و احتمالا این باعث می­‎شود زبان­ه‎ای تحت وب به طور کلی بالاتر از زبان­‎های دسکتاپ قرار بگیرند.
  2. شما می­‎توانید به سرعت و فقط در چند خط کد در زبان­‎های CSS، PHP، Ruby و پایتون کارتان را انجام دهید (بسته به نوع پروژه). درصورتی که زبان­‎های C، C# و جاوا از این قاعده مستثنی بوده و شاید این باعث می­‎شود کمتر در پروژه­‎های بزرگتر مورد استفاده قرار گیرند.

بررسی­‎ها به شما چه می­‎گویند؟

«بهترین» زبان برنامه‎­نویسی وجود ندارد.

ضمنا تعداد کمی برنامه­‎نویس هستند که فقط به یک زبان مسلط باشند.

برای مثال اگر انتخاب شما جاوا اسکریپت باشد، شما به نتیجه­‎ی خوبی نخواهید رسید مگر اینکه با HTML، CSS و جنبه­‎هایی از مرورگرهای وب آشنایی داشته باشید. در انتخاب زبان­‎های سمت سرور مانند PHP، Ruby و ASP.NET باید اطلاعاتی درمورد وب­‎سرور، HTTP، پایگاه­‎های داده­‎ی SQL یا غیر SQL و گاهی اوقات نیز XML و JSON داشته باشید.

با این اوصاف کدام زبان را باید یاد بگیریم؟

بررسی­ های ارائه شده ­می­‎توانند به ما کمک کنند اما حرفه­‎تان را با استناد به آنها پایه­‎گذاری نکنید. برای اینکه یک برنامه­‎نویس عالی شوید تنها یک راز وجود دارد و آن اینکه: «دست به کار شوید و چیزی بسازید»

ابتدا مشکل یا مسئله­‎ای را پیدا کنید. مخصوصا مسئله­‎ای که به آن علاقه دارید یا به نوعی به شما سود می­‎رساند. این مسئله می­‎تواند ساخت یک وب­‎سایت شخصی، مدیریت هزینه­‎های مالی­‎تان یا ارسال توییت­‎های تصادفی به فالوئرهایتان باشد. اطمینان یابید اهدافی که تعریف کرده­‎اید قابل دستیابی هستند. در ابتدای راه، تعیین اهدافی مانند ساخت یک بازی Call of Duty جدید یا نسخه­‎ای جدید از Wordpress غیر عاقلانه خواهد بود!

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

در مرحله بعد و پس از انتخاب زبان مناسب، اقدام به حل مسئله کنید. می­توانید از گوگل، قطعه کدهای آماده و پرسش از برنامه­‎نویسان دیگر کمک بگیرید ولی انتظار نداشته باشید آنها جواب کامل را به شما بگویند. پروژه­‎ی شما یکتاست (یا باید باشد) و تنها یک نفر می‎­تواند به شما کمک کند تا آن را حل کنید و آن خود شما هستید.

در آخر، انتظار نداشته باشید یک شبه برنامه­‎نویس قهاری شوید. برای برنامه­‎نویس شدن باید زمان صرف کنید و به دنبال یادگیری تکنولوژی­‎های جدید باشید. دوره‎­های آموزشی زیادی سرتاسر وب وجود دارند که بسیاری از آنها رایگان بوده و می­‎توانید از آنها استفاده کنید.

بطور خلاصه، انتخاب یک زبان برنامه­‎نویسی با هدف حل تمارین دانشگاه و یا شروع یک حرفه به احتمال زیاد منجر به عدم موفقیت شما خواهد شد. بهتر است زبانی را با این هدف انتخاب کنید که یک مسئله­‎ی واقعی و تعریف شده را حل می­‎کند. زیاد نگران این نباشید که زبان انتخابی در بین 10 زبان برتر نیست؛ زیرا اکثر زبان­‎ها از نظر مفاهیم شبیه به یکدیگر بوده و مهارت­‎های شما قابل انتقال به زبان دیگری خواهد بود.

مهم‎­ترین نکته این است که از انتخاب­‎های خود نگران نباشید: فقط چیزی بسازید.






تاریخ : جمعه 95/5/1 | 3:31 صبح | نویسنده : سروش-و | نظرات ()
طول ناحیه در قالب بزرگتر از حد مجاز
.: Weblog Themes By SlideTheme :.

  • اسکندر