প্রোগ্রাম, প্রোগ্রামিং কি
প্রোগ্রাম হচ্ছে নির্দিষ্ট সিস্টেমের কিছু লিখিত সংকেত বা সোর্স কোড যা কম্পিউটারকে কোন নির্দিষ্ট কাজ করতে কমান্ড বা আদেশ দেয়।
বই এর ভাষায় বলতে গেলে, “কম্পিউটারের মাধ্যমে কোন সমস্যা সমাধানের জন্য প্রয়োজনীয় নিদের্শমালার সমষ্টিকে প্রোগ্রাম (program) বলা হয়।” আর এই প্রোগ্রাম রচনার পদ্ধতি বা কৌশলকে প্রোগ্রাম পদ্ধতি বা প্রোগ্রামিং (programming) বলে। অন্য কথায়, কোন সমস্যা অল্প সময়ে এবং সহজে সমাধানের জন্য কম্পিউটারকে নিদের্শাবলী দেবার কৌশলকে প্রোগ্রামিং বলা হয়।
প্রোগ্রামিং ভাষা কি
তো প্রোগ্রাম লেখার আগে আপনার জানতে হবে প্রগ্রামিং ভাষা সম্পর্কে। আমরা যেমন নিজ নিজ ভাষা প্রয়োগ করে একে অপরের সাথে মনের ভাব প্রকাশ করি , ঠিক তেমন কম্পিউটারেরও রয়েছে নির্দিষ্ট কিছু ভাষা। আপনি যদি কম্পিউটারকে বাংলায় বা ইংরেজিতে কিছু আদেশ দেন কম্পিউটার কিন্তু সেটা বুঝতে পারবে না। আপনি যখন কম্পিউটারকে কোনো কমান্ড/আদেশ দিতে যাবেন তখন তাকেও তার ভাষায় কমান্ড টা দিতে হবে । সে তো আমাদের ভাষা বুঝবে না। মানুষের ভাষার মতো এরও রয়েছে কিছু সিনট্যাক্স এবং সেমান্টিক্স অর্থাৎ নিয়মকানুন ও অর্থ।
কম্পিউটার বুঝে শুধু দুটি জিনিস, 0 আর 1 ,যেটাকে বলতে পারি বাইনারি ভাষা । তাই আপনি কম্পিউটারকে কোন আদেশ দিতে গেলে 0 বা 1 ব্যবহার করেই আদেশ দিতে হবে। কিন্তু ভাবছেন সেটা কিভাবে দিবেন? সকল আদেশ যদি আমরা 0 আর 1 এ রুপান্তরিত করে তারপর দিতে চাই তাহলে আমাদের পাবনায় বুকিং কেউ আটকাতে পারবে না (Jokes a part) ! তো পাগল যাতে না হতে হয় সেই জন্যই তৈরি হয়েছে প্রোগ্রামিং ভাষা যেটা কম্পিউটার ও মানুষের ভাষার মাঝামাঝি ভাষা হিসেবে কাজ করে। এবার আসি সংজ্ঞায় “কম্পিউটারের মাধ্যমে কোন সমস্যা সমাধান তথা প্রোগ্রাম রচনার জন্য ব্যবহৃত শব্দ, বর্ণ, অংক, চিহৃ প্রভৃতির সমন্বয়ে গঠিত রীতিনীতিকে বলা হয় প্রোগ্রামিং ভাষা (Programming Language)।”
তো প্রোগ্রাম লেখার আগে আপনার জানতে হবে প্রগ্রামিং ভাষা সম্পর্কে। আমরা যেমন নিজ নিজ ভাষা প্রয়োগ করে একে অপরের সাথে মনের ভাব প্রকাশ করি , ঠিক তেমন কম্পিউটারেরও রয়েছে নির্দিষ্ট কিছু ভাষা। আপনি যদি কম্পিউটারকে বাংলায় বা ইংরেজিতে কিছু আদেশ দেন কম্পিউটার কিন্তু সেটা বুঝতে পারবে না। আপনি যখন কম্পিউটারকে কোনো কমান্ড/আদেশ দিতে যাবেন তখন তাকেও তার ভাষায় কমান্ড টা দিতে হবে । সে তো আমাদের ভাষা বুঝবে না। মানুষের ভাষার মতো এরও রয়েছে কিছু সিনট্যাক্স এবং সেমান্টিক্স অর্থাৎ নিয়মকানুন ও অর্থ।
কম্পিউটার বুঝে শুধু দুটি জিনিস, 0 আর 1 ,যেটাকে বলতে পারি বাইনারি ভাষা । তাই আপনি কম্পিউটারকে কোন আদেশ দিতে গেলে 0 বা 1 ব্যবহার করেই আদেশ দিতে হবে। কিন্তু ভাবছেন সেটা কিভাবে দিবেন? সকল আদেশ যদি আমরা 0 আর 1 এ রুপান্তরিত করে তারপর দিতে চাই তাহলে আমাদের পাবনায় বুকিং কেউ আটকাতে পারবে না (Jokes a part) ! তো পাগল যাতে না হতে হয় সেই জন্যই তৈরি হয়েছে প্রোগ্রামিং ভাষা যেটা কম্পিউটার ও মানুষের ভাষার মাঝামাঝি ভাষা হিসেবে কাজ করে। এবার আসি সংজ্ঞায় “কম্পিউটারের মাধ্যমে কোন সমস্যা সমাধান তথা প্রোগ্রাম রচনার জন্য ব্যবহৃত শব্দ, বর্ণ, অংক, চিহৃ প্রভৃতির সমন্বয়ে গঠিত রীতিনীতিকে বলা হয় প্রোগ্রামিং ভাষা (Programming Language)।”
প্রোগ্রামিং ভাষায় আদেশ দিলে যে জিনিসটা মানুষের ভাষাকে কম্পিউটারের বোধগম্য ভাষায় রূপান্তরিত করে তার নাম হচ্ছে কম্পাইলার। আমরা প্রোগ্রামিং ভাষায় আদেশ দিলে কম্পাইলারের মাধ্যমে কম্পিউটার সেটাকে বাইনারি ভাষায় অনুবাদ করে এবং তারপর সেটা পড়ে এবং সেই অনুযায়ী আদেশ পালন করে। ব্যাপারটা ইন্টারেস্টিং তাই না? একটা জিনিস মাথায় রাখতে হবে, সব ভাষা দিয়ে কিন্তু সব ধরনের আদেশ দেয়া যায় না। কম্পিউটার অনেক জটিল সব কাজ করতে পারে,কিন্তু কাজের ধরন অনুযায়ী সেই কাজের আদেশ দেয়াটাও কষ্টকর হয়ে যায়। এজন্য বিভিন্ন ধরনের প্রোগ্রাম রচনার জন্য বিভিন্ন ধরনের প্রোগ্রামিং ভাষা ব্যবহৃত হয়। যেন কঠিন সব আদেশ গুলিও অত্যন্ত সহজে আমরা কম্পিউটারকে বোঝাতে পারি।
প্রকারভেদ
মুলত প্রোগ্রামিং ভাষাকে তিন ভাগে ভাগ করা যায়।
এগুলো হলঃ
১. উচ্চস্তরের ভাষা
২. মধ্যস্তরের ভাষা
৩. নিম্নস্তরের ভাষা
১. উচ্চস্তরের ভাষাঃ এই ভাষাটা মানুষের জন্য বেশ সহজবোধ্য কিন্তু একে বুঝতে কম্পিউটারকে বেশ বেগ পেতে হয়। উচ্চতর ভাষার সাথে মানুষের ভাষার মিল আছে। এই ভাষায় লিখিত প্রোগ্রাম বিভিন্ন ধরনের মেশিনে ব্যবহার করা সম্ভব। এটি মানুষের জন্য বুঝতে পারা খুব সহজ কিন্তু কম্পিউটার সরাসরি বুঝতে পারে না বলে অনুবাদক প্রোগ্রামের সাহায্যে একে মেশিন ভাষায় রূপান্তরিত করে নিতে হয়।
উচ্চস্তরের প্রোগ্রামিং ভাষা (ইংরেজি: High-Level Programming Language) হল এমন একটি প্রোগ্রামিং ভাষা যা অন্যান্য নিম্নস্তরের প্রোগ্রামিং ভাষাগুলোর তুলনায় আরও বিমূর্ত (Abstract), সহজে ব্যবহারযোগ্য ও বিভিন্ন প্ল্যাটফর্মের মধ্যে সহজে বহনযোগ্য (Portable)। এ ধরণের ভাষায় ব্যবহারকারীদের কম্পিউটার মেমরি নিয়ে সরাসরি কাজ করতে দেয়া হয়না।
যেমনঃ কিউবেসিক, সি, সি++,জাভা ইত্যাদি।
যেমনঃ কিউবেসিক, সি, সি++,জাভা ইত্যাদি।
২. মধ্যস্তরের ভাষাঃ আসলে মধ্যস্তরের প্রোগ্রামিং ভাষার সংজ্ঞা দেওয়া একটু কঠিন কাজ। তবে বলা যেতে পারে, কম্পিউটারে হার্ডওয়্যার নিয়ন্ত্রণ ও সিস্টেম প্রোগ্রাম রচনার জন্য বিট পর্যায়ের প্রোগ্রামিং ভাষা হলো মধ্যম স্তরের ভাষা।। এটা বেশ বন্ধুসুলভ ভাষা। এতে আমরা কম্পিঊটারের মেমরি নিয়ে কাজ করতে পারি। অনেক সময় মধ্যস্তরের ভাষাকে উচ্চস্তরের ভাষাও বলা হয়ে থাকে।
যেমনঃ সি, সি++ ইত্যাদি।
যেমনঃ সি, সি++ ইত্যাদি।
৩. নিম্নস্তরের ভাষাঃ কম্পিউটারের ভাষা তৈরি হয় বাইনারি সংখ্যা পদ্ধতিতে। বাইনারি সংখ্যা পদ্ধতিতে মাত্র ২টি অঙ্ক (০, 1) ব্যবহৃত হয়। বাইনারি ছাড়া অন্য কোনো সংখ্যা পদ্ধতি সরাসরি কম্পিউটারে ব্যবহার করা যায় না। সমস্যা সমাধানের জন্য বাইনারি সংখ্যায় নির্দেশ সাজিয়ে যান্ত্রিক ভাষায় প্রোগ্রাম প্রস্তুত করা হয়। এই ০ এবং ১ দিয়ে রচিত প্রোগ্রাম ভাষাকে নিম্নস্তরের ভাষা বলা হয়। নিম্নস্তরের ভাষা সরাসরি কম্পিউটারের প্রধান মেমোরির উপর কাজ করতে পারে। অ্যাসেম্বলি ভাষা একটি নিম্নস্তরের ভাষা,এ ভাষায় সরাসরি কম্পিউটারের রেজিস্টারকে নিয়ন্ত্রণ করে কাজ করতে হয়। এ ভাষাগুলো হার্ডওয়্যারের উপর নির্ভরশীল,তাই এক কম্পিউটারে অ্যাসেম্বলি ভাষায় লেখা প্রোগ্রাম অন্য কম্পিউটারে কাজ নাও করতে পারে। এই ভাষা আয়ত্ত করা বেশ কঠিন কাজ। তবুও আগের প্রোগ্রামাররা কষ্ট করেই এই ভাষাতেই প্রোগ্রাম লিখত।
যেমনঃ অ্যাসেম্বলি ভাষা।
যেমনঃ অ্যাসেম্বলি ভাষা।
জনপ্রিয় কয়েকটি প্রোগ্রাম ভাষা
- জাভাস্ক্রিপ্ট (Java Script)
- পাইথন (Python)
- জাভা (Java)
- সি++ (C++)
- সুইফট (Swift)
- টাইপস্ক্রিপট (Type Script)
- রুবি (Ruby)
- সি (C)
- সি শার্প (C#)
- পিএইচপি (PHP )
- এসকিউএল (SQL)
আজ এ পর্যন্তই । দেখা হবে পরবর্তী কোন পর্বে।
ভাল থাকবেন , ভাল রাখবেন 😊
ভাল থাকবেন , ভাল রাখবেন 😊
Post a Comment
0Comments