আপনি কীভাবে অবজেক্ট ওরিয়েন্টেড ডিজাইন দক্ষতা মূল্যায়ন করবেন? [বন্ধ]


11

কোন ধরণের অন্তর্দৃষ্টি বা প্রশ্ন আপনাকে একজন ব্যক্তির OOAD দক্ষতা নির্ধারণ করতে পরিচালিত করবে।


তারা জিজ্ঞাসা করুন যে তারা তাদের বিন্দু আছে কিনা।
কাজ

উত্তর:


10

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

আপনার যদি আলোচনাটি চালিয়ে যাওয়ার প্রয়োজন হয়, তবে কোডটির কিছু দিক সম্পর্কে ব্যক্তি কী ভাবছেন তা জিজ্ঞাসা করুন, তবে শীর্ষস্থানীয় কোনও প্রশ্ন নয়।

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


আমি সাক্ষাত্কারের এই পদ্ধতিটি পছন্দ করি যেখানে এটি প্রশ্নোত্তরের পরিবর্তে আলোচনার।
রোহান মঙ্গা

5

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

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


আপনি আমাকে লিঙ্কটি দিতে পারেন :)
রোহান মোঙ্গা

1
@bronzebeard - এই নাও - sites.google.com/site/steveyegge2/... । তিনি আসলে ওও মডেলিং এইচটিএমএল সম্পর্কে কথা বলেছেন - তবে আমি মনে করি এক্সএমএল এই প্রশ্নের একটি
শক্ত

4

সর্বাধিক জনপ্রিয় নকশার নিদর্শনগুলির একটি ভাল জ্ঞান থাকা প্রমাণিত করতে পারে যে প্রার্থী তার নকশা সমস্যার সমাধানের জন্য আসলে অনুসন্ধান করেছিলেন।

সেগুলি নিয়ে আলোচনা করতে এবং কখন সেগুলি প্রয়োগ করতে হবে বা না তা জানতে সক্ষম হওয়াই একটি ভাল ইঙ্গিত যা তিনি তাদের বোঝেন।

তার অতীতের অভিজ্ঞতাগুলিতে ব্যবহারের জন্য উদাহরণস্বরূপ তাকে জিজ্ঞাসা করাও সহায়তা করতে পারে।


এটি ওভারলোডিং সি # তে কীভাবে কাজ করে তা জানার একটি পরীক্ষা, তবে ওওএডি ডিজাইনের দক্ষতার জন্য খুব কমই একটি পরীক্ষা।
ব্যবহারকারী 281377

আপনার পুরোপুরি সঠিক। আমি আপনার প্রশ্নটি খুব দ্রুত পড়ি আমি এটি পরিবর্তন করি।

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

@ মিশেল: হ্যাঁ তাই অবশ্যই প্রথমে কোনও নির্দিষ্ট সমস্যা কীভাবে সমাধান করা যায় তা জিজ্ঞাসা করা ভাল, তারপরে প্যাটার্নটির প্রকৃত নাম সম্পর্কে কথা বলুন। আমি প্রতিদিন কৌশল প্যাটার্ন ব্যবহার করে অনেক লোককে জানি এবং এটি জানি না যে এটিকে বলা হয়। তারা কেবলমাত্র চারজনের মূল গোষ্ঠীর মতো চিন্তা করেই এটি "তৈরি" করেছে। পার্থক্য হ'ল উত্তরোত্তর এই বিষয়টিতে একটি বই লিখেছিল।

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

3

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


2

তাকে কোনও ঘর বা অন্য কোনও ভার্চুয়াল সত্তার ব্যবসায়ের জিনিস, শ্রেণি এবং ইন্টারফেস / পদ্ধতি লিখতে বলবে


2

যদি সম্ভব হয়, স্যাম্পল কোডের জন্য জিজ্ঞাসা করুন।

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

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


1

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

যদিও ডিজাইন প্যাটার্ন বইটি এই বইটি ওওপির সমস্যাগুলি পূর্ণ :-)


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

1

সহজ শুরু করুন: ওওপি সব কিসের?

আপনি ওওপির প্রাথমিক চত্বরের বিষয়ে জিজ্ঞাসা করে শুরু করতে পারেন: বিমূর্ততা, পলিমারফিজম, উত্তরাধিকার এবং এনক্যাপসুলেশন। তাদের উষ্ণতর করার জন্য চিন্তার জন্য ভাল খাবার।

তাদের একটি সমস্যা দিন

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

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

আপনি চ্যাটিং সমাপ্ত সময় দ্বারা

  1. নিয়ামক (সেই জিনিস যা পরিবর্তিত ইভেন্টগুলিতে আগুন লাগিয়ে প্রতিক্রিয়ার মূল্যায়ন করে),
  2. পর্যবেক্ষক (বৈধতা পরিবর্তনকারী ইভেন্টগুলিতে প্রতিক্রিয়া জানান),
  3. কৌশল (প্রতিটি বৈধকারক ইনপুটটি বৈধ কিনা তা নির্ধারণের বিভিন্ন উপায়ে প্রতিনিধিত্ব করে),

যদি তারা OOD বুঝতে পারে তবে আপনার কাছে খুব ভাল ধারণা হবে।

তাদের আবার একই সমস্যা দিন, তবে এবার আলাদা ডিজাইনের জন্য জিজ্ঞাসা করুন

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

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


1

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

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

কিন্তু কোনও নিয়োগকর্তা তাদের টিমের মধ্যে যা প্রয়োজন তা হ'ল একটি মন যা জড়িত ধারণাগুলি বুঝতে পারে এবং যা কিছু পরিবর্তন ঘটায় সেগুলিতে প্রয়োগ করতে পারে। ধারণাগুলি এম্বেড করা হলে স্পেসিফিক্সগুলি দ্রুত শিখতে পারে।


† গভীর পরিচিতি এবং কোড সহায়তার সাথে সংযোগের অনুপস্থিতি: একটি পরিবার সকালে বাথরুম ব্যবহার করে; রাতের খাবার রান্না; কাজ করার জন্য একটি বাস রুট; একটি গাড়ী সমাবেশ।


0

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

যদি তারা লিখতে প্রথম জিনিসটি কোনও অবজেক্ট হয় তবে ওও বোঝার জন্য তারা ইতিমধ্যে তাদের 99% সহকর্মীর চেয়ে এগিয়ে। যদি তারা প্রথম লেখেন তারা একটি শ্রেণি হয়, দয়া করে তাদের বাইরে গিয়ে পরবর্তী প্রার্থীকে প্রেরণ করতে বলুন এবং কেন এটি ওওপি বলা হয় এবং সিওপি নয় কেন তা নিয়ে চিন্তা করুন।


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