TypeScript چیست
دسته: طراحی وب سایت
با گسترش روز افزون زبان برنامه نویسی Javascript و استفاده هر چه بیشتر آن در تولید برنامههای تحت وب این زبان به یکی از قدرتهای بزرگ در تولید برنامههای مبتنی بر وب تبدیل شده است. ترکیب این زبان با Css و Html5 تقریبا هر گونه نیاز برای تهیه و توسعه برنامههای وب را حل کرده است. جاوا اسکریپت در ابتدا برای اسکریپت نویسی سمت کلاینت برای صفحات وب ایجاد شد و برای سالها بهعنوان ابزاری برای مدیریت کردن رویدادهای صفحات وب محدود شده بود و در نتیجه بسیاری از امکانات لازم برای برنامهنویسی برنامههای مقیاس بزرگ را بههمراه نداشت. امروزه به قدری Javascript توسعه داده شده است که حتی در تولید برنامههای Native مانند Windows Store و برنامههای تحت Cloud نیز استفاده میشود. پیشرفتهای صورت گرفته و اشاره شده در این حوزه موجب شد تا شاهد پیداش برنامههای مبتنی بر جاوا اسکریپت با سایزهای بی سابقهای باشیم و این بیانگر این بود که تولید برنامههای مبتنی بر جاوا اسکریپت در مقیاسهای بزرگ امر دشواری است و اینک TypeScript توسط غول نرم افزاری جهان (Microsoft) پا به عرصه گذاشته که این فرآیند را آسانتر نماید. به کمک TypeScript میتوان برنامه تحت JavaScript در مقیاس بزرگ تولید کرد به طوری با هر مرورگر و سیستم عاملی سازگار باشد. TypeScript از شی گرایی نیز پشتیبانی میکند و خروجی آن در نهایت به JavaScript کامپایل میشود. خیلیها عقیده دارند که هدف اصلی مایکروسافت از تولید و توسعه این زبان رقابت با CoffeeScript است. CoffeeScript یک زبان متن باز است که در سال ۲۰۰۹ توسط Jeremy Ashkenas ایجاد شده است و سورس آن در GitHub موجود میباشد. در آینده، بیشتر به مباحث مربوط به CoffeeScript و آموزش آن خواهم پرداخت.
با TypeScript چه چیزهایی به دست خواهیم آورد؟
یک نکته مهم این است که این زبان به خوبی در Visual Studio پشتیبانی میشود و قابلیت Intellisense نوشتن برنامه به این زبان را دلپذیرتر خواهد کرد و از طرفی دیگر یکی از مهمترین مزیت هایی که TypeScript در اختیار ما قرار میدهد این است که میتوانیم به صورت Syntax آشنای شی گرایی کد نویسی کنیم و خیلی راحتتر کدهای خود را سازمان دهی کرده و از نوشتن کدهای تکراری اجتناب کنیم.
یکی دیگر از مزیتهای مهم این زبان این است که این زبان از Static Typing به خوبی پشتیبانی میکند. این بدین معنی است که شما ابتدا باید متغیرها را تعریف کرده و نوع آنها را مشخص نمایید و هم چنین در هنگام پاس دادن مقادیر به پارامترهای توابع باید حتما به نوع داده ای آنها دقت داشته باشید چون کامپایلر بین انواع داده ای در TypeScript تمایز قایل است و در صورت رعایت نکردن این مورد شما با خطا مواجه خواهید شد. این تمایز قایل شدن باعث میشود که برنامه هایی خواناتر داشته باشیم از طرفی باعث میشود که خطا یابی و نوشتن تست برای برنامه راحتتر و تمیزتر باشد. بر خلاف JavaScript، در TypeScript(به دلیل پشتیبانی از شی گرایی) میتوانیم علاوه بر داشتن کلاس، اینترفیس نیز داشته باشیم و در حال حاضر مزایای استفاده از اینترفیس بر کسی پوشیده نیست.
به دلیل اینکه کدهای TypeScript ابتدا کامپایل شده و بعد تبدیل به کدهای JavaScript میشوند در نتیجه قبل از رسیدن به مرحله اجرای پروژه، ما از خطاهای موجود در کد خود مطلع خواهیم شد.