Bahar çerçevesinde hangi tasarım desenleri kullanılıyor?
Yanıtlar:
Kullanılan çok sayıda farklı tasarım modeli vardır, ancak birkaç bariz olanı vardır:
Proxy - AOP'de ve uzaktan kullanımda yoğun olarak kullanılır .
Singleton - bahar yapılandırma dosyalarında tanımlanan fasulye varsayılan olarak tek tondur.
Şablon yöntemi - yaygın olarak tekrarlanan standart kodla uğraşmak için kullanılır (bağlantıların temiz bir şekilde kapatılması vb.). Örneğin JdbcTemplate , JmsTemplate , JpaTemplate .
Aşağıdaki yorumları güncelleyin: MVC için, MVC Referansını okumak isteyebilirsiniz
MVC'de kullanılan bazı belirgin modeller:
Model Görünümü Denetleyicisi :-). Spring MVC'nin avantajı, denetleyicilerinizin sunucu uygulamaları yerine POJO'lar olmasıdır. Bu, kontrolörlerin daha kolay test edilmesini sağlar. Unutulmaması gereken bir nokta, denetleyicinin yalnızca mantıksal bir görünüm adı döndürmesi gerektiği ve görünüm seçiminin ayrı bir ViewResolver'a bırakılmasıdır . Bu, farklı görüntüleme teknolojileri için denetleyicileri yeniden kullanmayı kolaylaştırır.
Ön Kontrolör . Spring, gelen bir isteğin denetleyicilerinize gönderilmesini sağlamak için DispatcherServlet sağlar .
Yardımcıyı Görüntüle - Spring, kodun görünümlerde sunumdan ayrılmasına yardımcı olmak için bir dizi özel JSP etiketine ve hız makrolarına sahiptir.
Foo
ve Foo
bağlam başına örneğini alırsanız, iki farklı nesne referansı alırsınız. Bunun yerine, tasarım kalıbıdır burada uygulanan Flyweight
DI olayı aslında bir tür strateji modelidir. Ne zaman bir mantık / uygulama değiş tokuşu yapmak isterseniz, o arabirimin özel uygulamanızı bağlamak için ana bilgisayar sınıfında tipik olarak bir arabirim ve uygun bir ayarlayıcı yöntemi bulursunuz.
Spring, en iyi uygulama API kalıplarının bir koleksiyonudur, kolunuzun olduğu sürece bunlardan bir alışveriş listesi yazabilirsiniz. API'nin tasarlanma şekli sizi bu kalıpları takip etmeye teşvik eder (ancak sizi zorlamaz) ve bunu yaptığınızı bilmeden bunları takip ettiğiniz zamanın yarısında.
Servis Bulucu Modeli - ServiceLocatorFactoryBean, bağlam içinde tüm çekirdeklerle ilgili bilgileri tutar. İstemci kodu, adı kullanarak bir hizmet (bean) istediğinde, o çekirdeği bağlamda bulur ve döndürür. Müşteri kodunun bir fasulyenin yerini tespit etmek için yayla ilgili kod yazmasına gerek yoktur.
Fabrika Yöntemi pıtırtı: Bir nesnenin örneğini oluşturmak için BeanFactory Singleton: örnek türü bir bağlam için tekli olabilir Prototip: örnek türü prototip olabilir. Oluşturucu kalıbı: Bir sınıfta, karmaşık örnek oluşturmaktan sorumlu olacak bir yöntem de tanımlayabilirsiniz.
Yaylı kap, fasulye kapsamına göre (tekli, prototip vb.) Fasulye nesneleri üretir. Bu, Soyut Fabrika modelini uygulamaya benziyor . Baharın dahili uygulamasında, her kapsamın belirli bir fabrika türü sınıfına bağlanması gerektiğinden eminim.