از مفاهیم و مقدمات تایپاسکریپت تا حل چالشهای صنعتی را در یک دوره فرا بگیرید.


۹۱۰+
کدآموز
۲۰+
تمرین عملی
۷۵+
درسنامه آموزشی
به همراه گواهی معتبر
۶۰ روز مهلت گذراندن دوره
از مفاهیم و مقدمات تایپاسکریپت تا حل چالشهای صنعتی را در یک دوره فرا بگیرید.
۴۲۹,۰۰۰+
وبسایت مبتنی بر تایپاسکریپت در سراسر دنیا
سومین
زبان پرطرفدار جهان برای یادگیری برنامهنویسی در سال ۲۰۲۱
۱۳۰,۰۰۰ دلار
میانگین درآمد سالانه یک TypeScript Developer در آمریکا
محبوبترین
زبان برنامهنویسی در حوزهٔ صنعتی توسعه فرانتاند وب
معرفی
حامیان
مخاطبین
پیشنیازها
سرفصلها
پروژه
اساتید
0 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 10 1
امروزه برنامهنویسان برای طراحی سایت از جاوااسکریپت استفاده میکنند، اما این زبان گاهی اوقات کم و کاستیهایی دارد و باعث توسعه زبان تایپاسکریپت که ورژن بهروز و تکمیلشدهی جاوااسکریپت است و ویژگیهای بیشتری دارد، شده است. در این دوره آشنایی کاملی از تایپاسکریپت بدست خواهید آورد و با کاربردهای آن در تکنولوژیها و شرکتهای مختلف آشنا خواهید شد.
این دوره مناسب شما است اگر...
• میخواهید TypeScript را به صورت عملی و یکبار برای همیشه به شکل اصولی بیاموزید.
• علاقهمندید که رزومه کاری پُرباری برای خودتان بسازید تا بیشتر دیده شوید.
• برای پروژههای شخصی، دانشگاهی و یا کاری خود نیاز به یادگیری سریع تایپاسکریپت دارید.
• مشتاقید به بازار پردرآمد برنامهنویسی وارد شده و آیندهی شغلی خود را رقم بزنید.
این دوره مناسب شما نیست اگر...
• میخواهید TypeScript را به طور سطحی و گذرا بیاموزید.
• هنوز برای آیندهی شغلیتان تصمیم جدی نگرفتهاید.
• تجربهی عملی چندین هزار خط کدنویسی برایتان ارزشی ندارد.
• حاضر نیستید در هفته ۶ ساعت برای یادگیری، پیشرفت و رشد درآمد شخصیتان زمان صرف کنید.
پبشنیازها
لازم است...
علاقه و پشتکار داشته باشید.
با مقدمات فرانتاند (CSS ،HTML و JS) آشنا باشید.
لازم نیست...
در رشتهی کامپیوتر تحصیل کرده باشید.
دانش ریاضی قوی داشته باشید.
درسنامه
ویدئو
تمرین
اهداف فصل
درسنامه
تفاوت تایپها در تایپاسکریپت و جاوااسکریپت
درسنامه
آشنایی با تایپهای اصلی
درسنامه
آشنایی با توابع و تایپ خروجی | Functions
درسنامه
خوشآمد گویی
۱۰۰ امتیاز
تمرین
آشنایی با آرایهها | Arrays
درسنامه
آرایهها
۱۰۰ امتیاز
تمرین
جستجوی دودویی
۱۵۰ امتیاز
تمرین
آشنایی با تاپلها | Tuples
درسنامه
آشنایی با مقادیر لیست شده | Enums
درسنامه
چهار عمل اصلی
۱۰۰ امتیاز
تمرین
آشنایی با آبجکتها | Objects
درسنامه
کار با آبجکت
۱۰۰ امتیاز
تمرین
اهداف فصل
درسنامه
تایپهای پیشرفته | any, never, unknown
درسنامه
آشنایی با اینترفیسها | interfaces
درسنامه
تایپهای شخصیسازی شده | Type Aliases
درسنامه
استخدام
۱۰۰ امتیاز
تمرین
تفاوت Interfaces و Types
درسنامه
دقیقتر کردن تایپها | Literal Types
درسنامه
اجتماع تایپها | Union Types
درسنامه
مساحت یاب
۱۰۰ امتیاز
تمرین
ادغام تایپها | Intersection Types
درسنامه
دانشگاه
۱۰۰ امتیاز
تمرین
اعلان تایپها | Type Assertions
درسنامه
آشنایی با Index Signature
درسنامه
زنجیر اختیاری | Optional Chaining
درسنامه
آشنایی با Nullish operator
درسنامه
لایکهای اینستاگرام
۱۰۰ امتیاز
تمرین
کامپایلر تایپاسکریپت | TypeScript Compiler
درسنامه
پیکربندی کامپایلر تایپاسکریپت | tsconfig.json
درسنامه
اهداف فصل
درسنامه
شیوههای برنامهنویسی | Programming paradigms
درسنامه
برنامهنویسی تابعی چیست؟
درسنامه
توابع مرتبه بالا | Higher-Order Functions
درسنامه
استخراج اعداد
۱۰۰ امتیاز
تمرین
حفظ کردن مقدار یک تابع | Memoization
درسنامه
غیر قابل تغییر شدن آبجکت و آرایه
درسنامه
تغییرناپذیری
۱۰۰ امتیاز
تمرین
اضافه بار کردن در توابع | Overloading
درسنامه
نمایش پیام
۱۰۰ امتیاز
تمرین
ماژولها | Modules
درسنامه
مرور مطالب فصل
۱۰۰ امتیاز
تمرین
اهداف فصل
درسنامه
برنامهنویسی شیءگرا چیست؟
درسنامه
کلاسها و توابع سازنده آنها
درسنامه
مدیریت محصول
۱۰۰ امتیاز
تمرین
متغیرهای اختیاری و readonly
درسنامه
کنترل دسترسی | Access Modifiers
درسنامه
عمومی یا خصوصی
۱۰۰ امتیاز
تمرین
متدهای Getter و Setter
درسنامه
مقادیر Static
درسنامه
حساب بانکی
۱۰۰ امتیاز
تمرین
ارثبری | Inheritance
درسنامه
مساحت دایره
۱۰۰ امتیاز
تمرین
بازنویسی متدها | Method Overriding
درسنامه
چندریختی | Polymorphism
درسنامه
متدها و کلاسهای انتزاعی | Abstract Classes & methods
درسنامه
مرور مطالب فصل
۱۰۰ امتیاز
تمرین
اهداف فصل
درسنامه
چرا به Generic ها نیاز داریم؟
درسنامه
تایپهای سودمند | Utility Types
درسنامه
توابع جنریک | Generic Functions
درسنامه
اینترفیسهای جنریک | Generic Interfaces
درسنامه
نگاشت
۱۰۰ امتیاز
تمرین
کلاسهای جنریک | Generic Classes
درسنامه
ارثبری در کلاسهای جنریک | Extending Generic Classes
درسنامه
محدود کردن جنریک | Generic Constraints
درسنامه
اپراتور Keyof
درسنامه
تایپهای سودمند اختصاصی | Mapped Types
درسنامه
جیسون تایپ
۱۰۰ امتیاز
تمرین
اعتبارسنجی
۱۵۰ امتیاز
تمرین
نگاهی به پروژه
درسنامه
شروع کار با VSCode Extension
درسنامه
QMark
۲۵۰ امتیاز
تمرین
اهداف فصل
درسنامه
ساخت پروژه ریاکت با Vitejs | CRA
درسنامه
ایجاد کامپوننت و اینترفیس prop ها
درسنامه
استفاده از useState
درسنامه
استفاده از useReducer
درسنامه
پایتخت
۱۰۰ امتیاز
تمرین
استفاده از Axios و ارسال درخواست به API
درسنامه
کوییز
۱۰۰ امتیاز
تمرین
استفاده از context
درسنامه
استفاده از useRef
درسنامه
رویدادها | Events
درسنامه
کار با DTO ها در تایپاسکریپت
درسنامه
پیش گفتار
درسنامه
بررسی OOP در Angular و پورتال مشتریان ایرانسرور
درسنامه
جنریکها در پورتال مشتریان ایرانسرور
درسنامه
لیست دامنههای ثبت شده در ایرانسرور
درسنامه
محدودسازی تایپ در مقالات زومیت
درسنامه
الگوی سازنده در زومیت
درسنامه
چالش سابمیشن کد در کوئرا
درسنامه
آشنایی با Vue.js
درسنامه
ساخت یک شمارنده در Vue.js
درسنامه
چالش جنریکها در مستربلیط
درسنامه

