الگوی طراحی Interpreter

  • شماره مطلب : 6
  • دسته بندی : الگو های طراحی نرم افزار
  • عنوان : الگوی طراحی Interpreter
  • نویسنده : NetBoss
  • پیش نیاز : الگوهای طراحی نرم افزار

الگوی طراحی Interpreter برای ارزیابی و یا ساخت گرامر زبان و یا یک عبارت مورد استفاده قرار میگیرد. این الگو جز الگوهای طراحی Behavioral محسوب میشود. از الگوی طراحی Interpreter در پیاده سازی پارسر زبان های اسکریپتی مثل SQL و یا موتور های پردازش محتوا های نمادین و یا رمز نگاری شده استفاده میشود. فرض بفرمایید در حال نوشتن یک موتور تولید محتوا هستیم. این موتور تولید محتوا باید نام را از کاربر دریافت نموده و به سه زبان انگلیسی، آلمانی و فرانسه با نام مذکور به کاربر خوش آمد بگوید.

خروجی نرم افزار به سه زبان مختلف

Hello my name is John.
Bonjour je m’appelle John.
Hallo mein Name ist John.

الگوی طراحی Interpreter
الگوی طراحی Interpreter

نمایی از ILanguage

public interface ILanguage
{
void Interpret();
}


نمایی از کلاس German

public class German:ILanguage
{

private readonly string _name;
public German(string name)
{
_name = name;
}
public void Interpret()
{
Console.WriteLine("Hallo mein Name ist {0}",_name);
}
}


نمایی از کلاس Client

class Program
{
static void Main(string[] args)
{
ILanguage e=new English("John");
ILanguage f=new French("John");
ILanguage g=new German("John");
//
e.Interpret();
f.Interpret();
g.Interpret();
//
Console.ReadKey();

}
}

Add a Comment

Your email address will not be published. Required fields are marked *

Copy Protected by Chetan's WP-Copyprotect.