আজকাল ডিজাইন নিদর্শনগুলি কি প্রয়োজনীয়?


107

আমি "কোডার এট ওয়ার্ক" পড়ছিলাম এবং বইটির সাক্ষাত্কার নেওয়া কিছু পেশাদার ডিজাইনের ধরণ সম্পর্কে এত উত্সাহী নয় এমন সত্যটিও মুখোমুখি হয়েছি ।

আমি মনে করি যে এর 2 টি প্রধান কারণ রয়েছে:

  1. নকশার নিদর্শনগুলি তাদের শর্তাবলী বিবেচনা করতে আমাদের বাধ্য করে। অন্য কথায়, নতুন কিছু আবিষ্কার করা প্রায় অসম্ভব (সম্ভবত আরও ভাল)।

  2. ডিজাইনের নিদর্শন চিরকাল স্থায়ী হয় না। ভাষা এবং প্রযুক্তিগুলি দ্রুত পরিবর্তিত হয়; অতএব, নকশার ধরণগুলি অবশেষে অপ্রাসঙ্গিক হয়ে উঠবে।

সুতরাং সম্ভবত কোনও নির্দিষ্ট নিদর্শন ছাড়াই কীভাবে সঠিকভাবে প্রোগ্রাম করা যায় এবং সেগুলি না শিখতে আরও গুরুত্বপূর্ণ।

মূল বক্তব্যটি হ'ল সাধারণত যখন লোকেরা কোনও সমস্যার মুখোমুখি হয় এবং তাদের খুব বেশি সময় না থাকে তারা একটি প্যাটার্ন ব্যবহার করার চেষ্টা করে। এর অর্থ এটি বিদ্যমান কাজটি করার জন্য সামান্য পরিবর্তন সহ আপনার প্রকল্পে বিদ্যমান কোডটি অনুলিপি করা এবং আটকানো। যখন এটি পরিবর্তন করার বা কোনও কিছু যুক্ত করার সময় এসেছে তখন কোনও বিকাশকারী কোথা থেকে শুরু করবেন তা জানেন না কারণ এটি তার কোড নয় এবং তিনি এর সাথে গভীরভাবে পরিচিত নন।


79
যদি কোনও প্যাটার্ন প্রয়োগ করার অর্থ বিদ্যমান কোডটি অনুলিপি করা এবং আটকানো হয় তবে আপনি সম্ভবত এটি ভুল করছেন
ডায়পল

9
নকশার নিদর্শনগুলি ব্যবহার করে! = কার্গো
কাল্ট

11
এই প্রশ্নের শিরোনামটি আবার বলা যেতে পারে "আজকাল চাকাটি কি পুনরুদ্ধার করা সত্যিই প্রয়োজনীয় নয়?"
এরিক কিং

2
নকশার নিদর্শনগুলি তাদের শর্তে ভাবতে বাধ্য করে - যদি আপনি সেগুলি দেন। নিদর্শনগুলির সচেতনতা আমাকে প্রদত্ত নকশা সমস্যার সম্ভাবনা বিবেচনা করতে দেয়। প্রায়শই এটি রেস্তোঁরা মেনু পড়ার মতো ... "না, না, আকর্ষণীয়, না, হুম, এ-হা!"। তদুপরি, আধুনিক ভাষার বৈশিষ্ট্যগুলি প্রায়শই দশক আগে কোডিংযুক্ত নির্দিষ্ট প্যাটার্ন ডায়াগ্রামগুলি প্রত্নতাত্ত্বিক করে তোলে।
রডারবব

উত্তর:


261

আমার অর্থের জন্য, আমি মনে করি সবাই ডিজাইনের নিদর্শনগুলি হারিয়ে যাচ্ছে। এটি বিরল যে আমি প্রদত্ত পরিস্থিতিতে কোন প্যাটার্নটি ব্যবহার করা উচিত তা ভেবে বসে আছি। এছাড়াও, আমি জানতাম যে তাদের নাম রয়েছে before

