একজন ওয়েব ডেভেলপার হওয়ার জন্য আপনাকে কি কি শিখতে হবে? – পর্ব ১

ওয়েব ডেভলপিং তথা ওয়েব প্রোগ্রামিং একটি বিশাল বড় এরিয়া ।ওয়েব ডিজাইনের মত এইচটিএমএল সিএসএস অথবা জেকোয়েরি দিয়ে কাজ শেষ করে ফেলা সম্ভব নয়। বিভিন্ন ডেভেলপমেন্ট ল্যাঙ্গুয়েজ বিভিন্ন ধরনের গুনের অধিকারী। প্রতিনিয়তই কোন না কোন নতুন কিছু তৈরি হচ্ছে, কোন নতুন নতুন ইউজার অকশন অ্যাড হচ্ছে আমাদের ওয়েবসাইটে অথবা সফটওয়্যারগুলোতে ইউজার ফ্রেন্ডলি করার জন্য ডেভলপাররা বিভিন্ন ধরনের টেকনিক ব্যবহার করে ওয়েবসাইট সফটওয়্যার অথবা অ্যাপ তৈরি করে।
 
যেমন আমরা যখন পাঠাও অথবা উবার রাইড করি তখন তারা আমাদের ইনস্ট্যান্ট লোকেশনগুলো ধরে দিতে পারে এবং তা মোবাইলে আমাদের একাউন্টে শো করে তো আমরা সেই জায়গা থেকে যদি অন্য জায়গায় ডেস্টিনেশন সিলেক্ট করি তাহলে আমাদের একটি রাইট করার প্রাইস এবং দূরত্ব ডিসপ্লে হয় অ্যাপটিতে। মেজারমেন্ট করার এই অটোমেটিক ব্যাপারগুলোকে বলা হয় ডেভলপমেন্ট অথবা ডাইনামিক সিস্টেম।
 
এখন কথা হচ্ছে কোন ল্যাঙ্গুয়েজ শিখতে পারলে আপনি কোন ধরনের ডেভলপার হতে পারবেন তা আপনাকে আগে জানতে হবে। তাহলে আপনাকে অবশ্যই জানতে হবে যে আপনি কোন বিষয়টির উপর এক্সপার্ট হতে চান যখন আপনি কোন একটি বিষয়ের উপর এক্সপার্ট হতে চাইবেন তখনি আসবে আপনাকে কোন ল্যাঙ্গুয়েজ টি শিখতে হবে তা বুঝতে পারবেন। আসলে বিভিন্ন ল্যাঙ্গুয়েজ বিভিন্ন ধরনের কাজ করে যেমন ধরুন পিএচপি হচ্ছে ডাটাবেজ এর সাথে কানেকশন করে আপনার ইউজার এর ডাটা কালেক্ট করে এবং ডিসপ্লে করে এটি হচ্ছে এর প্রধান কাজ তাছাড়া জাভাস্ক্রিপ্টে আঙ্গুলার জেএস একটি ফ্রন্তেন্ড এবং বেকেন্ড ফ্রেমওয়ার্ক যেখানে আপনি আপনার ডাটাগুলোকে ফ্রন্টে নির্ধারণ করতে পারবেন।
 
যদিও বা কথাগুলো আপনার মাথার উপর দিয়ে গিয়েছে আমি পরে এই সবগুলো ব্যাপার সম্পর্কে ধারণা দিব যে কোনটি কিভাবে কাজে লাগে।
 
আমার মূল কথা হচ্ছে যে বিভিন্ন ধরনের প্রোগ্রামিং ল্যাঙ্গুয়েজ ডেভেলপমেন্ট এর ক্ষেত্রে বিভিন্ন ধরনের কাজ করে তো আপনাকে অবশ্যই বুঝতে হবে যে আপনি আসলে কোন বিষয়টির ওপর দক্ষতা অর্জন করতে চান এবং কোন বিষয়গুলো নিয়ে কাজ করতে চান।
 
ফ্রন্টেন্ড হচ্ছে আপনি আপনার চোখে ওয়েবসাইট, সফটওয়ার অথবা এপস এর যে ডিজাইন অথবা কন্টেন্ট দেখতে পান তাই ফ্রন্টেন্ড।
 
আর বেকএন্ড হচ্ছে আপনি ওয়েবসাইট এর ইউজার এর চোখের সামনে যা দেখতে পাচ্ছে তা কোনও গোপন লগিন এক্সেস অথবা কোডিং দ্বারা নিয়ন্ত্রন করার অপশন অথবা ফাংশনালিটি।
 
 
যেহেতু আর্টিকেলটি ওয়েব ডেভলপারদের জন্য করা তাই আমি এখন ওয়েব ডেভলপারদের কিছু প্রয়োজনীয় এবং পপুলার প্রোগ্রামিং ল্যাঙ্গুয়েজ সম্পর্কে ধারণা দিব।
 
