Eclipse gyorsbillentyűk – produktivitási tippek Java fejlesztőknek

Bevezető gondolatok

Az Eclipse gyorsbillentyűk a segítségedre lesznek!

Rohanó világban élünk, szokták mondani. Az üzleti szférában sokszor az nyer, aki gyorsabb, aki hamarabb képes piacra dobni egy terméket. A különbféle kütyük nagyban tudnak segíteni nekünk, hogy gyorsabbak legyünk. Gondolj csak a mosógépre, mosogatógépre, porszívóra, de akár a telefonra vagy a számítógépre! Elvégeznek olyan munkákat, amiket ha nekünk saját kezűleg kéne, akkor tovább tartana. Időt spórolnak nekünk, így több időnk marad más, számunkra fontosabb dolgokra.

Ez a helyzet az informatikai eszközök esetén is fennáll. A számítógép egy ezen kütyük közül, ami segít nekünk munkánkban, kikapcsolódásunkban. Persze tudni kell rendesen kezelni. Míg egy porszívó kezelése viszonylag triviális dolog, a számítógép jóval összetettebb, így több a hibalehetőség is. Biztos vagyok benne, hogy te is tapasztaltad már, hogy bár az életünk segítése a számítógép célja, mégis néha inkább megnehezíti azt: túl lassú, nem azt teszi, amit szeretnénk, kék halált hal, General Protection Fault, stb.

A helyzet reménytelen, de nem súlyos.

Mit tehetünk?

Érdemes minél jobban megismerkednünk az eszközzel, amit használunk. Hiába van nálunk egy svájci bicska, ha fafűrészeléshez a kést használjuk. Ugyanez a helyzet a programozásban is fennáll. Az Eclipse – ahogy a többi IDE – feladata, hogy megkönnyítse életünket, könnyebbé, hatékonyabbá tegye a szoftverfejlesztést. De hiába áll rendelkezésünkre az az ezernyi kis segítség, ha nem is tudunk a létezésükről és ezért nem használjuk.

A kódminőség fontos

Összetett fogalom a hatékonyság, ezernyi tényező beleszámít, de lényegében egy sebességszerű fogalomról beszélhetünk. A sebesség nem más, mint adott idő alatt megtett út. Fontos persze, hogy először kitűzzük, hogy hova is megyünk, mert különben ha rossz irányba tesszük meg az utat, az mit sem segít hosszú távon. Így van ez a programozásban is. A cél, és egyben az egyik legnagyobb kihívás manapság a programozói szakmában, az a minőségi szoftver elkészítése gyorsan. Ellentmondásosnak hangzik, pedig nem az, csak rendszerben kell szemlélnünk a dolgot. Ahogy az algoritmuselméletből is tudhatod, nem mindig a mohó algoritmus vezet a globális optimumhoz. Ha az a cél, hogy a világ legmagasabb pontját elérjük, akkor általában nem jó megoldás azt a taktikát követni, hogy mindig menjünk arra, amerre a legjobban emelkedik az út. Ez a mohó megközelítés – jelen helyzetemben – a Gellért-hegyre (235 m) vinne, ami bár lokális optimum, mégis mily messze van a globális optimumtól, a Csomolungma (8 848 m):

A célt akkor hát tudjuk: minőségi szoftvert produkálni minél hamarabb. Két fontos tényezője van: 1. minőségi, 2. gyorsaság. Mindkettőt mérhetővé lehet tenni. Angolul az előbbit code quality-nek, utóbbit productivity-nek hívják.

A kódminőséget az ISO/IEC 25010:2011 szabvány írja le. Egy kód akkor számít jónak, ha eleget tesz a specifikációnak, könnyen olvasható és ezáltal módosítható, kiegészíthető, könnyen karbantartható. Ezt magasszintű programozási ismeretekkel, best practice-ek ésszerű követésével lehet leginkább elérni, sokat számít a szakmai tapasztalat ebben. Ennek fejlesztéséhez kitartó tanulásra lesz szükséged.

