TypeScript ਵਿੱਚ ਜ਼ੀਰੋ ਤੋਂ ਹੀਰੋ ਤੱਕ

TypeScript ਤੁਹਾਡੇ JavaScript ਕੋਡ ਨੂੰ ਵਧੇਰੇ ਸੁਰੱਖਿਅਤ ਬਣਾਉਂਦਾ ਹੈ। ਇਹ ਕੋਡ ਚਲਾਉਣ ਤੋਂ ਪਹਿਲਾਂ ਬੱਗ (bugs) ਲੱਭਣ ਵਿੱਚ ਤੁਹਾਡੀ ਮਦਦ ਕਰਦਾ ਹੈ। ਇਹ ਗਾਈਡ ਬੁਨਿਆਦੀ ਤੋਂ ਲੈ ਕੇ ਉੱਨਤ (advanced) ਸੰਕਲਪਾਂ ਤੱਕ ਦੇ ਰਾਹ ਨੂੰ ਕਵਰ ਕਰਦੀ ਹੈ।

TypeScript, JavaScript ਵਿੱਚ ਸਟੈਟਿਕ ਟਾਈਪਿੰਗ (static typing) ਜੋੜਦਾ ਹੈ। ਇਹ ਤੁਹਾਡੇ ਕੋਡ ਨੂੰ ਬ੍ਰਾਊਜ਼ਰ ਲਈ ਸਾਧਾਰਨ JavaScript ਵਿੱਚ ਬਦਲ ਦਿੰਦਾ ਹੈ।

ਬੁਨਿਆਦੀ ਟਾਈਪਸ (Basic Types)

  • number: ਪੂਰਨ ਅੰਕ (integers) ਜਾਂ ਦਸ਼ਮਲਵ (decimals)
  • boolean: true ਜਾਂ false
  • string: ਟੈਕਸਟ
  • symbol: ਵਿਲੱਖਣ ਪਛਾਣਕਰਤਾ (unique identifiers)
  • bigint: ਵੱਡੇ ਪੂਰਨ ਅੰਕ

ਟਾਈਪ ਐਨੋਟੇਸ਼ਨਜ਼ (Type Annotations) ਤੁਸੀਂ ਵੇਰੀਏਬਲ ਬਣਾਉਣ ਸਮੇਂ ਟਾਈਪਸ ਪਰਿਭਾਸ਼ਿਤ ਕਰਦੇ ਹੋ: let name: string = "Alice"; let age: number = 30;

ਐਰੇਅਜ਼ (Arrays) ਅਤੇ ਆਬਜੈਕਟਸ (Objects)

  • Arrays: let fruits: string[] = ["apple", "banana"];
  • Objects: let user: { name: string; age: number } = { name: "Bob", age: 25 };

ਫੰਕਸ਼ਨਜ਼ (Functions) ਤੁਸੀਂ ਦੱਸ ਸਕਦੇ ਹੋ ਕਿ ਇੱਕ ਫੰਕਸ਼ਨ ਕੀ ਲੈਂਦਾ ਹੈ ਅਤੇ ਕੀ ਵਾਪਸ (return) ਕਰਦਾ ਹੈ। ਜੇਕਰ ਫੰਕਸ਼ਨ ਕੁਝ ਵੀ ਵਾਪਸ ਨਹੀਂ ਕਰਦਾ, ਤਾਂ void ਦੀ ਵਰਤੋਂ ਕਰੋ। function greet(name: string): string { return "Hello, " + name; }

ਉੱਨਤ ਸੰਰਚਨਾਵਾਂ (Advanced Structures)

  • Type Aliases: ਕਿਸੇ ਟਾਈਪ ਲਈ ਇੱਕ ਕਸਟਮ ਨਾਮ ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ।
  • Interfaces: ਇੱਕ ਆਬਜੈਕਟ ਦੀ ਸ਼ੇਪ (shape) ਪਰਿਭਾਸ਼ਿਤ ਕਰੋ।
  • Enums: ਨਾਮ ਕੀਤੇ ਕੰਸਟੈਂਟਸ (constants) ਦਾ ਇੱਕ ਸਮੂਹ ਬਣਾਓ।
  • Tuples: ਨਿਸ਼ਚਿਤ ਗਿਣਤੀ ਦੇ ਐਲੀਮੈਂਟਸ ਅਤੇ ਖਾਸ ਟਾਈਪਸ ਵਾਲਾ ਇੱਕ ਐਰੇਅ ਬਣਾਓ।

ਗੁੰਝਲਦਾਰ ਲੌਜਿਕ (Complex Logic)

  • Union Types: ਇੱਕ ਵੇਰੀਏਬਲ ਨੂੰ ਇੱਕ ਤੋਂ ਵੱਧ ਟਾਈਪ ਰੱਖਣ ਦੀ ਇਜਾਜ਼ਤ ਦਿਓ।
  • Intersection Types: ਕਈ ਟਾਈਪਸ ਨੂੰ ਇੱਕ ਵਿੱਚ ਜੋੜੋ।
  • Generics: ਮੁੜ ਵਰਤੋਂ ਯੋਗ (reusable) ਕੰਪੋਨੈਂਟਸ ਬਣਾਓ ਜੋ ਕਈ ਟਾਈਪਸ ਨਾਲ ਕੰਮ ਕਰਦੇ ਹਨ।
  • Utility Types: ਟਾਈਪਸ ਨੂੰ ਬਦਲਣ ਲਈ Partial ਜਾਂ Pick ਵਰਗੇ ਬਿਲਟ-ਇਨ ਟੂਲਸ ਦੀ ਵਰਤੋਂ ਕਰੋ।

ਵਧੀਆ ਅਭਿਆਸ (Best Practices)

  • ਸਧਾਰਨ ਐਲੀਏਸ (aliases) ਅਤੇ ਪ੍ਰimitives ਲਈ type ਦੀ ਵਰਤੋਂ ਕਰੋ।
  • ਆਬਜੈਕਟ ਸ਼ੇਪਸ ਲਈ interface ਦੀ ਵਰਤੋਂ ਕਰੋ।
  • any ਦੀ ਵਰਤੋਂ ਕਰਨ ਤੋਂ ਬਚੋ। ਇਹ TypeScript ਦੀ ਸੁਰੱਖਿਆ ਨੂੰ ਖਤਮ ਕਰ ਦਿੰਦਾ ਹੈ।
  • ਜਦੋਂ ਤੁਸੀਂ ਟਾਈਪ ਬਾਰੇ ਅਨਿਸ਼ਚਿਤ ਹੋਵੋ, ਤਾਂ any ਦੀ ਬਜਾਏ unknown ਦੀ ਵਰਤੋਂ ਕਰੋ।
  • ਜਦੋਂ ਕੋਡ ਸਪੱਸ਼ਟ ਹੋਵੇ, ਤਾਂ ਕੰਪਾਈਲਰ ਨੂੰ ਟਾਈਪਸ ਦਾ ਅਨੁਮਾਨ (infer) ਲਗਾਉਣ ਦਿਓ।

TypeScript ਤੁਹਾਨੂੰ ਭਰੋਸੇ ਨਾਲ ਵੱਡੀਆਂ ਐਪਲੀਕੇਸ਼ਨਾਂ ਬਣਾਉਣ ਵਿੱਚ ਮਦਦ ਕਰਦਾ ਹੈ।

ਸਰੋਤ: https://dev.to/miasalazar/from-zero-to-hero-in-typescript-425j