عشق و نفرت در تایپ اسکریپت. چرا با وجود سختی‌ها عاشقش هستیم؟

عشق و نفرت در تایپ اسکریپت. چرا با وجود سختی‌ها عاشقش هستیم؟

تایپ اسکریپت : یه رابطه‌ی سمیِ جذاب (چرا با وجود غر زدن، ولش نمیکنم؟)

همیشه ازم میپرسن: «یونس، واقعاً لازمه برای همه چیز از تایپ‌اسکریپت استفاده کنیم؟ اذیت نمیکنه؟» جواب من همیشه اینه: «اذیت میکنه، ولی مگه زندگی بدون چالش مزه میده؟» 😊

تایپ‌اسکریپت مثل اون دوست وسواسیه که موقع کد زدن مدام میاد بالای سرت و میگه: «مطمئنی این آبجکت null نیست؟ واقعاً میخوای این متغیر رو به اون تابع پاس بدی؟» اوایل از دستش کلافه‌ای، ولی بعد از یه مدت میبینی بدون اون، انگار داری تو تاریکی با چشم‌ بسته کد میزنی. 😅

اگر این تجربه‌ها برات آشناست، تبریک میگم 👏 تو رسماً وارد باشگاه «زجرکشیده‌های تایپ‌اسکریپت» شدی 🎊🕺

💠 تو یه توسعه‌دهنده تایپ‌اسکریپت هستی، اگر…

  • یه بار تصمیم گرفتی یه پروژه کوچیک جاوااسکریپت رو Typeایی کنی و فکر کردی «نهایتاً ۲ ساعت طول میکشه». سه روز گذشته و هنوز داری با interface و type کشتی میگیری. 😅
  • وقتی با ارور Property 'x' does not exist on type 'y' مواجه شدی، به جای دیباگ، یه as any نوشتی و با وجدان درد شدید، به کدنویسی ادامه دادی . (ما همه‌مون این کار رو کردیم، نگران نباش 😉)
  • نیم ساعت وقت گذاشتی تا یه Generic خیلی پیچیده بنویسی که بتونه هر چیزی رو هندل کنه، فقط برای اینکه IDE (ویرایشگر کدت) بتونه برات Autocomplete کنه. (و بعدش از شدت حس باهوش بودن، به خودت افتخار کردی 🤩).

برج جنگا ساخته‌شده از بلوک‌های کد که با جادوی تایپ اسکریپت پایدار مونده : نقش تایپ اسکریپت در جلوگیری از فروپاشی پروژه

💠 اون لحظه طلایی «آها 🙂‍↕»

میدونی کی میفهمی واقعاً با تایپ‌اسکریپت رفیق شدی؟ وقتی که:

  • یه ریفکتور سنگین زدی، کل فایل‌های پروژه رو زیر و رو کردی، و بعد که برنامه رو اجرا کردی… بدون هیچ باگ Runtime کار کرد. اون لحظه حس می‌کنی پادشاه دنیای نرم‌افزاری 👑
  • وقتی به کدهایی که ۶ ماه پیش نوشتی نگاه میکنی و با اینکه اون موقع خیلی با تایپ‌ها جنگیدی، الان دقیقاً میفهمی هر ورودی و خروجی چیه، بدون اینکه نیاز باشه کل فایل رو بخونی و این مزایای استفاده از تایپ اسکریپت هست.

برنامه‌نویس  در حال رمزگشایی کتیبه باستانی تایپ اسکریپت با تایپ‌های تو در تو : پیچیدگی و زیبایی سیستم تایپ تایپ اسکریپت

💠 لحظات تاریک « یادگیری تایپ اسکریپت و استمرار داشتن 💪»

البته همیشه هم گل و بلبل نیست. تایپ‌اسکریپت هم لحظات سمی خودش رو داره:

  • وقتی مجبوری یه تایپ خیلی تو در تو (Nested) رو تعریف کنی که انگار داره باهات زبان باستانی صحبت میکنه.
  • زمانی که ساعتها روی یه ارور قفل کردی، بعد فهمیدی یه ? (Optional Chaining) یادت رفته بذاری.
  • وقتی با کتابخونه‌هایی کار میکنی که اصلاً Type Definition ندارن و باید خودت بشینی براشون دستی تایپ تعریف کنی. (اینجا دقیقاً همون جاییه که آدم با خودش میگه: «چرا اصلاً رفتم سمت برنامه نویسی؟! 👺»)

برنامه‌نویس آینده با سپر تایپ اسکریپت جلوی برنامه‌نویس امروز را برای جلوگیری از پوش کردن کد خراب می‌گیرد : اهمیت کیفیت کد در تایپ اسکریپت

💠 حرف آخر. چرا هنوز استفاده‌اش میکنیم؟

راستش رو بخواین، تایپ‌اسکریپت اومده تا جلوی «من آینده» رو بگیره 🤗. اون «من آینده»ای که خسته‌ هست، عجله داره و میخواد یه باگ احمقانه رو به تولید (Production) بفرسته.

تایپ‌اسکریپت شاید در لحظه سرعتت رو کم کنه، ولی در بلندمدت، سرعت رشد و کیفیت محصولت رو به شدت بالا میبره. مثل وقتی که توی بازی‌ها، کلی وقت می‌ذاری برای آپگرید کردن تجهیزات. اولش کندی، ولی جلوتر که میری، مبارزه با غول مرحله آخر رو خیلی راحت‌تر رد می‌کنی. ⚔️


🚀 اگر تا اینجای مقاله با خودت گفتی :

«اوکی… پس تایپ اسکریپت فقط ادا درآوردن ویرایشگر کدم نیست و واقعاً میتونه زندگیمو نجات بده 😅»

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

من توی دوره « تایپ اسکریپت پلاس : از صفر تا تسلط » دقیقاً سعی کردم چیزی رو آموزش بدم که خودم دوست داشتم سال‌ها پیش یاد بگیرم: نه فقط سینتکس و تایپ‌ها، بلکه طرز فکر واقعی کار با تایپ اسکریپت در پروژه‌های واقعی.

اگر دوست داری از مرحلهٔ any‍‍ بزن رد شو 😭 برسی به مرحلهٔ این Type inference واقعاً قشنگ بود 😎

این دوره دقیقاً برای تو ساخته شده 👇

دوره تایپ اسکریپت پلاس : از صفر تا تسلط 🚀 از استاد یونس قربانی


عشق و نفرت در تایپ اسکریپت. چرا با وجود سختی‌ها عاشقش هستیم؟ یونس قربانی

شما چی؟

بدترین خطایی که توی تایپ‌اسکریپت داشتی و کلی سرش کچل شدی چی بوده؟ تو کامنت‌ها برام بنویس (اصلاً نگران نباش، همه‌مون اینجا تو یه قایق هستیم 😊😅)

دیدگاه‌ها ۰
ارسال دیدگاه جدید