নকশার নিদর্শনগুলির শক্তি যোগাযোগে রয়েছে। আমি কী পরামর্শ দিচ্ছি তার বিশদ বর্ণনা না দেওয়ার চেয়ে "এর জন্য একটি কৌশল ব্যবহার করুন" বলা আমার পক্ষে তাত্পর্যপূর্ণ। ফ্যাট ডোমেন মডেলগুলির বনাম লেনদেনের স্ক্রিপ্টগুলির সুবিধাগুলি নিয়ে বিতর্ক করা আমাদের পক্ষে অনেক সহজ if যদি আমরা সবাই জানি যে এই দুটি পদটির অর্থ কী। ইত্যাদি।

এবং সবচেয়ে শক্তিশালীভাবে, আমি যদি ক্লাসের নাম দিয়েছি ফুবিল্ডার তবে আপনি জানবেন যে আমি আমার ফু তৈরি করতে বিল্ডার প্যাটার্নটি ব্যবহার করছি।

এমনকি যদি আপনি না জানেন যে আমি কী সম্পর্কে বলছি যখন "পর্যবেক্ষক প্যাটার্নটি এর জন্য আদর্শ," আপনি বলছেন এবং আপনি খুব সহজেই গুগল করতে পারবেন।

সেই অর্থে ডিজাইনের নিদর্শনগুলির শক্তি কখনই ম্লান হবে না।


55
"1 এর জন্য" আমি নামগুলি জানতাম had এগুলি সমস্ত দীর্ঘ সময় ধরে চলেছে, কেবল নিদর্শন নামকরণ ছাড়াই। ১৯৯১ সালে, আমি সি-তে সিলেটলেট লিখছিলাম, এবং আরও অভিজ্ঞ অভিজ্ঞ প্রোগ্রামারের কাছে একজনকে দেখিয়েছিলাম যারা এর আগে কখনও দেখেনি এবং ভেবেছিল যে এটি বেশ নিখরচায়।
বব মারফি

8
তবে, নিদর্শনগুলিও চলে যায়। 1950 এর দশকে, "সাব্রোটাইন কল" বেশ জনপ্রিয় প্যাটার্ন ছিল। সি-তে, "অবজেক্ট" একটি (কিছুটা) জনপ্রিয় প্যাটার্ন। এগুলি উভয়ই এখন কার্যত বিলুপ্তপ্রায় যেহেতু তারা আধুনিক ভাষায় এবং (সাবরুটাইনগুলির ক্ষেত্রে) এমনকি আধুনিক সিপিইউগুলির নির্দেশিকা সেটগুলিতে অন্তর্ভুক্ত ছিল।
জার্গ ডব্লু মিট্টাগ

