This document provides an overview of an ABAP Objects and application areas course. The course is intended for development consultants responsible for ABAP/ABAP Objects programs. It covers fundamental object-oriented concepts like classes, inheritance, interfaces and exceptions. It also discusses dynamic programming techniques, shared objects and areas. The course aims to teach object-oriented modeling, programming techniques and tools for creating repository objects. Key topics include class-based programming, UML modeling, exception handling and accessing shared memory objects.
Download as PPT, PDF, TXT or read online on Scribd
0 ratings0% found this document useful (0 votes)
169 views
ABAP Objects
This document provides an overview of an ABAP Objects and application areas course. The course is intended for development consultants responsible for ABAP/ABAP Objects programs. It covers fundamental object-oriented concepts like classes, inheritance, interfaces and exceptions. It also discusses dynamic programming techniques, shared objects and areas. The course aims to teach object-oriented modeling, programming techniques and tools for creating repository objects. Key topics include class-based programming, UML modeling, exception handling and accessing shared memory objects.
Download as PPT, PDF, TXT or read online on Scribd
You are on page 1/ 202
ABAP Objects and application areas
Target Audience This course is intended for the following audiences: • Development consultants who are responsible for adapting
and developing ABAP/ABAP Objects programs
Course Prerequisites Required knowledge
• TAW10(ABAP Workbench Fundamentals)
• Included in booking: TAW11 Recommended Knowledge BC410 – Programming User Dialogs with dynpro Course Goals • Use fundamental elements object-oriented modeling in UML • Create ABAP Objects programs that contain all useful object-oriented programming techniques • Use the relevant tools to create object-oriented Repository objects • Describe and use the application areas of ABAP objects • Define, raise and handle class-based exceptions • Query type and class attributes at runtime Unit1 -Objectives • Differences between procedural and object-oriented programming models • List the advantages of object oriented programming model • Name the important diagram types in UML • Create simple class diagrams • Create simple object diagrams • Describe sequence diagrams • Define Classes • Generate and delete objects • Access attributes The object-oriented programming model : Moving from the procedural to object-oriented programming model: Characteristics of procedural programming language Typical ABAP Program Encapsulating data using function groups Example of a function group Instances of function group Multiple instantiation in Object- Oriented programming ABAP Main memory encapsulation DATA management ABAP objects Client/server relation ship between objects Additional Concepts Charecteristics/Advantages Software Development Process Analysis and design with UML- Objectives • Most important diagram types in UML • class diagrams • Object diagrams • sequence diagrams Class creation/ modeling Classes as abstraction forms Comparison of classes and objects Modeling with UML • Class Diagrams: Show the classes and the relation ships between them, that is a static view of a model • Behavior diagrams Pay particular attention to the sequence in which the objects relate to each other • Component diagrams show the organization and dependencies of components Representation of a class Association Association with roles Assocation classes Aggregation and composition Generalization and Specialization Object diagram Sequence diagram Delegation principle in Sequence diagram Fundamental Object oriented syntax elements-objectives • Define classes • Generate and delete objects • Access attributes • Call methods Classes ,attributes , and methods Defining classes Attributes Definition of attributes, Types, and Constants Visibility section of attributes Accessing private attributes Instance and static attributes Syntax for methods Visibility section of Methods Accessing private methods Instance Methods and Static Methods Visibility Sections and UML notation Instances of Classes References Variables Creating Objects Semantics of Object References Garbage Collector Administration with multiple instantiation Aggregation Accessing attributes and methods Functional Methods Accessing public attributes Constructors Static Constructor Self Reference Unit-2 Object-Oriented concepts and programming techniques-Objectives • Define inheritance relationships between classes • Redefine methods • Create up-cast assignments(Widening Cast) • Create down-cast assignments(narrowing cast) • Explain the concept of polymorphism with reference to inheritance • Use cast assignments with inheritance to make generic calls • Define and implement interfaces • Implement interface methods • Use interface references to make up-cast assignments • Use interface references to make down-cast assignments • Explain the term polymorphism with reference to interfaces • Use cast assignments with interfaces to make generic calls • Define and trigger events • Handle events • Register and deregister event handling Inheritance and Casting-Objectives • Define inheritance relationships between classes • Redefine methods • Create up-cast assignments • Create down-cast assignments • Explain the concept of polymorphism with reference to inheritance • Use cast assignments with inheritance to make generic calls Generalization/specialization Inheritance Redefining methods Inheritance and Visibility Protected versus Private Section Up-cast Static and dynamic references Generic calls in the procedural modeling Down Cast Input of class Hierarchies Misuse of inheritance Interfaces and casting-objectives Define and implement interfaces Implement interface methods Use interface references to make up-cast assignments Use interface assignment to make down cast assignments Explain the term polymorphism with reference to interfaces Use cast assignments with interfaces to make generic calls Central definition of shared components Interfaces in UML notation Defining and implementing interfaces Addressing interfaces Polymorphism with interfaces Down cast assignment and exception handling Interface hierarchy Compound interface Using interfaces Lesson: Events-Objectives • Define and trigger events • Handle events • Register and deregister event handling • Explain the key differences between explicit method calls and event method controlled calls Event Method Controlled calls Event Handling in a UML Class Diagram Triggering and Handling Events- Overview Defining and triggering events Handling events Registering Event Handling Registration/Deregistration Visibility Section in the event handling Unit3:Object-Oriented repository objects-objectives • Describe the functions of the class builder • Create the global classes using the class builder • Create interfaces using class builder • Reference global classes and interfaces in other repository objects • Define abstract classes • Define abstract methods • Define final classes • Define final methods • Limit the visibility of the constructor • Define friendship relationship between classes • Explain the “singleton pattern”. Global classes and interfaces- objectives • Describe the functions of the class builder • Create the global classes using the class builder • Create interfaces using class builder • Reference global classes and interfaces in other repository objects Creating global classes in the object navigator Definition of attributes Definition of methods Definition of method signatures Implementation of methods Displaying the method definition Definition of components using the navigation area Global interfaces Test environment Importing local classes and interfaces Other functions-inheritance Redefining inherited method Local types Sorting the component display of classes Separating the navigation and editing areas of the object navigator Object instantiation using drag and drop Method calls using drag and drop Working with refactoring assistant Special object oriented-oriented programming • Define abstract classes • Define abstract methods • Define final classes • Define final methods • Limit the visibility of the constructor • Define friendship relationships between classes • Explain the “singleton pattern”. Abstract classes and abstract methods Final classes and methods Visibility of instance constructor Singleton class Friendship relationship Definition of friendship relationship Unit 4 Exception Handling-objectives • Handle class-based exceptions in ABAP programs • Create exception class • Raise class-based exceptions in programs • Propagate class-based exceptions • Map class-based exceptions in ABAP programs to one another Overview of Both Exception concepts Exception Classes: The inheritance Hierarchy TRY-ENDTRY Sequence Handling a predefined exceptions Catching Exceptions with the pattern Creating Global Exception Classes Defining variable Exception Texts Propagating Exceptions Class-Based Exceptions in Debugging Mode Integration of Standard exceptions in the Runtime System Mapping exceptions to Each other-the principle Unit 5 Shared Objects • Explain how classes are created for shared objects • Explain how you can use shared objects to implement applications • Access Shared objects from with in ABAP program Uses Memory Model of an Application Server Accessing Shared Objects Attributes of Shared Objects Areas and Area Instances Area classes and Area Handlers Developing Example Application Accessing Areas Area management Maintaining Areas Before Creating an Area Instance Creating Area Instance Generating Objects in the Shares Memory Generating Objects in the Shared Memory II Setting the Root Object Releasing the Write Lock Accessing an Existing Object in the Shared Memory Releasing the Read Lock States of areas of instances Setting a read lock on active version Version Being Set Up Obsolete Version New Read Locks for the New Active Version Expired Version New Read Locks for Active Version Unit 6 Dynamic Programming- Objectives • Access class components and objects dynamically • Define field symbols • Define data references • Dereference data references • Generate data objects dynamically • Query type attributes at runtime • Create types dynamically Field symbols Type casting for Field symbols Data references Validity of References – logical Expression Dereferencing Generically typed Data references Cast assignment of data references Runtime type services • Query type attributes at runtime • Create types dynamically Hierarchy RTTS Inheritance Tree Dynamic data type analysis Dynamic Object type analysis Runtime Type Creation