You are on page 1of 1

..................................................................................................................................................................

KE YAZISI

ABAP MMARS
HAKKINDA YEN
BR KTAP: DESIGN
PATTERNS IN ABAP
OBJECTS
Dr. Kerem Kseolu
Freelance SAP Yazlm Mimar

Bir bina ina etme ihtiyac ortaya


ktktan sonra, ie mimari tasarm
ile balanr. Ne yaptn bilen
tecrbeli bir mimar binann tasarmn
tamamlamadan inaat balamad gibi,
mimarlk grevini de sadece konunun
uzman stlenir. in sahibi de, ii de
mimarlk iini yapmaz.
zne baktmzda; ayn durum
yazlm dnyas iin de geerlidir. Yeni
bir yazlmn gelitirilmesi de mimari
tasarm ile balar. Yazlm mimarisi,
ayr bir uzmanlk konusudur; analist,
danman veya gelitirici olmann
tesinde bir tecrbe ve eitim gerektirir.
Ancak mimari tasarm, pek ok durumda
kullanc-analist-danman-gelitirici
arasnda bir yerlerde erimektedir. Bal
bana bir uzmanlk konusu olan yazlm
mimarl, aslnda projelerde ayr bir rol
olarak dnlmelidir.
Tecrbeli bir mimarn elinden kan
bir yap; gl, esnek, gelitirilebilir
ve tekrarsz paralardan oluacaktr.
Bu yapdaki paralar birbirinden
bamsz test edilebilecei gibi,
ihtiya deitiinde baka paralarla
yer deitirebilir veya ileride baka
ihtiyalarda tekrar da kullanlabilir. Bu da
irketler asndan, daha dk risk ve
maliyet ile daha kaliteli yazlma sahip
olmak anlamna gelir.
Bu tarz bir mimari yaklam iin,
Amerikay tekrar kefetmeye gerek

yok. Yazlm dnyasnda Design


Pattern adyla bilinen hazr ablonlar,
sk karlalan ihtiya ve problemlere
karlk ortaya kmtr. Zamann
testinden geen Design Patternlar,
dilden ve platformdan bamsz olarak
tm dnyada kullanlmaktadr.
rnein; bir programdaki olaylardan
bir baka programn da haberi
olmas gerekiyorsa, Observer
Design Pattern bu konuda hazr
bir mimari ablon nerir. Alternatif
veri kaynaklar sz konusuysa, Data
Access Object ablonu sayesinde i
katman ile veri katman izole edilebilir.
Hafzay zorlayacak programlar
iin, Flyweight ablonu sayesinde
nesnelerin paylalmas ve hafza
ihtiyacnn azalmas salanabilir. Farkl
gelitiriciler tarafndan ek zellik
eklenebilecek merkezi snflar, Visitor
Design Pattern sayesinde deiiklie
kapal ama gelitirmeye ak hale
getirilebilir. Deiik senaryolarda farkl
algoritmayla almas gereken bir
program iin Strategy Design Pattern
kullanlabilir. Onay stratejisi belirlemek
gibi deiken koullara bal karar
sistemleri, Chain of Responsibility ile
kolay ve esnek bir ekilde uygulamaya
alnabilir.
Design Pattern kadar, kanlmas
gereken Anti-Patternlarn farknda
olmak da mimari tecrbenin bir
parasdr. rnein; sorumluluklarn
tamamn tek bir snfa yklemek Blob
ad verilen zararl bir Anti-Patterndir.
Programlar arasnda kodlar paylamak
yerine kopyalamak, Copy-Paste
Programming olarak adlandrlr. Alt
katmanlarn st katmanlara baml hale
getirilmesi, Jumble olarak etiketlenir.
Hi krlmadan yazlm yzlerce satr
kod, Spaghetti Code ad verilen bir
Anti-Patterndr.

rnekler oaltlabilir. in z; sk
rastlanan yazlm ihtiyalar iin, analist/
gelitiricinin tecrbesi kapsamnda bir
anlamda ansa braklm bir tasarma
gitmek yerine, zamann testinden
gemi Design Patternlar rnek alnarak
ve Anti-Patternlardan kanlarak daha
kaliteli bir mimari ile ie balanabilir.
Bu konuda kaynak aradnzda,
platform bamsz veya SAP d
platformlara ynelik pek ok kitap
bulabilirsiniz. Ancak; dorudan doruya
SAP/ABAP platformu zerinde Design
Pattern uygulamalarn anlatan kapsaml
bir kitap, bu konuda eksiklii hissedilen
bir kaynak idi.
SAP Pressten yaymlanan Design
Patterns in ABAP Objects adl kitabm,
tam da bu ihtiyaca ynelik olarak
kaleme aldm. Yaklak 400 sayfalk
bu kitapta, yazlm mimarisinin temel
modelleri olarak kabul edilen Design
Patternlarn SAP/ABAP platformunda
nasl uygulanabilecei incelenmektedir.
Her bir blm, 15 yllk danmanlk
tecrbemde iinde bulunduum
projelerden alnm rneklerden oluan
vaka analizlerini de iermektedir.
Tam 27 Design Patternn tasarm
emalar ve kod rnekleriyle birlikte
incelendii kitap, ayn zamanda yazlm
mimarisinin temel prensiplerini ve
sk yaplan mimari hatalar da ortaya
koymaktadr.
Bir senelik titiz bir almayla ortaya
kan ve piyasada yaynlanm beinci
eserim olan bu kitab; programclktan
mimarla adm atmak isteyen ABAP
danmanlar kadar, daha esnek ve
salam fonksiyonel tasarmlar yapmak
isteyen modl danmanlarna da
tavsiye ediyorum.

27

You might also like