< Programozás

Objektum Orientált Tervezés

Szerző: Sallai András

Copyright © 2014, Sallai András

Szerkesztve: 2024

Licenc: CC BY-SA 4.0

Web: https://szit.hu

A szoftver készítés folyamata

Az következő ábra bemutatja egy szoftver tervezésének menetét.

Fogalmak

Általános	Konkrét
Osztály	Objektum példány instancia
Dolgozó	Jóska

Az osztály valamilyen szempontból összetartozó elemeket képvisel. Az objektum az osztály egy konkrét példánya. Egy osztály tulajdonságokból (attribútum) és viselkedésekből (műveletek) áll.

Osztály

tulajdonságok (attribútumok)

viselkedések (műveletek)

A Java osztályhierarchia részlet

Az osztályok hierarchiába szerveződnek.

Minden osztály az Objekt ősosztályból származik, ez a gyökérosztály.

Sarga Zrt példa

+ public - látható a külső objektumok számára

- private - csak az adott objektum számára elérhető

# protected - gyermek és barát osztályok számára elérhető

A háttérben minden megalkotott és gyökér osztálynak kinevezett osztálynak is van egy Object nevű őse. Ez a kapcsolat akkor is létrejön, ha nem jelöljük örökléssel.

Vegyük például a Szemely osztályt:

class Szemely { String nev; Integer kor; }

A háttérben olyan, mintha ezt csináltuk volna:

class Szemely extends Object { String nev; Integer kor; }

Vegyünk egy Employee nevű osztályt, ahol szintén nem állítunk be öröklést:

class Employee { Integer id; String name; String city; Double salary; LocalDate birth; }
class Employee extends Object { Integer id; String name; String city; Double salary; LocalDate birth; }

Iskola példa

Tervezési stratégia

Az OOP programozás során egy-egy osztályt úgy alakítsunk ki, hogy egy osztály csak egy dologért legyen felelős. Angolul ezt Single Responsibility Principle, röviden SRP-nek nevezzük, magyarul egyedüli felelősség elve.