এই রকম অনেক কিছুই আছে, আমি আপনাদেরকে কিছুটা হাবিজাবি বোঝানোর চেষ্টা করলাম যে ওয়েব ডেভেলপমেন্ট ব্যাপারটি আসলেই কি?
 
ওয়েব ডেভেলপমেন্ট বুঝানোর জন্য আর্টিকেলটি অনেক বড় হবে তাই আমি আর্টিকেলটি কয়েকটি সিরিয়াল অনুযায়ী পোস্ট করব বিভিন্ন ডেভলপমেন্ট প্রসেস এবং বিভিন্ন ল্যাঙ্গুয়েজে সম্পর্কে ধারণা দিয়ে তাহলে বুঝতে পারবেন যে আপনাকে কোন ল্যাঙ্গুয়েজ কোন ডেভেলপমেন্টের জন্য শিখতে হবে।
 
এই আর্টিকেলটিতে আমি সাধারন ভাবে ওয়েব ডেভেলপমেন্ট শিক্ষার বিভিন্ন ল্যাঙ্গুয়েজে একটি ছোট বর্ণনা দিয়ে দিচ্ছি এবং অন্যান্য আর্টিকেল গুলোতে এই ব্যাপারগুলোর ভালোভাবে বর্ণনা করার চেষ্টা করব।
 
পিএইচপি :
 
যদি আপনার html-css সম্পর্কে ভালো ধারণা থাকে এবং ডিজাইন রিলেটেড কাজ আপনি ক্লিয়ার থাকেন তাহলে ওয়েব ডেভেলপমেন্ট এ আপনাকে প্রথমেই আমি সাজেস্ট করব যে আপনি পিএইচপি সম্পর্কে একটি ভাল ধারণা নিয়ে নিন।
 
যদি ডেভোলপমেন্ট শিখতে চান তাহলে আমি বলব পিএইচপি অনেক সহজ একটি ল্যাঙ্গুয়েজ ওয়েব ডেভেলপমেন্ট এর ক্ষেত্রে যা শিখতে আপনার খুবই সহজ হবে এবং যদি পরবর্তীতে পিএইচপি ভালো না লাগে তাহলে আপনি অন্যান্য ল্যাঙ্গুয়েজে শিখতে পারবেন এবং দেখবেন যে পিএইচপিতে যেভাবে আপনি বেসিক শিখেছিলেন ঠিক সেভাবেই অন্যান্য ডেভলপমেন্ট ল্যাংগুয়েজ গুলো তৈরি করা হয়েছে তাহলে আপনার অন্যান্য ল্যাংগুয়েজ গুলা শিখতে অনেক সুবিধে হবে।
 
পিএইচপি মূলত একটি স্ট্যাটিক এইচটিএমএল ওয়েব সাইটকে ডায়নামিক ওয়েবসাইট এ রূপান্তর করার জন্য ব্যবহার করা হয়ে থাকে। ধরুন ফেইসবুক যেখানে আপনি লগইন করার পর যদি আপনার ইউজার নেম এর উপর ক্লিক করেন তাহলে আপনি আপনার প্রোফাইলে চলে যাবেন এখন ভাবুন এই প্রোফাইলটি তৈরি করা হয়েছে এইচটিএমএল এবং সিএসএস দিয়ে যা একটি স্ট্যাটিক পেইজ কিন্তু যখনই আপনি প্রোফাইলটি এডিট করতে চাইবেন তখন ফেসবুক আপনাকে এডিট করার অপশন দিবে এবং আপনি আপনার ইচ্ছামত এডিট করতে পারবেন তারপর যখন আপনি এডিট করার পর সেভ করবেন তখন আপনার নতুন আপডেটেড এডিট গুলো প্রোফাইলে দেখাবে এইযে এডিট আপডেট ডিলিট করার ব্যাপার গুলো সেই ব্যাপারগুলোই হচ্ছে পিএইচপির মূল কাজ অথবা একে বলা হয় ডাইনামিক যা পরিবর্তনশীল।
 
আশাকরি পিএইচপি কি এবং কি কাজে লাগে তা আপনারা বেসিক একটি ধারণা পেয়েছেন।
 
পিএইচপি সাধারণত back-end এ কাজ করার জন্য খুবই উপযোগী একটি প্রোগ্রামিং ওয়েব ল্যাঙ্গুয়েজ ।back-end এ কাজ করার জন্য পিএসপির বিভিন্ন সিএমএস এবং ফ্রেমওয়ার্ক তৈরি করা আছে যা দ্বারা আপনি অধিকাংশ কোড লেখা থেকে বিরত থেকে আপনি আপনার কাজ চালিয়ে যেতে পারবেন।
 
