টাইপস্ক্রিপ্ট টিউটোরিয়াল । পর্ব ১

টাইপস্ক্রিপ্ট, মাইক্রোসফট এর তৈরি জাভাস্ক্রিপ্ট এর সুপার সেট। ওপেন সোর্স এই ল্যাঙ্গুয়েজটি তৈরি হয়েছে জাভাস্ক্রিপ্ট কে আরো পাওয়ারফুল করে তুলতে। স্ট্যাটিক টাইপ ডেফিনেশন এড করার মাধ্যমে ডেভেলপারদের জীবন হয়েছে সহজ এবং গোছানো। আগে জাভাস্ক্রিপ্ট এ একটা কোড লিখে রান করলে টাইপ রিলেটেড হাজারটা ইরোর ফেস করা লাগতো। কিন্তু সেই সমস্যার সমাধান হয়েছে টাইপস্ক্রিপ্ট এর মাধ্যমে।

এখানে আপনি কোড লেখার সঙ্গে সঙ্গেই যদি টাইপ রিলেটেড ইরোর হওয়ার ভয় থাকে তাহলে কোড রান করার আগেই আপনার কোড এডিটর এর মধ্যেই আপনাকে ভুল ধরিয়ে দেবে।

TypeScript | Wikipedia
TypeScript | Wikipedia

 

একটা অবজেক্ট কেমন হবে, এর ইলিমেন্ট গুলো কি কি ডেটা রাখবে, কোন সিকুয়েন্স এ রাখবে কিংবা ফাংশন এ কি ধরনের আর্গুমেন্ট পাস করা হবে এবং সেই ফাংশন কি রেজাল্ট রিটার্ন করবে সবকিছুই আগে থেকেই ডিফাইন করা যায় টাইপস্ক্রিপ্ট এর মাধ্যমে। বেটার ডকুমেন্টেশন, কোড লেখার সঙ্গে সঙ্গেই তা ভ্যালিডেট করার মতো গুরত্তপুর্ন কাজ গুলো সহজেই করতে এক্সপার্ট আমাদের টাইপস্ক্রিপ্ট।

আপনি যদি প্রোডাকশন রেডি, কম বাগ এবং ফুল ফিচারড কোড লিখতে চান যা হবে ডেভেলপার ফ্রেন্ডলি এবং একই সাথে ওয়েল মেন্টেনেবল সেক্ষেত্রে অবশ্যই টাইপস্ক্রিপ্ট হবে আপনার প্রথম চয়েস।

চলুন একনজড়ে দেখে নেই টাইপস্ক্রিপ্ট এর সুবিধা গুলো।

১। অপশনাল স্ট্যাটিক টাইপিং

যদিও টাইপস্ক্রিপ্ট শুনলেই আমরা মনে করি আমাদের প্রত্যেক সময় টাইপ ডিক্লেয়ার করে দিতে হবে কিন্তু আসলে তা সঠিক নয়। টাইপস্ক্রিপ্ট যথেষ্ট ম্যাচিউর আপনার কোড থেকে ডাইনামিকলি টাইপ ডিক্লেয়ার করে নিতে। আপনি যে টাইপের ডেটা দিয়ে প্রথমেই আপনার ভ্যারিয়েবল পপুলেট করবেন সেই ডেটা টাইপ ই সেট হয়ে যাবে ঐ ভ্যারিয়েবল এর ডিফল্ট টাইপ হিসেবে। তাই আপনি প্রয়োজন মত টাইপ ডিক্লেয়ার করে না দিতে চাইলেও টাইপস্ক্রিপ্ট নিজে নিজেই সেই কাজ করে নিবে।

২। কোড লিখতে লিখতেই বাগ খুঁজে পাওয়া

