Egy népszerű, ingyenes kódszerkesztő, amelyhez rengeteg bővítmény érhető el.
Innen tudod letölteni. https://code.visualstudio.com/
Miután letöltötted, telepítetted és megnyitottad. File -> New Text File ezután katt a “select a language”-re és válaszd ki ami kell épp.
Angular Language Service (Segít Angular projektekben: hibák, kódkiegészítés, IntelliSense.)
Angular Snippets (Version 18) (Kész Angular kódrészletek (ngFor, ngIf, component stb.).)
Auto Close Tag!
Auto Rename Tag!
Bookmarks (Kódrészek megjelölése könyvjelzőként → gyorsabb navigálás.)
Bootstrap 4, Font awesome 4, Font Awesome 5 Free (Gyors Bootstrap és ikon beillesztés.)
Bootstrap 5 Quick Snippets (Gyors Bootstrap és ikon beillesztés.)
Black Formatter (Python kódformázó.)
Bracket Pair Color DLW (Beszínezi az egyező {} [] () párokat.)
Code Spell Checker (Ellenőrzi a helyesírást kódban (pl. elgépelések változónévben).) !
CodeSnap (Kódrészletből szép képet készít.)
Colorful Comments (A kommenteket színesebbé teszi (// TODO, // WARNING).)!
Todo Tree (A TODO-kat gyűjti össze az adott projektben.)
Color Highlight (A CSS színeket kiemeli.)
Copy Relative Path (Gyors másolása a fájl relatív elérési útvonalának.)
CSS Peek (Ctrl+katt megmutatja, melyik CSS szabály vonatkozik az elemre.)!
css-auto-prefix (Sok régi böngésző nem támogatja a modern css-t. Emiatt érdemes ezt letölteni.)
ESLint (JavaScript hibakereső és szabály-ellenőrző.)
Formatting Toggle (Ki/be kapcsolja a kódformázót (pl. Prettier).)
Git History(Megmutatja a régi commitokat.)
Git Project Manager (Projektkezelés Git-tel.)
GitHub Copilot (A kódon belül segít neked, ne használd.)
GitHub Copilot Chat (Ne használd.)
GitHub Pull Requests (GitHub PR-ek kezelése.)
GitLens - Git supercharged (Mindenre jó a Gitben: ki írta a sort, mikor, változások, diff-ek.)
Image preview (Képek előnézete a kódban.)
IntelliCode (Okosabb kódkiegészítés Microsofttól.)
IntelliCode API Usage Examples(Okosabb kódkiegészítés Microsofttól.)
JavaScript (ES6) code snippets (Hotkey, pl.: clg)
Live Sass Compiler (SCSS → CSS automatikus fordítás.) Hogyan használd? https://youtu.be/eLmyLg2TcHc?si=fm0GC8UI4KZvHvDu&t=594
Live Server!
npm Intellisense (NPM csomagnevek automatikus kiegészítése.)!
Playwright Test for VSCode (Webtesztek futtatása Playwrighttal.)
Prettier - Code formatter!
Project Manager!
Quokka.js (Azonnal futtatja a JavaScript kódot, még mentés nélkül. De nem működik megfelelően a Ctrl+space)
Restore Terminals
Markdown All in One (Markdown fájl szerkesztéshez, tartalomjegyzék létrehozáshoz stb.)
Csak dizájn, kinézet:
One Dark Pro!
Material Icon Theme!
Power Mode Plus (Animációk gépelés közben. Csak szórakozás.) Az adatlapján menj a fogaskerékre -> Powermode:Enabled.
freeCodeCamp Dark Theme
One Monokai Theme
Java programozáshoz
Debugger for Java
Extension Pack for Java
Gradle for Java
Java
Java Red Hat
Maven for Java
Mizu Icons (Dizájn!)
Project Manager for Java
Spring Boot Dahboard
Test Runner for Java
A HTML (HyperText Markup Language) a weboldalak alapját adó leíró nyelv. Minden, amit egy weboldalon látsz – címek, bekezdések, képek, listák, táblázatok, űrlapok – HTML tagek segítségével jelenik meg. A HTML nem programozási nyelv, hanem egy szerkezetet leíró nyelv, amely megmondja a böngészőnek, hogy melyik elem mit jelent és hogyan épül fel a dokumentum.
A HTML tagek mindig valamilyen funkciót jelölnek: van, amelyik címsort hoz létre, van, amelyik egy szöveg bekezdést, listát vagy akár űrlapot. A tagek logikusan hierarchiába rendeződnek, így a böngésző és a keresőmotorok számára is érthetővé válik a dokumentum felépítése.
Az alábbiakban áttekintjük a leggyakrabban használt HTML elemeket, amelyek az alapját képezik minden modern weboldalnak.
Címsorok (Headings)
A HTML 6 különböző szintű címsort használ:
– a legnagyobb, főcím
– alcím
– kisebb alcím
…
– a legkisebb címsor
A címsorok hierarchiát adnak a dokumentumnak, és segítenek a keresőmotoroknak is a tartalom értelmezésében.
Bekezdés
A
tag hozza létre a bekezdéseket. A böngésző automatikusan ad körülötte egy kis térközt, így tagoltabbá és olvashatóbbá válik a szöveg.
Listák
A HTML kétféle listát használ:
Rendezetlen lista (unordered list)
– felsorolás, általában pontokkal
– listaelem
Rendezett lista (ordered list)
– számozott lista
– listaelem
Táblázatok
A táblázatok több részből állnak:
– maga a táblázat
– a fejléc sorait foglalja magába
– a tartalmi sorokat tartalmazza
– egy sor
– fejléc cella (általában félkövér és középre igazított)
– normál adatcella
Div
A
egy általános blokk szintű konténer, amelynek önmagában nincs szemantikai jelentése. Főként a szerkezet kialakítására és CSS alapú stílusozásra használjuk.
Űrlapok (Forms)
Az űrlapokat felhasználói adatok bekérésére használjuk:
Import-ok
link:css → CSS importáláshoz.
script:src → JS importáláshoz.
Az Emmet egy kódbővítő eszköz, amellyel rövid parancsokból automatikusan teljes HTML vagy CSS kódot tudsz generálni.
HTML Emmet parancsok
! → teljes HTML5 alap sablon
div →
.box →
#header →
ul>li → beágyazott listaelem
ul>li*5 → 5 darab li elem
div>p>span → hierarchia
p{Hello} →
Hello
a[href="#"] → attribútumos elem
Item numbering: $
Példa számozott listaelemre:
Az univerzális szelektor (*) minden HTML-elemet kijelöl.
Az #id szelektor csak egy elemet jelölhet.
A csoportosított szelektor (h1, h2, p) több elemet is kijelöl.
CSS tulajdonságok:
padding: belső térköz
width: szélesség
margin: külső térköz
font-weight: betűvastagság
A position: fixed; rögzíti az elemet a viewporthoz.
A CSS egy stílusleíró nyelv, amely HTML, XML vagy SVG alapú dokumentumok megjelenését (pl. színek, betűtípusok, elrendezés, margók stb.) határozza meg.
A „lépcsőzetes” elnevezés arra utal, hogy a stílusok öröklődnek és felülírhatók: ha több stílus vonatkozik egy elemre, a böngésző bizonyos szabályok szerint dönti el, melyik érvényesüljön.
A CSS önmagában nem programozási nyelv, tehát logikát (pl. változókat, függvényeket, feltételeket) közvetlenül nem tartalmaz.
Alapvetően, így néz ki:
selector { deklaráció; -> tulajdonság neve: tulajdonság értéke; }
Viszont léteznek kiterjesztései, mint például:
Sass (Syntactically Awesome Style Sheets)
Less
Ezek lehetővé teszik, hogy változókat, ciklusokat, függvényeket használjunk, és logikusabban, modulárisan építsük fel a stílusokat. A böngésző ezeket lefordított (kompilált) CSS fájlként kapja meg.
box-sizing
Flex elrendezés:
Flexbox egy dimenzióban működik: sorban vagy oszlopban. A float régi technika, eredetileg szöveg körbefolyatása miatt találták ki.
Flex paraméterek:
flex: grow shrink basis
Pl.: flex: 0 0 70%
grow = 0 → nem nő
shrink = 0 → nem zsugorodik || shrink = 1 → alaphelyzetben összezsugorodhat, ha kisebb a hely
basis = 70% → alapértelmezett szélesség 70%
Float elrendezés:
Ha float-tal két dobozt egymás mellé akarsz tenni, gyakran kell clearfix trükk, külön üres
vagy ::after pseudo-element a „töréshez”.
Grid elrendezés:
Ha komplexebb layoutot akarsz, pl.: több sor és több oszlop, vagy mobilon a main és aside egymás alá kerül, a Grid sokkal rugalmasabb. A reszponzív dizájn miatt kell a grid.
HTML szemantikus formázó (inline) tagek
Tag Jelentés magyarul Mire utal (szemantika)
kiemelés, hangsúlyos szöveg fontos információ (nem csak vastag betű)
dőlt kiemelés nyomatékosítás, hangsúlyváltás beszédben
kiemelt, kiemelés sárgával releváns szöveg jelölése (pl. keresési találat)
apróbetűs szöveg jogi, megjegyzés, mellékinformáció
mű címe könyv, film, zene, műalkotás neve
idézet rövid idézet, automatikus idézőjel
hosszabb idézet külön bekezdésben idézett szöveg
rövidítés pl. HTML (title: HyperText Markup Language)
definíció először bevezetett fogalom
elé kell beírni a script taget, mert a böngésző fentről lefelé tölti be az oldalt.
A JavaScript a weboldalak működéséért felelős programozási nyelv. Segítségével dinamikus elemeket hozhatunk létre, adatokat dolgozhatunk fel, eseményeket kezelhetünk (kattintás, billentyűlenyomás), vagy akár teljes alkalmazásokat építhetünk.
Míg a HTML a szerkezetet, a CSS a kinézetet adja, addig a JavaScript teszi interaktívvá a weboldalt. A böngésző minden JS sort sorban végrehajt.
Alap utasítások
Egyszerű kiíratások, hibák, figyelmeztetések megjelenítése:
alert('Hello!') – felugró ablak
console.log() – üzenet az ellenőrző konzolba
console.error() – hibaüzenet
console.warn() – figyelmeztetés
Változók
A változókban adatokat tárolunk. JavaScriptben a leggyakoribb típusok:
let – módosítható változó, csak a blokkon belül él (ajánlott)
const – állandó, értéke nem módosítható
var – régi változótípus, kerülendő (újradeklarálható, problémás)
Példa:
let kor = 20;
kor = 21; // módosítható
const szam = 10;
// szam = 11; // hiba: a const nem módosítható
Adattípusok
Két nagy csoportjuk van: primitív típusok és objektum típusok.
Primitívek
String – szöveg
Number – szám (egész és tizedes is)
Boolean – igaz vagy hamis
null – szándékosan „nincs érték”
undefined – létrehozott változó, de nincs értéke
Példa:
const x = null;
const y = undefined;
A null és az undefined gyakran keveredik, de fontos a különbség:
null – Te állítod be, hogy „nincs érték”.
undefined – A böngésző adja, ha nem kap értéket a változó.
Objektumok
A JavaScript objektumok sok adatot tartalmazhatnak egy helyen.
Példa dátum objektumra:
const date = new Date(); // mai dátum
const date2 = new Date("2025-11-24");
String műveletek
A szövegekkel gyakran végzünk műveleteket:
text.length – megadja a hosszát
text.toLowerCase() – kisbetűssé alakítja
text.substring(1,5) – részlet kivágása
text.split() – darabolás
Példa modern string írásra (interpoláció):
const szoveg = "Hello világ";
console.log(${szoveg}!);
Dátumok kezelése
getDate() – nap lekérése
getDay() – hét napja (0–6)
getMonth() – hónap (0–11)
setHours() – óra beállítása
setFullYear() – év beállítása
toISOString() – ISO formátumú dátum
Műveletek
A JavaScript támogatja a matematikai műveleteket, például:
+= – növeli a változó értékét
++ – egyesével növel
let szam = 10;
szam += 10; // 20
szam++; // 21
Feltételek
Az if utasítással elágazásokat hozhatunk létre.
Példa:
const a = 14;
const b = 10;
if (a <= b) {
console.log("Igaz");
} else {
console.log("Hamis");
}
if (a === b) { // szigorú összehasonlítás (típust is nézi)
console.log("Egyenlő");
} else {
console.log("Nem egyenlő");
}
A === mindig ajánlott a == helyett, mert típust is ellenőriz.
Kérdések és helyes válaszok
Hogyan lehet egy szöveg hosszát lekérdezni?
szoveg.length
Melyik állítás igaz a JSON-re?
Nyelvfüggetlen.
JSON (JavaScript Object Notation) adatcsere-formátum, ami bármilyen nyelven használható (Java, Python, C#, stb.), nem csak JavaScript-ben.
Nem kompatibilis 100%-ban XML-lel, mert az teljesen más szintaxis.
Mely állítások igazak a BOM-ra?
Hierarchikus elrendezésű, a tetején a window object helyezkedik el.
Segítségével elérjük a böngésző tulajdonságait, beállításait (ablakméret, előzmények, URL-ek stb.).
A BOM (Browser Object Model) nem szabványos, de minden böngésző implementálja.
Lehetővé teszi az ablak, előzmények, URL-ek, képernyőméret kezelését, a dokumentumon kívüli objektumokhoz fér hozzá.
Mi a kimenete?
let keresztNev = "Elek";
let csaladNev = null;
let beceNev = null;
console.log(keresztNev ?? csaladNev ?? beceNev ?? "Nem meghatározott");
Megoldás: Elek
Az ?? (nullish coalescing) a null vagy undefined ellenőrzi. keresztNev értéke "Elek", ami nem null vagy undefined, így az első érték kerül kiírásra.
Mi a kimenete?
console.log(Math.ceil(4.4))
Megoldás: 5
Mindig a következő egész számra kerekít felfelé.
Mely állítások igazak a JSON-re?
Nyelvfüggetlen.
Adatok tárolására és az adatküldés leegyszerűsítésére használható.
A JSON formátum adatcsere-formátum, kliens-szerver kommunikációban is gyakran használják.
Mit ír ki?
let obj = {
for: 1,
let: 2,
return: 3,
}
console.log(obj.let);
Megoldás: 2
Objektumokban kulcsokat szabad szövegesen használni, így let itt egy érvényes property. obj.let pontosan a 2 értéket adja vissza.
Mi a kimenete?
let nameSymbol2 = Symbol("name");
console.log(Symbol.keyFor(nameSymbol2));
undefined
Symbol("name") egy lokális szimbólum, ami nem regisztrált globális szimbólumként.
A Symbol.keyFor() csak a globális szimbólumoknál ad vissza kulcsot.
Mi a kimenete?
var foo = function teszt(){
console.log(foo==foo)
};
foo();
true
foo mindig önmagára mutat a függvény scope-on belül, így a foo == foo mindig true.
Mi a kimenete?
console.log(undefined > 0);
false
undefined nem szám, így összehasonlításkor NaN-ra konvertálódik → minden összehasonlítás false lesz.
Nem dob hibát, egyszerűen false az eredmény.
A folytatáshoz bal oldalt válaszd ki a javascript fejezetet.
SanFranciscoboljöttem.com - Blog és kurzusok https://sanfranciscoboljottem.com
SZTE - Java Objektumok és Osztályok https://okt.inf.szte.hu/prog1/gyakorlat/eloadas/Java/objectsAndClasses/
YouTube - Fullstack Tutorial sorozat https://www.youtube.com/watch?v=8qMi3e_fzKc&list=PL92V_WHHt2CnXaUIA9T2ww7peDK4lqmZj
IT Szótár - Mi az a JVM? https://itszotar.hu/jvm-java-virtualis-gep-mi-a-mukodese-es-mi-a-szerepe-a-java-kod-futtatasaban/
The Complete JavaScript Course 2025: From Zero to Expert!
https://www.udemy.com/course/the-complete-javascript-course/
A jegyzetek és magyarázatok a fenti források alapján készültek tanulási céllal.