Posted on

TypeScript چیست؟

typescript

جاوااسکریپت به عنوان یک زبان برای سمت-کلاینت معرفی شد. توسعه Node.js جاوا اسکریپت را به عنوان یک فناوری جدید در سمت-سرور نشان می دهد. با این حال، همانطور که کد جاوااسکریپت رشد می کند، تمایلش برای آشفتگی ، و مشکل آن برای حفظ و استفاده مجدد از کد بیشتر می گردد. علاوه بر این، درک ویژگی های شی گرایی،استرانگ تایپ بودن انواع داده و بررسی خطا در زمان کامپایل، مانع موفقیت جاوااسکریپت در سطح اینترپرایس به عنوان یک فن آوری کامل سمتسرور می شود. TypeScript برای پوشاندن این شکاف ارائه شد.

Anders Hejlsberg

Anders Hejlsberg

طبق تعریف، “تایپ اسکریپت، جاوااسکریپت برای توسعه برنامه کاربردی است.”

تایپ اسکریپت یک زبان کامپایل شده استرانگ تایپ شی گرا است. این زبان توسط Anders Hejlsberg (طراح سی شارپ) در مایکروسافت طراحی شده است. تایپ اسکریپت هم زبان و هم مجموعه ای از ابزارهاست. تایپ اسکریپت یک super set از جاوااسکریپت است که به آن کامپایل شده است. به عبارت دیگر تایپ اسکریپت، جاوااسکریپت به علاوه بعضی از ویژگی های اضافی است.

typescript
typescript

ویژگی های TypeScript

تایپ اسکریت فقط جاوااسکریپت است. تایپ اسکریپت با جاوااسکریپت شروع می شود و با جاوااسکریپت خاتمه می یابد. تایپ اسکریپت بلوک های اصلی پایه برنامه خود را از جاوااسکریپت دریافت می کند. از این رو، شما فقط نیاز به دانستن جاوااسکریپت برای استفاده از تایپ اسکریپت دارید. تمام کد تایپ اسکریپت به منظور اجرای آن به معادل جاوا اسکریپت تبدیل می شود.

تایپ اسکریپت از سایر کتابخانه های جاوااسکریپت پشتیبانی می کند. Compiled TypeScript را می توان از هر کد جاوااسکریپت استفاده کرد. جاوا اسکریپت TypeScript می تواند تمام چارچوب های جاوا اسکریپت، ابزار و کتابخانه ها را استفاده کند.

جاوااسکریپت تایپ اسکریپت است. این بدان معنی است که هر فایل معتبر js. را می توان به ts. تغییر نام داد و با سایر فایل های تایپ اسکریپت کامپایل نمود.

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

TypeScript و ECMAScript

مشخصات ECMAScript مشخصات استاندارد یک زبان برنامه نویسی است. شش نسخه ECMA-262 منتشر شده است. نسخه ۶ استاندارد به نام “هماهنگی” نام گذاری شده است. تایپ اسکریپت با مشخصات ECMAScript6 هماهنگ شده است.

typescript & ecmascript
typescript & ecmascript

تایپ اسکریپت ویژگی های زبان اساسی خود را از مشخصات ECMAScript 5، یعنی مشخصات رسمی جاوااسکریپت، پذیرفته است. ویژگی های زبان تایپ اسکریپت مانند ماژول ها و جهت گیری مبتنی بر کلاس مطابق با مشخصات ECMAScript 6 می باشد. علاوه بر این، تایپ اسکریپت همچنین شامل ویژگی هایی نظیر generic ها و type annotations است که بخشی از مشخصات ECMAScript 6 نیستند.

چرا استفاده از تایپ اسکریپت؟

تایپ اسکریپت برتر از سایر همتایانش مانند زبانهای برنامه نویسی CoffeeScript  و Dart است به طوری که تایپ اسکریپت جاوااسکریپت گسترش یافته است. در مقابل، زبان هایی مانند Dart، CoffeeScript، زبان های جدید خود را دارند و نیاز به محیط زبان های خاصی دارند.

