ওয়েব ডেভেলপমেন্ট
ওয়েব ডেভেলপমেন্ট করার জন্য কি কি জানা প্রয়োজন?
আমরা আমাদের আলোচনায় আজ জানবো কিভাবে ওয়েবসাইট ডেভেলপমেন্ট ও বিভিন্ন সফটওয়্যার তৈরী বা ডেভেলপমেন্ট করা যায়। আমরা জানি, বিভিন্ন ওয়েব সাইট ও বিভিন্ন সফটওয়্যার ডিজাইন এবং ডেভেলপমেন্ট করার জন্য প্রথমতো আমাদের যে দুইটি বিষয় বা ল্যাংগুয়েজ জানা প্রয়োজন তা হলোঃ – ১। এইচটিএমএল (HTML) এবং ২। সিএসএস (CSS)। আমার জানামতে, কম্পিউটারে এই দুইটি প্রোগ্রামই হচ্ছে মার্কআপ ল্যাংগুয়েজ (Markup Language), কোন প্রোগ্রামিং ল্যাংগুয়েজ (Programming Language) নয়। এই দুইটি ল্যাংগুয়েজ ব্যবহার করে আপনি একটি Static ওয়েব সাইট বা সফটওয়্যার তৈরি করতে পারবেন। যা বিশ্ববাসীর নিকট প্রচার করতে আপনাকে সহায়তা করবে। একটি ওয়েব সাইট এর মূল্য অনেক। এই ওয়েব সাইট কেহ যদি ভালভাবে তৈরী করতে পারে এবং সেটিকে গুগল এ্যাডস্সে এর সাথে যুক্ত করতে পারে তাহলে এই ওয়েব সাইটটি হতে পারে তার জন্য সারাজীবনের একটি আয়ের উৎস| আপনার তৈরীকৃত ওয়েবসাইট বা সফটওয়্যার দৃষ্টি নন্দন করার জন্য আরও অনেক কাজ করতে হবে।
উপরোক্ত বিষয় ছাড়া্ও পরবর্তিতে আপনাকে জানতে হবে- ৩। পিএইচপি (PHP) এবং ৪। এসকিউএল (SQL)। পিএইচপি এবং এসকিউএল জানার উপকারিতা অনেক। এখানে পিএইচপি একটি প্রোগ্রামিং ল্যাংগুয়েজ এবং এসকিউএল ডাটাবেস ল্যাংগুয়েজ। এই দুইটি ল্যাংগুয়েজ শিখলে আপনি অনায়াশেই একটি Dynamic ওয়েবসাইট অথবা সফটওয়্যার তৈরি করতে পারবেন। যার মাধ্যমে আপনি যে অসাধারণ ক্ষমতার অধিকারী তা অন্যকে বোঝাতে পারবেন। এসকিউএল (SQL) এর সাহায্যে আপনি যেকোন তথ্য উপাত্তকে কম্পিউটার/ উপাত্ত ব্যবহারকারীর নিকট সহজেই উপস্থাপন করতে পারবেন। এর সাহায্যে হাজারো তথ্য কে সংরক্ষণ করে তা ব্যবহারকারীর নিকট খুব সুন্দরভাবে উপস্থাপন করা যায়। আশা করছি বিষয়গুলো আপনি আয়ত্ব করতে আগ্রহী হবেন।
এবার আপনাকে আরও একটু গভিরে যেতে হবে। যেসব বিষয় আপনার জানা একান্ত প্রয়োজন সেই বিসয়গুলই আজ আপনাদের সুবিধার্থে আলোচনা করার চেষ্টা করব। এরপর আপনাকে যা জানতে বা শিখতে হবে তা হল- ৫। জাভাস্ক্রিপ্ট ল্যাংগুয়েজ (Java Scrit Language)। জাভাস্ক্রিপ্ট ল্যাংগুয়েজ (Java Scrit Language) শিখলে আপনি একটি চমৎকার, আকর্ষনীয় ও দৃষ্টি নন্দন ওয়েব সাইট অথবা সফটওয়্যার তৈরি করতে পারবেন। যা আপনার দায়িত্বশীল কাজকে অধিকতর দায়িত্বশীল দেখাবে। তাছাড়া ওয়েব সাইট ও সফটওয়্যার ডিজাইন এবং ডেভেলপমেন্ট করবার সময় আপনাদের বিভিন্ন ধরণের গ্রাফিক্স এর কাজ করার প্রয়োজন হবে। সেজন্য- Photo Shop, Illustrator বা Graphics এর কাজ মোটামুটি জানা থাকা উত্তম। এসব কাজ জানা থাকলে অন্যান্য ক্ষেত্রেও আপনি বেশ সুবিধা করতে পারেবেন। এছাড়াও আমরা চাইলে সি, পাইথন অথবা ভিজুয়াল বেসিক দিয়ে সফটওয়্যার তৈরি করতে পারি। তবে ওয়েব সাইট এর Speed এর কথা ভাবলে সি দিয়ে সফটওয়্যার অথবা Application তৈরি করা সব চেয়ে উত্তম। কারণ ওয়েব সাইট এর স্পিড ভাল না থাকলে ভিজিটরগণ স্বাচ্ছন্দ বোধ করে না। পরবর্তীতে অপেক্ষাকৃত কম স্পিডের ওয়েবসাইট সহজে কেহ ভিজিট করতে চায় না।
মার্কআপ ল্যাংগুয়েজ এবং প্রোগ্রামিং ল্যাংগুয়েজ কি?
এবার আমাদের জানার বিষয় মার্কআপ ল্যাংগুয়েজ এবং প্রোগ্রামিং ল্যাংগুয়েজ কিভাবে ব্যবহার করতে হয়? একটি সাধারণ নোটপ্যাডে বিভিন্ন ধরণের কোড লিখে প্রকাশ করা হয়, আমি কী বলতে চাই? কোডগুলো সঠিক জায়গায় সঠিকভাবে লিখতে পারলেই তা ভাষা আকারে বা প্রকারে প্রকাশিত হবে। আমরা জানি, এইচটিএমএল এবং সিএসএস দুটোই মার্কআপ ল্যাংগুয়েজ। এরকম আরো অনেক মার্কআপ ল্যাংগুয়েজ আছে। এ দুটি ল্যাংগুয়েজ দিয়ে আপনি যতটুকু কোড লিখবেন সে ততটুকুরই ফলাফল প্রকাশ করবে। এর বাইরে সে কিছুই করতে পারবেনা। আপনি যদি এই দুটি ল্যাংগুয়েজ কে প্রশ্ন করেন যে ৪৪৩৩৫ এবং ৯৮৫৩৪ যোগ করলে কত হবে? সে আপনাকে কোন ফলাফল দিতে পারবেনা কেননা এটি একটি মার্কআপ ল্যাংগুয়েজ। এটির কাজ শুধু যেখানে আপনি বলবেন সেখানে প্রদর্শিত হওয়া।
কিন্তু আপনি যদি কোন প্রোগ্রামিং ল্যাংগুয়েজ, যেমন- পিএইচপি (PHP) বা জাভাস্ক্রিপ্টকে (Java Script) প্রশ্ন করেন যে ১৫৭২৬ এবং ৫০৫৪৩ যোগ করলে কত হবে? সে আপনাকে সাথে সাথে বলে দেবে ৬৬২৬৯। অথবা যদি প্রশ্ন করেন ৫০৭৫৪৪৪৪৩৫৪ এবং ৩৩৪৩৪৩ গুণ করলে কত হবে? সে তাও বলে দিতে পারবে। কারণ এটি একটি প্রোগ্রামিং ল্যাংগুয়েজ। এসব পিএইচপি বা জাভাস্ক্রিপ্ট ছাড়াও আরো অনেক প্রোগ্রামিং ল্যাংগুয়েজ আছে।
Static এবং Dynamic ওয়েব সাইট কি?
আমরা আমাদের ব্যবহার উপযোগী ওয়েব সাইট বা সফটওয়্যার দুটি ভাবে তৈরি করতে পারি। এই দুই উপায়ের মধ্যে একটি হলো Static (স্ট্যাটিক) এবং অন্যটি হলো Dynamic (ডাইনামিক)। এই পর্যায়ে এসে আমাদের জানা উচিত Static এবং Dynamic ওয়েব সাইট কী বা কীভাবে তৈরী করতে হয়। এসব বিষয় সর্ম্পকে ইউটিউবে অনেক ধরণের টিউটোরিয়াল রয়েছে। এগুলো দেখে অনায়াশেই ঘরে বসেই শিখতে পারবেন। আমরা জানি, আমাদের যেসব ওয়েব সাইট বা সফটওয়্যার পেইজের কোন কিছু সংযুক্ত, সম্পাদনা বা বাতিল করতে, মূল কোডে যাওয়া ছাড়া বিকল্প উপায়ে পরিবর্তন করা সম্ভব নয় সেগুলো হলো Static (স্ট্যাটিক) ওয়েব পেইজ। আর যেসব ওয়েব বা সফটওয়্যার পেইজর কোন কিছু সংযুক্ত, সম্পাদনা বা বাতিল করতে মূল কোডে যাওয়া ছাড়া বিকল্প কোন উপায়ে পরিবর্তন করা সম্ভব সেগুলো হলো Dynamic (ডাইনামিক) পেইজ। যেমন Facebook, টুইটার, লিংকডইন প্রভৃতি। আমরা চাইলে Facebook আমাদের Profile, যেকোন Post, Friend যোকোন সময় Add, Edit এবং Delete করতে পারছি।এই সুবিধা পাওয়ার কারণ ফেসবুক Dynamic ভাবে তৈরী করা হয়েছে।
মূলত ওই ওয়েবসাইটটি Dynamic ভাবে তৈরী করাতে আমাদের জন্য তা করা সম্ভব হয়েছে। তাই আমাদের কোন ওয়েবসাইট বা সফটওয়্যার তৈরি করার সময় সব কিছু Dynamic হচ্ছে কিনা সেদিকে অবশ্যই খেয়াল রাখতে হবে। তাছাড়া অনেক ক্ষেত্রে কষ্ট করাটা অনর্থক হয়।
ওয়েবসাইট কিভাবে তৈরি হয় ?
ওয়েব সাইট তৈরী করতে প্রথমে একজন ডিজাইনার ওয়েব পেজটির ডিজাইন করে থাকেন। বিকল্প উপায়েও ওয়েব পেজটির ডিজাইন করা যায়। তবে সাধারনত ফটোশপ দিয়ে ডিজাইনটির একটি বাহ্যিক রূপ দেয়া হয়। কিন্তু ফটোশপে যেসব টেক্সট, ইমেজ ব্যবহার করা হয় সেগুলো আমরা যেসব ব্রাউজার ব্যবহার করি(মজিলা ফায়ারফক্স, গুগল ক্রোম, সাফারী, অপেরা ইত্যাদি)ওয়েব ব্রাউজার তা বুঝতে পারবে না। এইসব ব্রাউজারগুলোকে বোঝানোর জন্য আলাদা কিছু ভাষা আছে যেমন – এইচটিএমএল (HTML), সিএসএস (CSS), জাভাস্ক্রীপ্ট (Java Script) ইত্যাদি।
প্রথমে এইচটিএমএল (HTML) দ্বারা ফটোশপে যে ডিজাইনটি করা হয় সেটির একটি আপাতত কাঠামো তৈরি করা হয়। তারপর সিএসএস (CSS) দ্বারা ফটোশপে যে ডিজাইন করা হয়েছে সেই রকম ডিজাইন করা হয় । আরও উন্নত কিছু করার জন্য জাভাস্ক্রীপট এবং জেকুয়েরি দিয়ে ডিজাইনে বিভিন্ন রকম এ্যাডভান্স ফিচার যোগ করা হয়। এরপর পিএইচপি, মাইএসকিউএল ইত্যাদি দিয়ে ওয়েব সাইটি সর্বসাধারণের জন্য ব্যবহার উপযোগী করা হয় ।
ওয়েব ডেভেলপমেন্ট কিভাবে শিখবেন?
এমন প্রশ্নের জবাবের উত্তর হলঃ শেখার জন্য কমপক্ষে দুই বছর সময় ব্যয় করবেন আপনাকে এমনটি মনস্থির করতে হবে। তারপর ফেসবুকের দুইটি গ্রুপে যোগ দিবেন একটা হল আর আর ফাউন্ডেশনের অফিসিয়াল গ্রুপ। আর একটি হল-Odesk help গ্রুপ।
w3schools এই ওয়েবসাইটটি আপনার হাতে কলমে শেখার জন্য সর্বত্তোম একটি ওয়েব সাইট। ব্যাক্তিগতভাবে আমি নিজেও এই ওয়েবসাইট খুব পছন্দ করি। আপনি চাইলে বিভিন্ন গ্রুপে যোগ দিয়ে প্রথমেই গ্রুপের ফাইল গুলো পড়ে নেওয়া একান্ত দরকার। প্রথমে হয়ত বুঝতে একটু কষ্ট হবে তারপরও ধৈর্য ধরে পড়ে নিতে হবে। এরপর গ্রুপে যে যত পোষ্ট দিবে নিয়মিত পড়তে এবং বুঝতে থাকবেন। তাহলেই আপনি একদিন আমার দেখান পথ ধরে হয়ে উঠতে পারেন একজন প্রফেশনাল ওয়েবসাইট অথবা সফটওয়্যার নির্মাতা ও ডেভেলপার।
আশা করছি বিষয়গুলো অনুধাবন করতে পেরেছেন। কোন বিষয় বুঝতে অসুবিধা হলে বা অন্য কিছু জানার থাকলে কমেন্টেস এর মাধ্যমে জানাবেন।