زبان های برنامه نویسی
27 آبان 1404
ارسال شده توسط engrmh
چرا اینهمه زبان داریم؟
ببین، بذار اول یه نکتهی ریز رو بگم: زبان برنامهنویسی مثل پیچگوشتیه؛ هرکدوم سایز و نوع خاصی دارن. یه پیچگوشتی چهارسو نمیتونه پیچ ستارهای رو باز کنه. همینه که تنوع زبان داریم. حالا بریم ببینیم برای هر پروژهای چه پیچگوشتیای لازم داری.
۱) وب Web
وب رو میخوام دوتا قسمت کنم، چون دو تا دنیا داره:
الف) فرانتاند Front-End (اونچیزی که کاربر نهایی میبینه)
-
HTML + CSS + JavaScript: این سهتا پایهان. HTML اسکلتِ صفحه رو میسازه، CSS لباسش میندازه، JavaScript هم بهش حرکت و جان میده.
-
TypeScript: یه نسخهی مدرنتر از JavaScriptه که تایپ امنیت داره؛ الان خیلیها دوستش دارن.
-
React / Vue / Angular: اینا فریمورکن، نه زبان مستقل، ولی چون با JS/TS نوشته میشن، عملاً بخش بزرگی از بازار کارن. اگر خواستی فقط یاد بگیر React رو، ۸۰٪ آگهی استخدامی فرانت رو پوشش میدی.
ب) بکاند Back-End (اونچیزی که پشت صحنه میچرخه)
-
Node.js (JavaScript): اگر دوست داری هم فرانت هم بک رو با یه زبان بزنی، Node انتخابِ راحتیه.
-
Python (Django / Flask): سینتکسِ راحت، جوابِ سریع، کتابخونهی زیاد. برای MVP زدن عالیه.
-
PHP (Laravel): هنوزم خیلی هاستها پشتیبانش هستن، وردپرس هم باهاشه. بازار کارش دستِ خودشو داره.
-
Java (Spring): تو شرکتهای بزرگ و بانکها جا افتاده. اگر دنبال کار سازمانیای، جفتشو بزن.
-
C# (.NET): مایکروسافت دوستداره، ساختار قوی، سرعت خوب. هم ویندوز هم لینوکس میخوره الان.
-
Go (Golang): ساده، سریع، همزمانپرداز قوی. استارتاپهایی که میخوان سرعت بالا بیارن، دوستش دارن.
-
Ruby (Rails): یه مدت ترند بود، ولی هنوزم برای پروژهی سریع عالیه.
۲) دسکتاپ Desktop
اگر برنامهی ویندوزی یا مک یا لینوکس میخوای:
-
C# (.NET WPF / WinUI / MAUI): اگر ویندوز هدفته، برو سراغ این. ویژوال استودیو همهچیز رو برات آماده میکنه.
-
C++ (Qt): سرعت بالا، رابط کاربری کراسپلتفرم. برای نرمافزارهای سنگین مثل CAD یا بازیسازی خوبه.
-
Java (JavaFX / Swing): «یک بار بنویس، همهجا اجرا کن» هنوزم زندهست. شرکتهای بانک دوست دارن.
-
Python (PyQt / Tkinter / Kivy): برای پروتوتایپ یا ابزار داخلی شرکتها سریعه، ولی حجم نهایی برنامه بزرگ میشه.
-
Electron (JS + HTML + CSS): همون تکنولوژی فرانت رو میاری میسازی برنامه دسکتاپ (مثل VSCode). رمخورِ بیشتریه ولی توسعهش سریعه.
۳) موبایل Mobile
الف) بومی Native
-
Android: Kotlin حالا رسمیترین زبانِ گوگله، Java هم هنوز کار میکنه.
-
iOS: Swift (مدرن، سریع)، اگر پروژهی قدیمی بود Objective-C.
ب) کراسپلتفرم Cross-Platform
-
Flutter (Dart): گوگل داره سنگتموم میذاره؛ یه کد میزنی هم اندروید هم iOS میشه. ویجتهاش روانان.
-
React Native (JavaScript/TypeScript): اگر قبلاً وب زدی، ۸۰٪ دانشت اینجا هم کار میکنه.
-
.NET MAUI (C#): اگر تو دنیای مایکروسافت بودی، باهاش هم اندروید هم ویندوز میگیری.
-
Unity (C#): اصلش برای بازیه، ولی میشه اپهای غیربازی هم ساخت.
چه جوری انتخاب کنم؟
یه تمرین کوچیک: یه کاغذ بیار، سه تا ستون بکش: «علاقه شخصی»، «بازار کار محلی»، «سرعت یادگیری». حالا هر زبانی رو که دیدی، یه امتیاز ۱ تا ۵ بهش بده. جمع که زدی، میبینی چه زبانی برات میخنده.
مثلاً اگر میخوای زود استخدام بشی و تهران هستی، برو سراغ React + Node یا Kotlin Android. اگر شهر کوچیکتری هستی، PHP و لاراول هنوزم گیر میاد.
مثلاً اگر میخوای زود استخدام بشی و تهران هستی، برو سراغ React + Node یا Kotlin Android. اگر شهر کوچیکتری هستی، PHP و لاراول هنوزم گیر میاد.
خلاصهی نهایی (چسبون به یخچال!)
-
وب فرانت: HTML + CSS + JS → React/Next
-
وب بک: Node یا Python یا PHP (بستگی داره چی دوست داری)
-
دسکتاپ: C# (ویندوز) / Qt (کراسپلتفرم) / Electron (اگر وب بلدی)
-
اندروید: Kotlin
-
iOS: Swift
-
کراسموبایل: Flutter یا React Native
یه جملهی آخر
یادت باشه زبان فقط ابزاره؛ الگوریتم، تفکر منطقی و حل مسئله اون چیزیه که آدم حرفهای رو از آماتور جدا میکنه. یه زبان رو انتخاب کن، برو جلو تا حدی که بتوتی پروژهی واقعی بسازی، بعد برو سراغ بعدی. همین که شروع کنی، بقیهاش خودش میاد.
پست های مرتبط
27 آبان 1404
27 آبان 1404
27 آبان 1404
27 آبان 1404