আপনি যেকোন অফিস ডকুমেন্টস টুল যেমন গুগল ডক বা মাইক্রোসফট অফিস কিংবা যেখানেই কিছু লিখতে যাবেন আপনাকে রিয়েল টাইম বানান ভুল ধরে দিবে। যেটাকে আমরা বলি Auto Spell Cheaking. বানান ভুল হবে যেমন সেই নির্দিষ্ট ওয়ার্ডের নিচে মার্ক হয়ে যায় তেমনি টাইপস্ক্রিপ্ট এ যেকোন ভুল হওয়ার সঙ্গে সঙ্গেই সেইটা মার্ক করা হয়ে যায়। অর্থাৎ কোড রান করে আপনাকে ভুল খুঁজে নিতে হবেনা।

৩। প্রেডিক্টিবিলিটি

টাইপস্ক্রিপ্ট এ আপনি একটা ডেটা টাইপ ডিক্লেয়ার করে দিলে সেটা সব সময় ঐ টাইপের ডেটাই রিটার্ন করবে এইটা আপনি শিওর থাকতে পারেন। তাই, কোড ভ্যালিডেশন করা সহজ হয়।

৪। রিডাবিলিটি

অনেক সময় ডেভেলপার রা কমেন্ট করে বুঝিয়ে দেন যে অমুক ভ্যারিয়েবল বা ফাংশন অমুক জিনিস একসেপ্ট করবে এবং ঐ জিনিস রিটার্ন করবে। কিন্তু টাইপস্ক্রিপ্ট এ আপনাকে সেই ঝামেলা পোহাতে হবেনা। কারন  টাইম ডিক্লেয়ার করে দিলে পরের বার যেকেউ কোড এক নজড় দেখেই বলে দিতে পারবে কোনটার ডেটা টাইপ কি হবে।

৫। অসাধারণ আইডিই সাপোর্ট

আপনি যে আইডিই ইউজ করেন না কেন টাইপস্ক্রিপ্ট এর জন্য পাবেন প্রচুর ইন্টেলিজেন্ট, কোড কমপ্লিনেশন সাপোর্ট। ডেভেলপার এর প্রোডাক্টভিটি বাড়িয়ে তোলার জন্য এধরনের থার্ড পার্টি এক্সটেনশন এবং প্লাগিন আপনাকে দেবে দ্রুত কাজ শেষ করার সুযোগ এবং কম ইরোর পাবার আনন্দ।

৬। ওওপি

জাভাস্ক্রিপ্ট যদিও একটি অবজেক্ট অরিয়েন্টেড প্রোগ্রামিং ল্যাঙ্গুয়েজ তবুও টাইপস্ক্রিপ্ট সেটাকে কয়েকগুণ বাড়িয়ে দিয়েছে। ইনহেরিটেন্স, এনক্যমসুলেশন কে করেছে সহজ। public, privet, protected এর মতো কিওয়ার্ড যুক্ত করে এক্স জাভা ডেভেলপার দের জন্য অনেকটা ইকো ফ্রেন্ডলি হয়েছে টাইপস্ক্রিপ্ট।

তো এই তো গেল টাইপস্ক্রিপ্ট এর সুবিধা। কিন্তু এর ছোট্ট একটা অসুবিধা হচ্ছে আপনাকে বেশ কয়েকঘন্টা ইনভেস্ট করে টাইপস্ক্রিপ্ট শিখতে নিতে হবে। প্রোডাক্টিভিটি বাড়িয়ে নেয়া, দ্রুত প্রোজেক্ট কমপ্লিট করার জন্য টাইপস্ক্রিপ্ট শিখতে চাইলে তার ব্যাসিক ই যথেষ্ট।

তবে আরো এডভান্স শিখে নিলে আপনি হয়ে যাবেন প্রো ডেভেলপার। আপনার কাজ কে করবে এক্সেলেরেট।

