আমার কাছে একটি সি # শ্রেণি রয়েছে যা একটি ওয়েব সামগ্রী পরিচালনা ব্যবস্থাতে একটি সামগ্রীর ধরণের প্রতিনিধিত্ব করে।
আমাদের এমন একটি ক্ষেত্র রয়েছে যা কোনও ওয়েব সামগ্রীকে সম্পাদক কীভাবে অবজেক্টটি প্রদর্শিত হয় তার জন্য একটি এইচটিএমএল টেমপ্লেট প্রবেশ করতে দেয়। এটি মূলত এইচটিএমএল স্ট্রিংয়ে অবজেক্ট প্রোপার্টি মানগুলি প্রতিস্থাপনের জন্য হ্যান্ডেলবার্স সিনট্যাক্স ব্যবহার করে:
<h1>{{Title}}</h1><p>{{Message}}</p>
শ্রেণি নকশার দৃষ্টিকোণ থেকে, আমি কি সম্পত্তি বা পদ্ধতি হিসাবে ফর্ম্যাট করা এইচটিএমএল স্ট্রিং (বিকল্প সহ) প্রকাশ করা উচিত ?
সম্পত্তি হিসাবে উদাহরণ:
public class Example
{
private string _template;
public string Title { get; set; }
public string Message { get; set; }
public string Html
{
get
{
return this.ToHtml();
}
protected set { }
}
public Example(Content content)
{
this.Title = content.GetValue("title") as string;
this.Message = content.GetValue("message") as string;
_template = content.GetValue("template") as string;
}
private string ToHtml()
{
// Perform substitution and return formatted string.
}
}
পদ্ধতি হিসাবে উদাহরণ:
public class Example
{
private string _template;
public string Title { get; set; }
public string Message { get; set; }
public Example(Content content)
{
this.Title = content.GetValue("title") as string;
this.Message = content.GetValue("message") as string;
_template = content.GetValue("template") as string;
}
public string ToHtml()
{
// Perform substitution and return formatted string.
}
}
আমি কোনও ডিজাইনের দৃষ্টিকোণ থেকে নিশ্চিত নই যে এটির কোনও পার্থক্য রয়েছে বা এর কারণগুলির কারণে কেন একটি পদ্ধতির অপরটির চেয়ে ভাল হয়?