0% found this document useful (0 votes)
34 views

BC401 Course Outline

The document provides the course outline for an ABAP Objects course. It includes 14 units covering topics such as introduction to object-oriented programming, fundamental object-oriented syntax, inheritance and casting, interfaces and casting, object-oriented events, object-oriented repository objects, examples of object-oriented ABAP programming, global classes in ABAP Development Tools, class-based exceptions, unit testing, object-oriented design patterns, runtime type services, persistent objects and OO transactions, and the creation of a comprehensive object-oriented application. Each unit includes multiple lessons with learning objectives. Copyright information is also provided.

Uploaded by

AhmetOkanYılmaz
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
34 views

BC401 Course Outline

The document provides the course outline for an ABAP Objects course. It includes 14 units covering topics such as introduction to object-oriented programming, fundamental object-oriented syntax, inheritance and casting, interfaces and casting, object-oriented events, object-oriented repository objects, examples of object-oriented ABAP programming, global classes in ABAP Development Tools, class-based exceptions, unit testing, object-oriented design patterns, runtime type services, persistent objects and OO transactions, and the creation of a comprehensive object-oriented application. Each unit includes multiple lessons with learning objectives. Copyright information is also provided.

Uploaded by

AhmetOkanYılmaz
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 35

BC401

ABAP Objects

.
.
COURSE OUTLINE
.
Course Version: 18
Course Duration:
SAP Copyrights and Trademarks

© 2018 SAP SE or an SAP affiliate company. All rights reserved.

No part of this publication may be reproduced or transmitted in any form or for any
purpose without the express permission of SAP SE or an SAP affiliate company.
SAP and other SAP products and services mentioned herein as well as their
respective logos are trademarks or registered trademarks of SAP SE (or an SAP
affiliate company) in Germany and other countries. Please see http://
global12.sap.com/corporate-en/legal/copyright/index.epx for additional trademark
information and notices.
Some software products marketed by SAP SE and its distributors contain proprietary
software components of other software vendors.
National product specifications may vary.
These materials are provided by SAP SE or an SAP affiliate company for
informational purposes only, without representation or warranty of any kind, and SAP
SE or its affiliated companies shall not be liable for errors or omissions with respect
to the materials. The only warranties for SAP SE or SAP affiliate company products
and services are those that are set forth in the express warranty statements
accompanying such products and services, if any. Nothing herein should be
construed as constituting an additional warranty.
In particular, SAP SE or its affiliated companies have no obligation to pursue any
course of business outlined in this document or any related presentation, or to
develop or release any functionality mentioned therein. This document, or any related
presentation, and SAP SE’s or its affiliated companies’ strategy and possible future
developments, products, and/or platform directions and functionality are all subject
to change and may be changed by SAP SE or its affiliated companies at any time for
any reason without notice. The information in this document is not a commitment,
promise, or legal obligation to deliver any material, code, or functionality. All forward-
looking statements are subject to various risks and uncertainties that could cause
actual results to differ materially from expectations. Readers are cautioned not to
place undue reliance on these forward-looking statements, which speak only as of
their dates, and they should not be relied upon in making purchasing decisions.
Typographic Conventions

American English is the standard used in this handbook.


The following typographic conventions are also used.

This information is displayed in the instructor’s presentation

Demonstration

Procedure

Warning or Caution

Hint

Related or Additional Information

Facilitated Discussion

User interface control Example text

Window title Example text

© Copyright. All rights reserved. iii


iv © Copyright. All rights reserved.
Contents

vii Course Overview

1 Unit 1: Introduction to Object-Oriented Programming

1 Lesson: Explaining the Object-Oriented Programming Model


1 Lesson: Analyzing and Designing with Unified Modeling Language
(UML)

3 Unit 2: Fundamental Object-Oriented Syntax

3 Lesson: Creating Local Classes


3 Lesson: Creating Objects
3 Lesson: Accessing Methods and Attributes
3 Lesson: Implementing Constructors in Local Classes
3 Lesson: Implementing Class Constructors in Local Classes

5 Unit 3: Inheritance and Casting

5 Lesson: Implementing Inheritance


5 Lesson: Implementing Upcasts Using Inheritance
5 Lesson: Implementing Polymorphism Using Inheritance
5 Lesson: Implementing Downcasts Using Inheritance

7 Unit 4: Interfaces and Casting

7 Lesson: Defining and Implementing Local Interfaces


7 Lesson: Implementing Polymorphism Using Interfaces
7 Lesson: Integrating Class Models Using Interfaces

9 Unit 5: Object-Oriented Events

9 Lesson: Implementing Events in Local Classes


9 Lesson: Implementing Events in Local Interfaces

11 Unit 6: Object-Oriented Repository Objects

11 Lesson: Creating Global Classes


11 Lesson: Defining and Implementing Global Interfaces
11 Lesson: Using Further Functions of Class Builder

13 Unit 7: Examples for Object-Oriented ABAP Programming

