علت شهرت روزافزون Visual Studio Code

ویرایشگرهای متن خوب برای اکثر برنامه نویسان اهمیت دارند چرا که در سرعت و کارآیی آن ها تأثیر به سزایی دارند. خیلی افراد ویرایشگرها را با محیط های توسعه یکپارچه (Integrated Development Environment یا IDE) اشتباه می گیرند، در حالی که تفاوت های مشخصی بین این دو وجود دارد. یک IDE، محیطی کامل را برای برنامه نویسی کارآمد فراهم می آورد. IDE،‌ عموماً شامل ویرایشگر کُد مرجع (Source Code)، کامپایلر (Compiler)، دیباگر (Debugger) و هزاران ویژگی دیگر است. بر خلاف این، یک ویرایشگر امکانات محدودتری را ارائه می دهد و امکان اجرای کُد، تست و یا دیباگ کردن آن را در یک ساختار یکپارچه دارا نیست. اما با وجود ویژگی های محدودتر، این ویرایشگرها سبک هستند، به حافظه کمتری حین اجرا نیاز دارند. از سوی دیگر، برخی ویرایشگرها نظیر Visual Studio Code یا Sublime Text با امکاناتی شبیه IDE ها پا به عرصه رقابت گذاشته اند.

بازگشت به Visual Studio Code

Visual Studio Code یا به اختصار VSC، یکی از پرطرفدارترین ویرایشگرهای کُدی است که در حال حاضر توسط برنامه نویسان استفاده می شود. VSC سریع، سبک و بسیار قدرتمند است! مایکروسافت VSC را در قالب یک ویرایشگر میان-سیستم-عاملی (Cross-Platform) برای توسعه اپلکیشین های تحت وب و سرویس های ابری طراحی کرد. برای اولین بار، این ویرایشگر در ۲۹ آوریل ۲۰۱۵ در کنفرانس بیلد (Build Conference) در سان فرانسیسکو معرفی شد.  چند ماه بعد یعنی در ۱۸ نوامبر ۲۰۱۵، VSC تحت لیسانس MIT عرضه شد و سورس کُد آن نیز در GitHub در دسترس توسعه دهندگان قرار گرفت.

درک Visual Studio Code

VSC ویرایشگر کُدی است که برای سیستم عامل های ویندوز، لینوکس و مک توسعه یافته است. علاوه بر آن، VSC سادگی یک ویرایشگر متن را با ابزارهای قدرتمند توسعه کُد نظیر دیباگر، یکپارچگی با ساز و کار کنترل Git، و برجسته سازی دستورات (Syntax Highlighting) تلفیق نموده است. این ویرایشگر رایگان و کُد باز بوده و بر پایه چهارچوب برنامه نویسی Electron که برای اجرای اپلیکیشن های Node.js استفاده می شود، توسعه یافته است. اگر چه VSC مبتنی بر Electron است، ولی از Atom استفاده نمی کند. اما از عنصری مشابه به نام Monaco بهره می گیرد که در Azure DevOps نیز در حال استفاده است.

یکی از ویژگی های خاص VSC، دامنه گسترده افزونه های عرضه شده برای آن است. با انتخاب افزونه های مختلف می توان این ویرایشگر را برای توسعه کُد به هر زبان برنامه نویسی و برای زمینه های مختلف از توسعه صفحات وب گرفته تا علوم داده (Data Science) و یادگیری ماشین (Machine Learning) شخصی سازی کرد.

Visual Studio Code چه تفاوتی با Visual Studio 2015 دارد؟

گاهی VSC با Visual Studio 2015 که محصولی مجزا و کاملاً متفاوت است اشتباه گرفته می شود. برای شناخت تفاوت های این دو باید بدانیم که:

  • VSC یک ویرایشگر کُد است ولی Visual Studio یک IDE کامل است.
  • Visual Studio Code میان-سیستم-عاملی طراحی شده است ولی Visual Studio تنها بر روی ویندوز و مک عرضه شده است.
  • VSC سریع و سبک است ولی Visual Studio 2015 با وجود غنی بودن از امکانات، سریع نیست.
  • VSC عموماً توسط توسعه دهندگان Front-End استفاده می شود ولی Visual Studio توسعه دهندگان را در سطح عمومی هدف قرار داده است.
  • Visual Studio Code مبتنی بر ساختار فایل و پوشه است ولی Visual Studio 2015 مبتنی بر پروژه ها و راه حل ها (Solutions).
  • از لحاظ پشتیبانی زبان های برنامه نویسی، VSC از زبان های متنوعی نظیر PHP، Python، HTML5، JavaScript و بسیاری دیگر پشتیبانی می کند. در حالی که، Visual Studio 2015 اصولاً برای زبان های .NET طراحی شده است.

دلیل شهرت و همه گیر شدن Visual Studio Code چیست؟

