10 مفهوم مهم تایپی
معرفی
TypeScript یک زبان برنامه نویسی منبع باز است که ابرمجموعه جاوا اسکریپت است. تایپ استاتیک اختیاری و برنامه نویسی شی گرا مبتنی بر کلاس را به زبان اضافه می کند. در نتیجه، TypeScript در بین توسعه دهندگان، به ویژه آنهایی که با پروژه های بزرگ کار می کنند، به طور فزاینده ای محبوب می شود. در این پست وبلاگ، 10 مورد از مهمترین مفاهیم TypeScript را که هر توسعه دهنده باید بداند، مورد بحث قرار می دهیم.
1. Annotations را تایپ کنید
حاشیه نویسی نوع یک مفهوم مهم در TypeScript است. آنها به توسعه دهندگان اجازه می دهند تا انواع داده متغیرها، پارامترهای تابع و انواع بازگشت را مشخص کنند. این می تواند به شناسایی خطاها در حین توسعه و بهبود خوانایی کد کمک کند.
مثلا،
let age: number = 27;
این مشخص می کند که متغیر age
باید از نوع باشد number
و دارای مقدار اولیه هستند 27
.
2. رابط ها
رابط ها برای تعریف ساختار یک شی استفاده می شوند. آنها نام و نوع ویژگیهای شی را مشخص میکنند و میتوانند برای اعمال سازگاری بین چندین شی مورد استفاده قرار گیرند.
برای مثال،
interface Person { name: string; age: number; }
این یک رابط برای a تعریف می کند Person
شیء با الف name
خاصیت نوع string
و یک age
خاصیت نوع number
.
3. کلاس ها
کلاس ها یک مفهوم اصلی در برنامه نویسی شی گرا هستند و TypeScript از آنها پشتیبانی کامل دارد. کلاسها به توسعهدهندگان اجازه میدهند تا طرحهایی را برای اشیایی که ویژگیها و روشهای مشابهی دارند تعریف کنند. آنها همچنین می توانند شامل سازنده ها، اصلاح کننده های دسترسی و وراثت باشند.
مثلا،
class Animal {
name: string;
constructor(name: string) {
this.name = name;
}
}
این یک را تعریف می کند Animal
کلاس با الف name
ویژگی و سازنده ای که مقدار را تنظیم می کند name
ویژگی.
4. ژنریک
Generics یک ویژگی قدرتمند در TypeScript است که امکان ایجاد کدهای قابل استفاده مجدد را فراهم می کند. آنها به توسعه دهندگان اجازه می دهند توابع و کلاس هایی ایجاد کنند که می توانند با انواع داده ها کار کنند.
مثلا،
function identity<T>(arg: T): T {
return arg;
}
این یک ژنریک را تعریف می کند identity
تابعی که همان مقداری را که به آن ارسال شده برمی گرداند.
5. Enums
Enums راهی برای تعریف مجموعه ای از مقادیر نامگذاری شده است. آنها می توانند خوانایی کد را بهبود بخشند و به کشف خطاها کمک کنند.
برای مثال،
enum Color {
Red, Green, Blue
}
این یک را تعریف می کند Color
enum با سه مقدار نامگذاری شده: Red
، Green
، و Blue
. مقادیر Enum را می توان مقادیر عددی خاصی نیز نسبت داد، مانند:
enum Color {
Red = 1,
Green = 2,
Blue = 4
}
6. استنتاج را تایپ کنید
استنتاج نوع یکی از ویژگیهای TypeScript است که به توسعهدهندگان اجازه میدهد تا حاشیهنویسیهای نوع را در شرایط خاص حذف کنند.
مثلا،
let age = 27;
این به طور خودکار به عنوان یک استنباط می شود number
تایپ کنید زیرا یک مقدار عددی به آن اختصاص داده شده است. استنتاج نوع همچنین می تواند با پارامترهای تابع و انواع برگشتی استفاده شود، مانند:
function add(a: number, b: number) {
return a + b;
}
7. انواع اتحاد و تقاطع
انواع اتحادیه امکان ترکیب دو یا چند نوع داده را در یک نوع داده است. این می تواند زمانی مفید باشد که یک تابع یا متغیر بتواند چندین نوع داده را بپذیرد.
مثلا،
let age: number | string = 27;
این مشخص می کند که age
متغیر می تواند از نوع باشد number
یا string
. از سوی دیگر، انواع تقاطع، امکان ایجاد یک نوع جدید را فراهم می کند که شامل تمام ویژگی ها و روش های چند نوع است.
مثلا،
type Animal = Dog & Cat;
این یک نوع جدید ایجاد می کند Animal
که تمام خواص و روش های هر دو را دارد Dog
و Cat
انواع
8. تایپ گارد
محافظ های نوع یک ویژگی در TypeScript است که به توسعه دهندگان اجازه می دهد نوع متغیر را در زمان اجرا بررسی کنند. این می تواند هنگام کار با انواع اتحادیه یا موقعیت های دیگری که ممکن است نوع متغیر مشخص نباشد مفید باشد.
برای مثال،
if (typeof age === "number") {
console.log(age * 2);
}
این بررسی می کند که آیا age
متغیر از نوع است number
قبل از انجام عملیات ضرب
9. دکوراتورها
Decorator ها یک ویژگی در TypeScript هستند که امکان اضافه کردن ابرداده به کلاس ها، متدها و ویژگی ها را فراهم می کند. آنها می توانند برای اصلاح رفتار یک کلاس یا ارائه اطلاعات اضافی برای ابزارهایی مانند تحلیلگر کد استفاده شوند.
مثلا،
@deprecated class MyClass {}
این علامت گذاری می کند MyClass
کلاس منسوخ شده است و هنگام استفاده اخطاری ایجاد می کند.
10. ماژول ها
ماژول ها راهی برای سازماندهی کد به اجزای کوچکتر و قابل استفاده مجدد هستند. آنها به توسعه دهندگان این امکان را می دهند تا قسمت های خصوصی و عمومی یک پایگاه کد را تعریف کرده و مؤلفه ها را بین فایل ها وارد و صادر کنند.
مثلا،
// my-class.ts
export class MyClass {}
این صادرات MyClass
کلاس از یک ماژول، در حالی که:
// main.ts
import { MyClass } from "./MyClass";
این واردات MyClass
کلاس به ماژول دیگر
نتیجه
TypeScript یک زبان قدرتمند است که در بین توسعه دهندگان محبوبیت فزاینده ای پیدا می کند. با تسلط بر این 10 مفهوم مهم، توسعه دهندگان می توانند کد کارآمدتر و قابل نگهداری بنویسند. در حالی که مفاهیم و ویژگی های بسیار دیگری در TypeScript وجود دارد، این 10 نقطه شروع عالی برای هر توسعه دهنده ای است که به دنبال یادگیری این زبان است.
منابع
اگر چیزهایی را که یاد گرفتید دوست داشتید، پست های دیگر من را اینجا بررسی کنید.