Thanks to visit codestin.com
Credit goes to www.scribd.com

0% found this document useful (0 votes)
6 views2 pages

ADP3 Exam Prep, Scope and Content

The document outlines key focus areas for a 4-hour exam, including domain modeling, factory patterns, repositories, services, unit testing, and controllers. It emphasizes the importance of design patterns like Singleton and principles such as Dependency Inversion in creating a structured application. Additionally, it highlights the role of RESTful APIs in facilitating client-server interactions using the Spring Boot framework.

Uploaded by

Mbali Hlaba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
6 views2 pages

ADP3 Exam Prep, Scope and Content

The document outlines key focus areas for a 4-hour exam, including domain modeling, factory patterns, repositories, services, unit testing, and controllers. It emphasizes the importance of design patterns like Singleton and principles such as Dependency Inversion in creating a structured application. Additionally, it highlights the role of RESTful APIs in facilitating client-server interactions using the Spring Boot framework.

Uploaded by

Mbali Hlaba
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 2

Overview

Exam Focus: For the 4-hour exam, prioritize:

1. Domain classes
1. Understanding the process of Domain modelling using the Builder Design pattern and
immutability.
2. Also understand how composition and aggregation function for a domain (using
domains as data types)
2. Util and factories
1. Knowing how the Factory is used for creating instances of an object,
2. Using the Utility package with the Helper class for ensuring the validity of the data
being passed into a Domain object
3. Repositories with Singleton
1. Using the Repository for storing the instances of the domain objects being created by
the Factory, knowing the basic CRUD functionalities,
2. Using the DDD principles, such as Dependency Inversion to create interfaces with
abstract methods that allow us to override them later in other classes and interfaces
that require more concrete instances (from IRepository -> IEmployeeRepository ->
EmployeeRepository )
3. Using the Singleton design pattern for ensuring that we only have one instance of a
Repository so that it becomes the global access point for the data being passed into
the repository
4. Services with Singleton.
1. Using the Service layer for creating business logic within the application, as its used
primarily for interfacing the domain objects with the repository,
2. it also performs the basic CRUD functionalities but interfaces them between the
Controllers (data being sent from user) to the Repository (data being stored), but has
more custom methods for business logic (i.e. discounts)
3. Using the DDD principles, such as Dependency Inversion to create interfaces with
abstract methods that allow us to override them later in other classes and interfaces
that require more concrete instances (from IService -> IEmployeeService ->
EmployeeService )
5. Unit tests
1. Unit testing covers the functionality of then testing the methods we've created within
the various packages to ensure their behavior matches the kinds of parameters being
passed through, etc.,
2. We also can use unit testing for ensuring that some methods don't pass a test
according to the condition of the object instance (i.e. handling null values)
6. Controller:
1. The controller covers the process of creating what is known as a RESTful API, which
allows us to expose the entire service of the application to a client, whether it be a
frontend client or a REST client,
2. we create API's methods based on the HTTP methods used by the browser, and it's a
means of handling client requests ,
3. the controller allows us to have an application that becomes a server and uses the
Spring Boot framework to embed a server into the application for the RESTful service
to work

You might also like