আপনি যদি এই পর্যায়ে এসে ঠিক করেন যে আপনি টাইপস্ক্রিপ্ট শিখবেন তাহলে আপনাকে অভিনন্দন। এবং আপনি ব্যাসিক গুলোও অন্তত শিখলে আপনি বলতে বাধ্য হবেন, “কেন যে এতদিন টাইপস্ক্রিপ্ট শিখলাম না !”। তাহলে চলুন শুরু করা যাক।

মুলত টাইপস্ক্রিপ্ট ক্র্যাশ কোর্স এ পর্যায়ে আমি ২ কিংবা ৩ পর্বে পুরো ব্যাসিক এবং যা যা শেখা প্রয়োজন তা দেখিয়ে দেব। আর আজকের প্রথম পর্যায়ে শুধু ইন্ট্রোডাকশন হয়েছে এবং এখন দেখব টাইপস্ক্রিপ্ট কিভাবে ইন্সটল করতে হয়।

টাইপস্ক্রিপ্ট ইন্সটল

আগেই যেহেতু বলেছি টাইপস্ক্রিপ্ট হচ্ছে জাভাস্ক্রিপ্ট এর সুপারসেট তাই আপনি NPM / YARN দিয়ে সহজেই ইন্সটল করে ফেলতে ফালবেন টাইপস্ক্রিপ্ট।

স্টেপ-১ঃ উইন্ডোজ হলে CMD ( As Administrator ) এবং ম্যাক কিংবা লিনাক্স হলে Terminal ওপেন করুন।

স্টেপ-২ঃ নিচের কোড হুবহু লিখে এন্টার করলেই টাইপস্ক্রিপ্ট ইন্সটল শুরু হবে।

npm install -g typescript

স্টেপ-৩ঃ এখন আপনি যেকোন একটা ফোল্ডার এ ঢুকে সেখানে একটা ফাইল তৈরি করবেন। যেমন index.ts ( খেয়াল করবেন ফাইল এক্সটেনশন কিন্তু ts )

স্টেপ-৪ঃ এবারে ফাইলের মধ্যে নিচের মতো কোড লিখুন। ভয় পাবেন না টাইপস্ক্রিপ্ট একদম জাভাস্ক্রিপ্ট এর মতোই তবে সামান্য কিছু বিষয় একটু ভিন্ন। লেখা হলে সেভ করুন।

export { }

let a = 5;

let b = 10;

console.log(a+b);

স্টেপ-৫ঃ এবারে যেই ফোল্ডার এ index ফাইল টি তৈরি করলেন সেখানে Terminal বা CMD ওপেন করে লিখুন

tsc index.ts

স্টেপ-৬ঃ এখন দেখবেন ঐ ফোল্ডারে আরো একটি ফাইল্ড তৈরি হয়েছে index.js নামের। সেইটা ওপেন করলে নিচের মতো পাবেন।

“use strict”;

exports.__esModule = true;

var a = 5;

var b = 10;

console.log(a + b);

নিশ্চয় বুঝতে পেরেছেন আগের টার এবং পরের টার মধ্যে তেমন কোন পার্থক্য নেই। আসলেই টাইপস্ক্রিপ্ট খুব ভিন্ন জাভাস্ক্রিপ্ট এর থেকে। সামান্য কিছু বিষয় ভিন্ন শিখে নিলেই হবে।

যেহেতু টাইপস্ক্রিপ্ট নোড দিয়ে কিংবা ব্রাউজারের মধ্যে রান হয়না তাই সেটাকে tsc FILENAME দিয়ে আমরা জাভাস্ক্রিপ্ট এ কম্পাইল করেছি।

তো এই ছিল আজকের মতো। আমরা নেক্সট পর্ব থেকে পুরোদমে টাইপস্ক্রিপ্ট শেখা শুরু করে দেব। সেখানে অনেক সহজেই অনেক সুন্দর কোড লেখার টেকনিক নিয়েও আলোচনা করা হবে।

সেই অবধি ভালো থাকুন, সুস্থ থাকুন। ধন্যবাদ।

 

Leave a Reply