SlideShare a Scribd company logo
Yazar Hakkında
• Dr. Kerem Köseoğlu
• 1978 doğumlu
• 2002’den beri ABAP
• Önceden yayınlanmış 4 kitap
Mimarlık
• Proje mimari ile başlar
• Tasarlayan mimar olmalıdır
İdeal Mimari
• Güçlü
• Esnek
• Geliştirilebilir
• Paralel çalışılabilir
• Yeniden kullanılabilir
• İkame edilebilir
Araçlar
• Nesneler
• Class
• Abstract Class
• Interface
• Program
• Özellikler
• Inheritance
• Polymorphism
• Encapsulation
• Composition
Design Pattern
• Hazır mimari kalıplar
• Zamana karşı test edilmiş
• Dil / platform bağımsız
Design Pattern Örnekleri
• Observer
• Data Access Object
• Multiton
• Decorator
• Chain of Responsibility*
• Strategy*
Chain of Responsibility
METHOD get_agents.
IF is_ekko-ekorg EQ ‘ORG4’.
“ Determine the plant
“ Determine agents based on the plant
ELSE.
CHECK go_next_rule IS NOT INITIAL.
rt_agent = go_next_rule->get_agents(
is_ekko = is_ekko
it_ekpo = it_ekpo ).
ENDIF.
ENDMETHOD.
Strategy
METHOD zif_mat_sender~send_material.
“ Some code to create XML file from it_mara
“ Some code to send XML file
ENDMETHOD.
Anti Pattern Örnekleri
• Blob
• Copy & Paste
• Jumble
• Spaghetti code
• Diaper
• Lava Flow
Design Patterns in
ABAP Objects
• SAP / ABAP özelinde
• 27 Design Pattern
• Gerçek proje örnekleri
• Mimari prensipler
• 400 sayfa
• Bir yıllık çalışma
Kimler İçin?
• ABAP: Mimarlığa ilk adım
• Modül: Daha iyi tasarım
• İngilizce
• E-Book + basılı
sap-press.com/4277
DSPTAB15
SAP Press Süreci
• Acquisition
• Board
• Contract
• Guide
• Writing
• Development editor
• Copy writer
• Proof
• Royalty
Sorular

More Related Content

More from sitist

SITIST 2018 Part 2 - SAP S/4HANA Extensibility - Custom Fields and Logic Demo
SITIST 2018 Part 2 - SAP S/4HANA Extensibility - Custom Fields and Logic Demo SITIST 2018 Part 2 - SAP S/4HANA Extensibility - Custom Fields and Logic Demo
SITIST 2018 Part 2 - SAP S/4HANA Extensibility - Custom Fields and Logic Demo
sitist
 
SITIST 2018 Part 2 - Robotic Process Automation (RPA)
SITIST 2018 Part 2 - Robotic Process Automation (RPA)SITIST 2018 Part 2 - Robotic Process Automation (RPA)
SITIST 2018 Part 2 - Robotic Process Automation (RPA)
sitist
 
SITIST 2018 Part 2 - abapGit & lint
SITIST 2018 Part 2 - abapGit & lintSITIST 2018 Part 2 - abapGit & lint
SITIST 2018 Part 2 - abapGit & lint
sitist
 
SITIST 2018 Part 2 - ABAP in SAP Cloud Platform
SITIST 2018 Part 2 - ABAP in SAP Cloud PlatformSITIST 2018 Part 2 - ABAP in SAP Cloud Platform
SITIST 2018 Part 2 - ABAP in SAP Cloud Platform
sitist
 
SITIST 2018 Part 2 - ABAP Career in Europe
SITIST 2018 Part 2 - ABAP Career in EuropeSITIST 2018 Part 2 - ABAP Career in Europe
SITIST 2018 Part 2 - ABAP Career in Europe
sitist
 
SITIST 2018 Part 1 - Updates on SAP Analytics Cloud and Analytics Hub
SITIST 2018 Part 1 - Updates on SAP Analytics Cloud and Analytics HubSITIST 2018 Part 1 - Updates on SAP Analytics Cloud and Analytics Hub
SITIST 2018 Part 1 - Updates on SAP Analytics Cloud and Analytics Hub
sitist
 
SITIST 2018 Part 1 - Installation of custom CIC Certified Add-On client systems
SITIST 2018 Part 1 - Installation of custom CIC Certified Add-On client systemsSITIST 2018 Part 1 - Installation of custom CIC Certified Add-On client systems
SITIST 2018 Part 1 - Installation of custom CIC Certified Add-On client systems
sitist
 
SITIST 2018 Part 1 - New ABAP Syntax
SITIST 2018 Part 1 - New ABAP SyntaxSITIST 2018 Part 1 - New ABAP Syntax
SITIST 2018 Part 1 - New ABAP Syntax
sitist
 
