TypeScript (TS)
شنو هي TypeScript؟
باختصار شديد: هي JavaScript مع نظام "حماية". الـ TypeScript هي لغة بنتها Microsoft، وهي تعتبر Superset للـ JS. يعني أي كود JS هو كود TS صالح، بس الـ TS تضيف عليه ميزة جوهرية وهي Static Typing (تحديد أنواع البيانات).
المتصفح (Browser) ما يفهم TS، لذلك هي مجرد "أداة للمطورين" تشتغل وقت الكتابة (Development Time)، وبعدين تتحول الى ملفات JS عادية عشان تشتغل بالموقع.
ليش اخترعوها؟ (المشكلة بـ JS)
الـ JavaScript لغة مرنة جداً (Dynamically Typed). هاي المرونة حلوة بالمشاريع الصغيرة، بس تصير كابوس بالمشاريع الكبيرة. بـ JS، تكدر تسوي كوارث بدون ما تدري، مثل:
- تجمع رقم وية نص.
- تحاول توصل لخاصية (Property) ممسوحة من اوبجكت.
- تدز بيانات غلط لدالة معينة.
هاي الأخطاء ما تبين إلا من الموقع يشتغل عند المستخدم و (Runtime Errors).
ليش هي ضرورية ومهمة؟
الـ TypeScript تحل هاي المشكلة جذرياً:
- شبكة أمان (Safety Net): تمنعك ترفع كود بي أخطاء بدائية. اذا الكود بي غلط بالأنواع، الـ VS Code راح يصير أحمر وما يخليك تكمل.
- توثيق تلقائي (Self-Documenting): بالمشاريع الكبيرة، مستحيل تتذكر كل دالة شنو تاخذ وشنو ترجع. الـ TS تخلي الكود يشرح نفسه. مجرد ما تمرر الماوس، تعرف شنو المطلوب.
- تجربة تطوير خرافية: الـ Autocomplete يصير ذكي جداً، يوفر عليك وقت تروح وتقرأ الكود القديم حتى تعرف شكل الداتا.
شلون أتعلمها؟ (الطريقة العملية)
لا تضيع وقتك بحفظ الكورسات النظرية. الـ TypeScript تتعلمها بالممارسة فقط.
أفضل طريقة للتعلم هي "الصدمة":
- بالمشروع الجاي، بدل ما تختار JavaScript، اختار TypeScript (مثلاً
npm create vite@latest my-app -- --template react-ts). - ابدأ اكتب كود عادي مثل ما متعود.
- راح تطلعلك خطوط حمر (Errors) جوة المتغيرات.
- لا تخاف من الخط الأحمر. اقرأ الرسالة، ابحث عنها، وصلحها.
الخطوات العملية للبدء:
- تعلم الأنواع الأساسية فقط (
string,number,boolean). - تعلم شلون تسوي
interfaceبسيط توصف بي شكل الـ Object مالتك. - أي شي ما تعرف نوعه بالبداية، لا تعقد الأمور، استخدم الذكاء الاصطناعي يشرحلك الخطأ، ومع الوقت راح تتعود على الأنواع (Types).
نصيحة: بالبداية راح تحس الـ TS تبطئك وتطلب منك كود زايد. هذا طبيعي. بعد أسبوع واحد، راح تحس بالأمان ومستحيل ترجع تكتب JS "حاف" مرة ثانية.