SL3 Framework

Choose A Programming Langauge

এই পেজ এখনো আপডেট করা হয় নি। এখানে আমাদের পুরাতন রিসার্সের আর্টিকেল দেওয়া আছে। খুব দ্রুতই এই পেজের কাজ সম্পন্ন করে আপডেট করা হবে। দয়া করে একটু ধৈর্য্য ধরুন।

সাইদুর কমার্সের স্টুডেন্ট। কিন্তু তার প্রোগ্রামিং এর প্রতি অনেক আগ্রহ। তার স্বপ্ন সে একজন ভালো মাপের প্রোগ্রামার হবে। এই স্বপ্ন পূরণের উদ্দেশ্যে সে অনেক জায়গায় দৌড়া দৌড়ি করেছে। অনলাইনে অনেক ঘাটা ঘাটি করেছে। কিন্তু কোনো ভাবেই যখন কিছু হচ্ছিল না তখন সে ফেসবুকে XYZ প্রতিষ্ঠানের বিজ্ঞাপণ দেখতে পান। সেখানে তারা ২ মাসে ওয়েব ডেভেলপমেন্ট এবং ফ্রিলান্সিং এর কমপ্লিট কোর্স করাবে। দুই মাস পারে ইনকাম গ্যারান্টিও দিচ্ছে। চকমপ্রদ বিজ্ঞাপন দেখে আগে পিছে চিন্তা না করেই সাইদুর সেখানে গিয়ে ভর্তি হয়ে গেলো।

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

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

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

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

আপনি যেই ল্যাংগুয়েজই সিলেক্ট করেন না কেন আপনার কাজ শুধুমাত্র প্রোগ্রামিং এর যেই ফান্ডামেন্টালস বিষয় গুলো এখানে আলোচনা করা হয়েছে, সেই গুলো নিয়েই স্টাডি করা। এর বাইরে কোনো কিছুই কমান্ডো ট্রেইনিং চলার সময়ে আপনি ছুঁয়ে দেখতে পারবেন না। SL3 Framework এর সাথে যাত্রা শুরু করার পূর্বেই আপনাকে এই ফান্ডামেন্টাল বিষয় গুলো আপনার পছন্দের ল্যাংগুয়েজে কিভাবে লিখতে হয় সে গুলো একটু দেখে নিবেন। আর তা না হলে পরে ল্যাংগুয়েজ সিনট্যাক্স এবং প্রব্লেম সল্ভিং আপনার জন্য একটা বড় সমস্যার সৃষ্টি করতে পারে।

Edit this page on GitHub