SITIST 2018 Part 1 - SAP HANA Spatial Processing
SITIST 2018 Part 1 - SAP HANA Spatial ProcessingSITIST 2018 Part 1 - SAP HANA Spatial Processing
SITIST 2018 Part 1 - SAP HANA Spatial Processing
sitist
 
SITIST 2018 Part 1 - Employee vs Freelancer vs Entrepreneur
SITIST 2018 Part 1 - Employee vs Freelancer vs EntrepreneurSITIST 2018 Part 1 - Employee vs Freelancer vs Entrepreneur
SITIST 2018 Part 1 - Employee vs Freelancer vs Entrepreneur
sitist
 
SITIST 2018 Part 1 - Gigya vs Hybris Marketing
SITIST 2018 Part 1 - Gigya vs Hybris MarketingSITIST 2018 Part 1 - Gigya vs Hybris Marketing
SITIST 2018 Part 1 - Gigya vs Hybris Marketing
sitist
 
SITIST 2018 Part 1 - Blockchain and Enterprise Use Cases
SITIST 2018 Part 1 - Blockchain and Enterprise Use CasesSITIST 2018 Part 1 - Blockchain and Enterprise Use Cases
SITIST 2018 Part 1 - Blockchain and Enterprise Use Cases
sitist
 
SITIST 2018 Part 1 - SAP CP Enterprise Messaging
SITIST 2018 Part 1 - SAP CP Enterprise MessagingSITIST 2018 Part 1 - SAP CP Enterprise Messaging
SITIST 2018 Part 1 - SAP CP Enterprise Messaging
sitist
 
SITIST 2017 Dev - Alexa Custom Skill Development with SAP HANA XSA
SITIST 2017 Dev - Alexa Custom Skill Development with SAP HANA XSASITIST 2017 Dev - Alexa Custom Skill Development with SAP HANA XSA
SITIST 2017 Dev - Alexa Custom Skill Development with SAP HANA XSA
sitist
 
HCI
HCIHCI
HCI
sitist
 
SITIST 2016 Dev - What's new at SAP
SITIST 2016 Dev - What's new at SAPSITIST 2016 Dev - What's new at SAP
SITIST 2016 Dev - What's new at SAP
sitist
 
SITIST 2016 Dev - What is new in SAP Analytics
SITIST 2016 Dev - What is new in SAP AnalyticsSITIST 2016 Dev - What is new in SAP Analytics
SITIST 2016 Dev - What is new in SAP Analytics
sitist
 
SITIST 2016 Dev - Keynote
SITIST 2016 Dev - KeynoteSITIST 2016 Dev - Keynote
SITIST 2016 Dev - Keynote
sitist
 
SITIST 2016 Dev - Fiori 2.0
SITIST 2016 Dev - Fiori 2.0SITIST 2016 Dev - Fiori 2.0
SITIST 2016 Dev - Fiori 2.0
sitist
 
SITIST 2016 Dev - SAP API Management
SITIST 2016 Dev - SAP API ManagementSITIST 2016 Dev - SAP API Management
SITIST 2016 Dev - SAP API Management
sitist
 

More from sitist (20)

SITIST 2018 Part 2 - SAP S/4HANA Extensibility - Custom Fields and Logic Demo
SITIST 2018 Part 2 - SAP S/4HANA Extensibility - Custom Fields and Logic Demo SITIST 2018 Part 2 - SAP S/4HANA Extensibility - Custom Fields and Logic Demo
SITIST 2018 Part 2 - SAP S/4HANA Extensibility - Custom Fields and Logic Demo
 
SITIST 2018 Part 2 - Robotic Process Automation (RPA)
SITIST 2018 Part 2 - Robotic Process Automation (RPA)SITIST 2018 Part 2 - Robotic Process Automation (RPA)
SITIST 2018 Part 2 - Robotic Process Automation (RPA)
 
SITIST 2018 Part 2 - abapGit & lint
SITIST 2018 Part 2 - abapGit & lintSITIST 2018 Part 2 - abapGit & lint
SITIST 2018 Part 2 - abapGit & lint
 
SITIST 2018 Part 2 - ABAP in SAP Cloud Platform
SITIST 2018 Part 2 - ABAP in SAP Cloud PlatformSITIST 2018 Part 2 - ABAP in SAP Cloud Platform
SITIST 2018 Part 2 - ABAP in SAP Cloud Platform
 
SITIST 2018 Part 2 - ABAP Career in Europe
SITIST 2018 Part 2 - ABAP Career in EuropeSITIST 2018 Part 2 - ABAP Career in Europe
SITIST 2018 Part 2 - ABAP Career in Europe
 
