Objektum (informatika)

A Wikipédiából, a szabad enciklopédiából

Az objektum informatikai értelmezése a valóság mintájára tulajdonságokkal és viselkedésekkel felruházott egység, amit programozási szempontból tekinthetünk a hagyományos változó kibővített változatának – mintha összecsomagolva tartalmazná az érintett valóságban megjelenő tárgy számítógépes leírásához szükséges változók és alprogramok (viselkedések) összességét.

A valóságot leíró minta[szerkesztés]

Az objektumok használata a számítástechnikában alapvetően tekinthető egy valóságot erősen megközelítő szemlélet[1] alkalmazásának, ami a mai modern számítógépek, és a programok végrehajtási sebessége mellett hatékony munkát eredményez. Könnyen érthető programkód lehet a végeredmény, és hatékonyan lehet építkezni egy program megírása során az ilyen objektumok segítségével. Az objektumok használatával nagyon egyszerűen megvalósítható a kód újrahasznosítása is, alkalmazva az öröklődést vagy más objektumorientált megoldást.

Példa[szerkesztés]

Objektum a valóságból[szerkesztés]

Egy kémiai feladatnál objektumnak tekinthető az anyag (mint általánosan a természetben megjelenő dolog, például folyadék). Az anyag tulajdonságokkal rendelkezik (például van térfogata, halmazállapota, színe), és viselkedik az őt érő behatások során. Ő maga is ki tud váltani reakciót más objektumoktól, ha változik valamelyik tulajdonsága. Például ha a vizet, mint objektumot túlmelegített állapotban egy üveg tárolóedénybe, mint másik objektumba öntjük, akkor kiválthatja a második objektum megrepedését.). Ha a feladat megkívánja, akkor megfogalmazhatunk további objektumokat, amelyek esetleg alkotórészei a már említett objektumoknak. Részecskék a saját objektumukra jellemző viselkedéssel és tulajdonsággal, a részecskéket alkotó további kisebb részecskék szintén egyedi viselkedéssel – itt a kisebb részek viselkedése lehet hasonló, mint az elsődleges objektum viselkedése.[2]

Objektum a programban[szerkesztés]

Az objektumok általános használatához definiálni kell az objektum környezetét (osztályát), ez lényegében egy sablonként használható több azonos típusú objektum egyidejű használatához.

using System;
using System.IO;
using System.Text;
using System.Drawing;

class Anyag
{
	public int szelesseg;
	public double suly;
	public Point pozicioXY = new Point(0,0);
	public int pozicioZ = 0;

	public Anyag() :this(0,0)
	{
                // konstruktor hívása 0 értékekkel
	}
	public Anyag(int szel, double kg)
	{
		// példányosítás a "new Anyag(...)" paramétereivel
		this.szelesseg = szel;
		this.suly = kg;
	}

	public void mozog(int ujX, int ujY, int ujZ)
	{
		// mozgás az új koordinátákra
		this.pozicioXY.X = ujX;
		this.pozicioXY.Y = ujY;
		this.pozicioZ = ujZ;
	}

}

A program felhasználási helyén példányt készítve az objektum osztályából máris használható a példány, az objektumra jellemző összes tulajdonsággal és eljárással.

static void Main(...)
{
	
	Anyag x = new Anyag(12,20);	// új anyag példány 20-as súllyal...
	Anyag xy = new Anyag(1,50);	// másik nehezebb anyag...

	//x példány és xy példány már tud mozogni is
	x.mozog(12,34,56);
}

Objektumok modellezése[szerkesztés]

A valóságos állapotoknak megfelelően megfogalmazott objektumokat át lehet ültetni programozási nyelvre, ha megfogalmaztuk a szükséges mélységű tulajdonságokat és alapvető viselkedéseket. Létezik egy jelölő nyelv (UML), ami különböző diagramok segítségével modellezi az objektumok tulajdonságait, viselkedésüket és egymáshoz fűződő kapcsolatukat.

Szkriptnyelvek[szerkesztés]

A legtöbb programozási nyelvben használhatóak objektumok, és az objektumorientált szemlélet. Objektumorientált technikákat lehet használni már a jelentősen megújult kliensoldali szkriptnyelvekben is, így például az Adobe Flash alkalmazások ActionScript[3] alapú nyelvében, vagy a weblapok készítéséhez közkedvelten használt JavaScript[4] programozási nyelvvel.

Objektumok az informatikában[szerkesztés]

Nem csak a programozásban használatosak az objektumok, ez a fajta szemlélet jelen van az informatika általános területein is. Objektumokat használnak a különböző operációs rendszerek is a rendszer állapotának nyilvántartására, vagy a használatra jogosult felhasználók különböző tulajdonságainak a beállítására.[5]

Kapcsolódó szócikkek[szerkesztés]

Irodalom[szerkesztés]

Jegyzetek[szerkesztés]

  1. A legtöbb objektumorientált programozással foglalkozó szakirodalom szerint teljesen új gondolkodásmódot kíván meg ez a szemlélet.
  2. A kisebb részecske is mozog, csak más léptékkel...
  3. ActionScript mintaprogramok
  4. Szabó Attila - Hard Core JavaScript. [2014. július 6-i dátummal az eredetiből archiválva]. (Hozzáférés: 2019. február 22.)
  5. Active Directory