A hatékonyság növelése

A produktivitást ennél jóval könnyebb növelni, ha megismered a rendelkezésre álló eszközeidet és azok képességeit. Legjobb barátod a nagybetűs Fogyatkozás, avagy az Eclipse. Igen, a másik barátod a Google, de őt most kicsit tegyük félre! Ebben a pillanatban jelent meg (tényleg!) az Eclipse következő verziója az Eclipse Photon, amivel kapcsolatban szeretnék megosztani veled néhány újdonságot, illetve általános, Eclipse-szel kapcsolatos jótanácsokkal is szeretnélek ellátni, amik nekem személy szerint sokat segítenek a mindennapi programozói munkám során.

Eclipse gyorsbillentyűk

A legnagyobb eredményt az úgynevezett gyorsbillentyűk (hot key vagy más néven keyboard shortcut) megismerésével tudod elérni, aminek bár eleinte van egy kis tanulási görbéje, bőven megtérül. Ahogy az angol elnevezés jól mutatja, egy shortcut-ról, vagyis egy rövidebb útról van szó, ami hamarabb célba juttat. Az általános kijelölés, másolás, beillesztés lépéssorozatot biztos vagyok benne, hogy te is ismered, ráadásul ennek kivitelezéséhez az univerzális Ctrl + C és Ctrl + V gyorsbillentyűket is valószínűleg használod.

A következő táblázatban összefoglaltam a tapasztalt programozók által leggyakrabban használt billentyűkombinációkat. A billentyűparancsokat balról jobbra olvasva tudod te is kivitelezni, a pluszjel a gombok egyszerre történő lenyomását jelenti. Némely ezek közül más alkalmazásokban is használható, főleg a kurzor navigációjával és a kijelölésekkel kapcsolatosak.

GyorsbillentyűHatása
nyílbillentyűkKurzor navigálása egy karakterrel az aktuális pozícióból kiindulva a nyíl irányába.
Ctrl + CElőzetesen kijelölt szöveg másolása a vágólapra a memóriában.
Ctrl + VA kurzor aktuális pozíciójához a vágólap tartalmának a beillesztése.
Shift + nyílbillentyűkA kurzor aktuális állásától a nyílbillentyű irányába szöveg kijelölése.

A le és fel irányba történő kijelölés egész sorokat jelöl ki.

Ctrl + nyílbillentyűkKurzor navigálása az adott irányba egy szövegegységgel.
Ctrl + Shift + nyílbillentyűkKijelölés a kurzor aktuális helyzetétől szövegegységekben a lenyomott nyílbillentyű irányába.
Ctrl + AMindent kijelöl az aktuális ablakban.
Ctrl + SAz aktív szerkesztő ablak módosult tartalmának mentése.
Ctrl + Shift + SAz összes megnyitott szerkesztőablak módosult tartalmának mentése.
Ctrl + szóközA kurzor aktuális pozícióján tartalomkiegészítés kérése. Az adott ponton releváns szövegrészeket ajánl fel.
Ctrl + Alt + fel- vagy le nyílbillentyűAz aktuális sor másolása az aktuális sor felé vagy alá, ha több sor is ki volt jelölve, akkor az összes kijelölt sor másolása a megadott irányba.
Alt + fel- vagy le nyílbillentyűAz aktuális sor mozgatása felfelé vagy lefelé, ha több sor is ki volt jelölve, akkor az összes kijelölt sor mozgatása a megadott irányba.
Ctrl + Shift + XA kijelölt szöveg csupa nagybetűssé konvertálása.
Ctrl + Shift + YA kijelölt szöveg csupa kisbetűssé konvertálása.
Ctrl + Shift + CAz aktuális sor ki- vagy visszakommentezése, ha több sor is ki volt jelölve, akkor az összes kijelölt sor kommentezésének váltása.
Ctrl + Shift + RFájl megnyitása tetszőleges workspace helyről, annak nevének egy részének megadásával.
Ctrl + Shift + TTípus megnyitása tetszőleges workspace helyről, annak nevének egy részének megadásával.
Alt + Shift + RA kurzor pozícióján található típus, metódus vagy változó átnevezése annak minden hivatkozásával együtt.
Alt + Shift + LA kijelölt kódrészlet kiemelése egy új helyi változóba, a változó nevét a felugró ablakban adhatjuk meg.
Alt + Shift + MA kijelölt kódrészlet kiemelése egy új metódusba, a metódus nevét a felugró ablakban adhatjuk meg.
Ctrl + OKivonat az aktuálisan megnyitott típus tagjairól. Újbóli megnyomása hatására az örökölt tagok is megjelenítésre kerülnek.
Ctrl + Shift + OAz aktuálisan megnyitott típus import deklarációinak rendszerezése, a nem használt importok törlése, a hiányzó importok hozzáadása. Ha nem egyértelműen állapítható meg az importálni kívánt típus, akkor felugró ablakban lehetőséget kínál a találatok közül a megfelelő kiválasztására.
Ctrl + Shift + FAz aktuálisan megnyitott típus forráskódjának formázása, ha előtte kijelöltünk egy kódrészletet, akkor csak a kijelölt rész formázása.
Alt + Shift + SA Source menü megnyitása egy felugró ablakban, ahonnan lehetőségünk van a következő kódrészletek legenerálására:

  • metódusok felülírása
  • getter és setter metódusok generálása
  • delegáló metódusok generálása
  • hashCode() és equals() metódusok generálása
  • toString generálása
  • konstruktor generálása mezőkből
  • konstruktorok generálás ősosztályból
