۹ زبان برنامهنویسی محبوب که ارزش یادگرفتن دارند
تنوع زبانهای برنامهنویسی باعث شده که علاقهمندان به یادگیری هنگام انتخاب زبان موردنظرشان با مشکلاتی مواجه شوند؛ بهقولمعروف تا بیایند بررسی کنند که کدام زبان برنامهنویسی مناسبشان است، زمان زیادی را از دست دادهاند. با مدتی جستوجو و مطالعه دربارهی زبانهای برنامهنویسی متوجه خواهید شد که تعداد زبانهای برنامهنویسی محبوب آنقدرها هم زیاد نیست؛ با علم به این موضوع که دقیقا میخواهید بعد از یادگیری برنامهنویسی چهکار کنید، میتوانید یک زبان برنامهنویسی مناسب را انتخاب کنید. در این مقاله با ۹ زبان برنامهنویسی محبوب که هنوز هم بهشدت ارزش یادگرفتن دارند آشنا میشوید. با دیجیکالا مگ همراه باشید.
جاوا اسکریپت
بسیاری از کاربران «جاوا اسکریپت» (JavaScript) و جاوا را با هم اشتباه میگیرند. جاوا اسکریپت یک زبان کاملا مستقل و جدا از جاوا است. وجود نام جاوا در ابتدای جاوا اسکریپت تنها یک شباهت اسمی است. جاوا اسکریپت در درجهی اول یک زبان اسکریپتی سمت کاربر برای وب است که از آن برای توسعهی رابط کاربری استفاده میشود. برنامههای وب در زبانهای سمت کاربر روی کامپیوتر کاربر اجرا و از منابع سیستمی مثل رم و CPU کاربر استفاده میکنند.
تا مدتی پیش از جاوا اسکریپت تنها در وبسایتها برای انجام برخی رویدادهای سمت کاربر (رویدادهایی که در مرورگر وب اجرا میشوند) استفاده میشد. بعد از مدتی پای فریموُرکها در جاوا اسکریپت باز شد و کارها با سادگی و سرعت هرچهتمامتر انجام پذیرفت. درواقع قبل از ورود فریمورکها در جاوا اسکریپت، ساخت وب اپلیکیشنها هیچگاه به این سادگی نبود. ساخت وب اپلیکیشنها بهوسیلهی کتابخانههایی مانند jQuery ،AngularJS ،Ember.js ،React و غیره انجام میشود.
علاوهبر وب اپلیکیشنهای تحت مرورگر، از جاوا اسکریپت میتوان برای ساخت اپلیکیشنهای تحت سرور استفاده کرد. اینها اپلیکیشنهایی هستند که میتوانند برای انجام برخی فعالیتها مانند ذخیرهی اطلاعات در پایگاه داده به سرور متصل شوند. برای این منظور پلتفرمی تحت عنوان Node.js ارایه شده که با وجود عمر بسیار کم، جامعهی بسیار فعالی دارد. پیشرفت تلفنهای هوشمند و اپلیکیشنهای آنها بر کسی پوشیده نیست. جاوا اسکریپت هم برای عقبنماندن از این دنیا با ارایهی فریمورکی با نام PhoneGap به توسعهدهندگان این امکان را داده که برای سیستمهای عامل مختلف نرمافزارهای هیبریدی تولید کنند. تنها کافی است که با جاوا اسکریپت، HTML و CSS آشنا باشید تا بتوانید نرمافزار هیبریدی خود را برای هر سیستم عاملی تولید کنید. از طرفی شرکت فیسبوک هم فروردین ۱۳۹۴ فریمورکی را با نام React Native ارایه کرد که به کمک آن میتوان با جاوا اسکریپت اقدام به تولید نرمافزارهای Native روی این پلتفرم کرد.
روبی
سازندگان زبان برنامهنویسی «روبی» (Ruby) آن را اینگونه توصیف کردهاند: «زبانی که به کمک آن برنامهنویسان با لذت و اشتیاق اقدام به تولید نرمافزار کنند.» یا «زبان برنامهنویسیای که روی نیازهای انسان تاکید دارد نه روی نیازهای ماشین.»
روبی از طریق فریمورک قدرتمند «روبی آن ریلز» (Ruby on Rails) که برای ساخت برنامههای تحت وب بهینه شده، محبوبیت خاصی را بهدست آورده است. روبی بهخوبی میتواند شما را در انجام پروژههای بزرگ همراهی کند. این زبان حاصل مطالعهی خالق آن روی زبانهای SmallTalk ،Ada ،Perl ،Eiffel و Lisp است.
پایتون
«پایتون» (Python) جزو محبوبترین زبانهای برنامهنویسی دانشگاههای ایالات متحده امریکا است. توسعهدهندگان از پایتون برای ساخت اپلیکیشنهای دسکتاپ و موبایل استفاده میکنند. همچنین پایتون گزینهی بسیار مناسبی برای انجام فعالیتهای داده کاوی (Data Mining) است.
پایتون محبوبیت بالایی در جوامع علمی و دانشگاهی برای فعالیت در حوزههای تحلیل داده و بیوانفورماتیک دارد. از پایتون برای برنامهنویسی در ویندوز، مک و لینوکس میتوان استفاده کرد. گوگل، دراپ باکس، پینترست، اینستاگرام، ردیت، بیت تورنت و Civilization IV شرکتهایی هستند که از پایتون در بسیاری از پروژههایشان بهره میبرند.
پیاچپی
«پیاچپی» (PHP) یک زبان اسکریپتی سمت سرور و متنباز (Open Source) است. بسیاری از وبسایتهایی که روزانه از آنها بازدید میکنید، بهوسیلهی PHP ساخته شدهاند. فیسبوک، یاهو، ویکیپدیا، تامبلر، وردپرس و بسیاری دیگر از سایتها مواردی هستند که از PHP قدرت گرفتهاند.
PHP قواعد دستوری سختی ندارد که این موضوع باعث میشود بهراحتی بتوانید آن را یاد بگیرید. جالب است به این نکته اشاره کنیم که شما از همان اولین روزهای یادگیری PHP میتوانید پروژههای خوبی تولید کنید که باعث بالا رفتن روحیهتان برای ادامهی کار میشود.
جاوا
«جاوا» (JAVA) زبانی چندسکویی (Cross-Platform) و مستقل از سیستم عامل است که ویژگیهایی مانند امنیت و قابلیت استفاده در پلتفرمهای مختلف را برای توسعهدهندگانش به ارمغان میآورد. از جاوا برای ساخت اپلیکیشنهای اندروید، برنامههای دسکتاپی و بازیها میتوان استفاده کرد.
جاوا زبانی کلاسیک و ریشهدار است که بهخوبی از پس انجام پروژههای نرمافزاری بزرگ (Enterprise) برمیآید. علاوهبراین «هدوپ» (Hadoop) یک فریمورک تحت جاوا برای انجام پردازش روی دادههای بزرگ (Big Data) است که در وبسرویسهای یاهو، فیسبوک و آمازون مورد استفاده قرار میگیرد. بنابراین چه بخواهید برای تلفن همراهتان اپلیکیشن بسازید و چه بخواهید روی الگوریتمهای پیچیده کار کنید، جاوا یک همراه خوب برای شما خواهد بود.
C و ++C
از زبان برنامهنویسی C معمولا برای ساخت برنامههای سیستمی استفاده میشود. زبان برنامهنویسی C یک زبان قابل آمیخته شدن با سایر زبانها در سیستم عامل است. ++C یک زبان قدرتگرفته از C است. از ++C در ساخت موتورهای بازیسازی، نرمافزارهای دسکتاپی، اپلیکیشنهای موبایل و حتی نرمافزاری تحت وب میتوان استفاده کرد. ++C بسیار سریع و قدرتمند است؛ طوریکه فیسبوک از آن برای انجام پردازشهای سنگین استفاده میکند.
اگر شما درک خوبی از زبان C داشته باشید در یادگیری سایر زبانهای برنامهنویسی مشکلی نخواهید داشت. ازآنجاکه هنگام برنامهنویسی به زبان ++C / C برای انجام یک فعالیت ساده نیاز است که مقدار کد زیادی نوشته شود، بسیاری از برنامهنویسان مبتدی روحیهشان را در ابتدای کار از دست میدهند. فراموش نکنید که یادگیری C یا ++C درک خوبی از منطق برنامهنویسی به شما میدهد. بنابراین اگر در ابتدای کار هستید به شما پیشنهاد میکنیم که برای داشتن درک خوب از برنامهنویسی مدتی روی یادگیری ++C / C وقت بگذارید ولی انتظار ساخت نرمافزارهای حرفهای را نداشته باشید.
آبجکتیو-سی / سوییفت
درواقع «آبجکتیو-سی» (Objective-C) یک لایهی ساختهشده روی زبان C است که به کمک آن میتوان برای محصولات شرکت اپل اپلیکیشن ساخت. «سوییفت» (Swift) یک زبان برنامهنویسی ارایهشده بهوسیلهی شرکت اپل است که سازگاری خوبی با Objective-C دارد. به مانند زبان پایتون، هدف سوییفت یادگیری آسان است؛ طوریکه تازهکارها هم بتوانند بهسادگی از آن بهره ببرند.
شرکت اپل سوییفت را ارایه کرد تا به کمک آن بتوان با حداقل کد نوشتهشده، برنامههایی با سرعت و امنیت بالا تولید کرد. اگر میخواهید برای آیپد و آیفونتان اپلیکیشنی حرفهای تولید کنید میتوانید از Objective-C یا سوییفت استفاده کنید. البته پیشنهاد ما به کسانی که تازه میخواهند شروع به یادگیری کنند، سوییفت است.
سی شارپ
«سی شارپ» (#C) محصولی از شرکت مایکروسافت و بر پایهی فریمورک «دات نت» (.net) است. از #C برای برنامهنویسی تحت وب (بهوسیلهی ASP)، ساخت بازیهای کامپیوتری و ساخت نرمافزارهای دسکتاپی میتوان استفاده کرد.
اگرچه در گذشته #C یک زبان چندسکویی نبوده ولی هماکنون به کمک پروژهای تحت عنوان Mono که بهوسیلهی شرکت «زامارین» (Xamarin) ارایه شده، میتوان از #C برای برنامهنویسی اندروید و iOS هم استفاده کرد.
اس کیو ال
اگرچه از «اسکیوال» (SQL) در ایران زیاد به عنوان یک زبان برنامهنویسی یاد نمیشود و صرفا مهارتی الزامی در کنار سایر مهارتها به شمار میرود. ولی با رشد اهمیت موضوعاتی مانند بزرگ دادهها (Big Data) ترجیحمان بر این بود که SQL هم در این لیست قرار گیرد.
از SQL برای کار روی پایگاههای داده در محیطهای مختلف میتوان استفاده کرد. تقریبا در هر زمینهی برنامهنویسی که بخواهید کار کنید، برای ذخیرهسازی اطلاعاتتان در پایگاه داده به SQL نیاز خواهید داشت. یادگیری SQL بسیار سریع و لذتبخش است. با یادگیری این زبان و حرفهای شدن در آن میتوانید به عنوان یک مدیر پایگاه داده کار کنید.
با اطلاعاتی که در اختیارتان قرار دادیم باید بتوانید که یک زبان برنامهنویسی را برای یادگیری انتخاب کنید. شاید هم با خواندن این مقاله همچنان سوالاتی در ذهنتان در مورد انتخاب یک زبان برنامهنویسی وجود داشته باشد. سوالاتی دربارهی فرصتهای شغلی هر کدام از زبانها یا حتی جامعهی پشتیبانیکننده و آیندهی هر کدام از آنها. طی روزهای آینده با دیجیکالا مگ همراه باشید. ما به شما در انتخاب زبان برنامهنویسی مناسب کمک خواهیم کرد.
شما چه زبان برنامهنویسی دیگری را برای یادگیری پیشنهاد میکنید؟ تجربیاتتان را با دیگران به اشتراک بگذارید.
این جاوااسکریپت آشغال کی میخواد جمع بشه آخه
سلام؛
خدمتتون سؤالی داشتم و اون اینکه چرا دیگر در بازار کتاب ایران، اثری از کتابهای زبان برنامهنویسی «دِلْفی» وجود نداره؟ آیا این زبان، بطور مطلق حذف شده است؟ تا همین سالهای گذشته بسیار از این زبان برنامهنویسی استفاده میشد امّا امروزه گویا منفور شده است!
دربارهی این زبان برنامهنویسی در اینترنت خیلی جستجو کردم و متوجّه شدم که شرکت «بورلند» اون رو به شرکت دیگهای واگذار کرده و گویا همین مسأله باعث شده خیلی از برنامهنویسان دیگر کمتر یا اصلاً از این زبان استفاده نکنند!
آیا دیگه این زبان برنامهنویسی، روزآمد نخواهد شد؟ یا پاسخگوی نیازهای کنونی برنامهنویسان نیست؟ اگر بخواهم این زبان برنامهنویسی را یاد بگیرم عملی اشتباه انجام میدهم؟ یا بهتر است به سراغ زبان برنامهنویسی «سی شارپ» بروم؟ آیا منابعی برای یادگیری این زبان وجود دارند؟ آیا کاستیهایی در این زبان هست که همه آن را فراموش کردهاند؟
لطفاً بنده را راهنمایی فرمایید.
با تشکّر
سلام.اگه بخوایم خلاصه بگیم زبونای
Java,C,C++,C#,Python,HTML,CSS,PHP
کلی خوبن.سه تای آخر تحت وب.دومی تا پنجمی دسکتاپ.جاوا اندروید.البته لازم ذکر است که جاوا کراس پلتفرم هستش و روی همه اون پلتفرما کارایی داره ولی خب توی اندروید عالیه.
کلی اگه کسی بخواد بره اندروید اول جاوا.بره دسکتاپ خانواده سی یا پایتون(یا هردو)،تحت وب پی اچ پی(که قبلش باید اچ تی ام ال و سی اس اس خوند).
بعدا مثلا یکی بخواد تو اندروید عالی بشه کنار جاوا کاتلین هم یادبگیره.توی دسکتاپ هم زبونای زیادی هستن گو،ار و… .توی وب جاوا اسکریپت و… .مثلا یکی برای شروع بره متلب یادبگیره خب افتضاس چون خب اصن هدف نامعلوم میشه.متلب برای مثال توی هوش مصنوعی و پردازش تصویر کاربرد داره.یا مثلا توی دسکتاپ یکی بخواد با پرل و روبی شروع کنه غلطه خب.برای هر شاخه از برنامه نویسی،نیاز به زبونای پیشنیاز داره و باید ساختی رو برای خودمون فراهم کنیم.اون ده زبون برای هر کاری که بخواد شروع شه بسته به کار عالیه واسه شروع.کسی سوال داشت
@stevegenius
سپاس از زحمات سایت
سلام به نظر من نرم افزار های پایه رو حتما در حد ابتدایی باید بلد باشید چون فریم ورک ها نمیتونن جواب گوی کامل شما باشن پس برای وب نطر من
HTML CSS PHP حتما باید یاد گرفته شوند بعد به سمت فریم ورکی مثل Bootstrap برای CSS و فریم ورک قدرتمندی مثل لاراول برای PHP رفت
برای برنامه نویسی سمت کلاینت هم برنامه زیاد هست و طبق جست و جوی های من python آینده خیلی خوبی داره مخصوصا اینکه برای همه پلتفرم ها میتونه برنامه نویسی کنه
C# یک برنامه قدرتمند هست که معمولا تو دانشگاه ها دارن روی اون مانور میدن
و JAVA که در صورت تمایل به برنامه نویس اندروید شدن باید حتما یاد گرفته شود
و در آخر به قول یه برنامه نویس حرفه ای شما یه زبان را یاد بگیر، یادگرفتن بقیه آب خوردن فقط تو سینتکس ها و چندتا کد کوچولو با هم متفاوت هستند
سلام
من چهارده سالمه و میخوام برنامه نویسی یاد بگیرم فعلا میخوام زبان اسمال بیسیک رو برای فهمیدن مفهوم های الولیه یاد بگیرم.
بعد از اون میخوام برم سمت اندروید به نظرتون ساده ترین و قابل فهم ترین زبان اندروید برای یک نوجوان چیه؟
ممنون از راهنماییتون
سلام عزیزم امیدوارم که خوب باشی؛
اومدم چند تا نصیحت بهت بکنم و برم
اول اینکه برای شروع HTML CSS رو یاد بگیر بعدش Java script که بتونی طراحی سایت انجام بدی چون اخر برنامه نویسی اندروید هیچی جز وقت تلف کردن نیست الان من ۱۸ سالمه و از ۱۳ سالگی شروع به برنامه نویسی کردم اول رفتم سراغ HTML CSS بعدش رفتم سراغ C# آخرش هم Python و Java script و فقط دارم از زبان های HTML CSS Java Script Python پول در میارم!
پس یذره درباره علاقت با این چیزایی که گفتم فکر کن چون واقعا هم برای سنت جاوا زوده و هم تجربه برنامه نویسی حرفه ای میخواد
سوالی داشتی میتونی به ایمیلم پیام بدی جوابت رو میدم حتما
black.hat.team80@gmail.com
به نظرم جا داشت تا از scala(زبانی قدرتمند و البته پیچیده که خصوصا در زمینه BIG DATA بسیار پر طرفدار است ) و kotlin( زبانی که مستقیما توسط اندروید پشتیبانی می شود) و GO( معرفی شده توسط گوگل و محبوب خصوصا در حوزه micro service ها) یادی می شد.
در مورد زبانهای ML هم خیلی کم لطفی شده خصوصا با توجه به تب برنامه نویسی functional که اخیرا اتفاق افتاده.
۳- بوت استرپ محبوب تره ولی لزوما بهتر نیست. الان گزینه های خیلی بیشتری مثل semantic هم وجود داره.
5- علاوه بر انگولار react و vue هم هستند که در خیلی مواقع می توانند گزینه های بهتری باشند.
6- webform عملا مرده.
7- entity frame work ربطی به mvc نداره. mvc یک الگوی طراحی هستش که در زبانها و فریم ورکهای مختلف پیاده سازی شده.
سلام
فقط اسمبلی . اسمبلی را یاد بگیرید انوقت از همه ی زبانهای سطح بالا برای همیشه بی نیاز می شوید
زنده باد اسمبلی .
SQL یک Programming Language نیسا بلکه یک Structured Query Language هست
به نظر من زبان جاوا خیلی خوبه چون داره به سرعت رشد میکنه وآینده داره.
یکم تو انتشار مطلباتون دقت کنید
SQL رو نمیشه با بقیه تو یه دسته قرار داد
با سلام
به نظر من که تقریبا ۱۵ سال سابقه برنامه نویسی دارم و چند تا نرم افزار کاربردی که در بازار هستن رو از صفر تا صد نوشته ام .
اولین فاکتور انتخاب یک زبان برنامه نویسی برای هرکسی علاقه شخصی به برنامه نویسی و دومین فاکتور هم انتخاب زمینه فعالیت مناسب می باشد از بازار کار و سطوح آموزشی و ….
مثلابرای برنامه نویسی نرم افزارهای دسکتاپ که می توان به ERP solution ها اشاره کرد حتما اولین گزینه ها سی شارپ و اس کیو ال سرور و انتخاب دوم هم جاوا و پایگاه داده اوراکل می باشد.
ویا برای برنامه نویسی تحت وب البته ساخت سایتهای تجاری از زبان php , بعد Ruby , بعد ASP.net
ویا برای برنامه نویسی تحت وب نرم افزارهای کاربردیERP solution اولین گزینه net. فریم ورک و گزینه بعدی java EE
ویا برای برنامه نویسی موبایل اندروید اولین گزینه JAVA ME , برای سیستم عامل MAC هم مطمنن SWIFT بهترین گزینه می باشد
ویا برای برنامه نویسی شبکه و برنامه نویسی سوکت اولین گزینه ++C , مطمنن زبان JAVA گزینه بعدی می باشد
ویا برای برنامه نویسی نرم افزارهای سیستمی و سطح پایین و بازی های کامپیوتری اولین گزینه ++C , دومین گزینه JAVA می باشد
ویا برای برنامه نویسی Embedded و برنامه نویسی Micro Control ها هم اولین گزینه C , گزینه بعدی ++C می باشد.
ولی با همه این اوصاف آموزش دیدن محیط های برنامه نویسی دیگر هم خالی از لطف نیست مطمنن در هر زبان قدرت کدنویسی تان در هر سکوی کاری که باشید افزایش پیدا میکند.
سلام، ممنون از اینکه تجربیات خودتون و در اختیارمون گذاشتین؛ واقعا استفاده کردم اقافرهاد
نهایت تشکرو دارم