مارک پلاس

تکنولوژی نوین اینترنتی

تایپ‌اسکریپت

دسته‌بندی‌ها

تایپ‌اسکریپت

📘 تایپ‌اسکریپت (TypeScript)


🔰 مقدمه

تایپ‌اسکریپت (TypeScript) یک زبان برنامه‌نویسی متن‌باز است که بر پایه جاوااسکریپت ساخته شده و امکاناتی مانند تایپ ایستا (Static Typing)، کلاس‌ها، رابط‌ها (Interfaces) و مدول‌ها (Modules) را به آن اضافه می‌کند. TypeScript توسط مایکروسافت توسعه داده شده و در پروژه‌های بزرگ باعث بهبود خوانایی، مقیاس‌پذیری و نگهداری کد می‌شود.


⚙️ تفاوت TypeScript با JavaScript

ویژگیJavaScriptTypeScript
تایپینگدینامیک (dynamic)ایستا (static)
کامپایل شدننیازی نیستباید به JS کامپایل شود
پشتیبانی از کلاس‌ها و اینترفیس‌هامحدودپیشرفته و کامل
خطایابی در زمان اجرابلهبسیاری از خطاها در زمان کامپایل
مناسب برای پروژه‌های بزرگکمتربله، بسیار مناسب‌تر

✅ نکته: هر فایل TypeScript معمولاً با پسوند .ts ذخیره می‌شود.


✨ مزایای استفاده از TypeScript

  • کاهش خطاها در زمان توسعه

  • کدخوانی بهتر برای تیم‌ها

  • توسعه بهتر پروژه‌های بزرگ و مقیاس‌پذیر

  • پشتیبانی عالی توسط IDEها (مانند VS Code)

  • امکانات جدید زبان مثل Enum، Interface، Generic و Decorator

  • تبدیل شدن به جاوااسکریپت استاندارد پس از کامپایل


🧱 مفاهیم پایه در TypeScript

1. تعریف نوع داده (Type Annotation)

ts
let name: string = "Ali"; let age: number = 30; let isActive: boolean = true;

2. آرایه و Tuple

ts
let numbers: number[] = [1, 2, 3]; let person: [string, number] = ["Sara", 28];

3. Enum

ts
enum Role { Admin, User, Guest } let userRole: Role = Role.Admin;

4. Interface

ts
interface Person { name: string; age: number; } const person1: Person = { name: "Reza", age: 25 };

5. Function با تایپ

ts
function greet(name: string): string { return `Hello, ${name}`; }

6. Generic

ts
function identity<T>(value: T): T { return value; } let result = identity<string>("TypeScript");

7. Class و Inheritance

ts
class Animal { name: string; constructor(name: string) { this.name = name; } speak() { console.log(`${this.name} makes a noise`); } } class Dog extends Animal { bark() { console.log(`${this.name} barks`); } } const dog = new Dog("Rex"); dog.bark();

🧰 ابزارهای کاربردی TypeScript

ابزارکاربرد
tscکامپایلر TypeScript برای تبدیل کد TS به JS
VS Codeپشتیبانی قدرتمند از TS با IntelliSense
ts-nodeاجرای مستقیم فایل‌های .ts بدون نیاز به کامپایل
Webpack + ts-loaderاستفاده از TypeScript در پروژه‌های Frontend
TypeORMORM نوشته‌شده با TypeScript برای پایگاه‌داده‌ها

🚀 استفاده از TypeScript در پروژه‌های واقعی

📦 با React

tsx
interface Props { title: string; } const Header: React.FC<Props> = ({ title }) => { return <h1>{title}</h1>; };

📦 با Node.js

ts
import express from "express"; const app = express(); app.get("/", (req, res) => { res.send("Hello TypeScript!"); }); app.listen(3000, () => console.log("Server running..."));

🧪 نکات پیشرفته

  • Union Types

ts
let id: string | number; id = 10; id = "abc";
  • Optional Properties

ts
interface Product { name: string; price?: number; }
  • Type Assertion

ts
let someValue: any = "Hello"; let strLength: number = (someValue as string).length;

🧳 جمع‌بندی

TypeScript ابزاری قدرتمند برای توسعه‌دهندگان جاوااسکریپت است که با اضافه کردن تایپ ایستا و قابلیت‌های پیشرفته، تجربه کدنویسی را حرفه‌ای‌تر، امن‌تر و قابل نگهداری‌تر می‌کند. امروزه بسیاری از پروژه‌های بزرگ مانند Angular، NestJS، و حتی پروژه‌های React از TypeScript بهره می‌برند.

محتوای مرتبط

پست‌های مرتبط