از نظر من، علت اصلی همه گیر شدن VSC این است که همه چیزهایی که یک برنامه نویس از یک ویرایشگر کُد انتظار دارد را در کنار ویژگی های مکمل و اضافی مطلوب دیگری داراست. اگر بخواهیم این دلایل را یک به یک شرح دهیم، باید بگوییم:

  1. میان-سیستم-عاملی (Cross-Platform): رایگان بودن، کُد باز بودن و ویژگی میان-سیستم-عاملی که اجازه استفاده از VSC در همه سیستم عامل های موجود را می دهد، دامنه نفوذ آن را میان کاربران وسیع تر کرده است.
  2. پشتیبانی از صدها زبان برنامه نویسی: وقتی پایگاه اینترنتی Visual Studio Code را مرور می کنید، بلافاصله متوجه می شوید که تقریباً تمام زبان های برنامه نویسی مطرح را پشتیبانی می کند از جمله Python، JavaScript، HTML، CSS، TypeScript، C، Java، PHP، Go، SQL، Ruby، Objective-C و بسیاری دیگر.
  3. انتخاب زبان اختصاصی برای هر فایل: VSC یک زبان برنامه نویسی پیش فرض را بر اساس پسوند فایل برای آن انتخاب می کند ولی شما می توانید نوع زبان را به دلخواه تغییر دهید.
  4. مستندات زبان-محور: پایگاه اینترنتی VSC برای زبان های برنامه نویسی عمومی مستندات اختصاصی ارائه می دهد.
  5. دیباگ کردن: VSC در درون خود یک دیباگر به همراه دارد که از کلیدی ترین ویژگی های آن به شمار می رود. این سامانه، به هر برنامه نویسی اجازه افزایش سرعت پروسه تکرارشونده ویرایش، کامپایل و دیباگ را خواهد داد. البته به طور پیش فرض VSC تنها دیباگر ویژه NodeJS را به همراه دارد، اما از طریق افزونه ها به راحتی می توان دیباگر زبان های دیگر را نیز به آن افزود.
  6. یکپارچگی با Git: ویرایشگر Visual Studio Code با پوشش کامل و یکپارچه سازی امکانات Git در خود، پا را یک قدم فراتر نهاده و به برنامه نویسان اجازه می دهد تغییرات کُد را به سادگی و بدون خروج از ویرایشگر مشاهده نمایند. دستورات متنوعی از Git نظیر Pull، Push، Publish، Branch و یا Merge در VSC درونی سازی شده اند. علاوه بر آن، شما به راحتی می توانید به مخازن کُد (Repositories) محلی و یا تحت وب متصل شوید.
  7. ویژگی IntelliSense: این ویژگی به برنامه نویسان امکان تکمیل خودکار و هوشمند کُد، مشاهده محتوای پارامترها، دریافت راهنمایی محتوا-مبنا و دریافت هشدار در مورد خطاهای Syntax در کُدهای نوشته شده را می دهد. VSC این ويزگی را برای زبان های JavaScript، CSS، HTML، TypeScript، JSON، Sass، و Less به طور پیش فرض ارائه می دهد. البته می توان IntelliSense را برای زبان های دیگر نظیر Python از طریق نصب افزونه ها فعال کرد.
  8. والت دستورات (Command Palette): با فشردن ترکیب دکمه ها Ctrl/Command + Shift + P، پالتی در VSC باز می شود که به شما اجازه تعامل با VSC تنها از طریق Keyboard را می دهد. از این طریق، به قابلیت های متنوعی از VS Code شامل تمام ShortCut های کیبرد تعریف شده و همچنین توابع تعامل با افزونه های جدید، دست خواهید یافت.
  9. شخصی سازی: درست همانند هر ویرایشگر پرطرفدار دیگری، امکان شخصی سازی در VS Code نیز فراهم شده است. VSC به شما اجازه می دهد قالب رنگی ویرایشگر را تغییر داده، میانبرهای کیبرد را به دلخواه تعریف کرده، Snippet های خود را ساخته و تمام تنظیمات را متناسب با نیازتان تغییر دهید.

کلام آخر!

البته، این ویرایشگر کُد راه طولانی ای را طی کرده است به یکی از پرطرفدارترین ویرایشگرهای مورد علاقه برنامه نویسان تبدیل شود. در این راه، VSC توانسته است تجربیات حاصل از دیگر ویرایشگرهای مشهور را مورد استفاده قرار داده و در نهایت محصولی سبک، سریع و پُر امکانات را ارائه دهد.

ذکر این نکته ضروری است که حسب تجربه ما در برنامه نویسی در زمینه های علوم داده (Data Science) و یادگیری ماشین (Machine Learning)، این ویرایشگر با فاصله از رقبا مهیای توسعه هوش مصنوعی و الگوریتم های تحلیل داده است و به شما پیشنهاد می کنیم درباره ادامه استفاده از ویرایشگر کُد یا IDE فعلی مورد علاقه تان تجدید نظر کرده و دنیای VSC را تجربه کنید!