আর্টিকেলটি পড়ে আপনি যে প্রশ্নগুলোর উত্তর পাবেন।
১। Front End Development কেন শিখবেন?
২।Front End Development কি?
৩। Front End ডেভেলপাররা কি করে?
৩। Front End Development শিখতে কি কি স্কিল শিখতে হবে?
৪। কোথায় থেকে শিখবো?
১। Front End Development কেন শিখবেন?
বর্তমান বিশ্বে সবচেয়ে বেশি বেতন পাওয়া প্রপেশনালদের মধ্যে Front End Developers অন্যতম। GlassDoor এর মতে আমেরিকার একজন Frontend Developer এর বার্ষিক আয় $87,240 ডলার। বাংলাতে হয় ৳8,272,870.62 টাকা। সুতরাং বুঝতেই পারছেন এই স্কিল এর ডিমান্ড কত। তাছাড়া, Front End Developers হওয়ার জন্য আপনার কোনো কলেজ ডিগ্রি বা সার্টিফিকেট দরকার হবে না। আপনাকে জানতে হবে Front End ডেভেলপারের ফান্ডামেন্টালস, প্রোগ্রামিং ল্যাঙ্গুয়েজ ও Front End ফ্রেমওয়ার্ক। যেগুলো আপনি যদি একজন নন সিএসসি ব্যাকগ্রাউন্ড হন তাহলেও আপনি সহজেই একজন Front End Developer হতে পারবেন।
আপনি যদি একটি গোছালো কোর্স বা কারিকুলাম অনুসরণ করেন, তাহলে আপনি ৬ মাসের মধ্যে একজন ভালো Front End ডেভেলপার হয়ে যেতে পারবেন। যদি আপনি একটা নির্দিষ্ট সময় ব্যয় করেন।
২। Front End Development কি?
খুব সহজ ভাষায় যদি বলি। একজন ইউজার একটা ওয়েবসাইট ভিজিট করার পর যে অংশগুলো দেখে এবং সেগুলার সাথে ইন্টারক্ট করে তাকে ফ্রন্ট এন্ড ডেভেলপমেন্ট বলে। আমরা যে সকল ওয়েবসাইট ইন্টারনেটে ব্রাউজ করি, ইকমার্স ওয়েবসাইট থেকে বিভিন্ন পন্য অর্ডার করি এবং বিভিন্ন ব্লগে আর্টিকেল পড়ি। এই সকল ওয়েবসাইট ইউজার ফ্রেন্ডলি করে সুন্দর ডিজাইন করে যারা তৈরি করে তারা হচ্ছে Front End ডেভেলপার।
আপনি যখন ওয়েব আপ্লিক্যাশন বা ওয়েবসাইট ডেভেলপ করা শিখতে যাবেন। সেখানে দুইটা প্রধান বিষয় সামনে আসে। একটা Front End এবং Back End।
আপনাকে যদি একটা উদাহরণ দিই তাহলে আপনার এই দুইটা বিষয় কি সেটা বুঝতে আরো সহজ হবে। যেমনঃ আপনি যখন অনলাইনে কোনো ফর্ম পূরণ করেন তখন আপনার সামনে একটা ফর্ম থাকে সেখানে আপনার বিভিন্ন তথ্য দিতে বলে। আপনার নাম , বাবা-মায়ের নাম , ইমেইল এড্রেস ইত্যাদি। এখন আপনি যে ফর্ম পূরণ করলেন। পূরণ করার শেষে আপনি সেটি সাবমিট করেন। কিন্তু আপনি জানেন না সেটা কোথায় গেছে। আপনার সেই ফর্মটা সার্ভারের ডাটাবেসে জমা হয়েছে কিন্তু সেটা আপনি দেখেন নাই। এখন আপনি যে ফর্মটা দেখেছেন ও বিভিন্ন তথ্য দিয়ে পূরণ করেছেন সেটা হচ্ছে ফ্রন্টএন্ড আর আপনি যে অংশটা দেখেন নাই মানে আপনার ফর্ম ডাটাবেসে জমা হওয়ার বিষয়টা আপনি দেখেন নাই তাকে বেকেন্ড ডেভেলপমেন্ট বলে। বেকেন্ড মূলত ডেভেলপাররাই দেখে।
৩। Front End ডেভেলপাররা কি করে?
Front End ডেভেলপাররা মূলত ওয়েবসাইটের ফ্রন্ট পেজ নিয়ে কাজ করে। তারা HTML , CSS, JavaScript ব্যবহার করে একটা ওয়েবসাইটের ফ্রন্ট পেজ তৈরি করে।
সেই সাথে তারা তাদের তৈরিকৃত ওয়েবসাইট মোবাইল ফ্রেন্ডলি করে । অর্থাৎ একটা ওয়েবসাইট যাতে প্রত্যেকটি ডিভাইসে ঠিকভাবে দেখায় সে জন্য তারা সেই ওয়েবসাইটকে রেস্পন্সিভ করে। কারণ একটা ওয়েবসাইট তো আর শুধুমাত্র মোবাইল থেকে লোকজন ভিজিট করে না। কেও করে ল্যাপটপ আবার কেও ম্যাক ,কেও কেও লিনাক্স অপারেটিং সিস্টেম ব্যবহার করে থাকে। তাই একজন ফ্রন্ট এন্ড ডেভেলপার কে অবশ্যই তার তৈরি করা ওয়েবসাইট কে রেস্পন্সিভ করতে হয়।
এছাড়াও এসইও এর জন্য অপ্টিমাইজ করতে হয়। তাছাড়া কোনো সমস্যা দেখা দিলে ওয়েবসাইটের ফ্রন্টপেজে সেটা সমাধান করতে হয়।
৩। Front End Development শিখতে কি কি স্কিল শিখতে হবে?
আমি এখানে প্রত্যেকটা ল্যাঙ্গুয়েজ এর ব্যখা দিবো না। কেননা আর্টিকেলটি অনেক লম্বা হয়ে যাবে। আমি আপনাকে শুধু জিনিসটা কি সেটা বলবো।
1.HTML
এইচটিএমএল কি? (What is HTML?)
HTML মানে Hyper Text Markup Language.
এটা ওয়েবপেজ তৈরি করার জন্য একটা Standard Markup Language.
এটা আপনার ওয়েবপেজের স্টাকচার তৈরি করতে ব্যবহিত হয়।
এটা Browser কে কিভাবে আপনার শো করাবে তা বলে। মানে হেডিং কিরকম হবে আবার প্যারাগ্রাপ কিরকম হবে।
2.CSS
সিএসএস কি? (What is CSS?)
CSS মানে Cascading Style Sheets
সি এস এস (CSS) মাধ্যমে একটি web document / website এর design, style, layout বা structure তৈরি করা যেতে পারে।
CSS এর মাধ্যমে একটি ওয়েব পেজ বা ওয়েবসাইট কে সাজানোর জন্য।
এই সি এস এস ভাষার মাধ্যমে আপনি একটি ওয়েব পেজের color, font, size of text, spacing between elements, background images or background colors, আলাদা আলাদা ডিভাইস এর জন্য আলাদা আলাদা ওয়েব পেজ ডিসপ্লে সাইজ এবং যাবতীয় ডিজাইন নিয়ন্ত্রণ করতে পারবেন।
3.JavaScript
জাভাস্ক্রিপ্ট হচ্ছে একটা প্রোগ্রামিং ল্যাঙ্গুয়েজ। আপনি এটার সাহাজ্যে আপনি আপনার এইচটিএমএল ও সিএসএস দিয়ে তৈরি করা স্ট্যাটিক ওয়েবপেজ কে ইন্টার্যাক্টিভ করতে পারবেন। অর্থাৎ আপনি এইচটিএমএল ও সিএসএস দিয়ে যে ওয়েবপেজ তৈরি করবেন সেগুলো হবে একপ্রকারের মৃত ওয়েবসাইট। সেখানে আপনি কোনো কিছু ইন্টারক্ট করতে পারবেন না। কিন্তু আপনি জাভাস্ক্রিপ্ট এর সাহাজ্যে যেকোনো ইলিমেন্টস কে ইন্টারক্ট করতে পারবেন।
4.CSS Framework
আপনি যখন সিএসএস শিখবেন আপনার প্রত্যেকটা জিনিস ধরে ধরে করতে হবে। যেমন আপনি একটা লেআউট বানাতে চাচ্ছেন তাহলে আপনার অনেক কোড লিখতে হবে যেটা আপনি কোনো একটা সিএসএস এর ফ্রেমওয়ার্ক ব্যবহার করে সহজে করে ফেলতে পারেন। আবার অনেক কিছু জিনিস আপনি ফ্রেমওয়ার্ক সহজে বানাতে পারলেও সিএসএস দিয়ে সেটা বানাতে অনেক কষ্ট বা কোড লিখতে হবে। যেমন সিএসএস দিয়ে যদি আপনি স্লাইড বানাতে চান মানে বিভিন্ন ওয়েবসাইটে উপরে থাকে কিছুক্ষণ পরে একটার পর একটা আসে। যেটাকে সিএসএস ফ্রেমওয়ার্ক বুটস্ট্রাপে ক্যারোসাল বলে। আপনি যদি সেটা সিএসএস দিয়ে বানাতে চান আপনার অবস্তা খারাপ হয়ে যাবে।
কিন্তু আপনি যদি একটা সিএসএস ফ্রেমওয়ার্ক ব্যবহার করেন তাহলে আপনি শুধু কপি করে কোডগুলো বসিয়ে ভিতরের ইলিমেন্টস গুলো পরিবর্তন করলে হয়ে যায়। তাই আপনি একটা সিএসএস ফ্রেমওয়ার্ক শিখবেন। পারলে একের অধিক শিখবেন। এগুলো একটা ফ্রেমওয়ার্ক শিখতে আপনার ১০ থেকে ১৫ দিন লাগবে। যেমন এখন সবচেয়ে বেশি পপুলার হচ্ছে TailWind Css. আপনি চাইলে এটা শিখতে পারেন। অথবা Bootstrap শিখতে পারেন।
5. JavaScript library
ঠিক সিএসএস এর মতো আপনি যদি একটা জাভাস্ক্রিপ্ট এর লাইব্রি শিখেন তাহলে আপনি অনেক গুলো জাভাস্ক্রিপ্টের জিনিস তৈরি করা অবস্তাই পেয়ে যাবেন। আপনি এক্ষেত্রে Jquery শিখতে পারেন।
6. Verson Control and other developer tools
ভার্সন কন্ট্রোল বলতে আপনি যে ফাইল গুলোতে কাজ করবেন বা কোড লিখবেন। যেমন এইচটিএমএল, সিএসএস ও জাভাস্ক্রিপ ইত্যাদি যেকোনো ফাইল এই ভার্সন কন্ট্রোল দেখে রাখবে। কখন আপনি কোনো ফাইলে কোড চেঞ্জ করবেন সেই চেঞ্জ হওয়া ফাইলের সে রেকর্ড রাখবে। এছাড়া এটার আরো অনেক কাজ আছে। আপনি হয়তো কোনো একজন ক্লায়েন্টের কোনো একটা ওয়েবসাইট তৈরি করলেন। সেটাতে কোনো একটা ফিচার আপনি নতুন ভাবে যুক্ত করলেন কিন্তু সেটা আপনার ক্লায়েন্টের পছন্দ হয় নাই। সেই চাচ্ছে আগের ভার্সনে ফিরে জিতে বা তার ওয়েবসাইট আগের মতো রাখতে। এখন আপনি আগের ভার্সনের ফাইলটা কোথায় পাবেন। যেটা পেতে আপনাকে ভার্সন কন্ট্রোল সাহায্য করবে। এই কারনে ভার্সন কন্ট্রোল জানা অনেক জরুরি।
আপনি ভার্সন কন্ট্রোল হিসাবে Git ও GitHub শিখতে পারেন।
৪। কোথায় থেকে শিখবো?
আজকের এই ওপেন সোর্স দুনিয়াতে কোনো কিছু শিখতে চাইলে। আপনার তথ্যে অভাব নাই। অনলাইনে এত বেশি রিসোর্স আছে যে আপনি সবগুলো পড়তে বা শিখতে পারবেন না। আপনি এখন যেকোনো কিছু শিখতে চাইলে ইউটিউবে সার্চ দিলে সেই বিষয়ে অসংখ্য তথ্য পেয়ে যাবেন। কিন্তু কথা হচ্ছে রিসোর্স বেশি হওয়ার কারনে কেও কেও হারিয়ে যাই। কিভাবে শুরু করবে? কোনটা দিয়ে শুরু করবে সেটা আর বুঝে উঠতে পারে না।
আমি আপনাকে ২টা ফ্রী রিসোর্সের কথা বলবো আপনি সেখান থেকে শুরু করতে পারেন।
1. W3schools
2. MDN - Mozilla Developer Network
আপনি এই দুইটা রিসোর্স ব্যবহার করে শিখতে পারেন। কিন্তু আপনি যদি ইংলিশে ভালো দক্ষ না হন তাহলে এই রিসোর্স গুলো ব্যবহার করে শিখা অনেক কষ্ট হবে।
তাছাড়া এই শিখলে আপনি পূর্ণাঙ্গ শিখতে পারবেন কিন্তু আপনি এখানে কোনো প্রজেক্ট করতে পারেবন না। তারা মূলত ডুকুমেন্টশন প্রোভাইড করে। যার কারনে অনেকে সেখানে সব ডুকুমেন্টশন শেষ করার পরও রিয়েল লাইফ কোনো প্রোজেক্ট করতে পারে না। আপনি শিখার সময় সেখানে এই রকম কোনো বড় রিয়েল লাইফ প্রজেক্ট করতে পারেবন না।
যেটা আপনার ফ্রেন্ট এন্ড ডেভেলপার হওয়ার একটা ধাপ মিস হয়ে যায়। তাছাড়া কেও যখন কোনো বিষয়ে আটকে যায় তারা কারো কাছ থেকে জিজ্ঞেশ করতে পারে না। এইসকল কারনে বেশিরভাগ ডেভেলপার এমন একটা কোর্স খুজে যেখানে সে একটা পরিপূর্ণ গাইডের মাধ্যমে প্রজেক্ট সহ শিখতে পারে। যেটা করার পর হয়তো তারা একজন ফ্রন্ট এন্ড ডেভেলপার হিসাবে কাজ করতে পারবে। এইরকম কোর্স বাংলা ভার্সনে ৪-৫ বছর আগে ছিলো না কিন্তু এখন দিন দিন প্রজুক্তিগত উন্নয়নের কারনে বাংলাভাষাবাশিরাও পিছিয়ে নেই।
আপনি যদি সেই রকম একটা কোর্স করতে চান যেখানে , আপনি জিরো থেকে একদম আডভাঞ্চড পর্যন্ত শিখতে পারবেন একটা গোছালো কারিকুলাম অনুসারে আপনাকে একজন ফ্রন্ট এন্ড ডেভেলপার বানিয়ে দিবে। তাহলে আপনি এই কোর্সটা করতে পারেন।👉👉 কমপ্লিট ফ্রন্ট-এন্ড ডেভেলপমেন্ট শিখুন
ইউটিউবে আপনি অনেক ভিডিও পাবেন তবে আপনি হয় কোনো প্রজেক্ট বেস পড়ায় এমন কোনো কোর্স পাবেন না। সেই জন্য আপনি যদি একটি কোর্স করে সববিষয় এক জায়গায় পেতে চান তাহলে এই কোর্সটা করতে পারেন।
এরকম আরো গাইডলাইন ভিত্তিক আর্টিকেল পেতে আমাদের টেলিগ্রাম চ্যানেলে Join করুন।