\section{Tárgy bemutatása}
\subsection{}

\begin{frame}{Oktató}
  \begin{block}{Elérhetőségek}
    \textbf{Magda Donát}, mérnökinformatikus BSc
    \vspace{0.1cm}
    \begin{itemize}
      \item \textbf{E-mail:} \href{mailto:magda.donat@ga.sze.hu}{magda.donat@ga.sze.hu}
      \item \textbf{Konzultáció:} előre egyeztetve, Google Meet
    \end{itemize}
  \end{block}
\end{frame}

\begin{frame}{Tantárgy célja}
  \begin{itemize}
    \item Átfogó kép a modern webalkalmazás-fejlesztés folyamatáról
    \item Kliens-oldali (frontend) és szerver-oldali (backend) fejlesztés
    \item Adatbázis-kezelés és API-kommunikáció
    \item Gyakorlati tapasztalat a teljes fejlesztési folyamatban
    \item Különös hangsúly a \kiemel{JavaScript-alapú technológiákra}
  \end{itemize}
  \vspace{0.2cm}
  \begin{block}{Cél}
    A tervezéstől a működő alkalmazásig: teljes fejlesztési folyamat elsajátítása
  \end{block}
\end{frame}

\begin{frame}{Backend technológiák}
  \begin{columns}
    \begin{column}{0.5\textwidth}
      \begin{block}{Szerveroldali fejlesztés}
        \begin{itemize}
          \item \kiemel{Node.js} – szerveroldali futtatókörnyezet
          \item \kiemel{Express.js} – webes keretrendszer
          \item \kiemel{Prisma} – ORM adatmodellezésre
        \end{itemize}
      \end{block}
    \end{column}
    \begin{column}{0.5\textwidth}
      \begin{block}{Eszközök és adatbázis}
        \begin{itemize}
          \item \kiemel{SQLite} – relációs adatbázis
          \item \kiemel{Postman} – API tesztelés
          \item \kiemel{Redis} – gyorsítótár
        \end{itemize}
      \end{block}
    \end{column}
  \end{columns}
  \vspace{0.5cm}
  \begin{center}
    REST API-k $\rightarrow$ Útvonalkezelés $\rightarrow$ Adatbázis-kapcsolat $\rightarrow$ Biztonságos adatkezelés
  \end{center}
\end{frame}

\begin{frame}{Tematika – 1-3. hét}
  \begin{block}{Alapozás, HTTP, REST API, Express és architektúra}
    \begin{description}
      \item[1. hét:] Alapok, Node.js, HTTPS, NPM package manager
      \item[1. hét:] REST API, Architekturális felépítések, CQRS
      \item[1. hét:] Express.js, Routing, Postman
      \item[2. hét:] ORM, Database connection, CRUD operations
      \item[2. hét:] Prisma, Aggregates, Repositories
      \item[3. hét:] Database CRUD, ORM, CQRS + DTOs, Mappers
    \end{description}
  \end{block}
\end{frame}

\begin{frame}{Tematika – 3-6. hét}
  \begin{block}{Authentikáció, Authorizáció, Külső szolgáltatások}
    \begin{description}
      \item[3. hét:] AUTH, OAUTH, OAUTH2
      \item[4. hét:] Session, JWT, Cookie
      \item[4. hét:] Hash, Middleware, Services
      \item[5. hét:] Email sending, Templating
      \item[5. hét:] Dependency Injection, Logging
      \item[6. hét:] CORS, Redis, External API
      \item[6. hét:] \kiemel{1 ZH} – Teljes backend írás
    \end{description}
  \end{block}
\end{frame}

\begin{frame}{Értékelési mód}
  \begin{columns}
    \begin{column}{0.5\textwidth}
      \begin{alertblock}{1. Zárthelyi dolgozat (50 pont)}
        Backend fejlesztés
        \begin{itemize}
          \item Backend rész: 50 pont
        \end{itemize}
        \vspace{0.2cm}
        \small{Alapvető komponensek, API-k és adatkezelés}
      \end{alertblock}
    \end{column}
    \begin{column}{0.5\textwidth}
      \begin{alertblock}{2. Zárthelyi dolgozat (50 pont)}
        Összetett webalkalmazás
        \begin{itemize}
          \item Teljes frontend–backend integráció
          \item Önálló, működő alkalmazás
          \item Egyéni munka
        \end{itemize}
      \end{alertblock}
    \end{column}
  \end{columns}
\end{frame}

\begin{frame}{Pontszámítás és jegyek}
  \begin{table}
    \centering
    \begin{tabular}{|c|c|}
      \hline
      \textbf{Összesített pontszám} & \textbf{Érdemjegy} \\
      \hline
      0–50 & 1 (elégtelen) \\
      \hline
      51–60 & 2 (elégséges) \\
      \hline
      61–70 & 3 (közepes) \\
      \hline
      71–80 & 4 (jó) \\
      \hline
      81–100 & 5 (jeles) \\
      \hline
    \end{tabular}
  \end{table}
  \vspace{0.5cm}
  \begin{block}{Megajánlott jegy feltétele}
    Legalább \kiemel{71 pont} a két zárthelyi dolgozat összesített eredményéből
  \end{block}
\end{frame}

\begin{frame}{Következő lépések}
  \begin{enumerate}
    \item Fejlesztői környezet telepítése (Node.js, npm)
    \item Git és verziókezelés alapjai
    \item Első Express.js alkalmazás elkészítése
    \item REST API alapok megismerése
  \end{enumerate}
\end{frame}
