কম্পিউটার গণনার যন্ত্র । গণনার কাজটিকে সহজে এবং কম সময়ে করে ফেলার জন্যই বিজ্ঞানীরা এই মেশিনটাকে আবিস্কার করে ফেলে । একসময় এই যন্ত্রটা আরও আধুনিক হয়ে উঠে । এটা দিয়ে গান শোনা যায়, মুভি দেখা যায়, গেম খেলা যায় এমনকি একটা গেম তৈরিও করে ফেলা যায় ।
কম্পিউটারের তাহলে অনেক বুদ্ধি তাই না ? না, কম্পিউটারের নিজের কোন বুদ্ধিই নাই । এটা একটা বোকাসোকা যন্ত্র । মানুষ যেভাবে বলে সেভাবেই তাড়াহুড়া করে বাধ্য হয়ে সে কাজ করে ।¬¬¬ আর আমরা যে গান শুনছি, আর গেম খেলছি না? কম্পিউটার কিন্তু সেগুলোর কিছুই বুঝে না ! সে শুধু বুঝে ০ আর ১ । এই ০ আর ১ হচ্ছে বাইনারি সংখ্যা পদ্ধতি যাকে কম্পিউটার এর ভাষাও বলা হয় । ডিজিটাল সিগন্যালে ০ কে অফ আর ১ কে অন হিসেবে ধরা হয় ।
তাহলে মনিটরে আমরা কিভাবে বাংলা লেখা দেখতে পাচ্ছি ? প্রশ্ন উঠতেই পারে । এর পেছনেও অসংখ্য ০ আর ১ কাজ করছে । আমি যেই বাংলা লিখা লিখছি সেটা কনভার্ট হয়ে অসংখ্য 0 আর 1 এ পরিণত হয় । যেমন 001110011000111101100101100 এরকম হিজিবিজি একটা কিছু । সেটা আবার ডেসিম্যাল সংখ্যা পদ্ধতিতে কনভার্ট হয় । তারপরেই আমরা কম্পিউটার স্ক্রীনে আমাদের বাংলা ভাষা দেখতে পারি । আর এই সকল জটিল কাজগুলো সম্পন্ন হয় CPU এর ভিতরে । আর কাজগুলো এত দ্রুত হয় যে আমরা বুঝতেই পারি না ।
**বাংলা লিখা মনিটরে প্রদর্শিত হওয়ার ক্ষেতে আরও কিছু বিষয় রয়েছে যেমন Unicode, ASCII ইত্যাদি । যা কম্পিউটার সায়েন্স পড়লে ভালোভাবে জানা যায় । গুগল সার্চ করেও জানতে পারেন ।
**ঠিক একই ভাবে আমরা যে গান শুনি বা গেম খেলি সবগুলোর ভিতরেই রয়েছে কোটি কোটি ০ আর ১ এর প্রসেসিং । মূলকথা হচ্ছে কম্পিউটার দিয়ে যা কিছুই করা হোক না কেন কম্পিউটার সবকিছু বুঝে আর ১ দিয়ে ।
কম্পিউটার প্রোগ্রামিং কি?
কম্পিউটার প্রোগ্রামিং হচ্ছে কম্পিউটারকে দিয়ে কোন কাজ করিয়ে নেওয়ার জন্য কম্পিউটারকে দেওয়া নির্দেশনা । আমরা যে গেম খেলছি, বা মিউজিক প্লেয়ার ওপেন করে একটা গান শুনছি, অথবা ইন্টারনেট ব্রাউজ করছি এগুলো কিন্তু কম্পিউটার নিজে নিজে করতে জানত না, কোন এক প্রোগ্রামার তাকে বলে রেখেছিল যে কেউ যদি গান শুনতে চায় তাহলে তাকে গান শুনিয়ে দিবে, পছন্দের গানগুলো আলাদা করে রাখবে, কেউ তুমার সাথে গেম খেলতে চাইলে তুমি এভাবে এভাবে খেলবে । এই যে কোন এক প্রোগ্রামার কম্পিউটারকে বলে দিয়েছে কিভাবে কাজ করতে হবে সেটাই হচ্ছে প্রোগ্রামিং । যিনি প্রোগ্রামিং করেন তাকে প্রোগ্রামার বলা হয় ।
কেন প্রোগ্রামিং ?
কেন প্রোগ্রামিং শিখবেন তাইতো? প্রোগ্রামিং শেখার হাজার হাজার কারণ রয়েছে । বর্তমান যুগ কম্পিউটারের যুগ কথাটা তো অবশ্যই জানেন । কম্পিউটারের কথায় চলে পুরো বিশ্ব আর সেই কম্পিউটার যদি আপনার কথায় চলে তাহলে ভাবুন কেমন লাগবে । কম্পিউটারকে নিজের কথায় চলাতে হলে আপনাকে প্রোগ্রামিং জানতে হবে । প্রোগ্রামিং জানা থাকলে অন্ত্যত এই কথাটাতো বলতে পারবেন যে আমি একজন প্রোগ্রামার । প্রোগ্রামিং জানা থাকলে আরও অনেক কিছু করতে পারবেন যেমনঃ- আপনি নিজে একটা গেম তৈরি করে ফেলতে পারবেন, সফটওয়্যার তৈরি করতে পারবেন, ওয়েবসাইট তৈরি করতে পারবেন, রোবট তৈরি করতে পারবেন, আরও অনেক কিছু । আপনার হাতের ঘড়ি, স্মার্টফোনের অ্যাপ্লিকেশান,আপনার ওয়ার্ড প্রসেসর, পাঁচতলায় উঠার জন্য লিফট, বিভিন্ন অনুস্টানের লাইটিং, আপনার আলার্ম, ক্যালকুলেটর সবকিছুই প্রোগ্রামিং দ্বারা তৈরি করা হয়েছে । এবং ভবিষ্যতে প্রোগ্রামিং পুরো পৃথিবীটাকেই পালটে দিবে, মানুষের চেয়েও বুদ্ধিমান হবে প্রটিটা যন্ত্র । মোটকথা প্রোগ্রামাররা পৃথিবী তৈরি করতে জানে । আর এজন্যই আপনি প্রোগ্রামিং শিখবেন ।
আমি প্রোগ্রামার হব ।
ভালো কথা । প্রোগ্রামিং একই সাথে সৃষ্টিশীল এবং অনেক মজার একটা জিনিস । বিভিন্ন সায়েন্স ফিকশান মুভিগুলোতে দেখে থাকবেন কিছু উদ্ভট মানুষ অন্ধকার ঘরে বসে সারাদিন শুধু কিবোর্ডে খটখট করছে । প্রোগ্রামিং এমন একটা নেশা । আপনিও যখন প্রোগ্রামিং শিখে যাবেন, বুদ্ধিমান প্রোগ্রাম রচনা করে ফেলতে পারবেন তখন আপনিও সারাদিন কম্পিউটার স্ক্রীনের সামনে বসে থাকতে চাইবেন । প্রোগ্রামার হতে হলে আপনাকে প্রথমেই জানতে হবে কম্পাইলারের কথা, প্রোগ্রামিং লাঙ্গুয়েজের কথা, ইনপুট/আউটপুট এর কথা, কিভাবে একটা প্রোগ্রাম কাজ করে সে সম্পর্কে ধারণা থাকা । আর মুক্ত জ্ঞ্যানের এই পৃথিবীতে আপনি ইন্টারনেটে সার্চ করেই সবকিছু সম্পর্কে জানতে পারবেন । আপনাকে শুধু জানার আগ্রহ, আর কম্পিউটারের প্রতি ভালোবাসা থাকতে হবে ।
প্রোগ্রামিং ল্যাঙ্গুয়েজ কি?
শুরুতেই বলেছিলাম কম্পিউটারের ভাষা হচ্ছে ০ আর ১ বা বাইনারি । কম্পিউটার এই ভাষায় কথা বলে । অনেক অনেক আগে প্রোগ্রামাররা শুধু ০ আর ১ ব্যাবহার করেই প্রোগ্রামিং করত । একে বলা হত মেশিন ল্যাঙ্গুয়েজ । কিন্তু মেশিন ভাষায় প্রোগ্রামিং করার জন্য অনেক অনেক ০ আর ১ এর হিসাব জানতে হত যা একজন মানুষের পক্ষে অত্যন্ত কষ্টসাধ্য ছিল । তারপর প্রোগ্রামাররা তৈরি করল অ্যাসেম্বলি ল্যাংগুয়েজ । এই ভাষায় প্রোগ্রামাররা কিছু গাণিতিক চিহ্ন ব্যাবহার করে সহজে প্রোগ্রাম রচনা করতে পারত । কিন্তু এতেও প্রোগ্রামারদের মন ভরেনি । তারা অনুধাবন করল সকলেই যাতে প্রোগ্রামিং করতে পারে সেজন্য একটা কিছু করতে হবে । তাই তারা হাইলেভেলের প্রোগ্রামিং ল্যাংগুয়েজ তৈরি করে ফেলল, একদম আমদের ইংরেজি ভাষার সমতুল্য । এখন যে কেউ সহজেই কম্পিউটারের সাথে কথা বলতে পারে সহজেই । সুতরাং আমরা বুঝতে পারলাম প্রোগ্রামিং ল্যাংগুয়েজ হলো কম্পিউটারের সাথে কথা বলার জন্য বা প্রোগ্রামিং করার জন্য ব্যাবহ্রত ভাষা । আমরা মানুষরা যেমন কথা বলার জন্য বাংলা, ইংরেজি, আরবি, হিন্দি ইত্যাদি ভাষা ব্যাবহার করি তেমনি কম্পিউটারের সাথে ভাবের আদান-প্রদান করতে হলে প্রোগ্রামিং ল্যাংগুয়েজ জানতে হয় । বর্তমানের জনপ্রিয় এবং উচ্চস্তরের কিছু প্রোগ্রামিং ল্যাংগুয়েজ হলো C, C++, C#, Python, Java, Perl, Go, Swift, Basic, Pascal ইত্যাদি এমন হাজারের উপরে ল্যাংগুয়েজ রয়েছে । ভিন্ন ভিন্ন কাজ করার জন্য ভিন্ন ভিন্ন প্রোগ্রামিং ল্যাংগুয়েজ রয়েছে । যেমন আইফোনের অ্যাপ্লিকেশান তৈরি করার জন্য Swift , গনিতের হিসাব নিকাশ করার জন্য Wolfarmalpha, Fortran ইত্যাদি । তাছাড়া কিছু স্ট্যান্ডার্ড ল্যাংগুয়েজ রয়েছে যেগুলো দিয়ে সব ধরণের কাজই মোটামোটি করে ফেলা যায় । যেমনঃ- C, Python, Java .
কোন ল্যাংগুয়েজ শিখব?
এত এত ল্যাংগুয়েজ কি সবগুলোই শিখতে হবে । না । না সবগুলো শিখতে হবে না । যেকোন একটা ভালোভাবে শিখলেই আপনি একজন ভালো প্রোগ্রামার হতে পারবেন । আর একটা ল্যাংগুয়েজ শিখে গেলে অন্যগুলো সহজেই শিখে ফেলা যায় । একেক ল্যাংগুয়েজ একেক রকম হলেও এদের বেসিক কনসেপ্ট কিন্তু একই রকম । যেমন সবগুলো ল্যাংগুয়েজেই ভেরিয়েবল রয়েছে, কন্ডিশনাল লজিক রয়েছে, লুপ রয়েছে এবং কিছু ফাংশন রয়েছে । তবে ল্যাঙ্গুয়েজভেদে একেকটা একটু অন্যরকম । এই বেসিক বিষয়গুলো শিখে ফেললে যেকোন প্রোগ্রামিং ল্যাংগুয়েজ সহজেই আয়ত্তে আনা সম্ভব ।
কোনটা দিয়ে শুরু করব?
যেকোন একটা দিয়েই শুরু করতে পারেন । কথা না বাড়িয়েই বলে ফেলছি যে C অথবা Python দিয়ে শুরু করলে সবচেয়ে বেটার হবে এবং অনেক প্রোগ্রামাররাই এই দুইটার একটা দিয়ে প্রোগ্রামিং জগতে পা বাড়িয়েছিলেন । C অনেক অনেক পুরাতন কিন্তু জনপ্রিয় এবং শক্তিশালী একটা প্রোগ্রামিং ল্যাংগুয়েজ । C তে প্রোগ্রামিংয়ের সবগুলো স্ট্যান্ডার্ড বেসিক রয়েছে । তাই C শিখে গেলে অন্য যে কোন ল্যাংগুয়েজ সহজে শিখে ফেলা যাবে । বর্তমানে C এর পাশাপাশি Python ও প্রোগ্রামিং শেখা শুরু করার জন্য চমৎকার একটা ল্যাংগুয়েজ । বর্তমানে অনেক প্রতিস্টানেই পাইথন ব্যাবহার করে প্রোগ্রামিং শেখানো হয় । পাইথনও C এর মত শক্তিশালী এবং সহজ ও অবজেক্ট ওরিয়েন্টেড ফিচার সমৃদ্ধ একটি প্রোগ্রামিং ল্যাংগুয়েজ । আপনি দুইটার যেকোন একটা দিয়ে শুরু করতে পারেন ।
কিভাবে শিখব বা কোত্থেকে শিখব?
সি প্রোগ্রামিং লায়ঙ্গুয়েজ শিখতে চাইলে ভিজিট করুন http://cpbook.subeen.com। এটা তামিম শাহরিয়ার সুবিন এর সি প্রোগ্রামিং বইয়ের ওয়েবসাইট । আপনি ইচ্ছা করলে পুরো বইটা পিডিএফ আকারে ডাউনলোড করতে পারবেন । বাংলায় প্রোগ্রামিং শিখার জন্য একটি চমৎকার উপায় হতে পারে এটা । বইটাতে প্রোগ্রামিং শিখার যাবতীয় বেসিক কনসেপ্ট পেয়ে যাবেন । লেখক অসম্ভব সুন্দরভাবে বিষয়গুলো বুঝানোর চেস্টা করেছেন । বইটি থেকে আপনি মূল ভিত্তিটা বুঝে যাবেন । এবং অনেক বড় প্রোগ্রামার হওয়ার জন্য সামনে আগানোর অনুপ্রেরণা পাবেন । পাইথন শিখতে চাইলেও এই লেখকের বই পাবেন, রকমারি ডট কম থেকে কিনতে পারবেন । আমি আবারও বলছি বাংলাতে প্রোগ্রামিং শিখা শুরু করতে চাইলে তামিম শাহরিয়ার সুবিন এর বইগুলো সবচেয়ে ভালো হবে । প্রোগ্রামিং নিয়ে এই লেখকের আরও অনেক বই রয়েছে যেগুলো পরে আপনি একজন বড় মাপের প্রোগ্রামার হতে পারেন । তাছাড়া যেকোন সমস্যায় ইন্টারনেট তো আছেই । ইন্টারনেট থেকে কিভাবে আপনার পছন্দের বিষয়গুলো শিখে নিবেন জানতে চাইলে এই লিখাটি পড়তে পারেন ।
**শুরুটা ভালো হলে বাকি পথটা নিজে নিজেই পাড়ি দিতে পারবেন !!
সবার জন্য শুভকামনা রইল । সকলের জীবন আনন্দে কাটুক ।
Happy Programming !
ফেসবুকে আমি ঃ- http://facebook.com/rakibulislam.riad.12
-আল্লাহ্ হাফেজ-