আজকে আমি আপনাদেরকে ওয়েব ডেভেলপমেন্ট বিষয় নিয়ে সুস্পষ্ট ধারণা দিবো।
প্রথমেই জেনে নিন ওয়েব ডেভেলপার সম্পর্কে ;
ওয়েব ডেভেলপার ঃঃ ওয়েব ডিজাইনকে একটি লাইভ ওয়েবসাইটে রুপান্তর করেন। ওয়েব ল্যাংগুয়েজ, সফটওয়্যার ও টুলসের সমন্বয়ে ডিজাইন কে ডেভেলপ করে একটি ফাংশনাল ওয়েবসাইট হিসেবে তৈরী করা হয়। ওয়েব ডেভেলপারকে দুইটি ক্যাটাগরীতে ভাগ করা হয়; ফ্রন্ট-এন্ড ডেভেলপার এবং ব্যাক-এন্ড ডেভেলপার।
ফ্রন্ট-এন্ড ডেভেলপার মূলত ৩ টি প্রধান ল্যাংগুয়েজ নিয়ে কাজ করে থাকে – Hypertext Markup Language (HTML) , Cascading Style Sheets (CSS) ও JavaScript (JS). একজন ডেভেলপার এই ল্যাংগুয়েজ গুলো দিয়ে যেকোনো ধরণের প্রফেশনাল ও মর্ডাণ ওয়েবসাইট তৈরী করতে পারে। মূলত ডিজাইন লেআউট থেকে ছবি, টাইপোগ্রাফি – ফন্ট ফ্যামিলি, এনিমেশন বা মোশন গ্রাফিক্স ব্যবহার করে; অনেকগুলো ইন্টারফেসে নতুন ও অসাধারণ ওয়েবপেজ তৈরী করাই ফ্রন্ট-এন্ড ডেভেলপারের কাজ।
ব্যাক-এন্ড ডেভেলপার – যে কিনা সার্ভারের ডাটা এবং রিকোয়েস্ট গুলো কন্ট্রোল করে থাকে। ডাইনামিক ওয়েবসাইটের ব্যাক-এন্ডে অনেকগুলো সার্ভিসের প্রয়োজন পড়ে বা কাজ করে থাকে। আপনি নিশ্চয়ই গুগল ফর্ম পূরণ করেছেন? অথবা, কোনো ওয়েবসাইটে একাউন্ট তৈরী করেছেন? ওয়েবসাইটে কোনো ডেটা ইনপুট করার পর সেটা সেভ হওয়ার জন্য ডেটাবেজের প্রয়োজন পড়ে। ডেটাবেজ কানেকশনের মাধ্যমে সার্ভার নিজ থেকেই ডেটা গুলো সেভ করে রাখে এবং প্রয়োজন মতো ডেটার আউটপুট দেয়। ব্যাক-এন্ড ডেভেলপার সার্ভার সাইড ডেভেলপ করতে PHP, NodeJS, Python বা Ruby ল্যাংগুয়েজ ব্যবহার করে থাকে। এবং ডাটাবেজ কুয়েরী লিখতে SQL বা NoSQL এর মধ্যে (MySQL, MongoDB) ল্যাংগুয়েজ ব্যবহার করে থাকে।
ওয়েব ডেভেলপারের যেসব কাজ করতে হয়
ওয়েব ডেভেলপারের মূল কাজ হচ্ছে, ওয়েবসাইটের একচুয়াল ইন্টারফেস বানানো। এই ইন্টারফেস একজন ফ্রন্ট-এন্ড ডেভেলপার HTML, CSS ও JS ল্যাংগুয়েজ দিয়ে তৈরী করে থাকে।
ফ্রন্ট-এন্ড ডেভেলপার মডার্ণ স্টাইল ও এডভান্স ডিজাইন করতে CSS প্রিপ্রসেসর, জাভাস্ক্রিপ্ট লাইব্রেরী ও ফ্রেমওয়ার্ক ব্যবহার করে থাকে, যাতে ওয়েবসাইট ডেভেলপমেন্টের কাজ দ্রুত হয়।
ফ্রন্ট-এন্ড ডেভেলপার একটি মার্কআপ ডিজাইন ব্যাক-এন্ড ডেভেলপার কে দেয়, যাতে উভয়ই মিলে ডিজাইনটিকে ডাইনামিক ওয়েবসাইটে রূপ দিতে পারে এবং সার্ভার ও ডেটাবেজে প্রয়োজনীয় ডেটা সাজিয়ে রাখতে পারে।
ব্যাক-এন্ড ডেভেলপার PHP/NodeJS ও MySQL ল্যাংগুয়েজ ব্যবহার করে ওয়েবসাইটের ব্যাকবোন তৈরী করে।
উভয়ই একই ধরণের ডেভেলপমেন্ট এনভায়রনমেন্ট বা IDE ব্যবহার করে। এবং প্রায় একইরকম সফটওয়্যার/এপ্লিকেশন বা টুলস দিয়ে কোড লিখে ওয়েবসাইট বিল্ড করে থাকে।
ওয়েব ডেভেলপার ভার্শন কন্ট্রোল (কোডের হিস্টোরী) করার জন্য গিট ব্যবহার করে থাকে। যাতে খুব সহজেই নতুন করে বিল্ড করা কোডে সমস্যা হলে পূর্ববর্তী ভার্শনে ফিরে যাওয়া যায়।
ফুল-স্ট্যাক ডেভেলপার কি করে?
উপরে ডেভেলপমেন্ট নিয়ে যা কিছু আলোচনা করা হয়েছে, তার সব কিছু নিয়ে যার পরিপূর্ণ জ্ঞান রয়েছে তিনিই ফুল-স্ট্যাক ডেভেলপার। তারমানে ফুল-স্ট্যাক ডেভেলপার হচ্ছেন এমন কেউ, যে কিনা একটি ওয়েবসাইট শুরু থেকে শেষ পর্যন্ত তৈরী করতে পারেন। সাধারণত ফুল-স্ট্যাক ডেভেলপারের ডিজাইন ও ইউজার এক্সপেরিয়েন্স নিয়ে বেসিক ধারণা থাকে। ফুল-স্ট্যাক ডেভেলপার হতে হলে আপনার সবগুলো ল্যাংগুয়েজে এক্সপার্ট হতে হবে ব্যাপারটা এমন নয়। একসাথে অনেক গুলো ল্যাংগুয়েজে এক্সপার্ট বা প্রফেশনাল হওয়া বিষয়টি খুব সহজ নয়। তাছাড়া ওয়েব টেকনোলজি খুব কম সময়ের মধ্যে পরিবর্তিত হচ্ছে।
যেমন, বর্তমানে React.JS বা Angular.JS নিয়ে বেশী কাজ করা হচ্ছে, কিন্তু এমন একটা সময় ছিলো যখন এই ধরণের ফ্রেমওয়ার্ক ছাড়াও ফুল-স্ট্যাক ওয়েব ডেভেলপমেন্ট হতো। কে জানে! বর্তমানে বহুল প্রচলিত ল্যাংগুয়েজ গুলোর জায়গা হয়তো অচীরেই এর মতো কেউ জায়গা নিয়ে নিবে।
ওয়েব সম্পর্কিত বেসিক সবধরণের জ্ঞান থাকা একজন ফুল-স্ট্যাক ডেভেলপারের জন্য অবশ্যই প্লাস পয়েন্ট। তবুও সব বিষয়ে এক্সপার্ট হওয়ার চেয়ে যেকোনো একটিতে ফোকাস হওয়া বেশী জরুরী। ওয়েব ডেভেলপমেন্টে ফ্রন্ট-এন্ড বা ব্যাক-এন্ড যে বিষয় নিয়ে কাজ করতে বেশী ভালো লাগবে সে বিষয়ে অধিক সময় নিয়ে কাজ করা উচিত।
No comments:
Post a Comment