প্রোগ্রামিংয়ের ক খ


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

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

স্ট্যাটিক ও ডায়নামিক সাইটের ভাষা
ওয়েবসাইটের আদল দাঁড় করাতে এইচটিএমএল, পিএইচপি, সিএসএসের মতো সাধারণ প্রোগ্রামিং ভাষার স্ক্রিপ্ট লিখতে হয়। এর সঙ্গে জাভা স্ক্রিপ্ট জুড়ে দিয়ে সাইটকে আরো কার্যকর বা ব্যবহারোপযোগী করা যায়। কনটেন্টভেদে ওয়েবসাইট সাধারণত দুই ধরনের হয়—স্ট্যাটিক ও ডায়নামিক। বিভিন্ন ছোটাখাটো প্রতিষ্ঠান বা যেসব সাইটের পেইজ বা কনটেন্ট খুব একটা পরিবর্তন হয় না, সেগুলো স্ট্যাটিক হিসেবে তৈরি করা হয়। এসব সাইটের পেইজের সঙ্গে কনটেন্ট ম্যানেজমেন্ট সিস্টেম (সিএমএস) কিংবা ডাটাবেইসের সংযোগ না থাকলেও চলে।
আর যেসব সাইটে প্রতিনিয়তই কনটেন্ট বা তথ্য যুক্ত হচ্ছে, যেমন—নিউজ পোর্টাল বা পত্রিকার ওয়েবসাইট, সেগুলো ডায়নামিক হিসেবে তৈরি করা হয়। ফলে সাইটের বিভাগগুলোতে উপযুক্ত পোস্টগুলো ঠিকঠাক যুক্ত হয়ে যায়। এসব কাজের নির্দেশ ঠিকঠাক নেওয়ার জন্য ডেভেলপাররা প্রোগ্রামিং ভাষা ব্যবহার করে কনটেন্ট ম্যানেজমেন্ট সিস্টেম বা সিএমএস তৈরি করেন। সিএমএসকে অ্যাডমিন প্যানেল বা ইউজার প্যানেলও বলা হয়। প্রোগ্রামার বা ডেভেলপাররা এই প্যানেলগুলো এমনভাবে তৈরি করেন, যাতে একজন সাধারণ ব্যবহারকারী লগইন করে সহজেই জায়গামতো পোস্ট লিখে ছবি জুড়ে দিয়ে উপযুক্ত বিভাগ নির্বাচন করে পোস্টটি প্রকাশ (পাবলিশ) করতে পারেন।
অবশ্য ওয়ার্ডপ্রেস, জুমলার মতো তৈরি করা সিএমএস নেটে বিনা খরচেই পাওয়া যায়। অনেকে এসব সিএমএস ব্যবহার করে সহজেই সাইট দাঁড় করান। এরপর সাইট নিজের সুবিধামতো সাজাতে প্রোগ্রামিং ভাষা এইচটিএমএল, পিএইচপি, সিএসএস ব্যবহার করেন। ডায়নামিক সাইটের জন্য আলাদা এসকিউএল ডাটাবেইস তৈরি করতে হয়। যখন ব্যবহারকারী কোনো কিছু সংরক্ষণ করেন বা কনটেন্ট পাবলিশ করেন, তখন তা ডাটাবেইসে সংরক্ষিত হয়।
প্রোগ্রামিং স্ক্রিপ্টের মাধ্যমে সাইটের আদল তৈরি করা হয় এবং কনটেন্ট সংরক্ষণে রাখা হয় ডাটাবেইসের মাধ্যমে। অর্থাত্ এই গঠনে দুটি অংশ। ডায়নামিক সাইটে কোনো কারণে পুরো আদলটাই যদি বদলাতে হয়, তাতেও সমস্যা নেই। আগের সংরক্ষিত কনটেন্ট ডাটাবেইসে জায়গামতো সংরক্ষিত থাকবে। নতুন করে সাইট সাজিয়ে আগের ডাটাবেইসের সঙ্গে যুক্ত করে দিলেই সাইটের আদল নতুন হয়ে যাবে, কনটেন্টও ঠিক থাকবে।
সাইটের গঠন বা আদলের জন্য দরকার হয় এইচটিএমএল, পিএইচপির মতো ল্যাঙ্গুয়েজ। আর ডিজাইনের জন্য সিএসএস।

