Design Patterns
Published in

Design Patterns

TASARIM ÖRÜNTÜLERİ

Interpreter

Behavioral Patterns bir örneği olan Interpreter örüntü istemcinin String formatında ama belli bir grammer göre yazılmış komutları parçalara ayırarak işletilmesini sağlayan örüntüdür.

Bilgi Notu: Diğer tüm Tasarım Örüntüleri yazıma bu linkten ulaşabilirsiniz.

Hangi Durumda

Eğer elinizde belli gramer uygun içerik var ise. Örneğin türkçe bir metin, bir şarkının notaları, herhangi bir programlama dili ile kodlanmış bir uygulama, SQL veya kendi oluşturduğunu siz bu kurallara göre bu içeriği analiz ederek hiyerarşik ilişkili nesneler(Domain Modelini) oluşturmak istiyorsanız bu örüntü sizin için uygun bir örüntüdür.

Örnek Kullanım

Aşağıdaki UML şemasında belirli bir Context var. Client bu Context’i işleyebilmek için bir sürü Expression(İfade yorumlayıcı) tutuyor. Context’i sırası ile bu yorumlayıcılarda işler ve domain nesnelerine dönüştürür.

Aşağıda çalınan bir parçanın müziksel gösterimlerinin analiz edilerek ayrıştırıldığına. Notalar ve Müzik işaretlerine dönüştürüldüğünü görebilirsiniz.

Yapısı

Interpreter Yapısı

Örnek Kod

Code from https://springframework.guru/gang-of-four-design-patterns/interpreter-pattern/

Okumaya Devam Et 😃

Bu yazının devamı veya yazı grubundaki diğer yazılara erişmek için bu linke tıklayabilirsiniz.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store