C এবং উদ্দেশ্য C-এর মধ্যে পার্থক্য

সুচিপত্র:

C এবং উদ্দেশ্য C-এর মধ্যে পার্থক্য
C এবং উদ্দেশ্য C-এর মধ্যে পার্থক্য

ভিডিও: C এবং উদ্দেশ্য C-এর মধ্যে পার্থক্য

ভিডিও: C এবং উদ্দেশ্য C-এর মধ্যে পার্থক্য
ভিডিও: সি বনাম সি++ বনাম সি# 2024, ডিসেম্বর
Anonim

মূল পার্থক্য – C বনাম উদ্দেশ্য C

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

C কি?

C একটি সাধারণ-উদ্দেশ্য প্রোগ্রামিং ভাষা। ইউনিক্স অপারেটিং সিস্টেম তৈরি করার সময় ডেনিস রিচি সি ভাষা খুঁজে পান। এটি জাভা, পাইথন, সি ইত্যাদি সহ অনেক ভাষার জন্য ভিত্তি প্রোগ্রামিং ভাষা। এটি একটি কাঠামোগত প্রোগ্রামিং ভাষা। প্রোগ্রামার কোডিংয়ে ফাংশন এবং পুনরাবৃত্তি ব্যবহার করতে পারে। C অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং সমর্থন করে না। সি ভাষায় লেখা সোর্স কোড মানুষ বোঝে এবং কম্পিউটার বোঝে না। তাই কম্পাইলার ব্যবহার করে সোর্স কোডকে মেশিন ল্যাঙ্গুয়েজে রূপান্তর করা হয়। একটি প্রায়শই ব্যবহৃত কম্পাইলার হল GNU C/C++ কম্পাইলার। সি প্রোগ্রাম চালানোর জন্য বা ইন্টিগ্রেটেড ডেভেলপমেন্ট এনভায়রনমেন্ট (আইডিই) ব্যবহার করার জন্য একজনের একটি টেক্সট এডিটর এবং একটি কম্পাইলার প্রয়োজন।

C-তে, main() হল যেখানে মৃত্যুদন্ড শুরু হয়। int, float, double, char, ইত্যাদি ভেরিয়েবলের জন্য C-এর অনেকগুলি ডেটা টাইপ রয়েছে। এছাড়াও অ্যারে, স্ট্রাকচার, এনাম এবং ইউনিয়ন রয়েছে। C-তে ভেরিয়েবল ডেটা টাইপ ঘোষণা করা প্রয়োজন।অঘোষিত ভেরিয়েবল ত্রুটির কারণ. ধ্রুবকগুলিকে "const" কীওয়ার্ড বা define প্রিপ্রসেসর ব্যবহার করে সংজ্ঞায়িত করা যেতে পারে। C এর চারটি স্টোরেজ ক্লাস রয়েছে, যা একটি পরিবর্তনশীল বা ফাংশনের জীবনকাল ব্যাখ্যা করে। তারা স্বয়ংক্রিয়, রেজিস্টার, স্ট্যাটিক, এবং বহিরাগত. সি স্ট্যান্ডার্ড লাইব্রেরি প্রোগ্রামারদের তাদের কোডিংয়ে ব্যবহার করার জন্য কিছু অন্তর্নির্মিত ফাংশন প্রদান করে। উদাহরণস্বরূপ, স্ট্রিং ম্যানিপুলেশনের জন্য strlen, strcpy এবং strcat এর মতো ফাংশন রয়েছে। তা ছাড়া প্রোগ্রামার ব্যবহারকারী-সংজ্ঞায়িত ফাংশনও তৈরি করতে পারে।

C হেডার ফাইল ব্যবহার করে। তারা ফাংশন ঘোষণা এবং ম্যাক্রো সংজ্ঞা গঠিত. কম্পাইলারের সাথে আসা হেডার ফাইল আছে, এবং প্রোগ্রামার দ্বারা লিখিত ফাইল আছে. হেডার ফাইলের বিষয়বস্তু কপি এবং পেস্ট করার পরিবর্তে, প্রোগ্রামার হেডার ফাইলগুলি অন্তর্ভুক্ত করতে পারে। উদাহরণস্বরূপ,অন্তর্ভুক্ত। এখানে, কমান্ডটি কম্পাইলারকে নির্দেশ করে হেডার ফাইল "stdio.h" অন্তর্ভুক্ত করতে।

C এবং উদ্দেশ্য C এর মধ্যে পার্থক্য
C এবং উদ্দেশ্য C এর মধ্যে পার্থক্য

C পয়েন্টার আছে। গতিশীল মেমরি বরাদ্দ সঞ্চালনের জন্য এটি একটি মৌলিক ধারণা। একটি পয়েন্টার একটি ভেরিয়েবল যা অন্য ভেরিয়েবলের ঠিকানা সংরক্ষণ করে। সি বা জাভার মতো প্রোগ্রামিং ভাষার বিপরীতে, সি-তে একটি স্বয়ংক্রিয় আবর্জনা সংগ্রহকারী নেই। অতএব, প্রোগ্রামার তার নিজের উপর ডায়নামিক মেমরি বরাদ্দ করা উচিত. কলক(), malloc(), realloc() এবং free() এর মত ফাংশনগুলি গতিশীল মেমরি পরিচালনার জন্য হেডার ফাইলে উপলব্ধ। সি অ্যালগরিদম বিকাশের জন্য এবং বেশিরভাগ হার্ডওয়্যার-ভিত্তিক অ্যাপ্লিকেশন বিকাশের জন্য দরকারী। এটি এমবেডেড সিস্টেম, নেটওয়ার্ক ড্রাইভার এবং অপারেটিং সিস্টেম এবং আরও অনেক কিছুর জন্য ব্যবহার করছে৷

অবজেক্টিভ সি কি?

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

অবজেক্টিভ সি একটি কম্পাইলার ভিত্তিক ভাষা। সম্পূর্ণ সোর্স কোড মেশিন কোডে রূপান্তরিত হয়। সি এর মত, প্রোগ্রামার অবজেক্টিভ সি প্রোগ্রাম চালানোর জন্য একটি টেক্সট এডিটর এবং একটি জিসিসি কম্পাইলার ব্যবহার করতে পারে। কম্পাইলার সোর্স কোডটিকে এক্সিকিউটেবল ফাইলে রূপান্তর করে। অবজেক্টিভ সি-তে int, ফ্লোট, ডাবল, ইউনিয়ন, পয়েন্টার, স্ট্রাকচার এবং বর্ধিত ডেটা টাইপ যেমন NSArryas এবং NSDictionaries রয়েছে।

অবজেক্টিভ সি-তে ক্লাস, অবজেক্ট, মেসেজিং, ব্যতিক্রম, বৈশিষ্ট্য এবং প্রোটোকল রয়েছে। @ প্রতীকটি নতুন সিনট্যাক্স সম্পর্কে কম্পাইলার নির্দেশ করতে ব্যবহৃত হয়। উদাহরণ স্বরূপ, C-এর কোনো চেষ্টা, ধরা নেই, কিন্তু অবজেক্টিভ C-এর চেষ্টা করতে হবে এবং @ চিহ্ন ব্যবহার করে ক্যাচ করতে হবে।অন্যান্য উদাহরণ হল @interface, @implementation, @property, @protocol।

C এবং অবজেক্টিভ C-এর মধ্যে মিল কী?

  • অবজেক্টিভ সি সি এর উপর ভিত্তি করে।
  • দুটিই কম্পাইলার ভিত্তিক ভাষা।
  • উভয় ভাষাই হেডার ফাইল ব্যবহার করে।
  • উভয় ভাষার বিবৃতি একটি সেমিকোলন দিয়ে শেষ হয়৷
  • কম্পাইলার হোয়াইটস্পেস উপেক্ষা করে। হোয়াইটস্পেস কোড পঠনযোগ্যতা উন্নত করতে পারে৷
  • দুটিই কেস-সংবেদনশীল ভাষা।
  • define preprocessor এবং const কীওয়ার্ড ব্যবহার করে ধ্রুবক সংজ্ঞায়িত করতে পারে।
  • অ্যারে সূচক শূন্য দিয়ে শুরু হয়।

C এবং উদ্দেশ্য C-এর মধ্যে পার্থক্য কী?

C বনাম উদ্দেশ্য C

C একটি সাধারণ-উদ্দেশ্যের ভাষা যা স্ট্রাকচার্ড প্রোগ্রামিংকে সমর্থন করে। অবজেক্টিভ সি হল একটি সাধারণ উদ্দেশ্য, বহু-দৃষ্টান্ত (প্রতিফলিত, বস্তু-ভিত্তিক) প্রোগ্রামিং ভাষা এবং এটি সি ভাষার একটি সুপারসেট৷
অবজেক্ট ওরিয়েন্টেশন
C অবজেক্ট ওরিয়েন্টেড প্রোগ্রামিং সমর্থন করে না। অবজেক্টিভ সি অবজেক্ট-ওরিয়েন্টেড প্রোগ্রামিং সমর্থন করে। উত্তরাধিকার, বিমূর্ততা, এনক্যাপসুলেশন এবং পলিমরফিজম।
ডেটার প্রকার
C এর অ্যারে, স্ট্রাকচার, enums আছে। অবজেক্টিভ সি-তে NSArray, NSDDictionary, NSSet ইত্যাদির মতো ডেটা প্রকার প্রসারিত হয়েছে।
বৈশিষ্ট্য
C ভাষায় লুপ, ফাংশন, অ্যারে, পয়েন্টার ইত্যাদি রয়েছে। অবজেক্টিভ C হল C-এর একটি সুপারসেট। এতে C ধারণা এবং নতুন বৈশিষ্ট্য যেমন ক্লাস, অবজেক্ট, মেসেজিং, ব্যতিক্রম এবং প্রোটোকল রয়েছে।
আবেদন
C হার্ডওয়্যার-সম্পর্কিত অ্যাপ্লিকেশন যেমন অপারেটিং সিস্টেম এবং নেটওয়ার্ক ড্রাইভার তৈরির জন্য ব্যাপকভাবে ব্যবহৃত হচ্ছে। অবজেক্টিভ সি বেশিরভাগই ম্যাক এবং আইওএস অ্যাপ্লিকেশন ডেভেলপমেন্টের জন্য ব্যবহৃত হয়।

সারাংশ – C বনাম উদ্দেশ্য C

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

C বনাম উদ্দেশ্য C এর PDF সংস্করণ ডাউনলোড করুন

আপনি এই নিবন্ধটির PDF সংস্করণ ডাউনলোড করতে পারেন এবং উদ্ধৃতি নোট অনুসারে অফলাইন উদ্দেশ্যে এটি ব্যবহার করতে পারেন। অনুগ্রহ করে এখানে পিডিএফ সংস্করণ ডাউনলোড করুন C এবং উদ্দেশ্য C এর মধ্যে পার্থক্য

প্রস্তাবিত: