
تایپاسکریپت، ناجی جاوا اسکریپت در دوران بلوغ
No se pudo agregar al carrito
Add to Cart failed.
Error al Agregar a Lista de Deseos.
Error al eliminar de la lista de deseos.
Error al añadir a tu biblioteca
Error al seguir el podcast
Error al dejar de seguir el podcast
-
Narrado por:
-
De:
در قسمت قبل، شاهد رنسانس جاوااسکریپت بودیم. زبانی که به لطف jQuery و Node.js از دوران تاریک خود خارج شد و با استاندارد ES6 به یک ابزار برنامهنویسی تمامعیار تبدیل شد. جاوااسکریپت حالا همهجا بود: از مرورگر تا سرور و اپلیکیشنهای موبایل. اما این موفقیت و رشد، چالشهای جدیدی را به همراه آورد. شرکتهای غولپیکری مانند گوگل، فیسبوک و مایکروسافت شروع به ساختن اپلیکیشنهای عظیم و پیچیده با جاوااسکریپت کردند و اینجا بود که یکی از نقاط قوت اصلی این زبان، یعنی ماهیت «پویای» آن، کمکم به یک پاشنه آشیل تبدیل شد. این انعطافپذیری که در پروژههای کوچک یک مزیت بود، در مقیاس بزرگ به هرجومرج و خطاهای زمان اجرا (Runtime Errors) منجر میشد. خطای معروف Cannot read property ‘x’ of undefined به کابوس برنامهنویسان تبدیل شده بود. در این قسمت از «کُدکست»، به بررسی این «دردهای رشد» جاوااسکریپت میپردازیم و داستان ظهور یک ناجی غیرمنتظره را روایت میکنیم: تایپاسکریپت (TypeScript). خواهیم دید که چطور مایکروسافت، با رهبری اسطورهای به نام آندرس هایلسبرگ (Anders Hejlsberg)، خالق زبان #C، با یک ایده درخشان وارد میدان شد. آنها تایپاسکریپت را نه به عنوان یک زبان جدید، بلکه به عنوان یک «ابرمجموعه» (Superset) از جاوااسکریپت معرفی کردند؛ یک لایه اختیاری از «سیستم انواع استاتیک» که به برنامهنویسان اجازه میداد خطاها را قبل از اجرای کد شناسایی کنند. در این گفتگو، مفاهیم کلیدی تایپاسکریپت را با مثالهای ساده توضیح میدهیم: چرا ماهیت «داینامیک» جاوااسکریپت در پروژههای بزرگ به مشکل تبدیل میشود؟ تایپاسکریپت چیست و مفهوم «ابرمجموعه» به چه معناست؟ چگونه تایپاسکریپت با افزودن «انواع داده» (Types) به کد، از بروز خطاهای رایج جلوگیری میکند؟ مزایای اصلی استفاده از تایپاسکریپت: بهبود ابزارهای توسعه (Autocomplete)، مستندسازی خودکار کد، و سادهسازی نگهداری و بازسازی (Refactoring) پروژههای بزرگ. فرآیند «ترادیسی» (Transpilation) چیست و چگونه کدهای تایپاسکریپت به جاوااسکریپت خالص تبدیل میشوند تا برای مرورگرها قابل فهم باشند؟ این قسمت، داستان بلوغ یک زبان است؛ داستانی که نشان میدهد چگونه یک جامعه میتواند با ساخت ابزارهای جدید، بر محدودیتهای خود غلبه کند و چگونه یک شرکت میتواند از یک رقیب به یک توانمندساز بزرگ در دنیای متنباز تبدیل شود. با ما همراه باشید تا ببینید جاوااسکریپت چگونه به کمک برادر بزرگتر و منظمتر خود، برای ساخت پیچیدهترین اپلیکیشنهای دنیا آماده شد.