সফটওয়্যার তৈরির ভাষা
সফটওয়্যার তৈরিতে জনপ্রিয় সি প্লাস প্লাস ও ভিজ্যুয়াল বেসিক। সি প্লাস প্লাসের বেসিক ফিচারগুলো হলো লুপ, পয়েন্টার, ক্লাস, অবজেক্ট, ফাংশন ওভারলোডিং, ইনহেরিট্যান্স। শুরুতেই এগুলোর ওপর দখল থাকতে হবে, তা নয়; খুঁটিনাটি শিখতে শিখতে একসময় এক্সপার্ট হয়ে গেছে, এমন উদাহরণও আছে।
অনেকে এই ভাষার সাধারণ কোডিং বা স্ক্রিপ্ট থেকে ভয় পেয়ে যায়। ভেবে বসে—না জানি কত কঠিন! আসলে বাস্তবে কাজ হয় ফ্রেমওয়ার্কনির্ভর। ফ্রেমওয়ার্কের ব্যবহার কাজটি অনেকটা সহজ করে দেয়। সফটওয়্যার বানাতে গেলে শুধু সংশ্লিষ্ট ল্যাঙ্গুয়েজ জানা থাকলেই চলবে না, যে কাজের সফটওয়্যার বানাচ্ছেন, সেই কাজের প্রক্রিয়ার খুঁটিনাটি সম্পর্কেও বাস্তব ধারণা থাকতে হবে। তা না হলে তালগোল পাকিয়ে যাবে।
শুধু মাইক্রোসফট উইন্ডোজ প্ল্যাটফর্মের জন্য সফটওয়্যার বা অ্যাপ্লিকেশন তৈরির বেলায়
ভিজ্যুয়াল বেসিক, ডট নেট ল্যাঙ্গুয়েজ ব্যবহার করা হয়।

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

ডেভেলপারদের স্কুল
ওয়েব ডেভেলপের প্রায় সব পাঠই পাওয়া যাবে ডাব্লিউ থ্রি স্কুলসে (www.w3schools.com)। সাইটটিকে ওয়েব দুনিয়ার কারিগরদের প্রথম স্কুল বললে ভুল হবে না। এইচটিএমএল বা সিএসএস, জাভা স্ক্রিপ্ট, এসকিউএল, পিএইচপি, এএসপি, ভিজ্যুয়াল বেসিক, এক্সএমএল ছাড়াও ওয়েব বিল্ডিংয়ের যাবতীয় খুঁটিনাটি রাখা হয়েছে এ সাইটে। উদাহরণের পাশাপাশি কোন টুলের কী কাজ, কোন ব্রাউজারে চলবে, তা-ও বলা হয়েছে।

অনলাইনেও শেখা যায়
বাংলাভাষীদের কাছে প্রোগ্রামিংকে সহজভাবে উপস্থাপন ও কায়দাকানুন শেখানোর জন্য চালু হয়েছে ইচ্ছেকোড স্কুল (www.icchecode.com)। প্রোগ্রামিং ভাষা (সি, সি++, জাভা, পাইথন) ছাড়াও ওয়েব ডিজাইন (এইচটিএমএল, সিএসএস, পিএইচপি) শেখার বাংলা টিউটরিয়াল পাওয়া যাবে এই অনলাইন স্কুলে। বাংলাদেশ প্রকৌশল বিশ্ববিদ্যালয়ের (বুয়েট) শিক্ষার্থীদের উদ্যোগে চালু হওয়া সাইটটি বয়সে নতুন হলেও প্রোগ্রামিংয়ে আনাড়িদের বেশ কাজে আসবে। কোর্সগুলো ধাপে ধাপে সাজানো। আর কোডের নমুনার সঙ্গে আছে প্রিভিউ, তাই আউটপুট কেমন হবে, আগে থেকেই ধারণা পাওয়া যাবে।
এ ছাড়া সুবিনের সাইটেও পাওয়া যাবে প্রোগ্রামিংয়ের নানা টিউটরিয়াল ও ভিডিও লেকচার— http://cpbook.subeen.com