কম্পিউটার প্রোগ্রামিং কি? (What is Programming)
Computer Programming হলো এমন এক প্রক্রিয়া যেখানে কিছু বিশেষ ভাষার ব্যবহার করে কম্পিউটারের জন্য বিশেষ নির্দেশ (Instructions) তৈরি করা হয়।
তৈরি করা সেই নির্দেশ গুলোর মাধ্যমে একটি কম্পিউটার তার করণীয় কাজ (Task) করতে পারে।
সোজা ভাবে বললে,
কিছু বিশেষ কাজ করানোর উদ্দেশ্যে কম্পিউটারের জন্য বিভিন্ন নির্দেশ বা প্রোগ্রাম গুলো তৈরি করার প্রক্রিয়াকেই বলা হয় কম্পিউটার Programming. একটি কম্পিউটার Programming তৈরি করার ক্ষেত্রে সব থেকে জরুরি বিষয়টি হলো “Programming Language’.
কম্পিউটার কেবল বিশেষ Programming Language-এর মাধ্যমে তৈরি করা নির্দেশ গুলোকেই বুঝতে পারবে।আমরা যেই Human-Based Languages ব্যবহার করি, সেগুলো কম্পিউটার বোঝেনা।
তাই, কম্পিউটার নির্দেশ তৈরি করার ক্ষেত্রে আমরা Hindi, Bengali, English ইত্যাদি এই ধরণের ভাষাগুলো ব্যবহার করলে কাজ হবেনা।Computer একটি মেশিন যেটা কেবল Language এর Binary ভাগটিকে বুঝতে পারে।যেভাবে মানুষের জন্য, “Human-Based Languages” রয়েছে, ঠিক সেভাবেই Computer এর জন্য রয়েছে “Programming Languages”.
কেবল Programming ভাষা ব্যবহার করে তৈরি করা নির্দেশ বা Program গুলো কম্পিউটার বুঝতে পারে এবং সেই নির্দেশ হিসেবে কাজ করতে পারে।
এমনিতে Programming Language -এর কিন্তু আলাদা আলাদা প্রকার রয়েছে যেগুলোর মাধ্যমে কম্পিউটারের সাথে সংযোগ স্থাপন করা যেতে পারে।আমি আগেই বলেছি, Language এর যেই ভাগটিকে কম্পিউটার বুঝতে পারে সেটা হলো “Binary”
আর তাই,
Programming Languages এর মাধ্যমে তৈরি করা Instructions বা Program গুলোকে Binary তে Convert করা হয়।Binary Language এ Convert করা এই প্রক্রিয়াটিকে বলা হয় “Compiling”.
তাহলে, Computer Programming কি এই বিষয়ে হয়তো আপনারা বুঝতে পেরেছেন।
প্রোগ্রামিং ভাষা কি? (What is Programming Language)
Programming Language এর বিষয়ে ওপরে আমি স্পষ্ট করে বলেই দিয়েছি।
কম্পিউটার আমাদের বলা ভাষা বুঝতে পারেনা।
তাই, যেকোনো কাজ করানোর ক্ষেত্রে সাধারণ Human-Based ভাষা ব্যবহার করে কম্পিউটারকে Instructions দেওয়া সম্ভব না।
তবে, এক বিশেষ ধরণের ভাষা রয়েছে যেটা প্রত্যেকটি কম্পিউটার বুঝতে পারে।
সেটা হলো, “Binary Language”.
Binary Language এর মধ্যে কেবল “1” এবং “0” ব্যবহার করা হয়।
আর তাই, এই ভাষা ব্যবহার করে কম্পিউটার Program নির্দেশ তৈরি করাটা প্রচুর কষ্টের ব্যাপার।
কিন্তু, কিছু আধুনিক ও উন্নত ভাষা যেমন “C”, “C ++”, “Python”, “Java” ইত্যাদি ব্যবহার করে আমরা কম্পিউটারের জন্য নির্দেশ বা Program সহজেই তৈরি করতে পারি।
এবং শেষে, তৈরি করা Program গুলোকে Binary তে Convert করে দেওয়া হয়।
ফলে, আপনার তৈরি করা নির্দেশ গুলো কম্পিউটার বুঝে যেতে পারে এবং সেই হিসেবে Task করতে পারে।
এভাবেই, একটি কম্পিউটারের সাথে Communicate করার ক্ষেত্রে, Program গুলোকে তৈরি করার জন্য যেই ভাষা গুলোকে ব্যবহার করা হয়, সেই ভাষা গুলোকেই বলা হয় “Programming Language”.
Programming Language এর Classification:
আপনার জন্য Programming Languages গুলোর Basic Classification বিষয়ে জেনে রাখাটা অনেক জরুরি।
তাই জেনে রাখুন যে,
Programming Languages গুলোকে মূলত ৩ টি ক্যাটেগরিতে Classify করা যেতে পারে।
চলুন আমরা এখন এই প্রত্যেক Classification বিষয়ে জেনেনি।
আগেকার সময়ে Computer Program তৈরি করার ক্ষেত্রে কেবল Machine Language ব্যবহার করা হতো।
তাই, এই ভাষাকে “First Generation Language” বলা হয়।
মেশিন Language ব্যবহার করে তৈরি করা কম্পিউটার Program-এ কিছু “Series of Binary Patterns” (e.g., 010011101) ব্যবহার করা হয়।এই Binary Pattern গুলোর মাধ্যমেই কম্পিউটারের জন্য Information, Tasks এবং Operations তৈরি করা হয়।
আমরা আগেই ওপরে বলেছি যে,
আমাদের মানুষের জন্য Programming করাটা আরো সহজ এবং সরল করার উদ্দেশ্যেই এই Programming ভাষাটিকে আনা হয়েছিল।এই ভাষাতে Program গুলোকে, Mnemonics হিসেবে লেখা হয়।যেমন, “NOV”, “ADD”, “SUB” ইত্যাদি।
আমি আগেই বলেছি যে,
আর তাই,
High-Level Programming Languages গুলো অনেক আধুনিক এবং সহজেই মনে রাখা যেতে পারে।কারণ, এই ধরণের ভাষা যেমন, “C”, “C++”, “JAVA”, “PYTHON” ইত্যাদি English ভাষার মতোই। English Words, Numbers এবং Symbols ব্যবহার করে এই ভাষা লিখা হয়।তাই, এই আধুনিক ভাষা গুলো Programming -এর ক্ষেত্রে মনে রাখাটা অনেক সহজ হয়ে দাঁড়ায়।
এখন আপনারা হয়তো ভাবছেন যে,
কম্পিউটার তো কেবল Machine Language বুঝতে পারে, তাহলে এই ইংরেজি ভাষা গুলো কিভাবে বুঝবে।আসলে, এই ক্ষেত্রে Compiler এর ব্যবহার করা হয়।Compiler ব্যবহার করে High Level Languages গুলোকে Machine Language এ অনুবাদ করা হয়।
High level languages দুই প্রকারের হতে পারে,
কিছু প্রোগ্রামিং ভাষার একটি তালিকা (list)
চলুন আমরা কিছু Programming Language-এর বিষয়ে জেনে নেই।
আলাদা আলাদা Programming Language-এর উদ্দেশ্য আলাদা আলাদা হতে পারে।
তাই, আলাদা আলাদা Programming Language-এর বিষয়ে জেনে রাখাটা জরুরি।
1. Machine Language: একটি কম্পিউটার ডিভাইস মূলত Programming Language বুঝতে পারে। এখানে Binary Codes ব্যবহার করা হয়।
2. Assembly Language: Machine Language-এর তুলনায় এই Programming Language সহজ এবং সরল।
3. High Level Languages: আধুনিক এবং বর্তমানে সব থেকে সহজ Language Programming করার ক্ষেত্রে।
4. System Language: Memory এবং Process Management এর মতো Low Level Instructions লেখার ক্ষেত্রে ব্যবহার করা হয়।
5. Scripting Languages: অনেক High Level এবং শক্তিশালী Programming Language.
6. Domain-Scripting Languages: কিছু বিশেষ Specific Area-তে কাজ করার ক্ষেত্রে ব্যবহার করা হয়।
7. Visual Languages: এগুলো আসলে On-Text Based Languages হয় যেখানে Text ব্যবহার করা হয়না।
8. Esoteric Languages: এই ধরণের Programming Language ব্যবহার করা হয়না, তবে এগুলোকে Education হিসেবে ধরা যেতে পারে।
Programming Language-এর প্রকারভেদ – (Types of programming languages)
Programming Language-এর মূলত দুটো প্রকার বলা যেতে পারে।
চলুন প্রকারভেদ গুলিকে বিস্তারিত ভাবে জানার চেষ্টা করি।
Low Level Language একটি Computer Machine সোজা ভাবে বুঝতে পারে।
যেমন, Machine Language এবং Assembly Language-কে Low Level Language হিসেবে ধরা যেতে পারে।
এই Programming Language একটি Machine এর কাছাকাছি থাকে কিন্তু Programmer এর ক্ষেত্রে এই Programming Language ব্যবহার করা বা মনে রাখা অনেক কষ্টের ব্যাপার।
Programming-এর ক্ষেত্রে, এই Low Level Language তেমন একটি সুবিধের নয়।
তবে, যা আমি আগেই বললাম, একটি Machine এই Programming Language অনেক সহজেই বুঝে নেয়।
Low Level Language এর বিপরীতে, এই High Level Language গুলো Programmer দের জন্য অনেক সুবিধের এবং সহজেই এই Programming Language শেখা ও ব্যবহার করা যায়।
যেমন, JAVA STUDIO, FORTRAN, COBOL, C, C++, COBAL, JAVA, PYTHON ইত্যাদি, এগুলো হলো আধুনিক ও High Level Programming Language তবে, এই High Level Language গুলো একটি Machine বা Computer বুঝতে পারেনা।
আর তাই, High Level Language এর মাধ্যমে Program তৈরি করার পর, সেগুলোকে Binary Language এ অনুবাদ করতে হয়।
প্রোগ্রামিং কিভাবে শিখব ?
COMPUTER PROGRAMMING LANGUAGE শিক্ষার জন্য, কয়েকটি Step ভালো করে জানতে হবে।
এভাবে, কিছু সাধারণ পদক্ষেপ নিয়ে আপনি সহজেই Programming শিখতে পারবেন।
প্রোগ্রামিং শিখে কি লাভ হবে?
- ধন্যবাদ