AOP(Aspect Oriented Programming) Nedir?

Merhaba arkadaşlar, bu yazımda size AOP ‘dan yani Türkçesiyle “Görünüşe Göre Programlama”dan bahsedeceğim. İsim sizi yanıltmasın farklı bir kullanım anlamı var. AOP denildiğinde akla gelen ilk şey sanırım OOP ‘dir. Ancak bu iki programlama yöntemi birbiri için rakip olarak düşünülmesin. AOP, OOP kullanılırken bazı sorunların kolay bir şekilde çözülmesi için geliştirilmiştir. Tabi ki bu sorunların çözüm OOP ‘de var ancak çözüm için birkaç takla atmak gerekiyor.

AOP ‘un yapmak üzere geliştirildiği şey, birbiriyle kesişen ilgileri (Cross-Cutting Concerns) v e bu ilgilerin oluşturduğu karmaşıklığı çözmektir. Yazılım geliştirirken sanırım en zor konulardan biri de bu ilgileri basitleştirmektir. Neden basitleştirmemiz gerekiyor diye soracak olursanız da cevap, gelişime açık ve yeniden kullanılabilir projeler tasarlayabilmek derdim.

AOP, kesişen ya da diğer bir deyişle çakışan ilgileri modüler hale getirebilmek için sınıf ve metotları barındırır. İlgiler modüller halinde tek bir yerde ayrıştırılır ki bu yaklaşım ilgilerin yönetimini kolaylaştırır. Interceptor, AOP ‘un kesişen ilgileri ayırmakta kullandığı kütüphanelerdir ve kelime anlamıyla araya girme, ayırma anlamlarına gelmektedir. Bunlardan bazıları; Ninject, Unity ve Castle ‘dir. Bunları araştırarak detaylı bilgi edinebilirsiniz.

 

EOC(End Of Code)

Yorum bırakın

Bu site, istenmeyenleri azaltmak için Akismet kullanıyor. Yorum verilerinizin nasıl işlendiği hakkında daha fazla bilgi edinin.