SITIST 2018 Part 1 - Updates on SAP Analytics Cloud and Analytics Hub
SITIST 2018 Part 1 - Updates on SAP Analytics Cloud and Analytics HubSITIST 2018 Part 1 - Updates on SAP Analytics Cloud and Analytics Hub
SITIST 2018 Part 1 - Updates on SAP Analytics Cloud and Analytics Hub
 
SITIST 2018 Part 1 - Installation of custom CIC Certified Add-On client systems
SITIST 2018 Part 1 - Installation of custom CIC Certified Add-On client systemsSITIST 2018 Part 1 - Installation of custom CIC Certified Add-On client systems
SITIST 2018 Part 1 - Installation of custom CIC Certified Add-On client systems
 
SITIST 2018 Part 1 - New ABAP Syntax
SITIST 2018 Part 1 - New ABAP SyntaxSITIST 2018 Part 1 - New ABAP Syntax
SITIST 2018 Part 1 - New ABAP Syntax
 
SITIST 2018 Part 1 - SAP HANA Spatial Processing
SITIST 2018 Part 1 - SAP HANA Spatial ProcessingSITIST 2018 Part 1 - SAP HANA Spatial Processing
SITIST 2018 Part 1 - SAP HANA Spatial Processing
 
SITIST 2018 Part 1 - Employee vs Freelancer vs Entrepreneur
SITIST 2018 Part 1 - Employee vs Freelancer vs EntrepreneurSITIST 2018 Part 1 - Employee vs Freelancer vs Entrepreneur
SITIST 2018 Part 1 - Employee vs Freelancer vs Entrepreneur
 
SITIST 2018 Part 1 - Gigya vs Hybris Marketing
SITIST 2018 Part 1 - Gigya vs Hybris MarketingSITIST 2018 Part 1 - Gigya vs Hybris Marketing
SITIST 2018 Part 1 - Gigya vs Hybris Marketing
 
SITIST 2018 Part 1 - Blockchain and Enterprise Use Cases
SITIST 2018 Part 1 - Blockchain and Enterprise Use CasesSITIST 2018 Part 1 - Blockchain and Enterprise Use Cases
SITIST 2018 Part 1 - Blockchain and Enterprise Use Cases
 
SITIST 2018 Part 1 - SAP CP Enterprise Messaging
SITIST 2018 Part 1 - SAP CP Enterprise MessagingSITIST 2018 Part 1 - SAP CP Enterprise Messaging
SITIST 2018 Part 1 - SAP CP Enterprise Messaging
 
SITIST 2017 Dev - Alexa Custom Skill Development with SAP HANA XSA
SITIST 2017 Dev - Alexa Custom Skill Development with SAP HANA XSASITIST 2017 Dev - Alexa Custom Skill Development with SAP HANA XSA
SITIST 2017 Dev - Alexa Custom Skill Development with SAP HANA XSA
 
HCI
HCIHCI
HCI
 
SITIST 2016 Dev - What's new at SAP
SITIST 2016 Dev - What's new at SAPSITIST 2016 Dev - What's new at SAP
SITIST 2016 Dev - What's new at SAP
 
SITIST 2016 Dev - What is new in SAP Analytics
SITIST 2016 Dev - What is new in SAP AnalyticsSITIST 2016 Dev - What is new in SAP Analytics
SITIST 2016 Dev - What is new in SAP Analytics
 
SITIST 2016 Dev - Keynote
SITIST 2016 Dev - KeynoteSITIST 2016 Dev - Keynote
SITIST 2016 Dev - Keynote
 
SITIST 2016 Dev - Fiori 2.0
SITIST 2016 Dev - Fiori 2.0SITIST 2016 Dev - Fiori 2.0
SITIST 2016 Dev - Fiori 2.0
 
SITIST 2016 Dev - SAP API Management
SITIST 2016 Dev - SAP API ManagementSITIST 2016 Dev - SAP API Management
SITIST 2016 Dev - SAP API Management
 

SITIST 2016 Dev - Design Patterns in ABAP Objects

Editor's Notes

  1. freelancer bas gitar, yoga
  2. bina: işçi veya mal sahibi mimarlık yapmaz yazılım: aynısı olmalı. bizde, danışman - müşteri - abapçı arasında eriyor mimarlık: ayrı bir uzmanlık ve eğitim konusudur.
  3. bunlara uyduğunda; developer daha rahat çalışır ve şirketler daha az zaman / para harcar
  4. nasıl kullanmalıyız ki ideal mimari ortaya çıksın?
  5. observer: 2 program. dao: müşteri / potansiyel. multiton: matnr. decorator: user exit. cor: onay belirleme (birazdan geliyor). strategy: veri yollama.
  6. level aşağı çekildi
  7. level aşağı çekildi
  8. level aşağı çekildi