এটির একটি বিশদ ব্যাখ্যা প্রয়োজন তবে আমি পার্থক্যগুলি আমার জ্ঞানের সর্বোত্তম হিসাবে স্কেচ করার চেষ্টা করব।
প্যাটার্নগুলি ডিস্টিল করা সাধারণতা যা আপনি প্রোগ্রামগুলিতে সন্ধান করেন। এটি আমাদের একটি বৃহত জটিল কাঠামোটি ডিকনস্ট্রাক্ট করতে এবং সাধারণ অংশগুলি ব্যবহার করে তৈরি করতে সহায়তা করে। এটি এক শ্রেণির সমস্যার জন্য একটি সাধারণ সমাধান সরবরাহ করে।
একটি বৃহত জটিল সফ্টওয়্যার বিভিন্ন স্তরে একাধিক ডিকনস্ট্রাকশন দিয়ে যায়। বড় স্তরে, স্থাপত্য নিদর্শনগুলি হাতিয়ারগুলি। ছোট স্তরে, নকশার নিদর্শনগুলি হ'ল সরঞ্জামসমূহ এবং বাস্তবায়ন স্তরে, প্রোগ্রামিং প্যারাডাইমগুলি হ'ল সরঞ্জাম।
একটি নিদর্শন খুব বিভিন্ন স্তরে ঘটতে পারে। ফ্র্যাক্টাল দেখুন । দ্রুত সাজান, মার্জ সাজান হ'ল একটি ক্রমে উপাদানগুলির একটি গ্রুপ সংগঠিত করার জন্য সমস্ত অ্যালগরিদমিক নিদর্শন।
সাদামাটা দেখার জন্য:
- প্রোগ্রামিং উপমা - প্রোগ্রামিং ভাষার নির্দিষ্ট
- নকশার নিদর্শন - সফ্টওয়্যার নির্মাণে পুনরায় সমস্যা সমাধান করে
- স্থাপত্য নিদর্শন - সফ্টওয়্যার সিস্টেমের জন্য মৌলিক কাঠামোগত সংগঠন
আইডিয়ামগুলি হ'ল দৃষ্টান্ত-নির্দিষ্ট এবং ভাষা-নির্দিষ্ট প্রোগ্রামিং কৌশলগুলি যা নিম্ন-স্তরের বিশদগুলি পূরণ করে।
ডিজাইনের ধরণগুলি সাধারণত কোড স্তরের সাধারণতার সাথে যুক্ত। এটি আরও ছোট সাবসিস্টেমগুলি পরিশোধন এবং বিল্ডিংয়ের জন্য বিভিন্ন স্কিম সরবরাহ করে। এটি সাধারণত প্রোগ্রামিং ভাষার দ্বারা প্রভাবিত হয়। কিছু নমুনাগুলি ভাষা দৃষ্টান্তের কারণে তুচ্ছ হয়ে যায় । নকশার নিদর্শনগুলি মাঝারি স্তরের কৌশল যা সত্তা এবং তাদের সম্পর্কের কিছু কাঠামো এবং আচরণের বাইরে চলে।
যদিও স্থাপত্য নিদর্শন নকশা নিদর্শন বেশী পর্যায়ে মিল হিসেবে দেখা হয়। আর্কিটেকচারাল নিদর্শনগুলি হ'ল উচ্চ-স্তরের কৌশল যা বড় আকারের উপাদানগুলি, বিশ্বব্যাপী বৈশিষ্ট্য এবং কোনও সিস্টেমের প্রক্রিয়াগুলি নিয়ে উদ্বেগ প্রকাশ করে।
নিদর্শনগুলি কীভাবে প্রাপ্ত হয়? মাধ্যম:
- পুনরায় ব্যবহার,
- শ্রেণীবিন্যাস
- এবং অবশেষে বিমূর্ততা সাধারণতা ছাঁটাই।
যদি আপনি উপরোক্ত চিন্তাগুলি অনুসরণ করেন followed আপনি দেখতে পাবেন যে সিঙ্গেলটন হ'ল "নকশার ধরণ" এবং এমভিসি উদ্বেগের বিভাজন মোকাবেলায় "আর্কিটেকচারাল" প্যাটার্নগুলির মধ্যে একটি।
পড়ার চেষ্টা করুন:
- http://en.wikipedia.org/wiki/Architectural_pattern_(computer_science)
- http://en.wikipedia.org/wiki/Design_pattern
- http://en.wikipedia.org/wiki/Anti-pattern