White space
Nem tévesztendő össze a következővel: Whitespace (programozási nyelv). |
A white space vagy whitespace angol szóösszetétel, jelentése fehér szóköz vagy üres hely. Az informatikában, elsősorban a programozásban és szövegszerkesztésben használatos kifejezés: alapvetően azokat a karaktereket értjük alatta, amelyek nem láthatóak a szövegben, viszont valamilyen egyedi funkcióval bírnak.
Eredete
A régi ASCII-beli 7 bites kódolásban az első 32 karakter vezérlőkaraktereket jelölt,[1] amelyekkel például nyomtatókat, lemezkezelést lehetett vezérelni. Ezek nagy része a mai modern eszközök esetén már nem bír fontos jelentéssel a 8 bites, UTF-8, Unicode karakterkészletek esetén. Ez alól kivételek például épp a white space karakterek.
A white space karakterek
- Szóköz (angolul space)
- Tabulátor
- Vertikális tabulátor
- Új sor (angolul new line v. nl)
- Enter karakter – operációs rendszertől függően a jelölése:
- DOS/Windows alatt: két white space karakterrel jelöljük: a <CR>, azaz angolul Carriage Return (magyarul kocsi vissza) és az <LF>, angolul Line Feed vagyis soremelés.
- Unix alatt: csak <LF>
- Macintosh (Mac OS 9-ig) alatt: csak <CR>
Szövegszerkesztés
Bármilyen szövegszerkesztő programot is használjuk – akár a legprimitívebbeket, mint a DOS Edit-jét, vagy akár dokumentumszerkesztőket, mint a LibreOffice, az OpenOffice.org vagy a Microsoft Office Word –, mindenhol white space-ekkel tudjuk tagolni szövegeinket.
Szavak elválasztására a space, azaz szóköz való, amely egy karakter hosszúságú üres hely. A tabulátorok többnyire beállított mennyiségű szóközt jelentenek. Új bekezdés kezdéséhez használjuk az Entert. Az egyszerűbb szerkesztők, mint a Jegyzettömb, nem különböztetik meg az Új sort az Új bekezdéstől. Ezzel szemben a MS Word, illetve az OpenOffice szövegszerkesztője lehetőséget ad arra, hogy egy bekezdésen belül is kezdhessünk új sort. Ez a Shift + Enter billentyűkombinációval lehetséges.
White space-ek a programozásban
A white space-eknek kettős szerepe van a programozásban:
- egyrészt a szintaktikai szabályok betartása végett alkalmazzuk őket,
- másrészt a kód áttekinthetősége, strukturálása érdekében.
Pl. nézhet így is ki egy programrészlet:
select * from fkkvkp where vkont = gt_vkont. loop at gt_vkont. if gt_vkont-vkont(1) eq ’K’. CALL FUNCTION ’ISU_ADDRESS_PROVIDE’ EXPORTING BNAME = gt_vkont-vkont. endif. endloop.
Ez a kód teljesen áttekinthetetlen, pedig csak 9 sor. Képzeljük el ugyanezt több száz soros programnál.
Azonban ugyanez white space-ekkel tagolva:
SELECT * FROM fkkvkp WHERE vkont = gt_vkont. LOOP AT gt_vkont. IF gt_vkont-vkont(1) EQ ’k’. CALL FUNCTION ’isu_address_provide’ EXPORTING bname = gt_vkont-vkont. ENDIF. ENDLOOP.
Könnyen áttekinthető: ránézésre látni lehet, melyik utasítás melyikbe van beágyazva.
A programozási nyelvek többnyire figyelmen kívül hagyják az egymást közvetlenül követő white space-eket. Például ha 12 szóköz van közvetlenül egymás után, az ugyanazt jelenti a fordító vagy értelmező számára, mint ha csak egy lenne.
Egyes fejlesztői környezetek még automatikus strukturálás funkcióval is fel vannak szerelve. A Java – NetBeans -ben például ilyen lehetőség a Code Reformat, illetve az ABAP Workbench-ben a Pretty Printer.
Jegyzetek
- ↑ http://www.theasciicode.com.ar/ascii-control-characters/vertical-tab-male-symbol-mars-ascii-code-11.html
További információk
- Property List of Unicode Character Database
- Informatikai portál • összefoglaló, színes tartalomajánló lap