𝗧𝘆𝗽𝗲𝗦𝗰𝗿𝗶𝗽𝘁 𝗧𝘆𝗽𝗲𝘀 𝗞𝗶 𝗪𝓪ẓ𝗶𝗵𝗮𝘁
TypeScript ایک ٹائپ سسٹم پر انحصار کرتا ہے۔ اس میں مہارت حاصل کرنا بہتر کوڈ لکھنے کی طرف آپ کا پہلا قدم ہے۔
بنیادی ٹائپس (Basic Types)
TypeScript میں JavaScript primitives کے مشابہہ ٹائپس استعمال ہوتے ہیں: • string: متن (text) کے لیے۔ • number: تمام نمبروں (integers اور floats) کے لیے۔ • boolean: true یا false ویلیوز کے لیے۔
ٹائپ انفرنس (Type Inference)
آپ کو ہمیشہ ٹائپ لکھنے کی ضرورت نہیں ہوتی۔ TypeScript اکثر آپ کی فراہم کردہ ویلیو کی بنیاد پر ٹائپ کا اندازہ لگا لیتا ہے۔ اسے 'inference' کہا جاتا ہے۔
ایک اچھا اصول: • لوکل ویری ایبلز (local variables) کے لیے TypeScript کو ٹائپ انفرنس کرنے دیں۔ • فنکشن پیرامیٹرز (function parameters) اور ریٹرن ٹائپس (return types) کے لیے واضح ٹائپس لکھیں۔
Arrays اور Tuples
Arrays ایک ہی ٹائپ کی متعدد ویلیوز کو محفوظ رکھتے ہیں۔
• مثال: let tags: string[] = ["ts", "js"];
Tuples ایسے arrays ہیں جن کی لمبائی مقررہ ہوتی ہے اور ہر پوزیشن کے لیے مخصوص ٹائپس ہوتی ہیں۔
• مثال: let user: [string, number] = ["Ramesh", 31];
Union Types
Union types کا استعمال تب کریں جب ایک ویلیو ایک سے زیادہ ٹائپس کی ہو سکتی ہو۔
• مثال: let id: string | number = "abc123";
خصوصی ٹائپس (Special Types)
چار ایسی ٹائپس جو اکثر مبتدیوں (beginners) کو الجھن میں ڈال دیتی ہیں:
anyیہ ٹائپ چیکنگ کو بند کر دیتا ہے۔ یہ آپ کے کوڈ کو سادہ JavaScript کی طرح کام کرنے پر مجبور کرتا ہے۔ اسے آخری حربے کے طور پر استعمال کریں۔unknownیہanyکا محفوظ ورژن ہے۔ یہ کہتا ہے کہ ویلیو کچھ بھی ہو سکتی ہے، لیکن استعمال کرنے سے پہلے آپ کو ٹائپ چیک کرنی ہوگی۔voidاسے ان فنکشنز کے لیے استعمال کریں جو کوئی ویلیو ریٹرن نہیں کرتے۔neverاسے ان فنکشنز کے لیے استعمال کریں جو کبھی ختم نہیں ہوتے، جیسے کہ وہ جو ایرر (errors) دیتے ہیں یا ان لمیٹڈ لوپس (infinite loops) چلاتے ہیں۔
آپ کے ورک فلو (workflow) کے لیے خلاصہ:
• زیادہ تر ڈیٹا کے لیے primitives استعمال کریں۔
• کوڈ کو صاف ستھرا رکھنے کے لیے inference کا استعمال کریں۔
• لچکدار ان پٹس (flexible inputs) کے لیے union types استعمال کریں۔
• any سے پرہیز کریں۔
• جب آپ غیر یقینی ہوں تو any کے بجائے unknown استعمال کریں۔