সম্পর্কিত ক্লাস এবং ইন্টারফেসের নামকরণ


9

আমি একটি ObjectParserশ্রেণি তৈরি করেছি যা IObjectParserDataSourceডেটা উত্স হিসাবে ব্যবহার করে দৃ strongly়ভাবে টাইপ করা বস্তুগুলিতে ডেটা পার্স করে (ডেটাটি এক্সেল ফাইল, পাঠ্য ফাইল, অ্যারে, ক্যোরি স্ট্রিং ইত্যাদি হতে পারে)।

আমার বাস্তবায়নের উদাহরণগুলি হ'ল IObjectParserDataSource:

  • TextFileObjectParserDataSource
  • ExcelFileObjectParserDataSource

এই শ্রেণীর নামগুলি আমার কাছে সত্যই দীর্ঘ এবং সংশ্লেষিত মনে হয়।

আমি তাদের নাম বলতে পারি:

  • TextFileDataSource
  • ExcelFileDataSource

তবে এটি দ্ব্যর্থতার একটি স্তরের পরিচয় দেয় এবং এগুলি IObjectParserDataSourceপ্রথম নজরে স্পষ্টভাবে সম্পর্কিত হয় না । এটি গুরুত্বপূর্ণ হয়ে উঠেছে কারণ এই ডেটা উত্সগুলি সংজ্ঞায়িত করা ক্লায়েন্ট কোডে ঘটবে এবং আমি সম্ভাব্য বিভ্রান্তি এবং অনিশ্চয়তা হ্রাস করতে চাই।

আপনি এই জাতীয় পরিস্থিতিতে এই শ্রেণীর নামকরণ করবেন কীভাবে?


1
আমি মনে করি না যে আপনার বর্তমান নামগুলি খুব দীর্ঘ এবং সংশ্লেষিত।
আকাশম

আমি এই ধারণাটি সেখানে ফেলে দিচ্ছি, তবে আমি এটির প্রস্তাব দিচ্ছি না: আপনি যদি নিজের নামকরণে একই স্ট্রিং (যেমন "অবজেক্টপার্সার ডেটাসোর্স") ব্যবহার করেন তবে এটি সংক্ষেপণ করুন। ExcelFileOPDS, TextFileOPDS। এটি টাইপিং এবং স্ক্রিন স্পেসে কিছুটা সাশ্রয় করে তবে কোডটির সাথে পরিচিত না এমন ব্যক্তির কাছে এটি অস্বচ্ছ।
ববসন

উত্তর:


22

আমি সাধারণত একই ধরণের সমস্ত বস্তুকে একটি নেমস্পেসে স্টিক করে এবং তাদের নামগুলি সরল করে (যদি আমি এটি করতে পারি) তবে এই সমস্যাটি সমাধান করার চেষ্টা করি।

উদাহরণস্বরূপ, আছে

নেমস্পেস অবজেক্ট পার্সার ডেটা সোর্স
|
| -> ক্লাস টেক্সটফিলসোর্স
| -> ক্লাস এক্সেলফিলসোর্স

বা, / সার্ভিসিংয়ের সাথে কাজ করা অবজেক্টগুলির সংগ্রহ যদি ObjectParserযথেষ্ট পরিমাণে বড় হয়ে যায়, আমি একটি পৃথক ফোল্ডার ট্রি বা প্রজেক্ট কেবলমাত্র অবজেক্ট পার্সারে নিবেদিত করব:

namespace ObjectParser
|
|-> class ObjectParser
|-> interface IObjectParserDataSource
|
|-> namespace DataSources
|   |
|   |-> class TextFileSource
|   |-> class ExcelFileSource
|
|-> other stuff...

যে কোনও ফাইলের মধ্যে, আমদানি বিবৃতি এবং কোডের প্রসঙ্গটি সাধারণত এটি পরিষ্কার করে দেয় যে TextFileSourceএটি ObjectParserডেটা উত্স। একই কোডের টুকরাটিতে যদি একই রকম একাধিক ক্লাস থাকে তবে আপনি TextFileSourceএর পুরো নামটি উল্লেখ করতে পারেন :

var parserSource = new ObjectParser.DataSources.TextFileSource(/*...*/);

এটি সাধারণত খুব কমই ঘটে এবং অতিরিক্ত কয়েকটি শব্দ লিখতে আমার আপত্তি নেই।


1
আপনি সেই একই উত্তরটি টাইপ করার সময়টি আমাকে রক্ষা করেছেন :)
মাইকেল ব্রাউন

1
+1 টি। এই সমাধানটি স্বচ্ছতা হ্রাস না করে পাঠযোগ্যতার উন্নতি করে।
জন কার্টরাইট
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.