9
@ بابি মারফি: আরগ সিঙ্গলটন :( :( @ পিডিআর: ঠিক আছে, প্যাটার্নগুলি প্রোগ্রামিং সম্পর্কে যোগাযোগ সম্পর্কে a প্যাটার্ন প্রয়োগ করা কারণ এটি প্রায় ফিট করে যে কোনওটিই করতে পারে এটি সবচেয়ে বড় ভুল, এবং তাই নকশার প্রতিবিম্ব নিদর্শনগুলির ক্ষেত্রে করা উচিত নয়, আপনি কেবলমাত্র সেই বিষয়ে নকশাটি প্রবেশ করতে হবে যখন আপনি কী ভেবেছিলেন তা ব্যাখ্যা করার জন্য: "এটি প্রায় একটি প্যাটার্নগুলির মতো: আমি টুইট করি না ..." আমি মনে করি যে খুব জিওএফ এটি নিজেরাই স্বীকৃতি দেয়: নিদর্শনগুলি ছাঁটা / সরল করা হয়েছে দর্শনগুলি, তাদের নির্দিষ্ট পরিস্থিতির সাথে খাপ
খাইয়ে নিতে হবে

10
@ জর্জি: কখন "সাব্রোটাইন কল" প্যাটার্নটি চলে যায়। কোনও পদ্ধতি / ফাংশন কল কী বলে আপনি মনে করেন?
ডাঙ্ক

10
@ ডাঙ্ক: এটি অবশ্যই আপনি যে ভাষাগুলি ব্যবহার করছেন তার উপর নির্ভর করে। আমি যা ভাষায় জানি না আপনি ব্যবহার করছেন কিন্তু প্রত্যেক সব আমি আজ ব্যবহার করছি, সাবরুটিন কল একটি বিল্ট-ইন ভাষা বৈশিষ্ট্য হয় না একটি নকশা প্যাটার্ন। যাইহোক, সি উদাহরণস্বরূপ, পদ্ধতি কল একটি ডিজাইনের ধরণ, যেখানে জাভাতে এটি অন্তর্নির্মিত ভাষার বৈশিষ্ট্য।
Jörg W Mittag

32

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

নকশার নকশাগুলি সরবরাহ করে এমন সমাধানগুলি কার্যকর, তবে সেগুলি এমন সমাধান যা আপনি ইতিমধ্যে ভেবে দেখেছেন যে তারা যদি সমস্যার সমাধান করেন তবে আপনি। ডিজাইনের ধরণগুলি বোঝার জন্য একটি নির্দিষ্ট স্তরের পরিপক্কতা প্রয়োজন - যদি আপনার কখনও সমস্যার সমাধান করতে না হয়, আপনি সমাধানটির মান বা আগ্রহ দেখতে পাবেন না।


15

নিদর্শন দুটি প্রাথমিক উদ্দেশ্যে পরিবেশন করে:

  • প্রাকৃতিকভাবে উত্তেজনা নিরসন : প্যাটার্নগুলি এমন একটি টানাপড়েনের সেটকে কাজের জন্য পরিচিত যেভাবে সমাধান করার জন্য ডিজাইন করা হয়েছে। স্মার্টটাক সেরা অনুশীলন প্যাটার্নসের লেখক কেন্ট বেক প্যাটার্নগুলি বর্ণনা করেছেন যাতে বিশেষজ্ঞরা একই পরিস্থিতিতে যে সিদ্ধান্ত নেবেন তার পুনরাবৃত্তি করার উপায় হিসাবে। যতক্ষণ উত্তেজনা একই থাকে (এবং তারা প্রায়শই করেন) ততক্ষণ যে সমস্যাগুলি সমাধান করে সেগুলি কার্যকর থাকবে।

  • যোগাযোগ বাহিনী গুণক : প্যাটার্নস আমাদের কিছু দিয়ে অনেক কিছু বলতে দেয়। তারা বিভিন্ন ধরণের সমস্যার জায়গাগুলিতে প্রযোজ্য একটি শক্তিশালী, ভাল বোঝা ধারণাগুলির একটি ছোট সেটকে উত্তোলন করে। @ পিডিআর এর উত্তর নিদর্শনগুলির যোগাযোগের মান সম্পর্কে মরে গেছে।


12

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

লোকেদের নিদর্শন সম্পর্কে কথা বলার সময় এখন আমি যা অপছন্দ করি তা হ'ল কিছু লোকের মধ্যে তাদের মধ্যে একধরণের আবেশ রয়েছে। আমার কাছে একবার আমার কাছে একজন ক্লায়েন্ট ছিল যাতে "কমপক্ষে আরও দুটি প্যাটার্ন অন্তর্ভুক্ত করতে" (ডাব্লুটিএফ ?!) জিজ্ঞাসা করেছিলেন যেহেতু আমার কোডটিতে বুজওয়ার্ডের অভাবের কারণে এটি যথেষ্ট উদ্যোগ হিসাবে দেখেনি।


3
আমার অভিজ্ঞতা হ'ল সু-লিখিত কোডটি একাধিক ডিজাইনের ধরণগুলিকে যথাযথভাবে মানায় কারণ তারা ভাল অনুশীলনের বর্ণনা দেয়। আপনার ক্লায়েন্টকে সন্তুষ্ট করার জন্য, আপনি ইতিমধ্যে কোনটি ব্যবহার করছেন এবং তাদের নামগুলি ডক্সে রেখেছিলেন তা সবিস্তারে দেখার বিষয় হওয়া উচিত ছিল। সহজ!
ডোনাল ফেলো

1
@ ডোনাল ফেলো আমি এটাই করেছি :) আমি প্রকল্পটি একটি সুখী সমাপ্তি দিয়ে দোষের ধরণগুলি খুঁজে পেয়ে তাদের নামকরণ শেষ করেছি up আমার সবচেয়ে বড় সমস্যাটি হ'ল এটি একটি খুব ছোট প্রকল্প (প্রায় এক সপ্তাহের কাজের কাজ) এবং খুব সোজা: এটি একটি অদ্ভুত ডেটা ফর্ম্যাট থেকে ডেটা পড়েছিল, বেশ কয়েকটি রূপান্তর করেছিল, ডেটা গ্রাফ করেছিল এবং এটি একটি ডাটাবেসে ডুবিয়েছিল।
পাই

@ ভিজিট আমি সম্পূর্ণরূপে আপনার সাথে একমত। আমি ব্যক্তিগতভাবে এমন লোকদের জানি যারা মনে করে যে আপনার সমস্যা / দৃশ্যের সাথে মানানসই একটি ডিজাইনের প্যাটার্ন খোঁজা একটি খারাপ ধারণা! তারা চাকা পুনর্নির্মাণ পছন্দ। আমি আশঙ্কা করি যে তারা একদিন জেগে উঠবে এবং আমাকে জাভা আইও ক্লাস ব্যবহার না করার এবং আমার নিজের আইও হ্যান্ডলারগুলি না লিখতে বলবে!
সিকিং

6

সম্ভবত অ্যান্টি-প্যাটার্নগুলির ধারণাটি জার্মানি। আমি কোনও সফ্টওয়্যার ইঞ্জিনিয়ার হওয়ার গুরুত্বপূর্ণ পদক্ষেপ হিসাবে নকশার ধরণগুলি অধ্যয়ন করার কথা ভাবি না। সফ্টওয়্যার ডিজাইনটি গুরুত্বপূর্ণ, প্রায়শই কোনও প্রকল্পের সফ্টওয়্যার আর্কিটেক্টের প্রোগ্রেটিভ হিসাবে সংরক্ষিত থাকে, কিন্তু বাস্তবিকভাবে এমন কিছু যা প্রবাদতুল্য "ভাল জেলযুক্ত" দলে sensকমত্যের দ্বারা আটকানো যায়।

তবে নকশা নিদর্শন এবং অ্যান্টি-নিদর্শনগুলি সেগুলি আলোচনার জন্য একটি উত্স তৈরি করে। ডিজাইন পছন্দগুলির ফলাফলগুলি কীভাবে ভালভাবে কাজ করেছে (বা না) এবং কীভাবে মূলধন করতে হবে (বা প্রশমিত করতে হবে) তার পাঠগুলির প্রশংসা করা উচিত। একটি ভাল দল তাদের নিজস্ব শব্দভাণ্ডার নিয়ে এ জাতীয় আলোচনার জন্য আসতে পারে , তবে লেখকরা যারা সেখানে ছিলেন, তারা যে কাজ করেছেন, তার দ্বারা সম্পাদিত Defacto মানগুলি উল্লেখ করা সত্যিই খারাপ জিনিস নয়।


3
"খারাপ" এর জন্য "অ্যান্টি-প্যাটার্ন" হ'ল একটি দীর্ঘ-বায়ুশালী শ্রুতিমধুরতা।
মাইকেল শ

@ হার্ডম্যাথ "অ্যান্টি-প্যাটার্ন" এর অর্থ কেবল 'খারাপ' এর চেয়ে অনেক বেশি
GoatInTheMachine

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

4

নকশার ধরণ দুটি ধরণের রয়েছে:

  1. ইউনিভার্সাল প্যাটার্নগুলি , যা জটিল প্রোগ্রামগুলি কীভাবে সংগঠিত করা যায় সে সম্পর্কে আরও অনেক কিছু যাতে আপনি এগুলি কিছুটা বুঝতে পারেন। এগুলি দূরে যাচ্ছে না, যদিও এর আরও উদাহরণগুলি আবিষ্কার হতে পারে।
  2. পরিস্থিতিভিত্তিক নিদর্শনগুলি , যা সীমাবদ্ধতার দ্বারা উদ্বুদ্ধকৃত বিশেষ বাহিনীর সাথে এতটাই আবদ্ধ (উদাহরণস্বরূপ, প্রোগ্রামিং ভাষা) যে যখন এই বাহিনী পরিবর্তন হয়, তখন তারা অপ্রাসঙ্গিক হয়ে যায়।

ঠিক আছে, তর্কযোগ্যভাবে সমস্ত নিদর্শন কিছুটা পরিস্থিতিগত, তবে কিছু বাহিনীর সাথে বাস্তব জগতের এবং অন্যদের সাথে বাহিনীগুলি সরঞ্জাম থেকে। সরঞ্জামগুলি বাস্তব বিশ্বের চেয়ে অনেক দ্রুত পরিবর্তিত হয়।


সমস্ত নিদর্শনগুলি কীভাবে উত্তেজনার একটি নির্দিষ্ট সেট সমাধান করে তার দ্বারা সংজ্ঞায়িত হয়। যতক্ষণ উত্তেজনা একই থাকে (এবং তারা প্রায়শই তাই, সে কারণেই এটি নিদর্শন ), নিদর্শনগুলি কার্যকর থাকবে।
রেন হেনরিচস

@ রিন: তবে যে শক্তিগুলি উত্তেজনা সৃষ্টি করে তা অভ্যন্তরীণ বা বাহ্যিক হতে পারে। বিভিন্ন ভাষার বিভিন্ন অভ্যন্তরীণ বাহিনী রয়েছে (উদাহরণস্বরূপ, শ্রেণি সিস্টেমে বিভিন্ন উত্তেজনার কারণে সি ++ এর চেয়ে ইন্টারফেসের সাথে সম্পর্কিত নিদর্শন জাভা জন্য আরও প্রাসঙ্গিক)।
ডোনাল ফেলো

স্পষ্টভাবে. বাস্তবায়ন প্যাটার্নগুলির (কেন্ট বেকের জাভা প্যাটার্নস বই) এক নজরে সাধারণ উদ্দেশ্য নিদর্শন এবং জাভা বৈশিষ্ট্যের সাথে আরও সুনির্দিষ্ট যেগুলির মধ্যে একটি সুন্দর এমনকি বিতরণ দেখায়। সেই বইটি স্মলটাকের সেরা অনুশীলন প্যাটার্নগুলির সাথে তুলনা করাও প্রকাশ পাচ্ছে।
রেন হেনরিচস

3

নকশার নিদর্শনগুলি সম্পর্কে পড়া পড়াগুলি পুনর্নবীকরণের পরিবর্তে গণিত শেখার মতো। একবার আপনার আগে কী হয়েছে তার সম্পর্কে দৃ understanding় বোঝার পরে কোনও কোনও আপনাকে নির্দিষ্ট ক্ষেত্রে দুর্দান্ত অগ্রগতি থেকে বিরত রাখে না। আপনি কি মনে করেন রিমন ইউক্লিড কখনও পড়েননি?


1

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


1

আমি বিশ্বাস করি যে চারটি গ্যাং তাদের নিজেরাই ডিজাইনের ধরণগুলিকে শ্রেণিবদ্ধ করে

সাধারণত ঘটে যাওয়া সমস্যার একটি সাধারণ সমাধান *

সুতরাং হ্যাঁ, একই ধরণের সমস্যা দেখা দিলে নিদর্শনগুলি প্রাসঙ্গিক। এবং এটি আমাদের "ডিজাইন প্যাটার্ন" শব্দটি নিয়ে একটি সমস্যায় নিয়ে আসে। একটি নিদর্শন এমন একটি জিনিস যা বারবার ঘটে। সুতরাং বাস্তবে ডিজাইনের একটি প্যাটার্ন নেই, রয়েছে সমস্যাগুলির একটি প্যাটার্ন।

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

এছাড়াও, .NET কাঠামোর একাধিক শ্রোতার কাছে ইভেন্টগুলি প্রকাশের জন্য ইভেন্ট মেকানিজম রয়েছে, যা এই প্রসঙ্গে পর্যবেক্ষক নিদর্শনটিকে কম প্রাসঙ্গিক করে তুলেছে।

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

আপনি যখন একজন শিক্ষানবিশ প্রোগ্রামার হয়ে প্রথমবারের মতো নতুন ধরণের সমস্যার মুখোমুখি হয়েছিলেন তবে নকশার ধরণগুলি এবং "ডিজাইন প্যাটার্নস" বা "প্যাটার্নস অফ এন্টারপ্রাইজ অ্যাপ্লিকেশন আর্কিটেকচার" এর মতো মূল্যবোধগুলি হ'ল; যেহেতু আমাকে প্রথমবারের মতো পূর্বাবস্থায় ফিরিয়ে আনতে বলা হয়েছিল function যদি এটি "ডিজাইনের প্যাটার্নস" বইটি না না ঘটে থাকে তবে আমার বাস্তবায়ন সম্ভবত প্রতিটি রাষ্ট্র পরিবর্তনকারী অপারেশন *** এর পরে ডেটাগুলির একটি স্ন্যাপশট সংরক্ষণ করার মতো কিছু ছিল - খুব ত্রুটিযুক্ত, এবং মারাত্মকভাবে অদক্ষ, পদ্ধতির।

সুতরাং হ্যাঁ, কিছু প্যাটার্ন সময়ের সাথে সাথে কম প্রাসঙ্গিক হয়ে ওঠে এবং আপনি যেমন একজন অভিজ্ঞ প্রোগ্রামার হয়ে উঠেন, আপনি সেগুলি সম্পর্কে কম ভাবেন। তবে কোনও নবজাতকের কাছে এগুলি মূল্যবান, যতক্ষণ না আপনি মনে রাখবেন যে তারা কোনও সমস্যা সমাধানের মাধ্যম - এবং যতটা সম্ভব ব্যবহার করার সন্ধান নয়।

* উদ্ধৃতিটি মেমরি থেকে নেওয়া হিসাবে এটি 100% নির্ভুল হতে পারে না

** আমার অভিজ্ঞতা হিসাবে, উদ্যোগগুলি অভ্যন্তরীণ লাইন অফ বিজনেস অ্যাপ্লিকেশনগুলির জন্য ওয়েব বিতরণ ব্যবস্থা চয়ন করা খুব সাধারণ হয়ে উঠছে।

*** ফাংশনাল প্রোগ্রামিং এবং ফাংশনাল ডেটা স্ট্রাকচার শিখার পরে, তবে এটি সম্ভবত আমি আজই এটি সমাধান করব।


-3

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


2
এই কিছু substantisl প্রস্তাব উপর পয়েন্ট হয়েছে এবং পূর্বে উত্তর ব্যাখ্যা বলে মনে হচ্ছে না
মশা
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.