হ্যালো বন্ধুরা, কেমন আছেন সবাই? আশাকরি ভালো। আজ কথা বলবো জাভাস্ক্রিপ্ট নিয়ে। তো বিস্তারিত বিষয়ে যাবার আগে চলুন এ সম্পর্কে কিছু তথ্য জেনে নেয়া যাক যেটা আমাদেরকে মূল বিষয় বুঝতে সাহায্য করবে।
জাভাস্ক্রিপ্ট হলো এক ধরনের শক্তিশালী প্রোগ্রামিং ল্যাঙ্গুয়েজ যার মাধ্যমে অনেক জটিল জটিল সমাধান চোখের নিমেষেই করে ফেলা সম্ভব। শুধু তাই নয়, এটি এমন একটি প্রোগ্রামিং যা দিয়ে প্রয়োজনীয় ছোট-খাটো অ্যানিমেশনের কাজ পর্যন্ত করা যায়। আর জাভাস্ত্রিপ্টের কাজ শুধু যে কোনো প্র্রোগ্রাম বানাতো তা কিন্তু নয়। অনেক প্রোগ্রাম বোঝাও এর একটি গুরুত্বপূর্ণ কাজ। এমনকি জাভাস্ক্রিপ্টে দক্ষ তাদেরকেই বলা হয় যারা এর কোডগুলো বুঝতে পারেন। এটি প্রোগ্রামিং ও ওয়েব ডিজাইন দুটো দিকেই একজনকে দক্ষ করে তোলে।
জাভাস্ক্রিপ্টের সাথে আমার পরিচয় ঘটে অনেক আগে। তখন দৈনিক 'প্রথম আলো'তে সুডোকু মিলানোর খেলা সমাধান খুঁজতে গিয়ে জাভাস্ক্রিপ্টের সাথে পরিচয় ঘটে। এরপর পত্রিকার সুডোকু জাভাস্ক্রিপ্টে মিলিয়ে এস এম এস করে পাঠিয়ে দিতাম। উত্তর সঠিকই থাকতো কিন্তু আফসোস কখনই জেতা হয় নি বিজয়ী হিসেবে। শুধু তাই নয় জাভাস্ক্রিপ্টের সাহায্যে ইঞ্জিনিয়ারিং এর বহু সমস্যার সমাধান করা যায়। আর মাউস পয়েন্টার দিয়ে জাভাস্ক্রিপ্টে অনেক মজার মজার জিনিসও তৈরি করা যায়। তো আজ সেই জাভাস্ক্রিপ্ট নিয়েই কথা বলবো।
আপনারা যারা জাভাস্ক্রিপ্ট প্রোগ্রামিং শেখা মাত্র শুরু করেছেন তাদের উদ্দেশ্যেই আমার এই টিউন। যেকোন প্রোগ্রামিং প্রথমদিকে শিখতে গেলে আমরা অনেক বেশি নিয়ম কানুন মেনে চলি। যাতে ভুল না হয়। এটা অবশ্যই গুরুত্বপূর্ণ। কিন্তু প্রোগ্রামিং এর সবচেয়ে বড় সুবিধা হলো আপনি একই কাজ অনেক ভাবে করতে পারবেন। তাই প্রোগ্রামিং করতে করতে বা হাতে বেশি স্ক্রিপ্ট লিখতে লিখতে অনেকেই এর সংক্ষিপ্ত রাস্তা খুঁজতে থাকেন। আর হ্যাঁ সেরকম সংক্ষিপ্ত রাস্তা থাকেও। আজ সেরকমই কিছু বিষয় নিয়ে কথা বলবো। আজকে দেখাবো আমরা জাভাস্ক্রিপ্টে সময় বাঁচিয়ে শর্টহ্যান্ডে কীভাবে কিছু জানা স্ক্রিপ্টগুলো ব্যবহার করতে পারি। তো চলুন দেখে নেয়া যাক বিষয়গুলো।
আপনি যদি কোনো ব্যাংক বা আর্থিক প্রতিষ্ঠানের ডেভেলপার হিসেবে কাজ করতে যান তাহলে এই বিষয়টি আপনাকে অবশ্যই ফেইস করতে হবে। ধরা যাক আপনাকে সংখ্যায় দশকোটি লিখতে হবে। তো আপনি কীভাবে লিখবেন? আপনি 1 লিখে আটটি শূণ্য দিবেন। তাই তো? কিন্তু আপনি জাভাস্ক্রিপ্টে এই কাজটি করতে পারেন আরো সহজে। শুধুমাত্র '1e8' লিখলেই প্রোগ্রাম বুঝে নেবে যে এক এর পর আটটি শূণ্য হবে।
এরকম, যদি প্রোগ্রামে আপনার 28000 লিখতে হয় আপনি শুধুমাত্র লিখবেন 28e3। এর মানেই হলো 28 এর পর ৩ টি শূণ্য। কোডে কীভাবে লিখতে হবে তা নিচে দেখে নিতে পারেন। আপনাদের বুঝতে সুবিধা হবে। শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
কোনো কিছুর মান বাড়াতে হলে আপনাকে প্রোগ্রামিং-য়ে সাধারণত সবকিছু উল্লেখ করতে হয়। যেমন: i এর সাথে 1 যোগ করতে হলে লিখতে হয়,
i = i + 1;
কিন্তু জাভাস্ক্রিপ্টে এরও সংক্ষিপ্ত রুপ আছে। শুধুমাত্র এর পর দুটো প্লাস(+) চিহ্ন ব্যবহার করে খুব সহজেই এই কাজটি করা যায়।
অর্থাৎ, সেক্ষেত্রে লিখতে হবে,
i+;
একইভাবে, j থেকে 1 বিয়োগ করলে আমরা সাধারণত লিখতাম,
j=j-1;
কিন্তু সংক্ষেপে এই বিষয়টিই লিখতে পারবেন এভাবে,
j-;
কোডে কীভাবে লিখতে হবে তা নিচে দেখে নিতে পারেন। আপনাদের বুঝতে সুবিধা হবে। শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
তবে এটি সাধারণভাবে ব্যবহৃত হয় না। কোনো প্রোগ্রামে Loop জাতীয় ফাংশান এলে তবেই এটি ব্যবহৃত হয়।
যোগ, বিয়োগ, গুণ ও ভাগ করার জন্যও জাভাস্ক্রিপ্টের কিছু সংক্ষিপ্ত রুপ আছে। আর এটা সাধারণ মান বাড়ানো বা কমানোর মতোই।
ধরুন কোনো ভ্যারিয়েবল i এর সাথে 5 যোগ হবে, j এর সাথে 3 বিয়োগ হবে, k এর 10 গুণ হবে অথবা l এর 2 ভাগ হবে। সেক্ষেত্রে নিচের মতো সংক্ষিপ্তরুপগুলো ব্যবহার করতে পারেন। শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
স্ট্রিং এর ক্ষেত্রে charAt()
ব্যবহার বেশ জনপ্রিয় একটি পদ্ধতি, এটি যেকোন ক্যারেক্টারের পজিশন ঠিক করে থাকে। কাজের সুবিধার্থে এরও কিছু শর্টহ্যান্ড আছে। যারা এটা নিয়ে বেশি কাজ করে থাকেন তারা ভাল বুঝতে পারবেন। এটি আপনার অনেক মূল্যবান সময় বাঁচাবে। নিচে দেখুন শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
আপনি যদি একই সময়ে এক এর অধিক ভ্যারিয়েবল ডিক্লেয়ার করাতে চান তাহলে সেগুলো আপনার বারবার ভ্যারিয়েবল টাইপ করার দরকার নেই। শুধু var() লিখে ব্রাকেটে কমার মাধ্যমে সেগুলো বসাতে হবে। নিচে দেখলে ভাল বুঝতে পারবেন। শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
এর মাধ্যমে সংজ্ঞায়িত ও অসংজ্ঞায়িত উভয় ভ্যারিয়েবলই বসাতে পারবেন।
অ্যারে ডিক্লেয়ার করে কাজ করা জাভাস্ক্রিপ্টের একটি মজার একটি কাজ, যেমন,
var myArray = ["apple", "pear", "orange"]
তবে প্রতিবার অ্যারে বসানো বেশ ঝামেলাপূর্ণ একটি কাজ। তাই বারবার উল্লেখ না করে নিচের মতো করে আপনারা অ্যারে'র কাজ করতে পারেন।
নিচে myArray
এর মাধ্যমে বিখ্যাত লোকদের নাম ও তাদের জন্মস্থান উল্লেখ করা হয়েছে। শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
অবজেক্ট ডিক্লেয়ার করার পদ্ধতিটা হুবহু অ্যারে ডিক্লেয়ার করার মতোই। তাই নিচে দেখলেই বুঝতে পারবেন এর ব্যবহার সম্পর্কে। শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
যেকোন প্রোগ্রামিং-য়েই সাধারণত কন্ডিশনাল অপারেটর ব্যবহার করা হয়। এর প্রধানত ৩ টি অংশ থাকে।
তবে জাভাস্ক্রিপ্টে এটিও আপনি সংক্ষিপ্ত আকারে অর্থাৎ শর্টহ্যান্ডে ব্যবহার করতে পারেন। নিচে দেখুন।
নিচের উদাহরণে দেখানো হয়েছে একটি ক্লাবে প্রাপ্তবয়স্কদের বাছাই করার একটি কোড। ১৮ বছরের নিচের কেউ যাতে সেখানে যোগদান করতে না পারে। শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
মাঝে মাঝে আপনার দরকার হতে পারে যে কোনো নির্দিষ্ট একটি ভ্যারিয়েবল ডাটাতে আছে কিনা।
নিচের উদাহরণ দেখলেই বুঝতে পারবেন কত সহজে শর্টহ্যান্ডে বিষয়গুলো পাড়ি দেয়া যায়। তবে একটি গুরুত্বপূর্ণ কথা বলে রাখি। শর্টহ্যান্ডে লিখতে লিখতে যেন কখনই লংহ্যান্ড রাইটিং ছেড়ে না দেন। কারণ, অনেক সময় লংহ্যার্ড রাইটিং না চর্চা করলে অনেক প্রোগ্রামই বুঝতে কঠিন হয়। নিচে দেখুন। শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
শুধুমাত্র 'মাই ভ্যারিয়েবল' এর আগে একটি আশ্চর্যবোধক চিহ্ন বসিয়েই আগের মতো করে কোনো ভ্যারিয়েবলের অনুপস্থিতি পরীক্ষা করা যায়। নিচে দেখুন। শর্টহ্যান্ড ও লংহ্যান্ড-য়ে কী হবে উভয়ই দেখানো হয়েছে।
|
সবচেয়ে গুরুত্বপূর্ণ ব্যাপার হলো কোনো মতেই লংহ্যান্ড চর্চা ছেড়ে দেয়া যাবে না। শর্টহ্যান্ড গুলো শুধুমাত্র বিশেষ বিশেষ সময়ে ব্যবহার করার জন্য। আর যেকোন জিনিসেরই শিকড় ধরে রাখা প্রয়োজন। তাই শর্টহ্যান্ড বিশেষ প্রয়োজন ছাড়া ব্যবহার না করাই ভাল।
পরিশেষে, টেকটিউনস হলো বিজ্ঞান ও প্রযুক্তি সম্পর্কে জানার এক সুবিশাল প্ল্যাটফর্ম। প্রতিনিয়তই থাকবেন নতুন নতুন জ্ঞানের মধ্যে। জানবেন অজানাকে। তবে হ্যাঁ। শুধু জেনেই বসে থাকবেন না। এই জ্ঞানগুলো ছড়িয়ে দিন তাদের নিকট যাদের কাছে এই টিউনগুলো পৌঁছানো সম্ভব হয় না। জ্ঞান নিজের কাছে রাখার জিনিস না। ছড়িয়ে দিন আশেপাশে যারা আছে সবার মাঝে। প্রযুক্তিকে ভালবাসুন, প্রযুক্তির সাথে থাকুন। টেকটিউনসের সাথে থাকুন।
আজকের মতো এ পর্যন্তই। সামনে আবারও হাজির হবো নতুন কোনো তথ্য নিয়ে। আর টিউনটি কেমন লাগলো জানাতে ভুলবেন না। টিউন বিষয়ে কোনো প্রশ্ন থাকলে নিচে টিউমেন্ট বক্সে প্রশ্নটি করুন। এছাড়াও ফেইসবুকে আমার সাথে যোগাযোগ করতে পারেন।
ফেইসবুকে আমি: Mamun Mehedee
আমি মামুন মেহেদী। Civil Engineer, The Builders, Bogra। বিশ্বের সর্ববৃহৎ বিজ্ঞান ও প্রযুক্তির সৌশল নেটওয়ার্ক - টেকটিউনস এ আমি 11 বছর 5 মাস যাবৎ যুক্ত আছি। টেকটিউনস আমি এ পর্যন্ত 92 টি টিউন ও 360 টি টিউমেন্ট করেছি। টেকটিউনসে আমার 12 ফলোয়ার আছে এবং আমি টেকটিউনসে 1 টিউনারকে ফলো করি।
আমি আপনার অবহেলিত ও অপ্রকাশিত চিন্তার বহিঃপ্রকাশ।
onek sundor hoice vay