সিএমএস এর মধ্যে সবচেয়ে জনপ্রিয় হচ্ছে ওয়ার্ডপ্রেস এবং ফ্রেমওয়ার্ক এর মধ্যে সবচেয়ে জনপ্রিয় হচ্ছে লারাভেল।
 
পরবর্তী আর্টিকেল গুলোতে আমি আপনাদেরকে এই বিষয়গুলো সম্পর্কে ভালোভাবে ধারণা দিয়ে দিব আপাতত বেসিক ধারণাটুকু নিয়ে নিন এবং আপনাদের যদি কোন প্রশ্ন থাকে তাহলে অবশ্যই কমেন্ট করতে পারেন।
 
জাভাস্ক্রিপ্ট ঃ
 
আরেকটি অসাধারণ প্রোগ্রামিং ল্যাঙ্গুয়েজ হচ্ছে জাভাস্ক্রিপ্ট যা একটি স্ক্রিপ্টিং ল্যাঙ্গুয়েজ আপনি সফটওয়্যার অ্যাপ এবং ওয়েবসাইটেও ব্যবহার করতে পারবেন, এই প্রোগ্রামিং ল্যাঙ্গুয়েজ ব্রাউজার এবং ব্রাউজার এ সহযোগিতার ছাড়াও back-end এ কাজ করতে পারে।
 
জাভাস্ক্রিপ্ট সাধারণত ফ্রন্টে ব্যবহার করা হতো যা আপনার এইচটিএমএল এবং সিএসএস এর ডিজাইন কে আরো প্রাণবন্ত এবং আকর্ষণীয় করে তুলবে।
 
যেমন আপনারা যারা এইচটিএমএল এবং সিএসএস নিয়ে কাজ করেছেন তারা হয়তোবা অবশ্যই জেকোয়েরি লাইব্রেরী এর কথা শুনেছেন যা একটি জাভাস্ক্রিপ্টের ফ্রন্ট এন্ড লাইব্রেরী যেখানে আপনি এইচটিএমএল সিএসএস এর দ্বারা তৈরি টেম্পলেটটি কে আরও আকর্ষণীয় করে তুলতে পারবেন বিভিন্ন এনিমেশন দিয়ে। তাছাড়া react.js নামে আরেকটি ফ্রন্ট লাইব্রেরী আছে জাভাস্ক্রিপ্ট এর যেটি এখন অনেক বেকেন্ডের কাজেও ব্যবহার করা হয় এবং এই লাইব্রেরি তে যারা কাজ জানে তাদের মাসিক সেলারি প্রায় 2 হাজার ডলারের উপরে এবং এটি খুবই পাওয়ারফুল একটি জাভাস্ক্রিপ্ট লাইব্রেরী। যারা ইতোমধ্যে ওয়ার্ডপ্রেসে কাজ করছেন তারা অবশ্যই গুটেনবার্গ এর নাম জানেন যা সম্পূর্ণরূপে কাজ করানোর জন্য আপনাকে react.js ব্যবহার করা জানতে হবে।
 
জাভাস্ক্রিপ্টের কিছু ফ্রেমওয়র্ক আছে তার মধ্যে অন্যতম হচ্ছে node.js এবং এঙ্গুলার জেএস এইগুলো অনেক হাই লেভেল ফ্রেমওয়ার্ক যা দ্বারা আপনি একটি সিঙ্গেল অ্যাপ্লিকেশন তৈরি করতে পারবেন এবং এই ফ্রেমওয়ার্ক গুলোর যারা কাজ জানেন তাদের মাসিক সেলারি প্রায় ৩ থেকে ৫ হাজার ডলারের উপরে আপনারা চাইলে গুগল করে এই ফ্রেমওয়ার্ক এবং লাইব্রেরির মাসিক সেলারি দেখে নিতে পারেন।
 
পরবর্তী আর্টিকেলটিতে আমি আপনাদেরকে এক একটি বিষয় সম্পর্কে বিশ্লেষণ করবো আরও ভালো হবে এবং কিভাবে স্টেপ বাই স্টেপ বিষয়গুলোর শিখবেন সেই সম্পর্কে ধারণা দিব। হয়তোবা আমি অনেক কিছুই জানিনা তবে আমি যতটুকু জানি তার পূর্ণাঙ্গ ধারণা দেওয়ার চেষ্টা করব।
No Comments

Post A Comment

name:

phone:

email:

skype:

address:

Interested course: