প্রকৃতির বিমূর্ততা প্রোগ্রামার এবং সিস্টেমের নীচের স্তরগুলিতে (সংকলক, গ্রন্থাগারগুলি এবং রানটাইম সিস্টেম) উভয়ই তথ্য যোগাযোগকে হ্রাস করে। বিমূর্তনের পক্ষে, এটি সাধারণত নীচের স্তরগুলিকে ধরে নিতে দেয় যে প্রোগ্রামারটি কোনও অনির্ধারিত আচরণের সাথে সম্পর্কিত নয়, নির্দিষ্ট করা আচরণ সরবরাহের ক্ষেত্রে আরও নমনীয়তা সরবরাহ করে।
এই "যত্ন করবেন না" দিক থেকে সম্ভাব্য সুবিধার একটি উদাহরণ ডেটা বিন্যাসে রয়েছে। সি (কম বিমূর্ততা) এ, সংকলক ডেটা বিন্যাস অপ্টিমাইজেশনে আরও সীমাবদ্ধ। এমনকি যদি সংকলকটি গরম / ঠান্ডা বা মিথ্যা-ভাগাভাগি-পরিহারের অপ্টিমাইজেশানগুলি উপকারী হতে পারে (যেমন প্রোফাইল তথ্যের মাধ্যমে) তা বুঝতে পারে তবে এটিকে সাধারণত প্রয়োগ করা থেকে বিরত রাখা হয়। ("যেমন" উল্লেখ করার মধ্যে কিছু স্বাধীনতা রয়েছে, অর্থাত্ স্পেসিফিকেশনটিকে আরও বিমূর্তভাবে চিকিত্সা করা, তবে সমস্ত সম্ভাব্য পার্শ্ব প্রতিক্রিয়াগুলি সংকলককে বোঝা যুক্ত করে))
আরও বিমূর্ত স্পেসিফিকেশন ট্রেড অফস এবং ব্যবহারের পরিবর্তনের বিরুদ্ধে আরও শক্তিশালী। নতুন সিস্টেম বৈশিষ্ট্য বা নতুন ব্যবহারের জন্য প্রোগ্রামটি পুনরায় চালু করতে নিম্ন স্তরগুলি কম সীমাবদ্ধ। আরও বেশি কংক্রিটের স্পেসিফিকেশন অবশ্যই প্রোগ্রামার দ্বারা আবার লিখতে হবে অথবা "যদি" আচরণের গ্যারান্টি দেওয়ার জন্য নীচের স্তরগুলি দ্বারা অতিরিক্ত প্রচেষ্টা করা আবশ্যক।
বিমূর্ততা লুকিয়ে রাখার তথ্যের কার্যকারিতা বাধা দেওয়ার দিকটি "প্রকাশ করতে পারে না", যা নিম্ন স্তরগুলি সাধারণত "জানি না" হিসাবে পরিচালনা করবে will এর অর্থ হ'ল নীচের স্তরগুলিকে অবশ্যই অন্যান্য সাধারণ উপায় যেমন আদর্শ সাধারণ ব্যবহার, লক্ষ্যবস্তু ব্যবহার, বা নির্দিষ্ট প্রোফাইল তথ্য থেকে অপ্টিমাইজেশনের জন্য দরকারী তথ্যগুলি সনাক্ত করতে হবে।
তথ্য গোপনের প্রভাবটি অন্য দিকেও কাজ করে। প্রতিটি বিশদ বিবেচনা না করে এবং নির্দিষ্ট করে না রেখে প্রোগ্রামার আরও উত্পাদনশীল হতে পারে তবে উচ্চতর স্তরের নকশা পছন্দগুলির প্রভাব সম্পর্কে প্রোগ্রামারটির কাছে কম তথ্য থাকতে পারে।
অন্যদিকে, কোডটি যখন আরও নির্দিষ্ট (কম বিমূর্ত) হয়, সিস্টেমের নীচের স্তরগুলি কেবল তাদের কাজটি করতে বলা হওয়ার সাথে সাথে যা করতে বলা হয় তা করতে পারে। কোডটি যদি লক্ষ্যযুক্ত ব্যবহারের জন্য ভালভাবে লিখিত হয় তবে এটি তার লক্ষ্যবস্তু ব্যবহারের জন্য উপযুক্ত হবে fit কম বিমূর্ত ভাষা (বা প্রোগ্রামিং দৃষ্টান্ত) প্রোগ্রামারকে বিস্তারিত নকশার মাধ্যমে এবং এমন তথ্য ব্যবহারের মাধ্যমে প্রয়োগকে অনুকূলিত করতে দেয় যা কোনও নিম্ন ভাষায় কোনও নিম্ন ভাষায় সহজে যোগাযোগ করা হয় না।
যেমনটি উল্লেখ করা হয়েছে, অতিরিক্ত প্রোগ্রামার দক্ষতা এবং প্রচেষ্টা সার্থক ফলাফল আনতে পারে তখন কম বিমূর্ত ভাষা (বা প্রোগ্রামিং কৌশল) আকর্ষণীয় হয়। যখন আরও প্রোগ্রামার প্রচেষ্টা এবং দক্ষতা প্রয়োগ করা হয়, ফলাফলগুলি সাধারণত আরও ভাল হয়। এছাড়াও, একটি ভাষা সিস্টেম যা পারফরম্যান্স-সমালোচনামূলক অ্যাপ্লিকেশনগুলির জন্য কম ব্যবহৃত হয় (পরিবর্তে বিকাশের প্রচেষ্টা বা নির্ভরযোগ্যতার উপর জোর দেয় - সীমা পরীক্ষা এবং আবর্জনা সংগ্রহ কেবল প্রোগ্রামার উত্পাদনশীলতা সম্পর্কে নয় তবে সঠিকতা সম্পর্কে, অ্যাবস্ট্রাকশনটির প্রোগ্রামারের মানসিক বোঝা হ্রাস করা নির্ভরযোগ্যতা উন্নত করতে পারে) কর্মক্ষমতা উন্নত করতে চাপ কম থাকবে।
নির্দিষ্টতা নিজেকে পুনরাবৃত্তি না করার নীতির বিপরীতেও কাজ করে কারণ নির্দিষ্ট ব্যবহারের জন্য কোডটি সেলাইয়ের মাধ্যমে অপ্টিমাইজেশন সাধারণত সম্ভব হয়। এর সুস্পষ্ট নির্ভরযোগ্যতা এবং প্রোগ্রামিং প্রচেষ্টা প্রচেষ্টা রয়েছে।
কোনও ভাষার সরবরাহিত বিমূর্ততাগুলিতে কম হেভিওয়েট বিমূর্ততা বাছাইয়ের কোনও উপায় ছাড়াই অনাকাঙ্ক্ষিত বা অপ্রয়োজনীয় কাজ অন্তর্ভুক্ত থাকতে পারে। অপ্রয়োজনীয় কাজ কখনও কখনও নীচের স্তর দ্বারা আবিষ্কার এবং সরিয়ে ফেলা যায় (উদাহরণস্বরূপ, লুপের দেহ থেকে বাউন্ড চেকগুলি বের করা যেতে পারে এবং কিছু ক্ষেত্রে সম্পূর্ণভাবে মুছে ফেলা যেতে পারে), এটি বৈধ অপ্টিমাইজেশনের জন্য আরও "দক্ষতা এবং প্রচেষ্টা" প্রয়োজন বলে নির্ধারণ করে সংকলক
ভাষার বয়স এবং জনপ্রিয়তা উভয়ই দক্ষ প্রোগ্রামারগুলির প্রাপ্যতা এবং সিস্টেমের নীচের স্তরগুলির গুণমান (পরিপক্ক গ্রন্থাগার এবং কোড উদাহরণ সহ) উভয় ক্ষেত্রে গুরুত্বপূর্ণ বিষয় wor
এইরকম তুলনাগুলিতে আর একটি বিস্ময়কর কারণ হ'ল সামনের সংকলন এবং সময়ের সাথে সংকলনের মধ্যে কিছুটা orthogonal পার্থক্য। যদিও ইন-টাইম সংকলন আরও সহজে প্রোফাইল তথ্য (প্রোফাইল রান সরবরাহ করার জন্য প্রোগ্রামারের উপর নির্ভর করে না) এবং সিস্টেম-নির্দিষ্ট অপ্টিমাইজেশন (সামনের সময়ের সংকলন বিস্তৃত সামঞ্জস্যকে লক্ষ্য করতে পারে) ব্যবহার করতে পারে, আক্রমণাত্মক অপ্টিমাইজেশনের ওভারহেড হিসাবে গণ্য হয় রানটাইম পারফরম্যান্সের অংশ। জেআইটি ফলাফলগুলি ক্যাশে করা যায়, সাধারণভাবে ব্যবহৃত কোডের জন্য ওভারহেড হ্রাস করে। (বাইনারি পুনঃনির্ধারণের বিকল্পটি জেআইটি সংকলনের কিছু সুবিধা সরবরাহ করতে পারে, তবে traditionalতিহ্যবাহী বাইনারি বিতরণ ফর্ম্যাটগুলি সর্বাধিক উত্স-কোড তথ্যকে সম্ভবত কোনও নির্দিষ্ট বাস্তবায়ন থেকে অভিপ্রায় সনাক্ত করার চেষ্টা করার জন্য সিস্টেমকে বাধ্য করে drop
(লোমম বিমূর্তকরণের ভাষাগুলি, প্রোগ্রামার নিয়ন্ত্রণের উপর জোর দেওয়ার কারণে, সাময়িক সময়ের সংকলন ব্যবহারের পক্ষে। )
বেঞ্চমার্কিং পদ্ধতিটির বিষয়টিও রয়েছে। সমান প্রচেষ্টা / দক্ষতা প্রতিষ্ঠা করা কার্যকরভাবে অসম্ভব, তবে এমনকি ভাষা লক্ষ্যগুলিও এর পক্ষপাতিত্ব হতে পারে তা অর্জন করা যেতে পারে। যদি কম সর্বাধিক প্রোগ্রামিংয়ের সময় প্রয়োজন হয় তবে কম বিমূর্ত ভাষার জন্য একটি প্রোগ্রাম এমনকি আরও বিমূর্ত ভাষায় একটি সরল ইডোমেটিক এক্সপ্রেশনের তুলনায় সম্পূর্ণ লেখা যেতে ব্যর্থ হতে পারে। যদি উচ্চতম প্রোগ্রামিংয়ের সময় / প্রচেষ্টার অনুমতি দেওয়া হয় তবে লো-অ্যাবস্ট্রাকশন ভাষাগুলির একটি সুবিধা থাকতে পারে। সেরা-প্রচেষ্টা ফলাফল উপস্থাপিত মানদণ্ডগুলি স্বাভাবিকভাবে কম বিমূর্ত ভাষার পক্ষে পক্ষপাতদুষ্ট হবে।
অন্যান্য প্রোগ্রামিং প্যারাডিজমের সুবিধা অর্জনের জন্য একটি ভাষায় কম পরিচ্ছন্নতার সাথে প্রোগ্রাম করা কখনও কখনও সম্ভব হয়, তবে এমনটি করার জন্য এক্সপ্রেশনাল পাওয়ার উপলব্ধ থাকলেও ট্রেড অফগুলি সুবিধাজনক নাও হতে পারে।