Ha meg tudod nevezni, uralkodhatsz rajta! - indián közmondás
Ha hiszed, ha nem, a dolgok helyes elnevezése nagyon nagyon és nagyon fontos! Ha jók a nevek, akkor:
Lássuk!
Huhú.. Na mi is az hogy domain? Vannak ugye domain nevek, mint pld. google.com, meg a számítógépeket üzemeltető informatikusok is szoktak dobálózni olyanokkal, hogy "nem jó a domain jelszó". Vannak public-domain információk, mint például a Wikipedia... Akkor mit jelenthet a domain?
Mittudomain? :)
Egyszerűbb, mint gondolnád. A domain csak annyit tesz: "tartomány", azaz valami nagy dolognak egy kisebb része.
A google.com az összes .com végű internet cím közül azok összessége, amiket a Google birtokol. Az iskolai hálózatos jelszavak a világ összes számítógépe közül csak arra a néhányra érvényes, ami az iskolai hálózatba van kötve. A public domain tudás az összes tudás közül az a tudás, ami nyilvános és mindenki számára ingyenesen elérhető.
Amikor egy programot készítünk, azt is általában valami célból csináljuk. Olyan programot senki sem tud csinálni ami a világ összes kiszámolni valóját kiszámolja, a világ összes zenéjét lejátssza közben, és a világ összes filmjét is tartalmazza. A mi programjaink a valóságnak csak egy kicsi szeletével foglalkoznak - és ez a mi problémakör-tartományunk, vagy röviden a domain-ünk.
Például, ha geometriai programot csinálsz, ami kiszámolja a kör területét, kerületét, akkor tisztába kell lenni olyan fogalmakkal, mint a kör területének és kerületének a képlete, meg hogy mi az a Pi.
Ha például egy óra programot csinálunk, akkor tisztába kell lenni azzal, hogy hogyan telik az idő, mi az hogy óra, perc, másodperc. Ez gondolom eddig nem annyira nehéz :) de itt jöhetnek még az időzónák, szökő-másodpercek (igen, egy perc 60 másodperc általában de néha 61), és egy csomó további turpisság.
Ha olyan programot csinálsz, ami kiszámolja, hogy havonta 10 000 Ft-ot félretéve mennyi pénzed lesz nyugdíjas korodra, akkor tudni kell olyan fogalmakat, hogy kamatos kamat, meg kamatláb, meg jövőérték.
Mint látod, mindenféle programnak saját kis problémaköre van. Vannak elég egyszerűek (tipikusan a matek képlettel kifejezhető problémák), de vannak olyanok is, amiket elképzelni is nehéz (például az emberi beszéd felismerése és értelmezése).
A dictionary azt jelenti, hogy (szó)jegyzék, szótár. Itt arra kell gondolni, hogy egyszerűen végiggondoljuk, hogy az adott programban milyen szereplők, tulajdonságok, műveletek lesznek, és eldöntjük, hogyan hívjuk őket.
Például, a Kocsma progiban az innivalót hívhatjuk piának, italnak, pohárnak, stb... De ha az egyik helyen piának hívjuk, másik helyen italnak, akkor feleslegesen szórakoztatjuk magunkat ezzel. Sokkal könnyebb lenne mindig ugyanúgy hívni.
| Az ember aki kocsmázik | Ember |
| Az összes ital gyűjtőneve | Innivalo |
| A sör innivaló neve | Sor |
| A bor innivaló neve | Bor |
| Az erős innivaló neve | Palinka |
| Ahol az egész szimuláció történik | Kocsma |
Minden attribútum az egy tulajdonság, tehát főnév. Például:
Minden metódus valamit csinál, tehát ige. Például:
Minden osztály valami objektumot (azaz tárgyat) modellez, ezért főnév:
A helyzet az, hogy magyarul a világ méretét tekintve igen kevesen értenek. Az egész Internet 0.3%-a van magyarul - így elég nagy kitolás, ha valamit magyarul nevezünk el. Három okból is:
Szóval, angolul az attribútumok neve ugye főnév, tehát:
Angolul a getterek:
Angolul a setterek:
Angolul azok a metódusok, amik valamit csinálnak (azok ugye igék)
Ha ezeket sikerül betartani, akkor egészen kényelmesen olvasható programot kapunk!
Mert csak így lesz a tudásod piacképes. Ezen felül, erősen inkonzisztens, ha a programban a Java utasítások angolul vannak, viszont az attribútumok, osztályok, metódusok magyarul.
Akkor már lehetne az egész magyarul, hogy mindent jól értsünk, nem?
Szóval behoz, mint import. Okés. nyilvános osztály - ez egy public class lesz, okés. nyilvános nyugvó üres fő - ez akkor public static void main A Húr az... az a String? Azaz! Az AktaOlvasó meg a FileReader, amivel file-okat... izé, "aktákat" lehet olvasni. A próbáld - elfogd a try catch... de aztán az ember eldobja az egeret ettől. Neked érthető???