Showing posts with label JavaScript. Show all posts
Showing posts with label JavaScript. Show all posts

Tuesday, June 14, 2016

জাভাস্ক্রিপ্ট-০২ঃ শুরুর আগে- পর্ব ২ঃ কেন জাভাস্ক্রিপ্ট?

গত পর্বে আমরা কিছু প্রশ্ন কে সামনে রেখে জাভাস্ক্রিপ্ট শিখছিলাম।
মনে আছে তো সেগুলো? না থাকলে আবার মনে করিয়ে দেই। আমরা পর্যায়ক্রমে জাভাস্ক্রিপ্ট 'কি' 'কেন' 'কোথায়' 'কিভাবে' প্রশ্নগুলো করবো এবং উত্তর খুঁজবো। গত পর্বেই আমরা জাভাস্ক্রিপ্ট কি তা জেনে গেছি। তাই আজকে আমরা খুঁজবো 'কেন এই জাভাস্ক্রিপ্ট' এর উত্তর।


কেন জাভাস্ক্রিপ্ট?

সে অনেক কাল আগের কথা (বেশিদিন না মাত্র ২০ বছর)। আমাদের ওয়েব ব্রাউজার এ যখন শুধু ভেসে থাকতো স্ট্যাটিক কিছু পেজ আর কিছু লেখা তখন Netscape Communications Corporation এ বসে ব্রেন্ডন আইচ ( Brendan Eich )  নামক এক ভদ্রলোক ইউজার দের সুবিধার জন্য একটা ওয়েব টেকনোলজি তৈরির কাজ করছিলেন। নাম দিয়েছিলেন 'মোচা' (Mocha) না, 'মৌচাক' বলে আমার মত ভুল করবেন না :D তিনি মাইক্রোসফট এর সাথে পাল্লা দেবার জন্য আরো হাল্কা এবং প্রায় সব জায়গায় চালানো যায় এমন কিছু বানাতে চেয়েছিলেন। অনেক সাধনার পরে তিনি LiveScript নামের একটা ল্যাঙ্গুয়েজ রিলিজ করলেন ১৯৯৫ সালের সেপ্টেম্বর এ। 
আজ তার সেই LiveScript কে আমরা ডাকি JavaScript. 
আচ্ছা, আমরা জাভাস্ক্রিপ্ট এর জনমতিথি নিয়ে তো বেশ কপচা কপচি করলাম। উত্তর তো কিছু পেলাম না। আসলে হাল্কার উপর ঝাপসা পেয়েছি কিন্তু।
ওয়েব ইন্টারফেস কে আরো সুন্দর আর রিসপনসিভ করার জন্যই জাভাস্ক্রিপ্ট এর জন্ম এবং এই জন্যই মুলত জাভাস্ক্রিপ্ট। 
তবে বর্তমানে জাভাস্ক্রিপ্ট এর অনেক অনেক ব্যবহার আছে, অনেক বেশি ইমপ্লিমেন্টেশন আছে। সমস্ত ওয়েব টেকনোলজি কে উন্নয়ন করার পায়তারা করা হচ্ছে। 
কিন্তু আমাদের ফায়দা কি?
যারা কেবল মাত্র প্রোগ্রামিং শুরু করতে যাচ্ছেন, তাদের জন্য জাভাস্ক্রিপ্ট, 

  • খুব সহজে শিখে ফেলা যায়
  • লেখা বা এডিট করা সহজ
  • ভালো প্রোটোটাইপিং ল্যাঙ্গুয়েজ (বিস্তারিত)
  • অনেক অনেক টুল আছে 
  • ডিবাগিং এ সুবিধা আছে আর বেশ সহজেই করা যায়
  • OOP (Object Oriented Programming) সুবিধা আছে
  • খুব সহজে অন্যকিছুতে এক্সটেন করে ফেলা যায়। যেমন JQuery, DOJO etc
  • ওয়েব এর জন্য খুব বেশি ফিট 