آموزش کاربردی تایپاسکریپت
۲۰+ تمرین عملی
۷۵+ درسنامه آموزشی
سوالات متداول
شما در هر زمانی که بخواهید میتوانید در دوره ثبتنام و دوره را آغاز کنید.
پیشنیاز این دوره، تسلط به مباحث CSS، HTML و JavaScript است.
اگر هنوز به این مباحث مسلط نیستید، پیشنهاد میکنیم پیش از شروع این دوره، دورهٔ «آموزش پروژهمحور طراحی وب (Front-End)» را بگذرانید.
خیر؛ نیازی نیست!
اگر پیشنیاز دوره (تسلط به مباحث CSS، HTML و JavaScript) را داشته باشید، میتوانید در این دوره شرکت کنید.
بله؛ شما میتوانید از درسنامههایی که از قبل بلد هستید سریع بگذرید، اما در نکات گفته شده در درسنامهها موارد بسیاری وجود دارد که میتواند دانش شما را تکمیل کند؛ پس پیشنهاد میکنیم که آنها را هم مطالعه کنید.
همچنین حتما میدانید که هرچقدر در برنامهنویسی تمرین کنیم، باز هم کافی نیست؛ پس پیشنهاد میکنیم که تمرینات مربوط به این مباحث را نیز حل کنید تا یادگیری کاملی داشته باشید.
محتوای دوره به صورت درسنامههای متنی و در بعضی قسمتها ویدیوهای آموزشی میباشد.
پس از درسنامهها، نوبت به تمرین و حل مسئله میرسد. تعدادی تمرین مطرح میشود که شما دستورات آنها را نوشته و ارسال میکنید. سامانه داوری خودکار Quera در مدت کوتاهی کد شما را تصحیح میکند و نمره میدهد.
در صورتی که نمرهٔ کامل نگرفتید نگران نباشید، میتوانید کد خود را تغییر دهید و دوباره ارسال کنید.
در طول این دوره تمرینهای متعددی وجود دارد تا شما با انجام آنها، مهارت خود را تقویت کنید.
در کنار این تمرینها، داوری آنلاین نیز وجود دارد. یعنی کد ارسالی شما در همان لحظه توسط سیستم، داوری و امتیازدهی میشود تا اشکالاتتان را پیدا کرده و آنها را رفع کنید.
شما بعد از رسیدن به فصل «مفاهیم پیشرفته»، ۶۰ روز فرصت دارید تا دوره را به اتمام برسانید و بعد از اتمام دوره برای همیشه به تمام محتواهای دوره دسترسی خواهید داشت.
همچنین اگر تا انتهای زمانِ گفتهشده نتوانستید دوره را تمام کنید نگران نباشید، چون امکان تمدید دوره وجود دارد!
در انتهای دوره، بهطور جامع با مفاهیم پرکاربرد تایپاسکریپت آشنا خواهید شد و اگر به طراحی وب و حوزهٔ فرانتاند علاقهمند باشید، میتوانید بهعنوان یک برنامهنویس فرانتاند مسیر خود را ادامه دهید.
تایپ اسکریپت (TypeScript) یک زبان برنامهنویسی چندسکویی، متن باز و کامپایلری است که توسط شرکت مایکروسافت توسعه داده شده و پشتیبانی میشود.
تایپ اسکریپت یکی از زیر مجموعههای زبان جاوا اسکریپت است که به شما کمک میکند تا کدهای خود را به روش سادهتری نوشته و سپس با کامپایل کردن آنها خروجی استاندارد کد جاوا اسکریپت را به دست آورید. امکانات پیشرفتهای که مایکروسافت به تایپ اسکریپت افزوده است، آن را به زبانهایی مانند #C، جاوا و… نزدیک ساخته است. تایپ اسکریپت برای توسعهی پروژههای بزرگ جاوا اسکریپت طراحی شده است و فرآیند توسعه را تا حد زیادی ساده میکند.
امروزه تایپ اسکریپت به یکی از محبوبترین زبانهای دنیا تبدیل شده است و روز به روز افراد بیشتری را به خود جذب میکند. اما ممکن است این سوال برای شما نیز پیش آید که چرا باید تایپ اسکریپت را یاد بگیریم و استفاده و یادگیری آن چه مزایایی به همراه دارد؟ با ما تا انتهای این محتوا همراه باشید.
ممکن است این سوال برای توسعهدهندگان پیش آید که چرا با وجود زبان قدرتمندی مانند جاوا اسکریپت، نیاز به زبان دیگری مانند تایپ اسکریپت داریم. اگرچه آموزش جاوا اسکریپت برای درک مفاهیم پایه ضروری است، اما مزایای استفاده از TypeScript زمانی برای ما آشکارتر میشود که در پروژههای بزرگ ملزم به استفاده از جاوا اسکریپت باشیم. TypeScript به عنوان Superset زبان جاوا اسکریپت ارائه شده و هدف آن کدنویسی آسان با کمترین میزان خطا و استفاده از ویژگیهای پیشرفتهی زبانهای شیگرا، جهت نوشتن برنامههای سمت سرور و سمت کاربر است.
از طرفی، با توجه به سرعت بالای رشد و توسعهی زبانهای تحت وب، مرورگرها برای پشتیبانی و انتشار ویژگیهای جدید در موتورهای خود، به مدت زمانی نسبتا طولانی نیاز دارند. اینجاست که بار دیگر TypeScript کارآیی خود را نشان میدهد. TypeScript با کتابخانههای محبوب جاوا اسکریپت مانند React JS و JQuery سازگار است و پس از کامپایل، میتوانید اطمینان حاصل کنید که خروجی نهایی کد شما با انواع مرورگرها سازگار خواهد بود.
تایپ اسکریپت برای توسعهی برنامههای AngularJS 2 توصیه شده است. بنابراین اگر علاقهمند به توسعهی وب اپلیکیشنهای خود با این فریمورک هستید، میبایست ابتدا تایپ اسکریپت را فرا بگیرید زیرا برای نوشتن کدهای JavaScript درون انگولار از کدهای زبان TypeScript استفاده میشود.
اگر اکنون با جاوا اسکریپت آشنایی دارید، مهاجرت به TypeScript برای شما مشکلساز نخواهد بود؛ زیرا سینتکس TypeScript شباهت زیادی با Javascript و EC6 دارد و تمامی کدهای جاوا اسکریپت موجود، در تایپ اسکریپت معتبر شناخته میشوند. حتی میتوانید با تغییر پسوند فایلها از js به ts، از آنها به عنوان کدهای تایپاسکرپیت استفاده کنید.
تایپ اسکریپت چه ویژگیهایی دارد که میتواند به ما ارائه کند و چه خاصیتهایی باعث میشود که از این زبان برنامه نویسی استفاده کنیم؟
تایپ اسکریپت فرایند یادگیری بسیار سادهای داشته و نیازمند دورههای آموزشی طولانی نیست. برای یادگیری تایپ اسکریپت ابتدا نیاز دارید که به خوبی با جاوا اسکریپت آشنایی داشته باشید. در این صورت قابلیت آن را خواهید داشت که با درک بهتری سراغ یادگیری تایپ اسکریپت رفته و از آن استفاده کنید.
تایپ اسکریپت قابلیت اجرا شدن به صورت مستقیم را ندارد چرا که به کدهای صفر و یک تبدیل نمیشود. بجای آن تایپ اسکریپت کدهای خود را به جاوا اسکریپت تبدیل کرده و آن کدها را در نهایت اجرا میکند. این مسئله باعث سازگاری بسیار بیشتر خواهد شد و مهم نیست که شما از چه پلتفرم یا مرورگری استفاده خواهید کرد. اگر ابزار اجرایی شما از جاوا اسکریپت پشتیبانی بعمل بیاورد در نهایت کدهای تایپ اسکریپتی شما نیز به خوبی اجرا خواهند شد.
دومین خاصیتی که این ویژگی به شما میدهد دریافت همان میزان کارایی و پرفورمنس است که از طریق جاوا اسکریپت دریافت میکنید. در واقع سرعت اجرای پروژههای شما بیشتر نخواهد شد، چرا که همانطور گفته شد در نهایت این قطعه کد جاوا اسکریپتی است که اجرا میشود.
جاوا اسکریپت یک زبان برنامه نویسی توانمند و بسیار قدرتمند در زمینه پارادایم شئگرایی نیست و تمام ویژگیهای یک سیستم برنامه نویسی شئگرا مانند جاوا را در اختیارتان قرار نمیدهد. برای در اختیار گرفتن این امکانات شما نیاز به استفاده از یک Superset مانند تایپ اسکریپت دارید.
تایپ اسکریپت به صورت کامل از پارادایم شئگرایی پشتیبانی بعمل آورده و قابلیتهای یک زبان برنامه نویسی شئ گرا را در اختیارتان قرار میدهد. برای برنامه نویسانی که نیاز بسیار زیادی به این شکل از برنامه نویسی دارند تایپ اسکریپت میتواند بسیار کاربردی باشد.
تایپ اسکریپت جدای از امکانات ابتدایی که در زمینه برنامه نویسی شئگرا ارائه میدهد قابلیتهایی مانند دسترسی به Modifierها، کلاسهای انتزاعی، کپسولهسازی، رابطها و... را ارائه میدهد.
یکی از دغدغههای بسیاری از برنامه نویسان که به تازگی وارد فرایند آموزش تایپ اسکریپت میشوند این است که آیا قابلیت استفاده از کتابخانههای دیگر جاوا اسکریپت را خواهند داشت یا خیر؟
همانطور که گفته شد تایپ اسکریپت در نهایت به جاوا اسکریپت تبدیل خواهد شد، بنابراین در زمان اجرا و استفاده از این کتابخانهها در پروژه نهایی هیچ مشکلی نخواهید داشت.
در فرایند توسعه و کدنویسی نیز باید بگویم که اکثر فریمورکهای محبوب و پر استفاده جاوا اسکریپت مانند انگولار، ریاکت، ویوجیاس و اکسپرس به خوبی از توانمندیهای تایپ اسکریپت پشتیبانی بعمل آورده و در این زمینه مشکلی ندارند.
تایپ اسکریپت با الگو گرفتن از زبانهای برنامه نویسی مختلف توسعه یافته و در نتیجه قابلیتهای بسیار زیادی در این زمینه خواهد داشت. یکی از اصلیترین این ویژگیها Dependency Injection است. با پشتیبانی از این قابلیت شما قادر خواهید بود که در بیرون از کلاسها، اشیاء مورد نظرتان را به روشهای متفاوتی ایجاد کنید. تایپ اسکریپت قابلیت ایجاد و بایند کردن اشیاء مستقل از همدیگر را به سادگی میدهد. این موضوع در فرایند تستینگ بسیار کاربردی خواهد بود.
ایستا بودن کدهای تایپ اسکریپت این قابلیت را ارائه میدهد که فرایند کامپایل شدن با مشکلات کمتری انجام شده و مشکلاتی مانند Type Checking اتفاق نیافتد.
تایپ اسکریپت یک زبان برنامه نویسی متن باز بوده و جدای از توسعه توسط شرکت مایکروسافت، از طرف افراد بسیار زیادی در جامعه کاربری متن باز مورد استفاده قرار میگیرد.
از همین جهتها تایپ اسکریپت را میتوان به صورت رایگان و با پشتیبانی کامل از طریق ابزارها و ویرایشگرهای مختلف مورد استفاده قرار داده و در نتیجه میزان کاربردی بودن آن را بالا ببرید. از طرفی دیگر از آنجایی که این زبان یک ابزار متن باز است جامعه کاربری بسیار بزرگی داشته و در نتیجه انجمنهای آنلاین و وبسایتهای حل مشکل بسیاری وجود دارند که میتوانند مورد استفاده قرار گیرند.
در حال حاضر فریمورکهایی نیز وجود دارند که به صورت کامل از تایپ اسکریپت پشتیبانی بعمل آورده و اجازه استفاده از جاوا اسکریپت خام را برای توسعه اپلیکیشنها نمیدهند. انگولار یکی از این فریمورک هاست.
براساس بررسی Stack Overflow Developer در سال 2018، TypeScript به عنوان یک زبان برنامه نویسی، توانسته است محبوبیت بیشتری نسبت به JavaScript به دست آورد. محبوبیت TypeScript در بین توسعه دهندگان JavaScript به این دلیل است که این زبان به شما این امکان را میدهد تا خطاها را قبل از اجرای کد خود مشاهده کنید؛ این قابلیت موجب میشود تا فرآیند خطایابی و رفع آن در زمان کوتاهی انجام شده و تا حد زیادی ساده و آسانتر شود. همچنین آموزش برنامه نویسی با زبان جاوا اسکریپت، به برنامهنویسان این امکان را میدهد تا کدهایی تمیز بنویسند.