13 Lesson: Using the ABAP List Viewer (ALV)


13 Lesson: Describing Business Add-Ins (BAdIs)

15 Unit 8: Global Classes in ABAP Development Tools

15 Lesson: Developing ABAP Programs with Eclipse-Based Tools

© Copyright. All rights reserved. v


17 Unit 9: Class-Based Exceptions

17 Lesson: Explaining Class-Based Exceptions


17 Lesson: Defining and Raising Exceptions
17 Lesson: Implementing Advanced Exception Handling Techniques

19 Unit 10: Unit Testing

19 Lesson: Unit Testing with ABAP Unit

21 Unit 11: Object-Oriented Design Patterns

21 Lesson: Implementing Advanced Object-Oriented Techniques


21 Lesson: Implementing Factory Methods and Singleton Patterns
21 Lesson: Implementing Factory Classes Using Friendship

23 Unit 12: Runtime Type Services

23 Lesson: Using Runtime Type Identification (RTTI)

25 Unit 13: Persistent Objects and OO Transactions

25 Lesson: Implementing Persistent Objects

27 Unit 14: Creation of a Comprehensive Object-Oriented Application

27 Lesson: Developing a Comprehensive Object-Oriented Application

vi © Copyright. All rights reserved.


Course Overview

TARGET AUDIENCE
This course is intended for the following audiences:
● Application Consultant
● Development Consultant
● Developer

© Copyright. All rights reserved. vii


viii © Copyright. All rights reserved.
UNIT 1 Introduction to Object-Oriented
Programming

Lesson 1: Explaining the Object-Oriented Programming Model


Lesson Objectives
After completing this lesson, you will be able to:

● Describe the differences between the procedural and object-oriented programming models

Lesson 2: Analyzing and Designing with Unified Modeling Language


(UML)
Lesson Objectives
After completing this lesson, you will be able to:

● Classify objects
● Model in UML

© Copyright. All rights reserved. 1


Unit 1: Introduction to Object-Oriented Programming

2 © Copyright. All rights reserved.


UNIT 2 Fundamental Object-Oriented
Syntax

Lesson 1: Creating Local Classes


Lesson Objectives
After completing this lesson, you will be able to:

● Define local classes


● Define attributes
● Create methods

Lesson 2: Creating Objects


Lesson Objectives
After completing this lesson, you will be able to:

● Create objects

Lesson 3: Accessing Methods and Attributes


Lesson Objectives
After completing this lesson, you will be able to:

● Call instance methods


● Call static methods
● Call functional methods
● Access public attributes

Lesson 4: Implementing Constructors in Local Classes


Lesson Objectives
After completing this lesson, you will be able to:

● Create and use constructors

Lesson 5: Implementing Class Constructors in Local Classes


Lesson Objectives

© Copyright. All rights reserved. 3


Unit 2: Fundamental Object-Oriented Syntax

After completing this lesson, you will be able to:

● Create and use static constructors

4 © Copyright. All rights reserved.


UNIT 3 Inheritance and Casting

Lesson 1: Implementing Inheritance


Lesson Objectives
After completing this lesson, you will be able to:

● Explain generalization and specialization


● Implement inheritance
● Access elements of classes in inheritance

Lesson 2: Implementing Upcasts Using Inheritance


Lesson Objectives
After completing this lesson, you will be able to:

● Implement upcasts using inheritance

Lesson 3: Implementing Polymorphism Using Inheritance


Lesson Objectives
After completing this lesson, you will be able to:

● Explain polymorphism
● Implement polymorphism using inheritance

Lesson 4: Implementing Downcasts Using Inheritance


Lesson Objectives
After completing this lesson, you will be able to:

● Implement downcasts using inheritance


● Model class hierarchies

© Copyright. All rights reserved. 5


Unit 3: Inheritance and Casting

6 © Copyright. All rights reserved.


UNIT 4 Interfaces and Casting

Lesson 1: Defining and Implementing Local Interfaces


Lesson Objectives
After completing this lesson, you will be able to:

● Explain the use of interfaces


● Create generalization and specialization relationships using interfaces

Lesson 2: Implementing Polymorphism Using Interfaces


Lesson Objectives
After completing this lesson, you will be able to:

● Implement polymorphism using interfaces

Lesson 3: Integrating Class Models Using Interfaces


Lesson Objectives
After completing this lesson, you will be able to:

● Implement downcasts with interfaces


● Integrate different submodels using interfaces
● Create and use interface hierarchies

© Copyright. All rights reserved. 7


Unit 4: Interfaces and Casting

8 © Copyright. All rights reserved.


UNIT 5 Object-Oriented Events

Lesson 1: Implementing Events in Local Classes


Lesson Objectives
After completing this lesson, you will be able to:

● Implement event-controlled method calls


● Trigger and handle events
● Register for events
● Explain visibility sections in event handling

Lesson 2: Implementing Events in Local Interfaces


Lesson Objectives
After completing this lesson, you will be able to:

● Implement events in local interfaces

© Copyright. All rights reserved. 9


Unit 5: Object-Oriented Events

10 © Copyright. All rights reserved.


UNIT 6 Object-Oriented Repository
Objects

Lesson 1: Creating Global Classes


Lesson Objectives
After completing this lesson, you will be able to:

● Create global classes


● Test global classes
● Use global classes

Lesson 2: Defining and Implementing Global Interfaces


Lesson Objectives
After completing this lesson, you will be able to:

● Define and implement global interfaces


● Import local classes and interfaces

Lesson 3: Using Further Functions of Class Builder


Lesson Objectives
After completing this lesson, you will be able to:

● Generate UML diagrams for global classes


● Implement inheritance in global classes
● Change the display of components in global classes

© Copyright. All rights reserved. 11


Unit 6: Object-Oriented Repository Objects

12 © Copyright. All rights reserved.


UNIT 7 Examples for Object-Oriented
ABAP Programming

Lesson 1: Using the ABAP List Viewer (ALV)


Lesson Objectives
After completing this lesson, you will be able to:

● Implement a simple ALV grid


● Handle the double-click event of the ALV grid

Lesson 2: Describing Business Add-Ins (BAdIs)


Lesson Objectives
After completing this lesson, you will be able to:

● Describe BAdls

© Copyright. All rights reserved. 13


Unit 7: Examples for Object-Oriented ABAP Programming

14 © Copyright. All rights reserved.


UNIT 8 Global Classes in ABAP
Development Tools

Lesson 1: Developing ABAP Programs with Eclipse-Based Tools


Lesson Objectives
After completing this lesson, you will be able to:

● Develop ABAP coding in Eclipse


● Use quick fixes and refactoring

© Copyright. All rights reserved. 15


Unit 8: Global Classes in ABAP Development Tools

16 © Copyright. All rights reserved.


UNIT 9 Class-Based Exceptions

Lesson 1: Explaining Class-Based Exceptions


Lesson Objectives
After completing this lesson, you will be able to:

● Explain class-based exceptions


● Handle class-based exceptions
● Debug class-based exceptions

Lesson 2: Defining and Raising Exceptions


Lesson Objectives
After completing this lesson, you will be able to:

● Define global exception classes


● Raise class-based exceptions
● Propagate exceptions

Lesson 3: Implementing Advanced Exception Handling Techniques


Lesson Objectives
After completing this lesson, you will be able to:

● Explain the hierarchy of predefined exception classes


● Explain different ways of handling an exception
● Retry after exceptions
● Implement resumable exceptions
● Map exceptions

© Copyright. All rights reserved. 17


Unit 9: Class-Based Exceptions

18 © Copyright. All rights reserved.


UNIT 10 Unit Testing

Lesson 1: Unit Testing with ABAP Unit


Lesson Objectives
After completing this lesson, you will be able to:

● Perform unit testing


● Use test classes and test methods
● Perform advanced ABAP unit testing

© Copyright. All rights reserved. 19


Unit 10: Unit Testing

20 © Copyright. All rights reserved.


UNIT 11 Object-Oriented Design
Patterns

Lesson 1: Implementing Advanced Object-Oriented Techniques


Lesson Objectives
After completing this lesson, you will be able to:

● Implement abstract classes


● Implement final classes
● Access internal tables with object references
● Call navigation methods
● Create objects with the NEW operator
● Work with conditions on dynamic type of an object reference
● Restrict the visibility of the instance constructor

Lesson 2: Implementing Factory Methods and Singleton Patterns


Lesson Objectives
After completing this lesson, you will be able to:

● Implement factory methods


● Implement the singleton pattern

Lesson 3: Implementing Factory Classes Using Friendship


Lesson Objectives
After completing this lesson, you will be able to:

● Implement friendship relationships

© Copyright. All rights reserved. 21


Unit 11: Object-Oriented Design Patterns

22 © Copyright. All rights reserved.


UNIT 12 Runtime Type Services

Lesson 1: Using Runtime Type Identification (RTTI)


Lesson Objectives
After completing this lesson, you will be able to:

● Explain RTTI
● Describe structure type properties at runtime
● Describe object type properties at runtime

© Copyright. All rights reserved. 23


Unit 12: Runtime Type Services

24 © Copyright. All rights reserved.


UNIT 13 Persistent Objects and OO
Transactions

Lesson 1: Implementing Persistent Objects


Lesson Objectives
After completing this lesson, you will be able to:

● Explain persistence services


● Examine persistent classes
● Create persistent objects
● Read data with persistent objects
● Create OO transactions

© Copyright. All rights reserved. 25


Unit 13: Persistent Objects and OO Transactions

26 © Copyright. All rights reserved.


UNIT 14 Creation of a Comprehensive
Object-Oriented Application

Lesson 1: Developing a Comprehensive Object-Oriented Application


Lesson Objectives
After completing this lesson, you will be able to:

● Develop a comprehensive object-oriented application

© Copyright. All rights reserved. 27

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy