শুরু থেকে শুরু করা যাক। প্রথমত, বিমূর্ততা আসলে কী?
সমস্যা / উদ্দেশ্য
আপনি যখন প্রোগ্রাম করেন, আপনাকে প্রায়শই খুব নির্দিষ্টভাবে সমস্যা সমাধান করতে হয়।
বিমূর্তনের প্রাথমিক উদ্দেশ্যটি হ'ল আপনি যখন এমন কোনও পরিস্থিতির মধ্যে নিজেকে খুঁজে পান যেখানে আপনার প্রোগ্রামটি পুরো সমস্যাটিকে একক ইউনিট হিসাবে পরিচালনা করে, যেখানে অনেকগুলি বিচ্ছিন্ন সামান্য অদ্ভুততা রয়েছে যাতে মনোযোগ এবং বোঝার প্রয়োজন হয়। এখানে সমস্যাটি হ'ল মানুষের পক্ষে একবারে এত বিশাল পরিমাণে ডেটা পরিচালনা করা কঠিন।
সমাধান: বিমূর্ততা
অর্ডার আপনি পাবে তার জন্য ঠিক বুঝতে কি আপনি আপনার ধারণা বাস্তবায়ন করার জন্য প্রয়োজন , আপনি নিষ্কর্ষ বিস্তারিত সমাধান মধ্যে সরলীকৃত বিমূর্ত ।
উদাহরণস্বরূপ, আসুন ওআরএম (অবজেক্ট-রিলেশনাল ম্যাপিং) দেখুন, যেখানে এসকিউএল অবজেক্টগুলিতে বিমূর্ত হয়।
কোনও অ্যাবস্ট্রাকশন ছাড়াই একটি ডাটাবেসে একটি নতুন আইটেম toোকাতে, কোনও প্রোগ্রামারকে এসকিউএল জানতে হবে। সুতরাং কোনও নতুন আইটেম সন্নিবেশ করতে কোনও প্রোগ্রামারকে একটি টেবিলের মধ্যে একটি নতুন আইটেম সন্নিবেশ করার জন্য এসকিউএল সিনট্যাক্সটি মনে রাখতে হবে:
INSERT INTO Items (field1, field2) VALUES (value1, value2)
তবে বিমূর্ততা সহ, প্রোগ্রামারকে কেবল তিনি কী করতে চান সে সম্পর্কে ধারণা সম্পর্কে সচেতন হওয়া দরকার। কোনও অবজেক্ট-ভিত্তিক বিমূর্ততা এর মতো দেখতে পারে:
Item item = new Item(value1, value2)
আপনি আরও কিছুটা এগিয়ে যেতে পারেন এবং এই সত্যটি নিয়ে ভাবতে পারেন যে এসকিউএল নিজেই প্রচুর পরিশীলিত ডেটা-স্টোরেজ স্ট্রাকচার এবং অ্যালগরিদমগুলির জন্য একটি বিমূর্ত বিমূর্ততা, যা একটি সাধারণ ঘোষণামূলক ভাষা শেখার মূল্যের জন্য সম্পূর্ণ আপনার নখদর্পণে।
বিমূর্তির বিপরীতে
আমরা এখন যা সংজ্ঞায়িত করেছি তার ভিত্তিতে যে বিমূর্তিটি হ'ল কেবল তাত্পর্যপূর্ণ ধারণাটি যথেষ্ট তা যথেষ্ট তৈরি করার বিষয়ে, আমরা সহজেই অনুমান করতে পারি যে বিমূর্তির বিপরীতটি আসলে বাস্তুভঙ্গি , যেখানে ব্যবহার বা বোধগম্যর কিছু বিশেষায়িত জ্ঞান থাকার প্রয়োজন রয়েছে where বিষয়টির অদ্ভুততা।