Ctrl + F11Az aktuálisan megnyitott program futtatása.
F11Az aktuálisan megnyitott program futtatása debug üzemmódban.
F6Debug üzemmódban a jelölt sor utasításának végrehajtása és lépés a következő utasításra azonos szinten.
F5Debug üzemmódban a jelölt sor utasításának végrehajtása úgy, hogy ha további metódushívást tartalmaz, akkor belépés egy hívási szinttel mélyebben.
F7Debug üzemmódban a jelölt sor és az utána lévő sorok utasításainak végrehajtása és lépés az előző hívási szintre.
F8Debug üzemmódban a program futtatása a következő breakpoint-ig.

Eclipse kódbányászat

Bár az új Eclipse Photon verziónak alapból nem része, legalábbis a mostani június release-nél, mégis említésre méltó bővítmény a JDT CodeMining. Segítségével az IntelliJ IDEA IDE-ből már talán általad is ismert feature-ök használhatók az Eclipse projekteknél. Ilyen például az osztályok és metódusok előtt megjelenő referenciaszámláló, vagy a metódusparaméterek nevének vagy típusának megjelenítése. A referenciaszámláló kattintható, aminek hatására egy keresést indít és annak eredményét jeleníti meg a Search view-ban, amely listázza a felderített hivatkozások forrását.

Nagyon hasznos plugin, javaslom kipróbálását! Telepítésének részleteit megtalálod a JDT CodeMining GitHub oldalán.

Eclipse gyorsbillentyűk hasznosságával vetekedő plugin

Összefoglaló

Hogy hatékonyan tudj programozni, érdemes megismerned az általad használt eszközök képességeit, így Java fejlesztés során az Eclipse IDE eszközkészletét, és hogy ezeket hogyan tudod a segítségedre hívni. A legjobb módja, ha begyakorlod a leggyakoribb gyorsbillentyűket, amiket a fentebbi táblázatban találsz.

Ha esetleg még most járnál programozói pályafutásod legelején, hadd ajánljam figyelmedbe a Java fejlesztői környezet beállítását képekben bemutató blog posztomat!

Ha bármi észrevételed van, esetleg javasolnál még további fontos billentyűparancsokat, amiket gyakran használsz, akkor kérlek, oszd meg véleményed egy hozzászólásban!

További jó kódolást kívánok neked! 🙂

Ha tetszett, oszd meg!

Szólj hozzá!