TypeScript-இல் பூஜ்ஜியத்திலிருந்து நாயகன் வரை
TypeScript உங்கள் JavaScript குறியீட்டை (code) பாதுகாப்பானதாகவும் எளிதாக நிர்வகிக்கக்கூடியதாகவும் மாற்றுகிறது. இது பிழைகளை முன்கூட்டியே கண்டறிய உதவுகிறது.
TypeScript, JavaScript-இல் static typing-ஐ சேர்க்கிறது. நீங்கள் இதை இயக்கும்போது, இது சாதாரண JavaScript-ஆக மாறிவிடும்.
பொதுவான அடிப்படை வகைகள்:
- number: அனைத்து எண்களுக்கும்
- boolean: true அல்லது false
- string: உரைகளுக்கு (text)
- symbol: தனித்துவமான ID-களுக்கு
- bigint: மிகப்பரிய எண்களுக்கு
Type Annotations:
let name: string = "Alice";
let age: number = 30;
Arrays மற்றும் Objects:
let fruits: string[] = ["apple", "banana"];
let user: { name: string; age: number } = { name: "Bob", age: 25 };
Functions:
function greet(name: string): string {
return "Hello, " + name;
}
ஒரு function எதையும் திருப்பி அனுப்பவில்லை என்றால் (returns nothing), void-ஐப் பயன்படுத்தவும்:
function logMessage(): void {
console.log("Message sent");
}
மேம்பட்ட கருவிகள் (Advanced Tools):
- Type Aliases: உங்களுக்கென சொந்தமான வகைகளை (types) உருவாக்கலாம்.
- Interfaces: objects-இன் அமைப்பை (shape) வரையறுக்கலாம்.
- Enums: பெயரிடப்பட்ட மாறிகளின் (named constants) தொகுப்பைப் பயன்படுத்தலாம்.
- Tuples: குறிப்பிட்ட வகைகளைக் கொண்ட நிலையான நீளம் கொண்ட arrays.
- Generics: பல வகைகளுடன் செயல்படும் மீண்டும் பயன்படுத்தக்கூடிய குறியீட்டை (reusable code) உருவாக்கலாம்.
- Utility Types: வகைகளை மாற்றியமைக்க Partial, Pick, அல்லது Record ஆகியவற்றைப் பயன்படுத்தலாம்.
உங்கள் பணிப்பாய்விற்கான (workflow) சிறந்த நடைமுறைகள்:
- எளிய aliases மற்றும் primitives-களுக்கு
type-ஐப் பயன்படுத்தவும். - object அமைப்புகளுக்கு
interface-ஐப் பயன்படுத்தவும். any-ஐப் பயன்படுத்துவதைத் தவிர்க்கவும். இது உங்கள் குறியீட்டின் பாதுகாப்பைக் குலைக்கும்.- வகை இன்னும் தெரியவில்லை என்றால்
unknown-ஐப் பயன்படுத்தவும். - வகைகள் தெளிவாகத் தெரிந்தால், compiler-ஐத் தானாகவே கண்டறிய விடவும்.
- தெளிவுக்காக உங்கள் APIs-இல் annotations-களைச் சேர்க்கவும்.
இந்தத் கருவிகளில் தேர்ச்சி பெறுவது பெரிய மற்றும் நிலையான பயன்பாடுகளை (applications) உருவாக்க உங்களுக்கு உதவும்.
ஆதாரம்: https://dev.to/miasalazar/from-zero-to-hero-in-typescript-425j