আর যারা প্রোগ্রামিং এর সাথে যুক্ত বা ক্যারিয়ার গড়ে তুলতে চান আইটি তে তাদের জন্য বলতে গেলে,
  • লোকাল বা ইন্টারন্যাশনাল বাজারে বেশ ভালো চাহিদা 
  • টাকা পয়সা ভালো আসে :3
  • জাভাস্ক্রিপ্ট নিয়মিত উন্নতি করতেছে
  • প্রচুর ফ্রেমওয়ার্ক আছে
  • প্রায় সব ধরনের যন্ত্রপাতিতেই চালানো যায়
  • ক্রস প্লাটফর্ম, হাইব্রিড 
  • কম্পাইল্ড একটা ল্যাঙ্গুয়েজ
  • জাভাস্ক্রিপ্ট এর ভবিষ্যৎ অতি উজ্জ্বল :D 
মোটামুটি তো বোঝা যাচ্ছে যে জাভাস্ক্রিপ্ট শিক্ষায় লাভ বৈ ক্ষতি নাই, তাই আপাতত অথবা আপাত দৃষ্টিতে প্রয়োজন না থাকলেও আপনার শিখে ফেলা উচিত জাভাস্ক্রিপ্ট।

এখন আমরা যারা যারা জাভাস্ক্রিপ্ট শিখতে চাই তারা কমেন্ট করুন, আর যারা শিখতে চান না তারাও জানান কেন এই জাভাস্ক্রিপ্ট বিদ্বেষ ।

পরের পর্বের জন্য যন্ত্রযোগের সাথেই থাকো, সুস্থ্য থাকো, ভালো থাকো, জানার পিপাসায় মগ্ন থাকো।

Saturday, June 11, 2016

জাভাস্ক্রিপ্ট-০১ঃ শুরুর আগে- পর্ব ১ঃ জাভাস্ক্রিপ্ট কি?

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

জাভাস্ক্রিপ্ট কি?
প্রথমত, জাভাস্ক্রিপ্ট [ JavaScriptবা সংক্ষেপে JS] একটা ভাষা। কিসের ভাষা? কম্পিউটারের সাথে কথা বলার ভাষা। আরো ভেঙ্গে বললে, ওয়েব ভিত্তিক ব্রাউজার কে হুকুম করার ভাষা। তাহলে কি দাঁড়ালো?  জাভাস্ক্রিপ্ট একটি ওয়েব ভিত্তিক প্রোগ্রামিং ল্যাঙ্গুয়েজ।
এতটুকু তে যারা তুষ্ট নই, তাদের জন্য জাভাস্ক্রিপ্ট সম্পর্কে আরো কিছু কথা বলাই যায়। তবে ইচ্ছা না হলে এই অংশ বাদ দেয়া যেতে পারে।
জাভাস্ক্রিপ্ট একটা হাই-লেভেল, ডাইনামিক, আনটাইপড এবং ইন্টারপ্রিটেড প্রোগ্রামিং ল্যাঙ্গুয়েজ।  এইচটিএমএল আর সিএসএস এর পাশাপাশি জাভাস্ক্রিপ্ট WWW এর একটা core technology.  আপাতত এগুলা নিয়ে বেশি কথা বলবো না। ইন্টারনেট এ জাভাস্ক্রিপ্ট এর জন্ম-জন্মান্তরের বর্ননা আছে। একটু ঘাটা দিলেই বের হয়ে আসবে।

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

জাভাস্ক্রিপ্ট কি? এই উত্তরের সাথে সাথেই চল আমরা খুজতে থাকি জাভাস্ক্রিপ্ট এর কাজ কোথায়।
জাভাস্ক্রিপ্ট এর কাজ কি?

