Wednesday 5 September 2012

what is programming

         প্রোগ্রামিং কি,কেন করা হয়,কম্পাইলার কি?


আমরা দৈনদিন জীবনে কোন সমস্যায় পড়লে সে টা নিয়ে ভাল করে ভাবি তারপর কারো সাথে আলাপ আলোচনা করে কোন বিশেষ উপায়ে সেই সমস্যাটা সমাধান করি। সাধারনভাবে,এটাই হল প্রোগ্রামিং।

কম্পিউটারের ক্ষেত্রে, কোন সমস্যা সহজে সমাধানের জন্য সম্পাদিত কত গুলো ধারবাহিক কাজের নির্দেশাবলী কে সাজানোর উপায়কেই প্রোগ্রামিং বলে।

ভাষা ছাড়া আমরা যেমন কারো সাথে কথা বলতে পারতাম না। তেমনি প্রোগ্রামিং ভাষা ছাড়া কম্পিউটারে আমরা কিছু করতে পারতাম না। 
কারো সাথে আলাপ করার জন্য পৃথিবীতে যেমন অনেক রকম মানুষের ভাষা আছে তেমনি প্রোগ্রামিং করার জন্যও ঠিক তেমনি অনেক প্রোগ্রামিং ভাষা আছে।
আর এক একটা প্রোগ্রামিং ভাষার বৈশিষ্টও একেক রকম।

কম্পিউটারের ক্ষেত্রে, কোন একটা সমস্যা সমাধানের জন্য একটা  প্রোগ্রাম লিখতে যে language ব্যবহার করা হয় তাকে কম্পিউটার প্রোগ্রামিং language বলে।  


আমরা যখন আমাদের ভাষাভাষী কাউকে কিছু বললে সে বুঝতে পারে কারন সে আমার ব্যাকারন জানে। কিন্তু আমরা যদি অন্য ভাষাভাষী কাউকে কিছু বলি তাহলে তার ভাষায় convert করে বলতে হবে।

আমরা জানি কম্পিউটার ০ এবং ১ ছাড়া আর কিছু জানে না । আর আমরা যখন কিছু কম্পিউটারে কিছু লেখি আর কম্পাইলার সেটা সাথে সাথে ০ এবং ১ দিয়ে সাজিয়ে নেয়।
যেমন আমরা যখন 4 লেখি সে সেটাকে ১০০ তে convert করে নেয়। আর সরাসরি ০ এবং ১ দিয়ে লেখা ল্যাঙ্গুয়েজ কে  machine language বলে । কিন্তু একটা বড় প্রোগ্রামকে এভাবে ০ এবং ১ দিয়ে লিখা খুব কঠিন। তাই বানানো হয়েছে নানান ধরণের প্রোগ্রামিং ভাষা।

কম্পিউটারের ভাষায়,কম্পাইলার হল একটা প্রোগ্রাম যা আমাদের লেখা source code কে পড়ে এবং তাতে কোন ভুল না থাকলে তাকে মেশিন কোডে রূপান্তর করে এবং প্রয়োজনীয় সাহায্য কারী ফাইল যুক্ত করে আমাদের ফলাফল দেয়।
অর্থাৎ কম্পাইলার একটা গ্রামার এর মতো।

কম্পাইলার আমাদের লিখা সব নির্দেশকে একসাথে মেশিন ভাষায় বদলে দেয়।
যেটাতে থাকে শুধু ০এবং ১.
আর বিভিন্ন ধরণের প্রোগ্রামিং ভাষায় থাকে বিভিন্ন ধরণের কম্পাইলার কিন্তু তাদের উদ্দেশ্য একটাই সেটা হল আমাদের লিখা কোডটাকে ০ এবং ১ এই ভাষায় বদলে দেয়া। কারন ০ এবং ১ ই কেবল কম্পিউটার চিনতে পারে।

আর বিভিন্ন ধরণের প্রোগ্রামিং ল্যাঙ্গুয়েজের মধ্যে সি হল সবচেয়ে সহজ এবং অত্যন্ত প্রয়োজনীয় একটা ল্যাঙ্গুয়েজ। এটা জানলে অন্য গুলো এমনি এমনি শেখা যায়।

আর সি প্রোগ্রামিং এর কম্পাইলার নেটে খুঁজলেই অনেক পাবেন। যেমনঃ Turbo C, CodeBlocks ইত্যাদি। এটা কম্পিউটারে install করুন। তারপর সেটা open করে new file নিয়ে তাতে আমরা আমাদের কোড লিখব অর্থাৎ আমাদের প্রোগ্রাম লিখব। তার পর সেটা run করব।  
আর তাতেও না বুঝতে পারলে আমাকে জানাবেন।  


7 comments:

  1. vai valoi likhchilen sarlen keno???????

    ReplyDelete
  2. ছাড়লাম, কে বলল কেবলতো শুরু। আসলে যেমন করে লেখার ইচ্ছে ছিল ঠিক সেভাবে লিখতে পারি নি। তারপর যেই নতুন করে আবার তৈরি করব বলে মনস্থির করলাম তখন নানা কারনে মনে আর শক্তি পেলাম না। তবে অনেকে আমাকে ব্যক্তিগত ভাবে অনুরোধ করেছে, তাই আবার নতুন করে পরবর্তী বিষয় গুলো নিয়ে ভাবতেছি আর সে গুলো নোট করতেছি । নোট করা হয়ে গেলে রিভিউ করে পোষ্ট দিয়ে দিব শীঘ্রই।
    তুমি কি আমাকে চেন ? তোমার পরিচয়টা কি জানতে পারি?

    ReplyDelete
  3. দয়া করে কমপ্লিট করবেন পোষ্টটা। কেননা অনেকে শুরু করে শেষ করেনা। আর শুরুর দিকে সহজ ভাবে শুরু করলেও পরে মনে হয় নিজেই পড়ছে নিজেই বুঝছে।

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

      Delete
  4. A Computer Science portal for geeks. It contains well written, well thought and well
    explained computer science and programming articles, quizzes and practice/competitive
    programming/company interview Questions.
    website: geeksforgeeks.org

    ReplyDelete