مزایای تایپ اسکریپت عبارتند از:

  • پسوندکامپایل– جاوااسکریپت یک زبان تفسیری است. از این رو، باید اجرا شود که تست شود برای ارزیابی. یعنی که تمام کدها هیچ خروجی یی نخواهند داشت اگر که اشکالی وجود داشته باشد. از این رو، شما مجبور به این هستنید که برای پیدا کردن خطاها در کد وقت صرف کنید . Transpiler TypeScript ویژگی کنترل خطا را فراهم می کند. تایپ اسکریپت کد را کامپایل می کند و در صورتی که برخی از خطاهای نحوی را پیدا کند خطاهای کامپایل را ایجاد می کند. این امر کمک می کند تا خطاهای قبل از اجرای اسکریپت برجسته شود.
  • Strong Static Typing – جاوااسکریپت strongly typed نیست. تایپ اسکریپت همراه با optional static typing و type inference system  از طریق Language TypeScript Language Service است. نوع متغیری که بدون نوع اعلام شده است، ممکن است توسط TLS بر اساس مقدار آن تعریف شود.
  • تایپ اسکریپت تعاریف نوعی برای کتابخانه های جاوا اسکریپت موجود را پشتیبانی می کند. نوع TypeScript Definition (با پسوند .d.ts) تعریف برای کتابخانه های جاوا اسکریپت خارجی را فراهم می کند. از این رو، کد تایپ اسکریپت می تواند شامل این کتابخانه ها باشد.
  • تایپ اسکریپت از مفاهیم برنامه نویسی شی گرا مانند کلاس ها، رابط ها، ارث و غیره پشتیبانی می کند.

اجزاء تایپ اسکریپت

در قلب خود، تایپ اسکریپت دارای سه جزء زیر است –

  • زبان – شامل نحو، کلمات کلیدی و type annotations است.
  • کامپایلر تایپ اسکریپت – tsc دستورات نوشته شده در تایپ اسکریپت را به معادل آن در جاوااسکریپت تبدیل می کند.
  • language service تایپ اسکریپت یک لایه اضافی را در اطراف pipeline هسته کامپایلرقرار می دهد که برنامه هایی مانند ویرایشگر هستند. language service پشتیبانی از مجموعه از عملیات ویرایشگر مانند تکمیل دستورهای نوشته شده، کمک در یافتن signature ها، قالب بندی کد و مشخص کردن، رنگ آمیزی و غیره را پشتیبانی می کند.
typescript components
typescript components

فایل های Declaration

وقتی یک اسکریپت TypeScript کامپایل می شود، یک گزینه تولید یک فایل Declaration (با پسوند .d.ts) است که به عنوان یک interface به کامپوننت ها در جاوا اسکریپت کامپایل شده عمل می کند. مفهوم فایل های Declaration شده مشابه مفهوم فایل های هدر در C / C ++ است. فایل های
Declaration (فایل هایی با پسوند .d.ts) هوشمندی را برای انواع فراخوانی های توابع و پشتیبانی از کتابخانه های جاوا اسکریپت مانند jQuery، MooTools و غیره فراهم می کنند.

برای اطلاعات بیشتر درباره فرانت-اند و بک-اند به اینجا مراجعه کنید.

برای اطلاعات بیشتر درباره Angular به اینجا مراجعه کنید.

برای اطلاعات بیشتر درباره MVC به اینجا مراجعه کنید.

منبع

آخرین پست ها:

flat-design-colors

طراحی فلت و رنگ ها

در طراحی فلت و رنگ ها، طراح با طیف وسیعی از رنگ های مختلف کار می کند، اما اغلب طراحان آن رنگ هایی را انتخاب می کنند که جسورانه و روشن باشند…
ادامه خواندن