জাভাস্ক্রিপ্ট এর কাজ বা কি করা যায় জাভাস্ক্রিপ্ট দিয়ে, এমন প্রশ্নের উত্তরে আমি বলতে চাই, বিভিন্ন ওয়েবসাইট এ ঘুরাঘুরির সময় হঠাত করে কোনো ভুল বাটনে ক্লিক করলে অথবা কোনো কিছুর কনফার্মেশন নেয়ার জন্য যে পপ-আপ উইন্ডো চলে আসে তা বানানো যায়। :3 অর্থাৎ কোন এলার্ট ম্যাসেজ দেখানো যায়।

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

আচ্ছা, এখন উত্তর টা পছন্দ হচ্ছে না? তাহলে কিছু বাস্তব উদাহারন দেখলে হয়ত ভালোভাবে বোঝা যাবে।

·         সাইন-আপ ফর্ম এ ইউজারনেম available আছে কিনা সেটা সম্পুর্ন ওয়েবপেজ রিলোড না করেই চেক করা যায়। আবার ইমেইল এর জায়গায় ইমেইল না লিখে অন্য কিছু লিখলে তা সহজেই ধরে ফেলা যাবে কোনরকম ঝক্কিঝামেলা ছাড়াই।
·         সার্চ বক্স এ কিছু লিখতে নিলেই দেখা যায় যে না না রকম সাজেশন আসতে থাকে। ‘ক’ লিখলেই ‘কমলা’ , ‘কলা’, ‘কামলা’ চলে আসে। এই কাজ কে বলা হয় অটোকমপ্লিট।  সজজেই করে ফেলা যায় জাভাস্ক্রিপ্ট দিয়ে।
·         অনেক সময় ওয়েবপেজ এর কোনাকাঞ্চিতে লাইভ স্পর্টস বা স্কোর দেখায়, অথবা শেয়ার বাজারের সর্বোশেষ অবস্থা দেখা যায়। এই কাজ গুলো করা যাবে জাভাস্ক্রিপ্টে।
·         জাভাস্ক্রিপ্ট দিয়ে খুব সহজে ওয়েবপেজ এর লেআউট গত সমস্যা যেমন মেনু তে ক্লিক করলে তার সাব মেনু কতটুকু জায়গা নেবে, অন্য কিছুর উপরে উঠে গিয়ে সমস্যা এগুলো মটিয়ে ফেলা যায়।
·         জাভাস্ক্রিপ্ট এমনকি এইচটিএমএল এর চেহারাও বদলে দিতে পারে। যেমন একটা বক্স এ লেখা ইনপুট চাওয়ার থেকে অনেক সময় ড্রপডাউন বা চেকবক্স অনেক বেশি ইউজার ফ্রেন্ডলি আর সুন্দর।
·         জাভাস্ক্রিপ্ট ব্যবহার করে কিঞ্চিত এনিমেশন ও করা যায়। যেমন কোন বাটনে ক্লিক করে কোনো লেখা হাওয়া করে দেয়া অথবা ক্লিক করে হাওয়া থেকে লেখার উৎপত্তি এধরনের কাজ করা যায়।

আজ এ পর্যন্তই থাকুক। জাভাস্ক্রিপ্ট কি এবং এর কাজ কি সে সম্পর্কে আমরা মোটামুটি ধারনা পেলাম। আরো বেশি জানার জন্য সার্চ কর ইন্টারনেট এ। 
তোমারা কি জানো, গুগলের মত একটা সার্চ ইঞ্জিন আছে আমাদের দেশেও? নাম পিপিলিকা। সুন্দর না নামটা? যারা আগেই জানতে তারা কমেন্ট কর ‘হ্যাঁ’ আর যারা আগে জানতে না তারা কমেন্ট কর ‘না’।  
আর কোনো জিজ্ঞাসা বা মতামত থাকলে সেটাও কমেন্ট এ লিখে ফেলো।

পরের পর্বের জন্য যন্ত্রযোগের সাথেই থাকো, সুস্থ্য থাকো, ভালো থাকো, জানার পিপাসায় মগ্ন থাকো।