Questo è un repository di curriculum educativo per insegnare i fondamenti dello sviluppo web ai principianti. Il curriculum è un corso completo di 12 settimane sviluppato dai Microsoft Cloud Advocates, che propone 24 lezioni pratiche su JavaScript, CSS e HTML.
Questo è un repository curriculum educativo per insegnare le basi dello sviluppo web ai principianti. Il curriculum è un corso completo di 12 settimane sviluppato dai Microsoft Cloud Advocates, con 24 lezioni pratiche che coprono JavaScript, CSS e HTML.
### Componenti Chiave
- **Contenuti Educativi**: 24 lezioni strutturate organizzate in moduli basati su progetti
- **Progetti Pratici**: Terrario, Gioco di Digitazione, Estensione Browser, Gioco Spaziale, App Bancaria, Editor di Codice e Assistente Chat AI
- Corsi aggiuntivi: AI Generativa, Data Science, ML, curricoli IoT disponibili
### Lavorare con Progetti Specifici
Per istruzioni dettagliate sui singoli progetti, consulta i file README in:
Per istruzioni dettagliate su singoli progetti, consultare i file README in:
- `quiz-app/README.md` - Applicazione quiz Vue 3
- `7-bank-project/README.md` - Applicazione bancaria con autenticazione
- `5-browser-extension/README.md` - Sviluppo estensione browser
- `6-space-game/README.md` - Sviluppo gioco canvas
- `6-space-game/README.md` - Sviluppo gioco basato su canvas
- `9-chat-project/README.md` - Progetto assistente chat AI
### Struttura Monorepo
Sebbene non sia un monorepo tradizionale, questo repository contiene più progetti indipendenti:
Pur non essendo un monorepo tradizionale, questo repository contiene più progetti indipendenti:
- Ogni lezione è autonoma
- I progetti non condividono dipendenze
- Lavora su singoli progetti senza influenzare gli altri
- Clona l’intero repo per l’esperienza completa del curriculum
- Lavorare su singoli progetti senza influenzare gli altri
- Clonare l’intero repository per l’esperienza completa del curriculum
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Disclaimer**:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Pur impegnandoci per garantire accuratezza, si prega di notare che le traduzioni automatizzate possono contenere errori o imprecisioni. Il documento originale nella sua lingua originale deve essere considerato la fonte autorevole. Per informazioni critiche si raccomanda una traduzione professionale effettuata da un essere umano. Non siamo responsabili per eventuali incomprensioni o interpretazioni errate derivanti dall’uso di questa traduzione.
**Dichiarazione di non responsabilità**:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Pur impegnandoci per garantire l’accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa deve essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda la traduzione professionale effettuata da un umano. Non siamo responsabili per eventuali fraintendimenti o interpretazioni errate derivanti dall’uso di questa traduzione.
Impara le basi dello sviluppo web con il nostro corso completo di 12 settimane tenuto dai Microsoft Cloud Advocates. Ognuna delle 24 lezioni esplora JavaScript, CSS e HTML attraverso progetti pratici come terrari, estensioni per browser e giochi spaziali. Partecipa a quiz, discussioni e compiti pratici. Migliora le tue competenze e ottimizza la ritenzione delle conoscenze con la nostra efficace metodologia basata su progetti. Inizia oggi il tuo percorso di coding!
Impara le basi dello sviluppo web con il nostro corso completo di 12 settimane offerto dai Microsoft Cloud Advocates. Ognuna delle 24 lezioni esplora JavaScript, CSS e HTML attraverso progetti pratici come terrari, estensioni per browser e giochi spaziali. Partecipa a quiz, discussioni e compiti pratici. Migliora le tue competenze e ottimizza la tua memorizzazione con la nostra efficace pedagogia basata su progetti. Inizia oggi il tuo viaggio nel coding!
Unisciti alla Community Discord di Azure AI Foundry
Unisciti alla Comunità Discord di Azure AI Foundry
Segui questi passaggi per iniziare a usare queste risorse:
1. **Effettua il Fork del Repository**: Clicca [](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork)
Segui questi passaggi per iniziare a utilizzare queste risorse:
1. **Forka il Repository**: Clicca su [](https://GitHub.com/microsoft/Web-Dev-For-Beginners/fork)
2. **Clona il Repository**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git`
3. [**Unisciti alla Azure AI Foundry Discord e incontra esperti e altri sviluppatori**](https://discord.com/invite/ByRwuEEgH4)
3. [**Unisciti al Discord di The Azure AI Foundry e incontra esperti e altri sviluppatori**](https://discord.com/invite/ByRwuEEgH4)
### 🌐 Supporto Multilingua
### 🌐 Supporto Multilingue
#### Supportato tramite GitHub Action (Automatizzato e Sempre Aggiornato)
#### Supportato tramite GitHub Action (Automatizzato e sempre aggiornato)
> Questo repository include oltre 50 traduzioni linguistiche che aumentano significativamente la dimensione del download. Per clonare senza traduzioni, usa il sparse checkout:
> **Preferisci clonare localmente?**
>
> Questo repository include oltre 50 traduzioni linguistiche che aumentano significativamente la dimensione del download. Per clonare senza le traduzioni, usa il sparse checkout:
> git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"
> ```
>
> Ti fornisce tutto il necessario per completare il corso con un download molto più veloce.
<!-- CO-OP TRANSLATOR LANGUAGES TABLE END -->
**Se desideri che vengano supportate ulteriori lingue di traduzione, troverai l’elenco [qui](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
**Se desideri altre lingue di traduzione, quelle supportate sono elencate [qui](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
[](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)
[](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)
#### 🧑🎓 _Sei uno studente?_
Visita la [**pagina Student Hub**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) dove troverai risorse per principianti, pacchetti per studenti e anche modi per ottenere un voucher gratuito per il certificato. Questa è la pagina che vuoi aggiungere ai preferiti e consultare di tanto in tanto, poiché i contenuti vengono aggiornati mensilmente.
Visita la [**pagina Student Hub**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) dove troverai risorse per principianti, pacchetti per studenti e anche i modi per ottenere un voucher gratuito per il certificato. Questa è la pagina da aggiungere tra i preferiti e controllare periodicamente poiché i contenuti vengono aggiornati mensilmente.
### 📣 Annuncio - Nuove sfide per la modalità GitHub Copilot Agent da completare!
### 📣 Annuncio - Nuove sfide Modalità GitHub Copilot Agent da completare!
Nuova sfida aggiunta, cerca "GitHub Copilot Agent Challenge 🚀" nella maggior parte dei capitoli. È una nuova sfida da completare usando GitHub Copilot e la modalità Agent. Se non hai mai usato la modalità Agent, essa è in grado non solo di generare testo ma anche di creare e modificare file, eseguire comandi e altro.
Nuova sfida aggiunta, cerca "GitHub Copilot Agent Challenge 🚀" nella maggior parte dei capitoli. È una nuova sfida da completare usando GitHub Copilot e la modalità Agent. Se non hai mai usato la modalità Agent, questa non genera solo testo ma può anche creare e modificare file, eseguire comandi e altro.
### 📣 Annuncio - _Nuovo progetto da costruire utilizzando l’IA Generativa_
### 📣 Annuncio - _Nuovo Progetto da costruire usando Generative AI_
Nuovo progetto AI Assistant appena aggiunto, dai un’occhiata al [progetto](./9-chat-project/README.md)
Nuovo progetto Assistente AI appena aggiunto, dai un’occhiata al [progetto](./9-chat-project/README.md)
- Lezioni che coprono tutto, dalle basi fino a RAG.
- Lezioni che coprono tutto, dalle basi al RAG.
- Interagisci con personaggi storici usando GenAI e la nostra app companion.
- Narrazione divertente e coinvolgente, viaggerai nel tempo!
@ -73,141 +83,140 @@ Visita [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) per iniz
Ogni lezione include un compito da completare, un controllo delle conoscenze e una sfida per guidarti nell’apprendimento di argomenti come:
- Prompting e ingegneria dei prompt
- Generazione di app testuali e di immagini
- Prompt e prompt engineering
- Generazione di app di testo e immagini
- App di ricerca
Visita [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course) per iniziare!
## 🌱 Iniziare
## 🌱 Per Iniziare
> **Insegnanti**, abbiamo [incluso alcuni suggerimenti](for-teachers.md) su come usare questo curriculum. Ci piacerebbe ricevere il vostro feedback [nel nostro forum di discussione](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **Insegnanti**, abbiamo [incluso qualche suggerimento](for-teachers.md) su come usare questo curriculum. Ci piacerebbe avere il vostro feedback [nel nostro forum di discussione](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
**[Studenti](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, per ogni lezione, iniziate con un quiz pre-lezione, seguite leggendo il materiale della lezione, completate le varie attività e verificate la vostra comprensione con il quiz post-lezione.
**[Studenti](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, per ogni lezione, iniziate con un quiz pre-lezione e continuate leggendo il materiale della lezione, completando le varie attività e verificando la comprensione con il quiz post-lezione.
Per migliorare la tua esperienza di apprendimento, connettiti con i tuoi compagni di corso per lavorare insieme sui progetti! Le discussioni sono incoraggiate nel nostro [forum di discussione](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) dove il nostro team di moderatori sarà disponibile per rispondere alle tue domande.
Per migliorare la tua esperienza di apprendimento, connettiti con i tuoi compagni per lavorare insieme sui progetti! Sono incoraggiate le discussioni nel nostro [forum di discussione](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) dove il nostro team di moderatori sarà disponibile a rispondere alle tue domande.
Per approfondire la tua formazione, ti consigliamo vivamente di esplorare [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) per materiali di studio aggiuntivi.
Per approfondire la tua formazione, ti consigliamo vivamente di esplorare [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) per ulteriori materiali di studio.
### 📋 Configura il tuo ambiente
### 📋 Configurare il tuo ambiente
Questo curriculum ha un ambiente di sviluppo pronto all’uso! Quando inizi puoi scegliere di eseguire il curriculum in un [Codespace](https://github.com/features/codespaces/) (_un ambiente basato su browser, senza necessità di installazioni_), oppure localmente sul tuo computer usando un editor di testo come [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
Questo curriculum ha un ambiente di sviluppo pronto all’uso! Quando inizi puoi scegliere di eseguire il curriculum in un [Codespace](https://github.com/features/codespaces/) (_un ambiente basato su browser, senza bisogno di installazioni_), oppure localmente sul tuo computer usando un editor di testo come [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
#### Crea il tuo repository
Per salvare facilmente il tuo lavoro, è consigliato creare una tua copia di questo repository. Puoi farlo cliccando sul pulsante **Usa questo modello** in cima alla pagina. Questo creerà un nuovo repository nel tuo account GitHub con una copia del curriculum.
Per salvare facilmente il tuo lavoro, si consiglia di creare una copia di questo repository. Puoi farlo cliccando sul pulsante **Usa questo modello** in alto nella pagina. Questo creerà un nuovo repository nel tuo account GitHub con una copia del curriculum.
Segui questi passaggi:
1. **Effettua il Fork del Repository**: Clicca sul pulsante "Fork" in alto a destra di questa pagina.
1. **Forka il Repository**: Clicca sul bottone "Fork" in alto a destra di questa pagina.
2. **Clona il Repository**: `git clone https://github.com/microsoft/Web-Dev-For-Beginners.git`
#### Esecuzione del curriculum in un Codespace
#### Eseguire il curriculum in un Codespace
Nella tua copia di questo repository che hai creato, clicca sul pulsante **Code** e seleziona **Open with Codespaces**. Questo creerà un nuovo Codespace in cui lavorare.
Nella tua copia del repository che hai creato, clicca il bottone **Code** e seleziona **Open with Codespaces**. Questo creerà un nuovo Codespace dove potrai lavorare.
#### Esecuzione del curriculum localmente sul tuo computer
Per eseguire questo curriculum localmente sul tuo computer, avrai bisogno di un editor di testo, un browser e uno strumento da linea di comando. La nostra prima lezione, [Introduzione ai Linguaggi di Programmazione e agli Strumenti del mestiere](../../1-getting-started-lessons/1-intro-to-programming-languages), ti guiderà attraverso varie opzioni per ciascuno di questi strumenti in modo che tu possa scegliere ciò che funziona meglio per te.
La nostra raccomandazione è di utilizzare [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) come editor, che include anche un [Terminale integrato](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon). Puoi scaricare Visual Studio Code [qui](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
#### Eseguire il curriculum localmente sul tuo computer
Per eseguire questo curriculum localmente serve un editor di testo, un browser e uno strumento da riga di comando. La nostra prima lezione, [Introduzione ai linguaggi di programmazione e agli strumenti del mestiere](../../1-getting-started-lessons/1-intro-to-programming-languages), ti guiderà attraverso varie opzioni per ciascuno di questi strumenti in modo che tu possa scegliere quella che preferisci.
1. Clona il tuo repository sul computer. Puoi farlo cliccando sul pulsante **Code** e copiando l'URL:
La nostra raccomandazione è di usare [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) come editor, che ha anche un [Terminale](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) integrato. Puoi scaricare Visual Studio Code [qui](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
1. Clona il tuo repository sul computer. Puoi farlo cliccando sul pulsante **Code** e copiando l’URL:
[CodeSpace](./images/createcodespace.png)
Quindi, apri [Terminale](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) all'interno di [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ed esegui il seguente comando, sostituendo `<your-repository-url>` con l'URL appena copiato:
Poi, apri [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) all’interno di [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) ed esegui il comando seguente, sostituendo `<your-repository-url>` con l’URL che hai appena copiato:
```bash
git clone <your-repository-url>
```
2. Apri la cartella in Visual Studio Code. Puoi farlo cliccando su **File** > **Apri cartella** e selezionando la cartella appena clonata.
2. Apri la cartella in Visual Studio Code. Puoi farlo cliccando su **File** > **Open Folder** e selezionando la cartella appena clonata.
> Estensioni consigliate per Visual Studio Code:
> Estensioni consigliate di Visual Studio Code:
>
> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - per visualizzare in anteprima pagine HTML all'interno di Visual Studio Code
> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - per visualizzare in anteprima pagine HTML all’interno di Visual Studio Code
> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - per aiutarti a scrivere codice più velocemente
## 📂 Ogni lezione include:
- sketchnote opzionale
- video supplementare opzionale
- quiz preparatorio alla lezione
- quiz di riscaldamento prima della lezione
- lezione scritta
- per le lezioni basate su progetti, guide passo passo su come realizzare il progetto
- verifiche della conoscenza
- per le lezioni basate su progetti, guide passo-passo su come costruire il progetto
> **Una nota sui quiz**: tutti i quiz si trovano nella cartella Quiz-app, 48 quiz totali di tre domande ciascuno. Sono disponibili [qui](https://ff-quizzes.netlify.app/web/). L'app dei quiz può essere eseguita localmente o distribuita su Azure; segui le istruzioni nella cartella `quiz-app`.
> **Una nota sui quiz**: Tutti i quiz si trovano nella cartella Quiz-app, 48 quiz totali di tre domande ciascuno. Sono disponibili [qui](https://ff-quizzes.netlify.app/web/); l’app del quiz può essere eseguita localmente o distribuita su Azure; segui le istruzioni nella cartella `quiz-app`.
## 🗃️ Lezioni
| | Nome Progetto | Concetti Insegnati | Obiettivi di Apprendimento | Lezione Collegata | Autore |
| 01 | Getting Started | Introduzione alla Programmazione e Strumenti del Mestiere | Imparare i fondamenti di base della maggior parte dei linguaggi di programmazione e del software che aiuta gli sviluppatori | [Intro to Programming Languages and Tools of the Trade](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine |
| 02 | Getting Started | Nozioni base di GitHub, compreso lavorare in team | Come usare GitHub nel tuo progetto, come collaborare con altri su una base di codice | [Intro to GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor |
| 03 | Getting Started | Accessibilità | Imparare le basi dell'accessibilità web | [Accessibility Fundamentals](./1-getting-started-lessons/3-accessibility/README.md) | Christopher |
| 04 | JS Basics | Tipi di Dati in JavaScript | Le basi dei tipi di dati in JavaScript | [Data Types](./2-js-basics/1-data-types/README.md) | Jasmine |
| 05 | JS Basics | Funzioni e Metodi | Impara a conoscere funzioni e metodi per gestire il flusso logico di un'applicazione | [Functions and Methods](./2-js-basics/2-functions-methods/README.md) | Jasmine and Christopher |
| 06 | JS Basics | Prendere decisioni con JS | Impara a creare condizioni nel tuo codice usando metodi decisionali | [Making Decisions](./2-js-basics/3-making-decisions/README.md) | Jasmine |
| 07 | JS Basics | Array e Cicli| Lavora con i dati usando array e cicli in JavaScript | [Arrays and Loops](./2-js-basics/4-arrays-loops/README.md) | Jasmine |
| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML in Pratica | Costruisci l'HTML per creare un terrario online, concentrandoti sulla creazione del layout | [Introduction to HTML](./3-terrarium/1-intro-to-html/README.md) | Jen |
| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS in Pratica | Costruisci il CSS per stilizzare il terrario online, concentrandoti sulle basi del CSS inclusa la realizzazione di una pagina responsiva | [Introduction to CSS](./3-terrarium/2-intro-to-css/README.md) | Jen |
| 10 | [Terrarium](./3-terrarium/solution/README.md) | Closure in JavaScript, manipolazione del DOM | Costruisci il JavaScript per far funzionare il terrario come interfaccia drag/drop, concentrandoti su closure e manipolazione del DOM | [JavaScript Closures, DOM manipulation](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen |
| 11 | [Typing Game](./4-typing-game/solution/README.md) | Costruire un gioco di digitazione | Impara a usare eventi da tastiera per guidare la logica dell'app JavaScript | [Event-Driven Programming](./4-typing-game/typing-game/README.md) | Christopher |
| 12 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Lavorare con i Browser | Impara come funzionano i browser, la loro storia, e come strutturare i primi elementi di un'estensione browser | [About Browsers](./5-browser-extension/1-about-browsers/README.md) | Jen |
| 13 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Costruire un form, chiamare un'API e memorizzare variabili in local storage | Costruisci gli elementi JavaScript dell'estensione browser per chiamare un'API usando variabili memorizzate in local storage | [APIs, Forms, and Local Storage](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen |
| 14 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Processi in background nel browser, prestazioni web | Usa i processi in background del browser per gestire l'icona dell'estensione; imparare sulle prestazioni web e alcune ottimizzazioni per migliorare | [Background Tasks and Performance](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen |
| 15 | [Space Game](./6-space-game/solution/README.md) | Sviluppo di giochi avanzato con JavaScript | Impara l'Ereditarietà usando sia Classi che Composizione e il modello Pub/Sub, in preparazione alla costruzione di un gioco | [Introduction to Advanced Game Development](./6-space-game/1-introduction/README.md) | Chris |
| 16 | [Space Game](./6-space-game/solution/README.md) | Disegnare su canvas | Impara l'API Canvas, usata per disegnare elementi su uno schermo | [Drawing to Canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris |
| 17 | [Space Game](./6-space-game/solution/README.md) | Spostare elementi sullo schermo | Scopri come gli elementi possono ottenere movimento usando coordinate cartesiane e l'API Canvas | [Moving Elements Around](./6-space-game/3-moving-elements-around/README.md) | Chris |
| 18 | [Space Game](./6-space-game/solution/README.md) | Rilevamento collisioni | Fai collidere gli elementi e reagire tra di loro usando i tasti premuti e fornisci una funzione di cooldown per assicurare le prestazioni del gioco | [Collision Detection](./6-space-game/4-collision-detection/README.md) | Chris |
| 19 | [Space Game](./6-space-game/solution/README.md) | Tenere il punteggio | Esegui calcoli matematici basati sullo stato e sulle prestazioni del gioco | [Keeping Score](./6-space-game/5-keeping-score/README.md) | Chris |
| 20 | [Space Game](./6-space-game/solution/README.md) | Terminare e riavviare il gioco | Impara come terminare e riavviare il gioco, inclusa la pulizia delle risorse e il reset dei valori delle variabili | [The Ending Condition](./6-space-game/6-end-condition/README.md) | Chris |
| 21 | [Banking App](./7-bank-project/solution/README.md) | Template HTML e Routing in un'app web | Impara a creare la struttura architettonica di un sito multipagina usando routing e template HTML | [HTML Templates and Routes](./7-bank-project/1-template-route/README.md) | Yohan |
| 22 | [Banking App](./7-bank-project/solution/README.md) | Costruire un form di Login e Registrazione | Impara a costruire form e gestire routine di validazione | [Forms](./7-bank-project/2-forms/README.md) | Yohan |
| 23 | [Banking App](./7-bank-project/solution/README.md) | Metodi per recuperare e usare dati | Come i dati entrano ed escono dalla tua app, come recuperarli, conservarli e smaltirli | [Data](./7-bank-project/3-data/README.md) | Yohan |
| 24 | [Banking App](./7-bank-project/solution/README.md) | Concetti di gestione dello stato | Impara come la tua app conserva lo stato e come gestirlo programmativamente | [State Management](./7-bank-project/4-state-management/README.md) | Yohan |
| 25 | [Browser/VScode Code](../../8-code-editor) | Lavorare con VScode | Impara a usare un editor di codice| [Usa l’editor di codice VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris |
| 26 | [AI Assistants](./9-chat-project/README.md) | Lavorare con l’AI | Impara a costruire il tuo assistente AI | [Progetto Assistente AI](./9-chat-project/README.md) | Chris |
| | Nome Progetto | Concetti Insegnati | Obiettivi di Apprendimento | Lezione Collegata | Autore |
| 01 | Getting Started | Introduzione alla Programmazione e Strumenti del Mestiere | Impara le basi comuni alla maggior parte dei linguaggi di programmazione e sul software che aiuta gli sviluppatori professionisti a svolgere il loro lavoro | [Introduzione ai Linguaggi di Programmazione e Strumenti del Mestiere](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine |
| 02 | Getting Started | Nozioni base su GitHub, incluso il lavoro in team | Come usare GitHub nel tuo progetto, come collaborare con altri su una base di codice | [Introduzione a GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor |
| 03 | Getting Started | Accessibilità | Impara le basi dell’accessibilità web | [Fondamenti di Accessibilità](./1-getting-started-lessons/3-accessibility/README.md) | Christopher |
| 04 | JS Basics | Tipi di Dati JavaScript | Le basi dei tipi di dati in JavaScript | [Tipi di Dati](./2-js-basics/1-data-types/README.md) | Jasmine |
| 05 | JS Basics | Funzioni e Metodi | Impara su funzioni e metodi per gestire il flusso logico di un’applicazione | [Funzioni e Metodi](./2-js-basics/2-functions-methods/README.md) | Jasmine e Christopher |
| 06 | JS Basics | Prendere Decisioni con JS | Impara a creare condizioni nel tuo codice usando metodi decisionali | [Prendere Decisioni](./2-js-basics/3-making-decisions/README.md) | Jasmine |
| 07 | JS Basics | Array e Cicli | Lavora con dati usando array e cicli in JavaScript | [Array e Cicli](./2-js-basics/4-arrays-loops/README.md) | Jasmine |
| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML in Pratica | Costruisci l’HTML per creare un terrario online, focalizzandoti sulla costruzione del layout | [Introduzione a HTML](./3-terrarium/1-intro-to-html/README.md) | Jen |
| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS in Pratica | Costruisci il CSS per stilizzare il terrario online, concentrandoti sulle basi del CSS inclusa la responsività della pagina | [Introduzione a CSS](./3-terrarium/2-intro-to-css/README.md) | Jen |
| 10 | [Terrarium](./3-terrarium/solution/README.md) | Chiusure JavaScript, manipolazione del DOM | Costruisci il JavaScript per far funzionare il terrario come interfaccia drag/drop, concentrandoti su chiusure e manipolazione del DOM | [Chiusure JavaScript, manipolazione del DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen |
| 11 | [Typing Game](./4-typing-game/solution/README.md) | Costruire un Gioco di Digitazione | Impara a usare eventi da tastiera per guidare la logica della tua app JavaScript | [Programmazione Event-Driven](./4-typing-game/typing-game/README.md) | Christopher |
| 12 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Lavorare con i Browser | Impara come funzionano i browser, la loro storia e come strutturare i primi elementi di un’estensione del browser | [Informazioni sui Browser](./5-browser-extension/1-about-browsers/README.md) | Jen |
| 13 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Costruzione di un form, chiamata API e memorizzazione variabili in local storage | Costruisci gli elementi JavaScript della tua estensione per chiamare un’API usando variabili memorizzate nel local storage | [API, Form e Local Storage](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen |
| 14 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Processi in background nel browser, prestazioni web | Usa i processi in background del browser per gestire l’icona dell’estensione; impara sulle prestazioni web e alcune ottimizzazioni per migliorare | [Attività Background e Prestazioni](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen |
| 15 | [Space Game](./6-space-game/solution/README.md) | Sviluppo di giochi più avanzato con JavaScript | Impara sull’Ereditarietà usando sia Classi che Composizione e sul pattern Pub/Sub, in preparazione per costruire un gioco | [Introduzione allo Sviluppo Avanzato di Giochi](./6-space-game/1-introduction/README.md) | Chris |
| 16 | [Space Game](./6-space-game/solution/README.md) | Disegnare su canvas | Impara la Canvas API, usata per disegnare elementi su uno schermo | [Disegnare su Canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris |
| 17 | [Space Game](./6-space-game/solution/README.md) | Muovere gli elementi sullo schermo | Scopri come gli elementi possono muoversi usando coordinate cartesiane e la Canvas API | [Muovere gli Elementi](./6-space-game/3-moving-elements-around/README.md) | Chris |
| 18 | [Space Game](./6-space-game/solution/README.md) | Rilevamento collisioni | Fai collidere elementi e reagire tra loro usando pressioni di tasti e fornisci una funzione di cooldown per assicurare le prestazioni del gioco | [Rilevamento Collisioni](./6-space-game/4-collision-detection/README.md) | Chris |
| 19 | [Space Game](./6-space-game/solution/README.md) | Mantenere il punteggio | Esegui calcoli matematici basati sullo stato e prestazioni del gioco | [Mantenere il Punteggio](./6-space-game/5-keeping-score/README.md) | Chris |
| 20 | [Space Game](./6-space-game/solution/README.md) | Terminare e riavviare il gioco | Impara a terminare e riavviare il gioco, inclusa la pulizia delle risorse e il reset dei valori delle variabili | [La Condizione di Fine](./6-space-game/6-end-condition/README.md) | Chris |
| 21 | [Banking App](./7-bank-project/solution/README.md) | Template HTML e Routing in un'app web | Impara a creare la struttura architettonica di un sito multipagina usando routing e template HTML | [Template HTML e Routing](./7-bank-project/1-template-route/README.md) | Yohan |
| 22 | [Banking App](./7-bank-project/solution/README.md) | Costruire un form di login e registrazione | Impara a costruire form e gestire routine di validazione | [Form](./7-bank-project/2-forms/README.md) | Yohan |
| 23 | [Banking App](./7-bank-project/solution/README.md) | Metodi di Fetching e Uso dei Dati | Come i dati entrano e escono dalla tua app, come recuperarli, salvarli e scartarli | [Dati](./7-bank-project/3-data/README.md) | Yohan |
| 24 | [Banking App](./7-bank-project/solution/README.md) | Concetti di Gestione dello Stato | Impara come la tua app mantiene lo stato e come gestirlo programmaticamente | [Gestione dello Stato](./7-bank-project/4-state-management/README.md) | Yohan |
| 25 | [Browser/VScode Code](../../8-code-editor) | Lavorare con VScode | Impara a usare un editor di codice| [Usare VScode Code Editor](./8-code-editor/1-using-a-code-editor/README.md) | Chris |
| 26 | [AI Assistants](./9-chat-project/README.md) | Lavorare con AI | Impara a costruire il tuo assistente AI | [Progetto Assistente AI](./9-chat-project/README.md) | Chris |
## 🏫 Pedagogia
Il nostro curriculum è progettato con due principi pedagogici chiave in mente:
Il nostro curriculum è progettato secondo due principi pedagogici chiave:
* apprendimento basato su progetti
* quiz frequenti
Il programma insegna le basi di JavaScript, HTML e CSS, così come gli strumenti più recenti e le tecniche usate dagli sviluppatori web di oggi. Gli studenti avranno l'opportunità di sviluppare esperienza pratica costruendo un gioco di digitazione, un terrario virtuale, un'estensione browser eco-friendly, un gioco in stile space invaders e un'app bancaria per aziende. Alla fine della serie, gli studenti avranno acquisito una solida comprensione dello sviluppo web.
Il programma insegna le basi di JavaScript, HTML e CSS, così come gli strumenti e le tecniche più recenti usati dagli sviluppatori web di oggi. Gli studenti avranno l’opportunità di acquisire esperienza pratica costruendo un gioco di digitazione, un terrario virtuale, un’estensione browser ecologica, un gioco in stile space-invader e un’app bancaria per aziende. Alla fine della serie, gli studenti avranno acquisito una solida comprensione dello sviluppo web.
> 🎓 Puoi seguire le prime lezioni di questo curriculum come un [Percorso di Apprendimento](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) su Microsoft Learn!
> 🎓 Puoi seguire le prime lezioni di questo curriculum come [Percorso di Apprendimento](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) su Microsoft Learn!
Garantendo che i contenuti siano allineati ai progetti, il processo diventa più coinvolgente per gli studenti e la ritenzione dei concetti aumenterà. Abbiamo anche scritto alcune lezioni introduttive sulle basi di JavaScript per introdurre i concetti, abbinate a un video della collezione di tutorial video "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)", alcuni dei cui autori hanno contribuito a questo curriculum.
Assicurando che il contenuto sia allineato ai progetti, il processo diventa più coinvolgente per gli studenti e la ritenzione dei concetti sarà aumentata. Abbiamo inoltre scritto diverse lezioni introduttive sulle basi di JavaScript per introdurre i concetti, abbinate a un video della raccolta "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)", alcuni dei cui autori hanno contribuito a questo curriculum.
Inoltre, un quiz a bassa pressione prima di una lezione stabilisce l'intenzione dello studente verso l'apprendimento di un argomento, mentre un secondo quiz dopo la lezione assicura una maggiore ritenzione. Questo curriculum è progettato per essere flessibile e divertente e può essere seguito interamente o in parte. I progetti partono piccoli e diventano progressivamente più complessi entro la fine del ciclo di 12 settimane.
Inoltre, un quiz a bassa pressione prima di una lezione pone l’intenzione dello studente verso l’apprendimento di un argomento, mentre un secondo quiz dopo la lezione assicura una maggiore ritenzione. Questo curriculum è stato progettato per essere flessibile e divertente e può essere seguito integralmente o parzialmente. I progetti iniziano piccoli e diventano progressivamente più complessi entro la fine del ciclo di 12 settimane.
Pur avendo volutamente evitato di introdurre framework JavaScript per concentrare l'attenzione sulle competenze di base necessarie come sviluppatore web prima di adottare un framework, una buona fase successiva per completare questo curriculum sarebbe imparare Node.js tramite un'altra raccolta di video: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
Sebbene abbiamo volutamente evitato l’introduzione di framework JavaScript per concentrarci sulle competenze di base necessarie come sviluppatore web prima di adottare un framework, un buon passo successivo per completare questo curriculum sarebbe imparare Node.js tramite un’altra raccolta di video: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
> Consulta il nostro [Codice di Condotta](CODE_OF_CONDUCT.md) e le linee guida su [Come Contribuire](CONTRIBUTING.md). Accogliamo con piacere il tuo feedback costruttivo!
> Visita le nostre linee guida [Codice di Condotta](CODE_OF_CONDUCT.md) e [Contributi](CONTRIBUTING.md). Accogliamo con piacere il tuo feedback costruttivo!
## 🧭 Accesso offline
Puoi eseguire questa documentazione offline usando [Docsify](https://docsify.js.org/#/). Fai il fork di questo repository, [installa Docsify](https://docsify.js.org/#/quickstart) sulla tua macchina locale, e poi nella cartella radice di questo repository, digita `docsify serve`. Il sito sarà servito sulla porta 3000 sul tuo localhost: `localhost:3000`.
Puoi eseguire questa documentazione offline usando [Docsify](https://docsify.js.org/#/). Fai un fork di questo repo, [installa Docsify](https://docsify.js.org/#/quickstart) sulla tua macchina locale, e poi nella cartella principale di questo repo, digita `docsify serve`. Il sito sarà servito sulla porta 3000 del tuo localhost: `localhost:3000`.
## 📘 PDF
Un PDF di tutte le lezioni può essere trovato [qui](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf).
Un PDF di tutte le lezioni è disponibile [qui](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf).
## 🎒 Altri Corsi
Il nostro team produce altri corsi! Dai un'occhiata a:
Il nostro team produce altri corsi! Dai un'occhiata:
<!-- CO-OP TRANSLATOR OTHER COURSES START -->
### LangChain
@ -224,7 +233,7 @@ Il nostro team produce altri corsi! Dai un'occhiata a:
---
### Serie Intelligenza Artificiale Generativa
### Serie AI Generativa
[](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
@ -232,7 +241,7 @@ Il nostro team produce altri corsi! Dai un'occhiata a:
---
### Apprendimento di Base
### Apprendimento Core
[](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
@ -251,11 +260,11 @@ Il nostro team produce altri corsi! Dai un'occhiata a:
## Ottenere Aiuto
Se rimani bloccato o hai domande sulla creazione di app AI. Unisciti ad altri studenti e sviluppatori esperti nelle discussioni su MCP. È una comunità di supporto dove le domande sono benvenute e la conoscenza viene condivisa liberamente.
Se rimani bloccato o hai domande sulla creazione di app AI, unisciti ad altri studenti e sviluppatori esperti nelle discussioni su MCP. È una comunità di supporto dove le domande sono benvenute e la conoscenza viene condivisa liberamente.
@ -266,6 +275,6 @@ Questo repository è concesso in licenza sotto la licenza MIT. Consulta il file
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Disclaimer**:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Pur impegnandoci per garantire l’accuratezza, si prega di considerare che le traduzioni automatiche possono contenere errori o imprecisioni. Il documento originale nella sua lingua nativa deve essere considerato la fonte autorevole. Per informazioni critiche, si raccomanda una traduzione professionale effettuata da un umano. Non ci assumiamo alcuna responsabilità per eventuali malintesi o interpretazioni errate derivanti dall’uso di questa traduzione.
**Avvertenza**:
Questo documento è stato tradotto utilizzando il servizio di traduzione automatica [Co-op Translator](https://github.com/Azure/co-op-translator). Pur facendo del nostro meglio per garantire l'accuratezza, si prega di notare che le traduzioni automatiche possono contenere errori o inesattezze. Il documento originale nella sua lingua nativa deve essere considerato la fonte autorevole. Per informazioni critiche, si consiglia la traduzione professionale effettuata da un umano. Non ci assumiamo responsabilità per eventuali malintesi o interpretazioni errate derivanti dall'uso di questa traduzione.
Jest to repozytorium programu nauczania służące do nauczania podstaw web developmentu dla początkujących. Program to kompleksowy, 12-tygodniowy kurs opracowany przez Microsoft Cloud Advocates, zawierający 24 praktyczne lekcje obejmujące JavaScript, CSS i HTML.
Jest to edukacyjne repozytorium z programem nauczania do nauki podstaw tworzenia stron internetowych dla początkujących. Program nauczania to kompleksowy 12-tygodniowy kurs opracowany przez Microsoft Cloud Advocates, zawierający 24 praktyczne lekcje obejmujące JavaScript, CSS i HTML.
### Kluczowe elementy
- **Treści edukacyjne**: 24 ustrukturyzowane lekcje zorganizowane w moduły projektowe
- **Projekty praktyczne**: Terrarium, Gra w pisanie, Rozszerzenie przeglądarki, Gra kosmiczna, Aplikacja bankowa, Edytor kodu oraz Asystent czatu AI
- **Interaktywne quizy**: 48 quizów z 3 pytaniami każdy (wstępne i końcowe testy)
- **Wsparcie wielojęzyczne**: Automatyczne tłumaczenia na ponad 50 języków dzięki GitHub Actions
- **Treści edukacyjne**: 24 ustrukturyzowane lekcje zorganizowane w moduły oparte na projektach
- **Projekty praktyczne**: Terrarium, Gra pisania na klawiaturze, Rozszerzenie przeglądarki, Gra kosmiczna, Aplikacja bankowa, Edytor kodu i Asystent czatu AI
- **Interaktywne quizy**: 48 quizów po 3 pytania każdy (oceny przed i po lekcji)
- **Wsparcie wielojęzyczne**: Automatyczne tłumaczenia na ponad 50 języków przez GitHub Actions
- [GitHub Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot) polecany dla uczących się
- Dodatkowe kursy: Generative AI, Data Science, ML, IoT dostępne
- Dodatkowe kursy: Generatywna AI, Data Science, ML, IoT
### Praca z konkretnymi projektami
Szczegółowe instrukcje dotyczące pojedynczych projektów dostępne w plikach README w:
Szczegółowe instrukcje dotyczące konkretnych projektów znajdują się w README:
- `quiz-app/README.md` - aplikacja quizowa Vue 3
- `7-bank-project/README.md` - aplikacja bankowa z uwierzytelnianiem
- `5-browser-extension/README.md` - rozwój rozszerzeń przeglądarki
- `6-space-game/README.md` - tworzenie gry na Canvas
- `5-browser-extension/README.md` - rozwój rozszerzenia przeglądarki
- `6-space-game/README.md` - gra oparta na canvas
- `9-chat-project/README.md` - projekt asystenta czatu AI
### Struktura monorepo
Chociaż nie jest to tradycyjne monorepo, to repozytorium zawiera wiele niezależnych projektów:
Choć to nie tradycyjne monorepo, repozytorium zawiera wiele niezależnych projektów:
- Każda lekcja jest samodzielna
- Projekty nie współdzielą zależności
- Pracuj nad pojedynczymi projektami bez wpływu na inne
- Sklonuj całe repo dla pełnego doświadczenia programu nauczania
- Projekty nie dzielą zależności
- Pracuj nad indywidualnymi projektami bez wpływu na inne
- Sklonuj całe repo dla pełnego doświadczenia programu nauczania
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Zastrzeżenie**:
Niniejszy dokument został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Mimo że dążymy do dokładności, prosimy mieć na uwadze, że tłumaczenia automatyczne mogą zawierać błędy lub nieścisłości. Oryginalny dokument w jego rodzimym języku powinien być uznawany za źródło wiarygodne. W przypadku informacji krytycznych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.
**Zastrzeżenie**:
Niniejszy dokument został przetłumaczony przy użyciu usługi tłumaczeń AI [Co-op Translator](https://github.com/Azure/co-op-translator). Choć dokładamy wszelkich starań, aby tłumaczenie było precyzyjne, prosimy pamiętać, że automatyczne tłumaczenia mogą zawierać błędy lub nieścisłości. Oryginalny dokument w języku źródłowym należy traktować jako źródło autorytatywne. W przypadku informacji krytycznych zaleca się skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.
# Tworzenie stron internetowych dla początkujących - program nauczania
# Tworzenie stron internetowych dla początkujących - Program nauczania
Poznaj podstawy tworzenia stron internetowych dzięki naszemu 12-tygodniowemu kompleksowemu kursowi prowadzonemu przez Microsoft Cloud Advocates. Każda z 24 lekcji zanurza się w JavaScript, CSS i HTML poprzez praktyczne projekty, takie jak terraria, rozszerzenia przeglądarki i gry kosmiczne. Angażuj się w quizy, dyskusje i zadania praktyczne. Rozwijaj swoje umiejętności i optymalizuj utrwalanie wiedzy dzięki naszej efektywnej pedagogice opartej na projektach. Rozpocznij swoją przygodę z kodowaniem już dziś!
Naucz się podstaw tworzenia stron internetowych z naszym 12-tygodniowym, kompleksowym kursem prowadzonym przez Microsoft Cloud Advocates. Każda z 24 lekcji zagłębia się w JavaScript, CSS i HTML przez praktyczne projekty, takie jak terraria, rozszerzenia przeglądarki i gry kosmiczne. Weź udział w quizach, dyskusjach i praktycznych zadaniach. Zwiększ swoje umiejętności i zoptymalizuj przyswajanie wiedzy dzięki naszej skutecznej metodzie nauczania opartej na projektach. Rozpocznij swoją przygodę z kodowaniem już dziś!
Dołącz do społeczności Azure AI Foundry na Discordzie
> git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"
> ```
>
> Dzięki temu otrzymasz wszystko, czego potrzebujesz, aby ukończyć kurs, z dużo szybszym pobieraniem.
<!-- CO-OP TRANSLATOR LANGUAGES TABLE END -->
**Jeśli chcesz, aby obsługiwane były dodatkowe języki tłumaczeń, są one wymienione [tutaj](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md)**
@ -47,32 +57,32 @@ Wykonaj te kroki, aby zacząć korzystać z tych zasobów:
#### 🧑🎓 _Jesteś studentem?_
Odwiedź [**Stronę Student Hub**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon), gdzie znajdziesz zasoby dla początkujących, pakiety dla studentów, a nawet sposoby na uzyskanie darmowego vouchera na certyfikat. To jest strona, którą warto dodać do zakładek i od czasu do czasu sprawdzać, ponieważ co miesiąc zmieniamy zawartość.
Odwiedź [**Stronę Student Hub**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon), gdzie znajdziesz materiały dla początkujących, pakiety dla studentów, a nawet sposoby na zdobycie darmowego vouchera na certyfikat. To strona, którą warto mieć w zakładkach i odwiedzać od czasu do czasu, ponieważ co miesiąc wymieniamy jej zawartość.
### 📣 Ogłoszenie - Nowe wyzwania trybu GitHub Copilot Agent do wykonania!
### 📣 Ogłoszenie - nowe wyzwania trybu agenta GitHub Copilot do wykonania!
Dodano nowe wyzwanie, szukaj "GitHub Copilot Agent Challenge 🚀" w większości rozdziałów. To nowe wyzwanie do wykonania przy użyciu GitHub Copilot i trybu Agenta. Jeśli nie korzystałeś wcześniej z trybu Agenta, potrafi on nie tylko generować tekst, ale także tworzyć i edytować pliki, uruchamiać polecenia i więcej.
Dodano nowe wyzwanie, szukaj "GitHub Copilot Agent Challenge 🚀" w większości rozdziałów. To nowe wyzwanie do wykonania za pomocą GitHub Copilot i trybu agenta. Jeśli jeszcze nie korzystałeś z trybu agenta, potrafi on nie tylko generować tekst, ale także tworzyć i edytować pliki, uruchamiać polecenia i wiele więcej.
### 📣 Ogłoszenie - _Nowy projekt do realizacji z wykorzystaniem Generatywnej AI_
### 📣 Ogłoszenie - _Nowy projekt do zbudowania za pomocą Generative AI_
Dodano nowy projekt AI Assistant, sprawdź [projekt](./9-chat-project/README.md)
### 📣 Ogłoszenie - _Nowy program nauczania_o Generatywnej AI dla JavaScript właśnie został wydany
### 📣 Ogłoszenie - _Nowy program nauczania_dotyczący Generative AI dla JavaScript właśnie został wydany
Nie przegap naszego nowego programu nauczania Generatywnej AI!
Nie przegap naszego nowego kursu Generative AI!
Odwiedź [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course), aby zacząć!
Każda lekcja zawiera zadanie do wykonania, test wiedzy i wyzwanie, które pokierują Cię w nauce tematów takich jak:
Każda lekcja zawiera zadanie do wykonania, sprawdzenie wiedzy i wyzwanie, które pomoże Ci w nauce tematów takich jak:
- Promptowanie i inżynieria promptów
- Generowanie aplikacji tekstowych i obrazkowych
- Aplikacje wyszukujące
@ -81,133 +91,132 @@ Odwiedź [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course), aby z
## 🌱 Rozpoczęcie
## 🌱 Rozpoczęcie pracy
> **Nauczyciele**, przygotowaliśmy [kilka sugestii](for-teachers.md) dotyczących korzystania z tego programu nauczania. Liczymy na Wasze opinie [na naszym forum dyskusyjnym](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **Nauczyciele**, zamieściliśmy [kilka sugestii](for-teachers.md) na temat wykorzystania tego programu nauczania. Chętnie poznamy Wasze opinie [na naszym forum dyskusyjnym](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
**[Uczniowie](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, do każdej lekcji zacznij od quizu wstępnego, a następnie przeczytaj materiał wykładu, wykonaj różne aktywności i sprawdź swoje rozumienie w quizie podsumowującym.
**[Uczniowie](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, do każdej lekcji zacznijcie od quizu przed wykładem, następnie przeczytajcie materiał wykładowy, wykonajcie różne zadania i sprawdźcie swoją wiedzę za pomocą quizu po wykładzie.
Aby wzmocnić swoją naukę, łącz się z kolegami i koleżankami, aby pracować nad projektami razem! Zachęcamy do dyskusji na naszym [forum dyskusyjnym](https://github.com/microsoft/Web-Dev-For-Beginners/discussions), gdzie nasz zespół moderatorów jest dostępny, aby odpowiadać na Wasze pytania.
Aby wzbogacić swoje doświadczenie edukacyjne, łączcie się z rówieśnikami, aby wspólnie pracować nad projektami! Zachęcamy do dyskusji na naszym [forum dyskusyjnym](https://github.com/microsoft/Web-Dev-For-Beginners/discussions), gdzie nasz zespół moderatorów chętnie odpowie na Wasze pytania.
Aby pogłębić edukację, zdecydowanie polecamy zapoznanie się z [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) po dodatkowe materiały do nauki.
Dla pogłębienia wiedzy zdecydowanie polecamy zapoznanie się z [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) i dodatkowymi materiałami edukacyjnymi.
### 📋 Konfiguracja środowiska
Ten program nauczania ma gotowe środowisko do programowania! Na start możesz wybrać uruchomienie go w [Codespace](https://github.com/features/codespaces/) (_środowisku przeglądarkowym, bez konieczności instalacji_), lub lokalnie na swoim komputerze z użyciem edytora tekstu, takiego jak [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
Ten program nauczania ma gotowe do użycia środowisko programistyczne! Podczas rozpoczęcia możesz wybrać uruchomienie kursu w [Codespace](https://github.com/features/codespaces/) (_środowisko działające w przeglądarce, bez potrzeby instalacji_), lub lokalnie na komputerze, używając edytora tekstu takiego jak [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
#### Utwórz własne repozytorium
Aby łatwo zapisywać swoją pracę, zalecamy utworzenie własnej kopii tego repozytorium. Możesz to zrobić klikając przycisk **Use this template** na górze strony. Spowoduje to utworzenie nowego repozytorium na Twoim koncie GitHub z kopią programu nauczania.
Aby łatwo zapisywać swoją pracę, zalecamy utworzenie własnej kopii tego repozytorium. Możesz to zrobić, klikając przycisk **Use this template** na górze strony. Stworzy to nowe repozytorium na Twoim koncie GitHub z kopią programu nauczania.
Wykonaj następujące kroki:
1. **Utwórz forka repozytorium**: Kliknij przycisk "Fork" w prawym górnym rogu tej strony.
1. **Zrób fork repozytorium**: Kliknij przycisk "Fork" w prawym górnym rogu tej strony.
W swojej kopii tego repozytorium, które utworzyłeś, kliknij przycisk **Code** i wybierz **Open with Codespaces**. Spowoduje to utworzenie nowego Codespace do pracy.
W swojej kopii repozytorium, którą utworzyłeś, kliknij przycisk **Code** i wybierz **Open with Codespaces**. Utworzy to dla Ciebie nowe środowisko Codespace do pracy.
#### Uruchamianie programu nauczania lokalnie na komputerze
Aby uruchomić ten program nauczania lokalnie na swoim komputerze, potrzebujesz edytora tekstu, przeglądarki oraz narzędzia wiersza polecenia. Nasza pierwsza lekcja, [Wprowadzenie do języków programowania i narzędzi](../../1-getting-started-lessons/1-intro-to-programming-languages), poprowadzi Cię przez różne opcje tych narzędzi, abyś mógł wybrać najlepsze dla siebie.
Polecamy używać [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) jako edytora, który ma również wbudowany [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon). Możesz pobrać Visual Studio Code [tutaj](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
#### Uruchamianie kursu lokalnie na swoim komputerze
Aby uruchomić ten kurs lokalnie na komputerze, będziesz potrzebować edytora tekstu, przeglądarki oraz narzędzia wiersza poleceń. Nasza pierwsza lekcja, [Wprowadzenie do języków programowania i narzędzi](../../1-getting-started-lessons/1-intro-to-programming-languages), przeprowadzi cię przez różne opcje każdego z tych narzędzi, abyś mógł wybrać to, co najlepiej ci odpowiada.
Naszą rekomendacją jest używanie [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) jako edytora, który zawiera również wbudowany [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon). Visual Studio Code możesz pobrać [tutaj](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
1. Sklonuj swoje repozytorium na komputer. Możesz to zrobić, klikając przycisk **Code** i kopiując URL:
[CodeSpace](./images/createcodespace.png)
Następnie otwórz [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) w [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) i uruchom następujące polecenie, zastępując `<your-repository-url>` adresem URL, który właśnie skopiowałeś:
Następnie, otwórz [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) w [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) i uruchom następujące polecenie, zastępując `<your-repository-url>` URL-em, który właśnie skopiowałeś:
```bash
git clone <your-repository-url>
```
2. Otwórz folder w Visual Studio Code. Możesz to zrobić, klikając **Plik** > **Otwórz folder** i wybierając właśnie sklonowany folder.
2. Otwórz folder w Visual Studio Code. Możesz to zrobić, klikając **File** > **Open Folder** i wybierając właśnie sklonowany folder.
> Zalecane rozszerzenia Visual Studio Code:
>
> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - do podglądu stron HTML w Visual Studio Code
> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - pomaga pisać kod szybciej
> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - aby pomóc pisać kod szybciej
## 📂 Każda lekcja zawiera:
- opcjonalną sketchnotkę
- opcjonalne uzupełniające wideo
- opcjonalną szkicówkę
- opcjonalne dodatkowe wideo
- quiz rozgrzewkowy przed lekcją
- lekcję tekstową
- w lekcjach opartych na projekcie, szczegółowe przewodniki krok po kroku jak zbudować projekt
- testy wiedzy
- lekcję pisaną
- w lekcjach projektowych, przewodniki krok po kroku jak zbudować projekt
- sprawdziany wiedzy
- wyzwanie
- uzupełniającą lekturę
- dodatkowe materiały do czytania
- zadanie domowe
- [quiz po lekcji](https://ff-quizzes.netlify.app/web/)
> **Uwagi o quizach**: Wszystkie quizy znajdują się w folderze Quiz-app, łącznie 48 quizów po trzy pytania każdy. Są dostępne [tutaj](https://ff-quizzes.netlify.app/web/), aplikację quizową można uruchomić lokalnie lub wdrożyć do Azure; postępuj zgodnie z instrukcjami w folderze `quiz-app`.
> **Informacja o quizach**: Wszystkie quizy znajdują się w folderze Quiz-app, łącznie 48 quizów po trzy pytania każdy. Są dostępne [tutaj](https://ff-quizzes.netlify.app/web/), aplikację quizową można uruchomić lokalnie lub wdrożyć na Azure; postępuj zgodnie z instrukcjami w folderze `quiz-app`.
## 🗃️ Lekcje
| | Nazwa projektu | Nauczane koncepcje | Cele nauki | Powiązana lekcja | Autor |
| 01 | Zacznijmy | Wprowadzenie do programowania i narzędzi używanych w branży | Poznaj podstawy programowania oraz oprogramowanie pomagające profesjonalnym programistom w pracy | [Wprowadzenie do języków programowania i narzędzi](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine |
| 02 | Zacznijmy | Podstawy GitHuba, praca zespołowa | Jak używać GitHuba w projekcie, jak współpracować z innymi nad kodem | [Wprowadzenie do GitHuba](./1-getting-started-lessons/2-github-basics/README.md) | Floor |
| 03 | Zacznijmy | Dostępność | Naucz się podstaw dostępności stron internetowych | [Podstawy dostępności](./1-getting-started-lessons/3-accessibility/README.md) | Christopher |
| 04 | Podstawy JS | Typy danych w JavaScript | Podstawy typów danych w JavaScript | [Typy danych](./2-js-basics/1-data-types/README.md) | Jasmine |
| 05 | Podstawy JS | Funkcje i metody | Poznaj funkcje i metody służące do zarządzania logiką aplikacji | [Funkcje i metody](./2-js-basics/2-functions-methods/README.md) | Jasmine i Christopher |
| 06 | Podstawy JS | Podejmowanie decyzji z JS | Naucz się tworzyć warunki w swoim kodzie przy użyciu metod podejmowania decyzji | [Podejmowanie decyzji](./2-js-basics/3-making-decisions/README.md) | Jasmine |
| 07 | Podstawy JS | Tablice i pętle | Pracuj z danymi za pomocą tablic i pętli w JavaScript | [Tablice i pętle](./2-js-basics/4-arrays-loops/README.md) | Jasmine |
| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML w praktyce | Zbuduj HTML potrzebny do stworzenia online terrarium, skupiając się na układzie strony | [Wprowadzenie do HTML](./3-terrarium/1-intro-to-html/README.md) | Jen |
| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS w praktyce | Zbuduj CSS, by wystylizować online terrarium, skupiając się na podstawach CSS i responsywności | [Wprowadzenie do CSS](./3-terrarium/2-intro-to-css/README.md) | Jen |
| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript closures, manipulacja DOM | Zbuduj JavaScript, który pozwoli terrarium działać z funkcją przeciągnij upuść, skupiając się na closures i manipulacji DOM | [JavaScript closures, manipulacja DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen |
| 11 | [Typing Game](./4-typing-game/solution/README.md) | Zbuduj grę w pisanie na klawiaturze | Naucz się używać zdarzeń klawiatury do sterowania logiką aplikacji JavaScript | [Programowanie zdarzeniowe](./4-typing-game/typing-game/README.md) | Christopher |
| 12 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Praca z przeglądarkami | Naucz się, jak działają przeglądarki, ich historię oraz jak stworzyć pierwsze elementy rozszerzenia przeglądarki | [O przeglądarkach](./5-browser-extension/1-about-browsers/README.md) | Jen |
| 13 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Tworzenie formularzy, wywoływanie API i przechowywanie zmiennych w local storage | Stwórz elementy JavaScript rozszerzenia przeglądarki do wywoływania API, korzystając ze zmiennych przechowywanych lokalnie | [API, formularze i local storage](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen |
| 14 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Procesy tła w przeglądarce, wydajność www | Użyj procesów tła przeglądarki do zarządzania ikoną rozszerzenia; poznaj optymalizacje poprawiające wydajność | [Procesy tła i wydajność](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen |
| 15 | [Space Game](./6-space-game/solution/README.md) | Zaawansowane tworzenie gier w JavaScript | Poznaj dziedziczenie wykorzystujące klasy i kompozycję oraz wzorzec Pub/Sub, w przygotowaniu do budowy gry | [Wprowadzenie do zaawansowanego tworzenia gier](./6-space-game/1-introduction/README.md) | Chris |
| 16 | [Space Game](./6-space-game/solution/README.md) | Rysowanie na kanwie | Poznaj API Canvas do rysowania elementów na ekranie | [Rysowanie na kanwie](./6-space-game/2-drawing-to-canvas/README.md) | Chris |
| 17 | [Space Game](./6-space-game/solution/README.md) | Poruszanie elementów na ekranie | Dowiedz się, jak elementy mogą się poruszać, używając współrzędnych kartezjańskich i API Canvas | [Poruszanie elementami](./6-space-game/3-moving-elements-around/README.md) | Chris |
| 18 | [Space Game](./6-space-game/solution/README.md) | Wykrywanie kolizji | Spraw, aby elementy zderzały się i reagowały na siebie, używając naciśnięć klawiszy oraz funkcji cooldown dla wydajności gry | [Wykrywanie kolizji](./6-space-game/4-collision-detection/README.md) | Chris |
| 19 | [Space Game](./6-space-game/solution/README.md) | Liczenie punktów | Wykonuj obliczenia matematyczne na podstawie stanu i wyniku gry | [Liczenie punktów](./6-space-game/5-keeping-score/README.md) | Chris |
| 20 | [Space Game](./6-space-game/solution/README.md) | Kończenie i restartowanie gry | Naucz się kończyć i restartować grę, w tym sprzątać zasoby i resetować wartości zmiennych | [Warunek zakończenia](./6-space-game/6-end-condition/README.md) | Chris |
| 21 | [Banking App](./7-bank-project/solution/README.md) | Szablony HTML i trasy w aplikacji webowej | Naucz się tworzyć szkielet architektury multipage site za pomocą routingu i szablonów HTML | [Szablony HTML i trasy](./7-bank-project/1-template-route/README.md) | Yohan |
| 22 | [Banking App](./7-bank-project/solution/README.md) | Tworzenie formularzy logowania i rejestracji | Dowiedz się, jak budować formularze i obsługiwać walidację | [Formularze](./7-bank-project/2-forms/README.md) | Yohan |
| 23 | [Banking App](./7-bank-project/solution/README.md) | Metody pobierania i używania danych | Jak wyglądają przepływy danych w Twojej aplikacji, jak je pobierać, przechowywać i usuwać | [Dane](./7-bank-project/3-data/README.md) | Yohan |
| 24 | [Banking App](./7-bank-project/solution/README.md) | Koncepcje zarządzania stanem | Naucz się, jak Twoja aplikacja przechowuje stan i jak nim programowo zarządzać | [Zarządzanie stanem](./7-bank-project/4-state-management/README.md) | Yohan |
| 25 | [Browser/VScode Code](../../8-code-editor) | Praca z VScode | Naucz się korzystać z edytora kodu | [Używaj edytora kodu VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris |
| 26 | [AI Assistants](./9-chat-project/README.md) | Praca z AI | Naucz się tworzyć własnego asystenta AI | [Projekt AI Assistant](./9-chat-project/README.md) | Chris |
| | Nazwa Projektu | Nauczane Koncepcje | Cele Edukacyjne | Powiązana Lekcja | Autor |
| 01 | Getting Started | Wprowadzenie do programowania i narzędzi | Poznaj podstawy większości języków programowania oraz oprogramowanie, które pomaga profesjonalnym programistom w pracy | [Wprowadzenie do języków programowania i narzędzi](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine |
| 02 | Getting Started | Podstawy GitHub, praca zespołowa | Jak używać GitHub w projekcie, jak współpracować z innymi nad kodem | [Wprowadzenie do GitHub](./1-getting-started-lessons/2-github-basics/README.md) | Floor |
| 03 | Getting Started | Dostępność | Poznaj podstawy dostępności stron internetowych | [Podstawy dostępności](./1-getting-started-lessons/3-accessibility/README.md) | Christopher |
| 04 | JS Basics | Typy danych w JavaScript | Podstawy typów danych w JavaScript | [Typy danych](./2-js-basics/1-data-types/README.md) | Jasmine |
| 05 | JS Basics | Funkcje i metody | Poznaj funkcje i metody do zarządzania logiką aplikacji | [Funkcje i metody](./2-js-basics/2-functions-methods/README.md) | Jasmine i Christopher |
| 06 | JS Basics | Podejmowanie decyzji w JS | Naucz się tworzyć warunki w kodzie używając metod podejmowania decyzji | [Podejmowanie decyzji](./2-js-basics/3-making-decisions/README.md) | Jasmine |
| 07 | JS Basics | Tablice i pętle | Pracuj z danymi używając tablic i pętli w JavaScript | [Tablice i pętle](./2-js-basics/4-arrays-loops/README.md) | Jasmine |
| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML w praktyce | Zbuduj HTML, aby stworzyć internetowe terrarium, koncentrując się na układzie | [Wprowadzenie do HTML](./3-terrarium/1-intro-to-html/README.md) | Jen |
| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS w praktyce | Zbuduj CSS dla stylizacji internetowego terrarium, koncentrując się na podstawach CSS, w tym responsywności | [Wprowadzenie do CSS](./3-terrarium/2-intro-to-css/README.md) | Jen |
| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript - closury, manipulacja DOM | Zbuduj JavaScript, aby terrarium działało jako interfejs drag/drop, koncentrując się na closurach i manipulacji DOM | [Closury JS i manipulacja DOM](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen |
| 11 | [Typing Game](./4-typing-game/solution/README.md) | Tworzenie gry pisania na klawiaturze | Naucz się używać zdarzeń klawiatury do sterowania logiką aplikacji JavaScript | [Programowanie sterowane zdarzeniami](./4-typing-game/typing-game/README.md) | Christopher |
| 12 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Praca z przeglądarkami | Poznaj działanie przeglądarek, ich historię oraz jak stworzyć pierwsze elementy rozszerzenia przeglądarki | [O przeglądarkach](./5-browser-extension/1-about-browsers/README.md) | Jen |
| 13 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Tworzenie formularza, wywoływanie API oraz przechowywanie zmiennych | Zbuduj elementy JS swojego rozszerzenia przeglądarki, wywołujące API i korzystające ze zmiennych przechowywanych lokalnie | [API, formularze i lokalna pamięć](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen |
| 14 | [Green Browser Extension](./5-browser-extension/solution/README.md) | Procesy w tle w przeglądarce, wydajność sieciowa | Wykorzystaj procesy w tle do zarządzania ikoną rozszerzenia; poznaj optymalizacje i wydajność sieciową | [Zadania w tle i wydajność](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen |
| 15 | [Space Game](./6-space-game/solution/README.md) | Zaawansowany rozwój gier JavaScript | Poznaj dziedziczenie używając klas i kompozycji oraz wzorzec Pub/Sub na potrzeby tworzenia gry | [Wprowadzenie do zaawansowanego rozwoju gier](./6-space-game/1-introduction/README.md) | Chris |
| 16 | [Space Game](./6-space-game/solution/README.md) | Rysowanie na canvas | Poznaj API canvas używane do rysowania elementów na ekranie | [Rysowanie na canvas](./6-space-game/2-drawing-to-canvas/README.md) | Chris |
| 17 | [Space Game](./6-space-game/solution/README.md) | Przemieszczanie elementów ekranowych | Odkryj jak elementy mogą nabierać ruchu korzystając ze współrzędnych kartezjańskich i API Canvas | [Przemieszczanie elementów](./6-space-game/3-moving-elements-around/README.md) | Chris |
| 18 | [Space Game](./6-space-game/solution/README.md) | Wykrywanie kolizji | Spraw, aby elementy ze sobą kolidowały i reagowały na siebie przy pomocy klawiszy, dodaj funkcję cooldown w celu optymalizacji gry | [Wykrywanie kolizji](./6-space-game/4-collision-detection/README.md) | Chris |
| 19 | [Space Game](./6-space-game/solution/README.md) | Prowadzenie punktacji | Wykonuj obliczenia matematyczne na podstawie stanu i wyników gry | [Prowadzenie wyników](./6-space-game/5-keeping-score/README.md) | Chris |
| 20 | [Space Game](./6-space-game/solution/README.md) | Zakończenie i restart gry | Poznaj zakończenie i restart gry, w tym czyszczenie zasobów i resetowanie wartości zmiennych | [Warunek zakończenia](./6-space-game/6-end-condition/README.md) | Chris |
| 21 | [Banking App](./7-bank-project/solution/README.md) | Szablony HTML i trasy w aplikacji webowej | Naucz się jak tworzyć szkielet architektury wielostronicowej strony internetowej używając tras i szablonów HTML | [Szablony HTML i trasy](./7-bank-project/1-template-route/README.md) | Yohan |
| 22 | [Banking App](./7-bank-project/solution/README.md) | Budowa formularza logowania i rejestracji | Dowiedz się jak budować formularze i obsługiwać walidację | [Formularze](./7-bank-project/2-forms/README.md) | Yohan |
| 23 | [Banking App](./7-bank-project/solution/README.md) | Metody pobierania i używania danych | Jak dane przepływają do i z aplikacji, jak je pobierać, przechowywać i usuwać | [Dane](./7-bank-project/3-data/README.md) | Yohan |
| 24 | [Banking App](./7-bank-project/solution/README.md) | Koncepcje zarządzania stanem | Naucz się jak aplikacja przechowuje stan i jak nim zarządzać programowo | [Zarządzanie stanem](./7-bank-project/4-state-management/README.md) | Yohan |
| 25 | [Kod przeglądarki / VScode](../../8-code-editor) | Praca z VScode | Naucz się jak używać edytora kodu | [Korzystanie z edytora VScode](./8-code-editor/1-using-a-code-editor/README.md) | Chris |
| 26 | [Asystenci AI](./9-chat-project/README.md) | Praca z AI | Naucz się jak zbudować własnego asystenta AI | [Projekt Asystent AI](./9-chat-project/README.md) | Chris |
## 🏫 Pedagogika
Nasz program nauczania opiera się na dwóch kluczowych zasadach pedagogicznych:
* nauka oparta na projektach
Nasz program nauczania opiera się na dwóch kluczowych zasadach:
* nauka przez projekty
* częste quizy
Program uczy podstaw JavaScript, HTML i CSS oraz najnowszych narzędzi i technik stosowanych przez dzisiejszych programistów webowych. Studenci będą mieli okazję zdobyć praktyczne doświadczenie, tworząc grę do nauki pisania na klawiaturze, wirtualne terrarium, ekologiczne rozszerzenie przeglądarki, grę w stylu Space Invaders oraz aplikację bankową dla firm. Do końca serii uczniowie zdobędą solidną wiedzę z zakresu tworzenia stron internetowych.
Program uczy podstaw JavaScript, HTML i CSS oraz najnowszych narzędzi i technik używanych przez współczesnych programistów webowych. Studenci będą mieli okazję zdobyć praktyczne doświadczenie budując grę pisania na klawiaturze, wirtualne terrarium, ekologiczne rozszerzenie przeglądarki, grę w stylu Space Invaders oraz aplikację bankową dla firm. Pod koniec cyklu studenci zdobędą solidną wiedzę o tworzeniu stron internetowych.
> 🎓 Możesz zacząć od pierwszych kilku lekcji tego programu jako [Ścieżkę nauki](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) na Microsoft Learn!
> 🎓 Pierwsze lekcje tego programu możesz wziąć jako [Ścieżkę nauki](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) na platformie Microsoft Learn!
Zapewnienie zgodności treści z projektami sprawia, że proces nauki jest dla uczniów bardziej angażujący, a utrwalenie koncepcji zostanie wzmocnione. Napisaliśmy też kilka lekcji wprowadzających do podstaw JavaScript, które prezentują koncepcje, a także dołączyliśmy wideo z kolekcji "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)", których autorzy przyczynili się do tego programu nauczania.
Dzięki dopasowaniu treści do projektów proces nauki staje się bardziej angażujący dla uczniów, a przyswajanie koncepcji jest skuteczniejsze. Przygotowaliśmy również kilka lekcji wprowadzających do podstaw JavaScript wraz z wideo z kolekcji "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)", których autorzy przyczynili się do powstania tego programu nauczania.
Ponadto quiz niskiego ryzyka przed lekcją ustawia intencję ucznia w kierunku nauki tematu, a drugi quiz po zajęciach zapewnia dalsze utrwalenie. Program ma charakter elastyczny i zabawowy i można z niego korzystać w całości lub częściowo. Projekty zaczynają się od prostych i stają się coraz bardziej złożone pod koniec 12-tygodniowego cyklu.
Dodatkowo quiz o niskiej stawce przed zajęciami nastawia ucznia na naukę tematu, a drugi quiz po zajęciach wspiera dalsze utrwalenie materiału. Program został zaprojektowany tak, by był elastyczny i przyjemny, można go realizować w całości lub częściowo. Projekty zaczynają się od małych, prostych i stopniowo stają się coraz bardziej złożone pod koniec 12-tygodniowego cyklu.
Ponieważ świadomie unikamy wprowadzania frameworków JavaScript, koncentrując się na podstawowych umiejętnościach potrzebnych jako programista webowy przed przyjęciem frameworka, dobrym następnym krokiem po ukończeniu tego programu będzie nauka Node.js za pomocą innej kolekcji wideo: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
Świadomie unikaliśmy wprowadzania frameworków JavaScript, koncentrując się na podstawowych umiejętnościach potrzebnych programiście webowemu przed przyswojeniem frameworka. Dobrą kolejną lekcją po ukończeniu tego programu będzie nauka Node.js za pomocą innej kolekcji wideo: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
> Odwiedź nasze wytyczne [Kodeks Postępowania](CODE_OF_CONDUCT.md) oraz [Wkład](CONTRIBUTING.md). Zachęcamy do konstruktywnej opinii!
> Zapoznaj się z naszym [Kodeksem postępowania](CODE_OF_CONDUCT.md) oraz wytycznymi [Contributing](CONTRIBUTING.md). Czekamy na Twoje konstruktywne uwagi!
## 🧭 Dostęp offline
Możesz uruchomić tę dokumentację offline, używając [Docsify](https://docsify.js.org/#/). Rozgałęź ten repozytorium, [zainstaluj Docsify](https://docsify.js.org/#/quickstart) na swoim lokalnym komputerze, a następnie w katalogu głównym repozytorium wpisz `docsify serve`. Strona będzie dostępna na porcie 3000 na localhost: `localhost:3000`.
Możesz uruchomić tę dokumentację offline, korzystając z [Docsify](https://docsify.js.org/#/). Utwórz fork tego repozytorium, [zainstaluj Docsify](https://docsify.js.org/#/quickstart) na swoim komputerze, a następnie w katalogu głównym repozytorium wpisz `docsify serve`. Strona zostanie udostępniona na porcie 3000 na twoim localhost: `localhost:3000`.
## 📘 PDF
Plik PDF ze wszystkimi lekcjami jest dostępny [tutaj](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf).
PDF wszystkich lekcji znajduje się [tutaj](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf).
## 🎒 Inne kursy
Nasz zespół tworzy inne kursy! Sprawdź:
Nasz zespół tworzy również inne kursy! Sprawdź:
<!-- CO-OP TRANSLATOR OTHER COURSES START -->
### LangChain
@ -216,7 +225,7 @@ Nasz zespół tworzy inne kursy! Sprawdź:
[](https://github.com/microsoft/langchain-for-beginners?WT.mc_id=m365-94501-dwahlin)
---
### Azure / Edge / MCP / Agents
### Azure / Edge / MCP / Agenci
[](https://github.com/microsoft/AZD-for-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/edgeai-for-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/mcp-for-beginners?WT.mc_id=academic-105485-koreyst)
@ -224,7 +233,7 @@ Nasz zespół tworzy inne kursy! Sprawdź:
---
### Generative AI Series
### Seria Generative AI
[](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
@ -232,7 +241,7 @@ Nasz zespół tworzy inne kursy! Sprawdź:
---
### Core Learning
### Podstawowe nauczanie
[](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
@ -243,15 +252,15 @@ Nasz zespół tworzy inne kursy! Sprawdź:
---
### Copilot Series
### Seria Copilot
[](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
Jeśli utkniesz lub masz pytania dotyczące tworzenia aplikacji AI. Dołącz do innych uczących się i doświadczonych programistów w dyskusjach o MCP. To wspierająca społeczność, gdzie pytania są mile widziane, a wiedza jest swobodnie dzielona.
Jeśli utkniesz lub masz pytania dotyczące tworzenia aplikacji AI, dołącz do innych uczących się i doświadczonych programistów w dyskusjach o MCP. To wspierająca społeczność, w której pytania są mile widziane, a wiedza dzielona jest swobodnie.
@ -261,11 +270,11 @@ Jeśli masz uwagi dotyczące produktu lub napotkasz błędy podczas tworzenia, o
## Licencja
To repozytorium jest licencjonowane na warunkach licencji MIT. Szczegóły znajdziesz w pliku [LICENSE](../../LICENSE).
To repozytorium jest objęte licencją MIT. Zobacz plik [LICENSE](../../LICENSE) po więcej informacji.
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Zastrzeżenie**:
Dokument ten został przetłumaczony za pomocą usługi tłumaczenia AI [Co-op Translator](https://github.com/Azure/co-op-translator). Chociaż staramy się zapewnić dokładność, prosimy pamiętać, że tłumaczenia automatyczne mogą zawierać błędy lub nieścisłości. Oryginalny dokument w języku źródłowym powinien być uznawany za źródło wiarygodne. W przypadku informacji krytycznych zaleca się skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.
Niniejszy dokument został przetłumaczony przy użyciu usługi tłumaczeń AI [Co-op Translator](https://github.com/Azure/co-op-translator). Chociaż dążymy do dokładności, prosimy pamiętać, że tłumaczenia automatyczne mogą zawierać błędy lub niedokładności. Oryginalny dokument w języku źródłowym należy traktować jako źródło autorytatywne. W przypadku informacji istotnych zalecane jest skorzystanie z profesjonalnego tłumaczenia wykonanego przez człowieka. Nie ponosimy odpowiedzialności za jakiekolwiek nieporozumienia lub błędne interpretacje wynikające z korzystania z tego tłumaczenia.
Bu, yeni başlayanlara web gelişimini temel prensipleri öğretmek için hazırlanmış eğitim müfredatı deposudur. Müfredat, Microsoft Bulut Savunucuları tarafından geliştirilen kapsamlı bir 12 haftalık kurstur ve JavaScript, CSS ve HTML içeren 24 uygulamalı ders içermektedir.
Bu, başlangıç seviyesindeki kişilere web geliştirme temel bilgilerini öğretmek için hazırlanmış eğitici bir müfredat deposudur. Müfredat, Microsoft Cloud Advocates tarafından geliştirilen kapsamlı 12 haftalık bir kurstur ve JavaScript, CSS ve HTML'i kapsayan 24 uygulamalı dersten oluşur.
### Ana Bileşenler
- **Eğitim İçeriği**: Proje tabanlı modüllere organize edilmiş 24 yapılandırılmış ders
- **Eğitici İçerik**: Proje bazlı modüllere organize edilmiş 24 yapılandırılmış ders
- **Pratik Projeler**: Terrarium, Yazma Oyunu, Tarayıcı Uzantısı, Uzay Oyunu, Bankacılık Uygulaması, Kod Editörü ve Yapay Zeka Sohbet Asistanı
- **Etkileşimli Quizler**: Her biri 3 sorudan oluşan 48 quiz (ders öncesi/sonrası değerlendirmeleri)
- **Çok Dilli Destek**: GitHub Actions ile 50+ dilde otomatik çeviri
- **Çok Dilli Destek**: GitHub Actions ile 50+ dilde otomatik çeviriler
- `6-space-game/README.md` - Canvas tabanlı oyun geliştirme
- `9-chat-project/README.md` - AI sohbet asistanı projesi
- `9-chat-project/README.md` - Yapay zeka sohbet asistanı projesi
### Monorepo Yapısı
Geleneksel bir monorepo olmasa da, bu depo birçok bağımsız proje içerir:
- Her ders kendi başına bağımsızdır
Klasik bir monorepo olmasa da bu depo birçok bağımsız projeyi içerir:
- Her ders kendi içinde bağımsızdır
- Projeler bağımlılık paylaşmaz
- Bir projede çalışmak diğerlerini etkilemez
- Tüm müfredatı deneyimlemek için tüm depo klonlanabilir
- Bireysel projeler üzerinde diğerlerini etkilemeden çalışabilirsiniz
- Tam müfredatı deneyimlemek için tüm depo klonlanabilir
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Feragatname**:
Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba gösterilse de, otomatik çevirilerin hatalar veya yanlışlıklar içerebileceğini lütfen unutmayınız. Orijinal belge, kendi ana dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi tavsiye edilir. Bu çevirinin kullanımı sonucu oluşabilecek herhangi bir yanlış anlama veya yorumlama nedeniyle sorumluluk kabul edilmemektedir.
Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba sarf etsek de, otomatik çevirilerin hata veya yanlışlık içerebileceğini lütfen unutmayınız. Orijinal belge, kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanılması sonucu oluşabilecek yanlış anlaşılmalardan veya yorum hatalarından sorumlu tutulamayız.
Microsoft Bulut Savunucuları tarafından hazırlanan 12 haftalık kapsamlı kursumuzla web geliştirme temellerini öğrenin. 24 dersin her biri, teraryumlar, tarayıcı uzantıları ve uzay oyunları gibi uygulamalı projelerle JavaScript, CSS ve HTML'e derinlemesine dalar. Sınavlar, tartışmalar ve pratik ödevlerle etkileşimde bulunun. Yeteneklerinizi geliştirin ve bilgilerinizi optimize edin; etkili proje tabanlı pedagojimizle öğreniminizi güçlendirin. Kodlama yolculuğunuza bugün başlayın!
3. [**Azure AI Foundry Discord’a katılın ve uzmanlar ile diğer geliştiricilerle tanışın**](https://discord.com/invite/ByRwuEEgH4)
Microsoft Bulut Savunucuları tarafından hazırlanan 12 haftalık kapsamlı kursumuzla web geliştirmeye dair temel bilgileri öğrenin. 24 dersin her biri terraryumlar, tarayıcı eklentileri ve uzay oyunları gibi pratik projelerle JavaScript, CSS ve HTML'i derinlemesine ele alır. Quizler, tartışmalar ve pratik ödevlerle etkileşim kurun. Becerilerinizi geliştirin ve etkili proje tabanlı pedagojimizle bilgi tutumunuzu optimize edin. Kodlama yolculuğunuza bugün başlayın!
> Bu depo 50+ dil çevirisi içerir ve bu da indirilen dosyanın boyutunu önemli ölçüde artırır. Çeviriler olmadan klonlamak için seyrek kontrol kullanabilirsiniz:
> **Yerel Olarak Klonlamayı Tercih Ediyor musunuz?**
>
> Bu depo, indirilen dosya boyutunu önemli ölçüde artıran 50+ dil çevirisi içerir. Çeviri olmadan klonlamak için, sparse checkout kullanabilirsiniz:
> git sparse-checkout set --no-cone "/*" "!translations" "!translated_images"
> ```
>
> Bu, kursu tamamlamak için ihtiyacınız olan her şeyi çok daha hızlı indirmenizi sağlar.
<!-- CO-OP TRANSLATOR LANGUAGES TABLE END -->
**Ek dil desteği istiyorsanız, desteklenen diller [burada](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md) listelenmiştir**
**Desteklenmesini istediğiniz ek çeviri dilleri varsa, [burada](https://github.com/Azure/co-op-translator/blob/main/getting_started/supported-languages.md) listelenmiştir**
[](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)
[](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)
#### 🧑🎓 _Öğrenci misiniz?_
Başlangıç kaynakları, öğrenci paketleri ve ücretsiz sertifika kuponu alma yöntemleri bulabileceğiniz [**Öğrenci Merkezi sayfasını**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) ziyaret edin. İçeriğin aylık olarak değiştiği bu sayfayı sık sık yer imlerinize ekleyip kontrol etmek isteyeceksiniz.
Başlangıç kaynaklarını, Öğrenci paketlerini ve hatta ücretsiz sertifika kuponu almanın yollarını bulabileceğiniz [**Öğrenci Merkezi sayfasını**](https://docs.microsoft.com/learn/student-hub/?WT.mc_id=academic-77807-sagibbon) ziyaret edin. İçerikleri aylık olarak değiştirdiğimiz için bu sayfayı yer imlerinize eklemenizi ve zaman zaman kontrol etmenizi öneririz.
### 📣 Duyuru – Tamamlanacak Yeni GitHub Copilot Agent modu zorlukları!
### 📣 Duyuru - Tamamlanması gereken yeni GitHub Copilot Agent modu zorlukları!
Yeni zorluk eklendi, çoğu bölümde "GitHub Copilot Agent Challenge 🚀" arayın. Bu, GitHub Copilot ve Agent modu kullanarak tamamlamanız için yeni bir zorluk. Daha önce Agent modunu kullanmadıysanız, sadece metin üretmekle kalmayıp dosya oluşturabilir, düzenleyebilir, komut çalıştırabilir ve daha fazlasını yapabilir.
Yeni bir zorluk eklendi, çoğu bölümde "GitHub Copilot Agent Challenge 🚀" arayın. Bu, GitHub Copilot ve Agent modu kullanarak tamamlayabileceğiniz yeni bir zorluk. Agent modunu daha önce kullanmadıysanız, sadece metin üretmekle kalmaz, aynı zamanda dosyalar oluşturabilir ve düzenleyebilir, komut çalıştırabilir ve daha fazlasını yapabilir.
### 📣 Duyuru – _Generative AI kullanarak oluşturulacak Yeni Proje_
### 📣 Duyuru - _Generative AI kullanarak yeni Proje_
Yeni AI Asistan projesi eklendi, inceleyin [proje](./9-chat-project/README.md)
### 📣 Duyuru –_Generative AI için Yeni Müfredat_ JavaScript’e geldi
### 📣 Duyuru - _Generative AI için JavaScript Müfredatı yeni yayında_
Yeni Generative AI müfredatımızı kaçırmayın!
Başlamak için ziyaret edin [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course)
Başlamak için ziyaret edin [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course)!
Her ders; tamamlanacak bir ödev, bir bilgi kontrolü ve şu gibi konularda öğrenmenize rehberlik eden bir zorluk içerir:
- Yönlendirme ve prompt mühendisliği
- Metin ve resim uygulaması oluşturma
Her ders, tamamlama için bir ödev, bir bilgi kontrolü ve şu gibi konuları öğrenmenizde rehber olacak bir zorluk içerir:
- İstek ve istek mühendisliği
- Metin ve görüntü uygulama üretimi
- Arama uygulamaları
Başlamak için ziyaret edin [https://aka.ms/genai-js-course](https://aka.ms/genai-js-course)
---
## 🌱 Başlarken
> **Öğretmenler**, bu müfredatı nasıl kullanacağınız hakkında [bazı öneriler](for-teachers.md) ekledik. Geri bildiriminizi [tartışma forumumuzda](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner) bekliyoruz!
> **Öğretmenler**, bu müfredatı nasıl kullanacağınıza dair bazı [önerilerimizi](for-teachers.md) dahil ettik. Geri bildirimlerinizi [tartışma forumumuzda](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner) bekleriz!
**[Öğrenciler](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, her ders için ders öncesi quiz ile başlayın, ardından ders materyalini okuyun, çeşitli aktiviteleri tamamlayın ve ders sonrası quiz ile anlama seviyenizi kontrol edin.
**[Öğrenciler](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, her ders için bir ön ders quiz'i ile başlayın, ardından ders materyalini okuyun, çeşitli etkinlikleri tamamlayın ve anlayışınızı ders sonrası quiz ile kontrol edin.
Öğrenme deneyiminizi güçlendirmek için projeler üzerinde arkadaşlarınızla birlikte çalışın! Tartışmalar, [tartışma forumumuzda](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) teşvik edilir; moderatör ekibimiz sorularınıza cevap vermek için hazır olacaktır.
Öğrenme deneyiminizi geliştirmek için, projeler üzerinde beraber çalışmak üzere akranlarınızla bağlantı kurun! Tartışmalarımız [tartışma forumumuzda](https://github.com/microsoft/Web-Dev-For-Beginners/discussions) teşvik edilir; moderatör ekibimiz sorularınızı yanıtlamak için hazırdır.
Eğitiminizi ilerletmek için [Microsoft Learn](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon)’i ek çalışma materyalleri için keşfetmenizi şiddetle tavsiye ederiz.
Eğitiminizi ilerletmek için ek çalışma materyalleri bulabileceğiniz [Microsoft Learn’i](https://learn.microsoft.com/users/wirelesslife/collections/p1ddcy5jwy0jkm?WT.mc_id=academic-77807-sagibbon) keşfetmenizi şiddetle öneririz.
### 📋 OrtamınızıKurma
### 📋 Ortamınızıkurma
Bu müfredat hazır bir geliştirme ortamına sahiptir! Başlarken, müfredatı bir [Codespace](https://github.com/features/codespaces/) içinde (_tarayıcı tabanlı, kurulum gerektirmeyen bir ortam_) veya bilgisayarınızda bir metin editörü (örneğin [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon)) kullanarak çalıştırmayı seçebilirsiniz.
Bu müfredat için hazır bir geliştirme ortamı mevcut! Başlarken, müfredatı bir [Codespace](https://github.com/features/codespaces/) (_tarayıcı tabanlı, kurulum gerektirmeyen bir ortam_) içinde veya bilgisayarınızda bir metin düzenleyici kullanarak yerel olarak çalıştırmayı seçebilirsiniz, örneğin [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
#### Depo Oluşturma
Çalışmalarınızı kolayca kaydedebilmeniz için, bu deponun kendi kopyanızı oluşturmanız önerilir. Bunu sayfa üstündeki **Use this template** butonuna tıklayarak yapabilirsiniz. Bu, müfredatın bir kopyasıyla GitHub hesabınızda yeni bir depo oluşturacaktır.
#### Depoyu oluşturun
Çalışmanızı kolayca kaydedebilmeniz için, bu deponun kendi kopyanızı oluşturmanız önerilir. Bunu yapmak için sayfanın üstündeki **Use this template** düğmesine tıklayın. Bu, GitHub hesabınızda müfredatın bir kopyası ile yeni bir depo oluşturacaktır.
Adımlar:
1. **Depoyu Forklayın**: Bu sayfanın sağ üst köşesindeki "Fork" butonuna tıklayın.
Oluşturduğunuz depo kopyasında, **Code** butonuna tıklayın ve **Open with Codespaces** seçeneğini seçin. Bu size çalışmanız için yeni bir Codespace oluşturacaktır.
Oluşturduğunuz bu deponun kopyasında, **Code** butonuna tıklayıp **Open with Codespaces** seçeneğini seçin. Bu, sizin için yeni bir Codespace oluşturacaktır.
Bu müfredatı bilgisayarınızda çalıştırmak için bir metin editörü, bir tarayıcı ve bir komut satırı aracı gerekir. İlk dersimiz [Programlama Dillerine ve Ticaret Araçlarına Giriş](../../1-getting-started-lessons/1-intro-to-programming-languages), bu araçlardan her biri için çeşitli seçenekleri sizin için gösterir, böylece size en uygun olanı seçebilirsiniz.
#### Müfredatı bilgisayarınızda yerel olarak çalıştırma
Önerimiz, editör olarak [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) kullanmanızdır; VS Code’da yerleşik bir [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) da vardır. Visual Studio Code’u buradan indirebilirsiniz: [burada](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon).
Bu müfredatı bilgisayarınızda yerel olarak çalıştırmak için bir metin düzenleyici, bir tarayıcı ve bir komut satırı aracına ihtiyacınız olacak. İlk dersimiz, [Programlama Dilleri ve Ticaret Araçlarına Giriş](../../1-getting-started-lessons/1-intro-to-programming-languages), her biri için çeşitli seçenekleri size tanıtacak, böylece size en uygun olanı seçebilirsiniz.
1. Depo kopyanızı bilgisayarınıza klonlayın. Bunu yapmak için **Code** butonuna tıklayın ve URL'yi kopyalayın:
Bizim önerimiz [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) editörünü kullanmanızdır; bu editörde yerleşik bir [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) da mevcuttur. Visual Studio Code’u [buradan](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) indirebilirsiniz.
Sonra, [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) içinde [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) açın ve az önce kopyaladığınız URL ile `<your-repository-url>` yerini değiştirerek aşağıdaki komutu çalıştırın:
Ardından, [Visual Studio Code](https://code.visualstudio.com/?WT.mc_id=academic-77807-sagibbon) içinde [Terminal](https://code.visualstudio.com/docs/terminal/basics/?WT.mc_id=academic-77807-sagibbon) uygulamasını açın ve aşağıdaki komutu, `<your-repository-url>` yerine az önce kopyaladığınız URL'yi yazarak çalıştırın:
```bash
git clone <your-repository-url>
```
2. Visual Studio Code'da klasörü açın. Bunu **File** > **Open Folder** seçeneğine tıklayarak ve az önce klonladığınız klasörü seçerek yapabilirsiniz.
2. Klasörü Visual Studio Code'da açın. Bunu **File** > **Open Folder** seçeneğine tıklayarak ve az önce klonladığınız klasörü seçerek yapabilirsiniz.
> Önerilen Visual Studio Code uzantıları:
>
> * [Live Server](https://marketplace.visualstudio.com/items?itemName=ritwickdey.LiveServer&WT.mc_id=academic-77807-sagibbon) - Visual Studio Code içinde HTML sayfalarını önizlemek için
> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - kod yazmanızı hızlandırmaya yardımcı olmak için
> * [Copilot](https://marketplace.visualstudio.com/items?itemName=GitHub.copilot&WT.mc_id=academic-77807-sagibbon) - kod yazmayı hızlandırmak için
## 📂 Her ders şunları içerir:
- isteğe bağlı sketchnote
- isteğe bağlı sketchnote (not çizimi)
- isteğe bağlı ek video
- ders öncesi ısınma sınavı
- dersten önce ısınma testi
- yazılı ders
- proje tabanlı derslerde, projeyi oluşturmak için adım adım rehberler
- proje tabanlı dersler için, projeyi nasıl oluşturacağınıza dair adım adım rehberler
- bilgi kontrolü
- bir meydan okuma
- ek okuma materyali
- görev
- [ders sonrası quiz](https://ff-quizzes.netlify.app/web/)
- [dersten sonra quiz](https://ff-quizzes.netlify.app/web/)
> **Quizler hakkında not**: Tüm quizler Quiz-app klasöründe bulunur, toplam 48 quiz ve her biri üç sorudan oluşur. Bunlar [burada](https://ff-quizzes.netlify.app/web/) mevcuttur. Quiz uygulaması yerel olarak çalıştırılabilir veya Azure'a dağıtılabilir; `quiz-app` klasöründeki talimatları izleyin.
> **Quizler hakkında not**: Tüm quizler Quiz-app klasöründe bulunur, toplamda 48 quiz ve her biri 3 sorudan oluşmaktadır. Bunlara [buradan](https://ff-quizzes.netlify.app/web/) erişilebilir; quiz uygulaması yerel olarak çalıştırılabilir veya Azure’a dağıtılabilir; `quiz-app` klasöründeki talimatları takip edin.
## 🗃️ Dersler
| | Proje Adı| Öğretilen Konseptler | Öğrenme Hedefleri | Bağlantılı Ders | Yazar |
| 01 | Başlarken | Programlamaya Giriş ve Mesleki Araçlar | Çoğu programlama dilinin temel prensiplerini öğrenmek ve profesyonel geliştiricilerin işlerini yapmalarına yardımcı olan yazılımlar hakkında bilgi sahibi olmak | [Programlama Dillerine ve Mesleki Araçlara Giriş](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine |
| 02 | Başlarken | GitHub Temelleri, ekip ile çalışma dahil | Projenizde GitHub kullanmayı öğrenmek, bir kod tabanı üzerinde başkalarıyla işbirliği yapmayı öğrenmek | [GitHub'a Giriş](./1-getting-started-lessons/2-github-basics/README.md) | Floor |
| 03 | Başlarken | Erişilebilirlik | Web erişilebilirliğinin temellerini öğrenmek| [Erişilebilirlik Temelleri](./1-getting-started-lessons/3-accessibility/README.md) | Christopher |
| 04 | JS Temelleri | JavaScript Veri Tipleri | JavaScript veri tiplerinin temelleri | [Veri Tipleri](./2-js-basics/1-data-types/README.md) | Jasmine |
| 05 | JS Temelleri | Fonksiyonlar ve Metotlar | Uygulamanın mantık akışını yönetmek için fonksiyonlar ve metotlar hakkında bilgi edinmek | [Fonksiyonlar ve Metotlar](./2-js-basics/2-functions-methods/README.md) | Jasmine ve Christopher |
| 07 | JS Temelleri | Diziler ve Döngüler | JavaScript'te diziler ve döngüler kullanarak veri ile çalışma | [Diziler ve Döngüler](./2-js-basics/4-arrays-loops/README.md) | Jasmine |
| 08 | [Terrarium](./3-terrarium/solution/README.md) | Pratikte HTML | Çevrimiçi bir terraryum oluşturmak için HTML inşa edin, yerleşim oluşturmaya odaklanın | [HTML'e Giriş](./3-terrarium/1-intro-to-html/README.md) | Jen |
| 09 | [Terrarium](./3-terrarium/solution/README.md) | Pratikte CSS | Çevrimiçi terraryumu stillendirmek için CSS oluşturun, sayfanın duyarlı yapılması dahil CSS temellerine odaklanın | [CSS'e Giriş](./3-terrarium/2-intro-to-css/README.md) | Jen |
| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript Kapanışları, DOM manipülasyonu | Terraryumun sürükle/bırak arayüzü olarak çalışmasını sağlamak için JavaScript yazın, kapanışlar ve DOM manipülasyonuna odaklanın | [JavaScript Kapanışları, DOM manipülasyonu](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen |
| 11 | [Yazma Oyunu](./4-typing-game/solution/README.md) | Yazma Oyunu İnşası | JavaScript uygulamanızın mantığını yönlendirmek için klavye olaylarını nasıl kullanacağınızı öğrenin | [Olay Tabanlı Programlama](./4-typing-game/typing-game/README.md) | Christopher |
| 12 | [Yeşil TarayıcıUzantısı](./5-browser-extension/solution/README.md) | Tarayıcılarla Çalışmak | Tarayıcıların nasıl çalıştığını, tarihçesini ve bir tarayıcı uzantısının ilk öğelerini nasıl oluşturacağınızı öğrenin | [Tarayıcılar Hakkında](./5-browser-extension/1-about-browsers/README.md) | Jen |
| 13 | [Yeşil TarayıcıUzantısı](./5-browser-extension/solution/README.md) | Form oluşturma, API çağırma ve yerel depolamada değişken kullanımı | Yerel depolamada saklanan değişkenleri kullanarak bir API çağırmak için tarayıcı uzantınızın JavaScript öğelerini oluşturun | [API'ler, Formlar ve Yerel Depolama](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen |
| 14 | [Yeşil TarayıcıUzantısı](./5-browser-extension/solution/README.md) | Tarayıcıdaki arka plan süreçleri, web performansı | Uzantının simgesini yönetmek için tarayıcı arka plan işlemlerini kullanın; web performansı ve bazı optimizasyonlar hakkında bilgi edinin | [Arka Plan Görevleri ve Performans](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen |
| 15 | [Uzay Oyunu](./6-space-game/solution/README.md) | JavaScript ile Daha Gelişmiş Oyun Geliştirme | Kalıtım kavramını Sınıflar ve Kompozisyon ile Pub/Sub deseni kullanarak öğrenin, oyun geliştirmeye hazırlık yapın | [Gelişmiş Oyun Geliştirmeye Giriş](./6-space-game/1-introduction/README.md) | Chris |
| 16 | [Uzay Oyunu](./6-space-game/solution/README.md) | Canvas'a Çizim | Ekrana öğeler çizmek için kullanılan Canvas API hakkında bilgi edin |[Canvas'a Çizim](./6-space-game/2-drawing-to-canvas/README.md) | Chris |
| 17 | [Uzay Oyunu](./6-space-game/solution/README.md) | Elemanları Ekranda Hareket Ettirme | Elemanlara Kartezyen koordinatlar ve Canvas API kullanarak hareket kazandırmayı keşfedin | [Elemanları Hareket Ettirme](./6-space-game/3-moving-elements-around/README.md) | Chris |
| 18 | [Uzay Oyunu](./6-space-game/solution/README.md) | Çarpışma Algılama | Elemanların birbirine çarpmasını ve tepki vermesini sağlayın, performans için bir soğuma işlevi sağlayın | [Çarpışma Algılama](./6-space-game/4-collision-detection/README.md) | Chris |
| 19 | [Uzay Oyunu](./6-space-game/solution/README.md) | Skor Tutma | Oyunun durumu ve performansına göre matematiksel hesaplamalar yapın | [Skor Tutma](./6-space-game/5-keeping-score/README.md) | Chris |
| 20 | [Uzay Oyunu](./6-space-game/solution/README.md) | Oyunu Bitirme ve Yeniden Başlatma | Oyunu bitirme ve yeniden başlatma, varlıkları temizleme ve değişken değerlerini sıfırlama hakkında bilgi edinin | [Bitiş Koşulu](./6-space-game/6-end-condition/README.md) | Chris |
| 21 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Web Uygulamasında HTML Şablonları ve Yönlendirme | Çok sayfalı web sitesinin mimarisini yönlendirme ve HTML şablonları kullanarak nasıl oluşturacağınızı öğrenin | [HTML Şablonları ve Yönlendirme](./7-bank-project/1-template-route/README.md)| Yohan |
| 22 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Giriş ve Kayıt Formu Oluşturma | Form oluşturma ve doğrulama işlemlerini öğrenin | [Formlar](./7-bank-project/2-forms/README.md) | Yohan |
| 23 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Veri Alma ve Kullanma Yöntemleri | Uygulamanıza veri akışı, veriyi alma, depolama ve atma yöntemleri | [Veri](./7-bank-project/3-data/README.md) | Yohan |
| 24 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Durum Yönetimi Kavramları| Uygulamanızın durumu nasıl koruduğunu ve bunu programatik olarak nasıl yöneteceğinizi öğrenin | [Durum Yönetimi](./7-bank-project/4-state-management/README.md) | Yohan |
| 25 | [Tarayıcı/VScode Kodu](../../8-code-editor) | VScode ile Çalışma | Bir kod editörü kullanmayı öğrenin | [VScode Kod Editörü Kullanımı](./8-code-editor/1-using-a-code-editor/README.md) | Chris |
| 26 | [AI Asistanlar](./9-chat-project/README.md) | Yapay Zeka ile Çalışma | Kendi AI asistanınızı nasıl oluşturacağınızı öğrenin | [AI Asistan projesi](./9-chat-project/README.md) | Chris |
| | Proje Adı | Öğretilen Kavramlar | Öğrenme Hedefleri | İlgili Ders | Yazar |
| 01 | Başlarken | Programlama ve Araçlarına Giriş | Çoğu programlama dilinin temel prensipleri ve profesyonel geliştiricilerin işlerini yapmalarına yardımcı olan yazılım hakkında bilgi edinin | [Programlama Dilleri ve Araçlarına Giriş](./1-getting-started-lessons/1-intro-to-programming-languages/README.md) | Jasmine |
| 02 | Başlarken | GitHub Temelleri, takım çalışması | Projenizde GitHub’ı nasıl kullanacağınızı, kod tabanında başkalarıyla nasıl iş birliği yapacağınızı öğrenin | [GitHub’a Giriş](./1-getting-started-lessons/2-github-basics/README.md) | Floor |
| 03 | Başlarken | Erişilebilirlik | Web erişilebilirliğinin temellerini öğrenin| [Erişilebilirlik Temelleri](./1-getting-started-lessons/3-accessibility/README.md) | Christopher |
| 04 | JS Temelleri | JavaScript Veri Türleri | JavaScript veri türlerinin temellerini öğrenin | [Veri Türleri](./2-js-basics/1-data-types/README.md) | Jasmine |
| 05 | JS Temelleri | Fonksiyonlar ve Metotlar | Uygulamanın mantık akışını yönetmek için fonksiyonlar ve metotlar hakkında bilgi edinin | [Fonksiyonlar ve Metotlar](./2-js-basics/2-functions-methods/README.md) | Jasmine ve Christopher |
| 06 | JS Temelleri | JS ile Karar Verme | Kodunuzda karar yöntemlerini kullanarak koşullar nasıl oluşturulur öğrenin | [Karar Verme](./2-js-basics/3-making-decisions/README.md) | Jasmine |
| 07 | JS Temelleri | Diziler ve Döngüler | JavaScript’te diziler ve döngülerle veri işleme | [Diziler ve Döngüler](./2-js-basics/4-arrays-loops/README.md) | Jasmine |
| 08 | [Terrarium](./3-terrarium/solution/README.md) | HTML Uygulamada | Çevrimiçi bir terrarium oluşturmak için HTML yazın, düzen yaratmaya odaklanın | [HTML’e Giriş](./3-terrarium/1-intro-to-html/README.md) | Jen |
| 09 | [Terrarium](./3-terrarium/solution/README.md) | CSS Uygulamada | Çevrimiçi terrariumun stilini oluşturmak için CSS yazın, temel CSS ve sayfanın duyarlı hale getirilmesine odaklanın | [CSS’e Giriş](./3-terrarium/2-intro-to-css/README.md) | Jen |
| 10 | [Terrarium](./3-terrarium/solution/README.md) | JavaScript Closures, DOM Manipülasyonu | Sürükle/bırak arayüzü işlevleri için JavaScript yazın, closures ve DOM manipulasyonuna odaklanın | [JavaScript Closures ve DOM Manipülasyonu](./3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen |
| 11 | [Yazma Oyunu](./4-typing-game/solution/README.md) | Yazma Oyunu Oluşturma | JavaScript uygulamanızı klavye olaylarıyla nasıl yönlendireceğinizi öğrenin | [Olay Tabanlı Programlama](./4-typing-game/typing-game/README.md) | Christopher |
| 12 | [Yeşil TarayıcıEklentisi](./5-browser-extension/solution/README.md) | Tarayıcılarla Çalışma | Tarayıcıların nasıl çalıştığını, tarihini ve tarayıcı eklentisinin ilk öğelerini nasıl oluşturacağınızı öğrenin | [Tarayıcılar Hakkında](./5-browser-extension/1-about-browsers/README.md) | Jen |
| 13 | [Yeşil TarayıcıEklentisi](./5-browser-extension/solution/README.md) | Form Oluşturma, API Çağrısı ve Yerel Depolamada Değişken | Tarayıcı eklentinizde yerel depolamada tutulan değişkenleri kullanan bir API çağrısı için JavaScript öğelerini oluşturun | [API’lar, Formlar ve Yerel Depolama](./5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen |
| 14 | [Yeşil TarayıcıEklentisi](./5-browser-extension/solution/README.md) | Tarayıcı arkaplan işlemleri, web performansı | Eklentinin simgesini yönetmek için tarayıcı arkaplan işlemlerini kullanın; web performansı ve bazı optimizasyonlar hakkında bilgi edinin | [Arkaplan Görevleri ve Performans](./5-browser-extension/3-background-tasks-and-performance/README.md) | Jen |
| 15 | [Uzay Oyunu](./6-space-game/solution/README.md) | JavaScript ile Daha Gelişmiş Oyun Geliştirme | Sınıflar ve Kompozisyon kullanarak Miras (Inheritance) ve Yayınla/Abone Ol (Pub/Sub) kalıplarını öğrenin, bir oyun geliştirmek için hazırlanın | [Gelişmiş Oyun Geliştirmeye Giriş](./6-space-game/1-introduction/README.md) | Chris |
| 16 | [Uzay Oyunu](./6-space-game/solution/README.md) | Canvas’a Çizim | Ekrana öğe çizmek için kullanılan Canvas API'si hakkında bilgi edinin | [Canvasa Çizim](./6-space-game/2-drawing-to-canvas/README.md) | Chris |
| 17 | [Uzay Oyunu](./6-space-game/solution/README.md) | Ekrandaki Öğeleri Hareket Ettirme | Öğelerin hareket kazanmasını kartezyen koordinatlar ve Canvas API kullanarak keşfedin | [Öğeleri Hareket Ettirme](./6-space-game/3-moving-elements-around/README.md) | Chris |
| 18 | [Uzay Oyunu](./6-space-game/solution/README.md) | Çarpışma Algılama | Öğeleri çarpıştırın ve birbirlerine tuş vuruşlarıyla tepki vermelerini sağlayın; oyunun performansını korumak için cooldown fonksiyonu ekleyin | [Çarpışma Algılama](./6-space-game/4-collision-detection/README.md) | Chris |
| 19 | [Uzay Oyunu](./6-space-game/solution/README.md) | Skoru Tutma | Oyun durumu ve performansına bağlı matematiksel hesaplamalar yapın | [Skoru Tutma](./6-space-game/5-keeping-score/README.md) | Chris |
| 20 | [Uzay Oyunu](./6-space-game/solution/README.md) | Oyunu Bitirme ve Yeniden Başlatma | Oyunu bitirme ve yeniden başlatma hakkında bilgi edinin, kaynak temizleme ve değişkenleri sıfırlama dahil | [Bitiş Koşulu](./6-space-game/6-end-condition/README.md) | Chris |
| 21 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Web Uygulamasında HTML Şablonları ve Yönlendirmeler | Çok sayfalı bir web sitesinin mimarisini yönlendirme ve HTML şablonları kullanarak nasıl oluşturacağınızı öğrenin | [HTML Şablonları ve Yönlendirmeler](./7-bank-project/1-template-route/README.md) | Yohan |
| 22 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Giriş ve Kayıt Formu Oluşturma | Formlar oluşturma ve doğrulama süreçlerini öğrenin | [Formlar](./7-bank-project/2-forms/README.md) | Yohan |
| 23 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Veri Alma ve Kullanma Yöntemleri | Uygulamanızda verinin nasıl aktığını, nasıl alındığını, depolandığını ve imha edildiğini öğrenin | [Veri](./7-bank-project/3-data/README.md) | Yohan |
| 24 | [Bankacılık Uygulaması](./7-bank-project/solution/README.md) | Durum Yönetimi Kavramları | Uygulamanızın durumu nasıl koruduğunu ve programatik olarak bunu nasıl yöneteceğinizi öğrenin | [Durum Yönetimi](./7-bank-project/4-state-management/README.md) | Yohan |
| 25 | [Tarayıcı/VScode Kodu](../../8-code-editor) | VScode ile Çalışma | Bir kod editörü kullanmayı öğrenin | [VScode Kod Editörü Kullanımı](./8-code-editor/1-using-a-code-editor/README.md) | Chris |
| 26 | [AI Asistanları](./9-chat-project/README.md) | AI ile Çalışma | Kendi AI asistanınızı nasıl oluşturabileceğinizi öğrenin | [AI Asistan Projesi](./9-chat-project/README.md) | Chris |
## 🏫 Pedagoji
Müfredatımız, iki temel eğitim ilkesi göz önünde bulundurularak tasarlanmıştır:
* proje tabanlı öğrenme
* sık quizler
Müfredatımız iki temel pedagojik ilke göz önünde bulundurularak tasarlanmıştır:
* proje tabanlı öğrenme
* sık quiz uygulamaları
Program, JavaScript, HTML ve CSS temellerini ve günümüz web geliştiricilerinin kullandığı en son araçlar ve teknikleri öğretir. Öğrenciler, yazma oyunu, sanal terraryum, çevre dostu tarayıcı uzantısı, uzay istilacı tarzı oyun ve işletmeler için bir bankacılık uygulaması inşa ederek uygulamalı deneyim kazanma fırsatı bulacaklar. Serinin sonunda öğrenciler, web geliştirme konusunda sağlam bir anlayışa sahip olacaklar.
Program JavaScript, HTML ve CSS temel bilgilerini ve günümüz web geliştiricileri tarafından kullanılan en son araçlar ve teknikleri öğretir. Öğrenciler, yazma oyunu, sanal terrarium, çevre dostu tarayıcı uzantısı, space-invader tarzı oyun ve işletmeler için bankacılık uygulaması yaparak pratik deneyim kazanma fırsatı bulacaklar. Serinin sonunda öğrenciler web geliştirme konusunda sağlam bir anlayışa sahip olacaklar.
> 🎓 Bu müfredattaki ilk birkaç dersi Microsoft Learn üzerinde bir [Öğrenme Yolu](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) olarak alabilirsiniz!
> 🎓 Bu müfredatın ilk birkaç dersini Microsoft Learn üzerinden bir [Öğrenme Yolu](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) olarak alabilirsiniz!
İçeriğin projelerle uyumlu olduğundan emin olarak, süreç öğrenciler için daha ilgi çekici hale getirilir ve kavramların kalıcılığı artırılır. Ayrıca, kavramları tanıtmak için birkaç başlangıç dersi JavaScript temellerinde yazılmıştır ve bu dersler, bazı yazarları bu müfredata katkıda bulunan “[JavaScript Başlangıç Serisi](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)” video koleksiyonundan bir video ile eşleştirilmiştir.
İçeriğin projelerle uyumlu olmasını sağlayarak süreç öğrenciler için daha ilgi çekici hale getirilir ve kavramların kalıcılığı artırılır. Ayrıca, JavaScript temellerini tanıtmak için birkaç başlangıç dersi yazdık ve “[JavaScript’e Başlayanlar Serisi](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)” video koleksiyonundan bazı videolarla eşleştirdik, bazı yazarlar bu müfredata katkıda bulundu.
Ek olarak, sınıf öncesinde düşük riskli bir quiz öğrencinin konuya yönelik niyetini belirlerken, sınıf sonrası ikinci bir quiz daha fazla kalıcılık sağlar. Bu müfredat esnek ve eğlenceli olacak şekilde tasarlanmış olup tamamı veya parça parça alınabilir. Projeler küçük başlayıp 12 haftalık döngünün sonunda giderek karmaşıklaşır.
Ayrıca, sınıftan önce yapılan düşük riskli bir quiz öğrencinin konu öğrenme niyetini belirlerken, sınıftan sonra yapılan ikinci quiz kalıcılığı sağlar. Bu müfredat esnek ve eğlenceli olacak şekilde tasarlanmıştır ve tamamen veya kısmen alınabilir. Projeler küçük başlar ve 12 haftalık döngünün sonunda giderek daha karmaşık hale gelir.
JavaScript çerçevelerini kasıtlı olarak tanıtmaktan kaçındık çünkü bir çerçeve benimsemeden önce bir web geliştiricisi olarak gereken temel becerilere odaklanmak istedik; bu müfredatı tamamlamak için iyi bir sonraki adım başka bir video koleksiyonu olan “[Node.js Başlangıç Serisi](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)” üzerinden Node.js öğrenmek olacaktır.
> [Davranış Kurallarımız](CODE_OF_CONDUCT.md) ve [Katkıda Bulunma](CONTRIBUTING.md) yönergelerimizi ziyaret edin. Yapıcı geri bildirimlerinizi bekliyoruz!
Amacımız, temel becerilere odaklanmak için JavaScript çerçevelerinden kaçınmak olsa da, bu müfredatı tamamlamak için bir sonraki iyi adım, başka bir video koleksiyonu aracılığıyla Node.js öğrenmek olacaktır: “[Node.js’e Başlayanlar Serisi](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)”.
> [Davranış Kurallarımız](CODE_OF_CONDUCT.md) ve [Katkıda Bulunma](CONTRIBUTING.md) yönergelerimizi inceleyin. Yapıcı geri bildiriminizi bekliyoruz!
## 🧭 Çevrimdışı erişim
Bu dokümantasyonu çevrimdışı olarak [Docsify](https://docsify.js.org/#/) kullanarak çalıştırabilirsiniz. Bu depoyu çatallayın, yerel makinenize [Docsify yükleyin](https://docsify.js.org/#/quickstart) ve sonra bu deponun kök klasöründe `docsify serve` yazın. Site localhost'ta, port 3000 üzerinde sunulacaktır: `localhost:3000`.
Bu dökümantasyonu çevrimdışı çalıştırmak için [Docsify](https://docsify.js.org/#/) kullanabilirsiniz. Bu repoyu fork edin, yerel bilgisayarınıza [Docsify kurulumunu](https://docsify.js.org/#/quickstart) yapın ve ardından bu repoda kök klasörde `docsify serve` komutunu çalıştırın. Web sitesi localhost’ta 3000 portunda çalışacaktır: `localhost:3000`.
## 📘 PDF
Tüm derslerin PDF'sini [buradan](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) bulabilirsiniz.
Tüm derslerin PDF'sine [buradan](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) ulaşabilirsiniz.
## 🎒 Diğer Kurslar
Ekibimiz diğer kurslar da üretiyor! Göz atın:
Ekibimiz başka kurslar da üretiyor! İnceleyin:
<!-- CO-OP TRANSLATOR OTHER COURSES START -->
### LangChain
@ -210,7 +231,7 @@ Ekibimiz diğer kurslar da üretiyor! Göz atın:
---
### Generative AI Series
### Üretken AI Serisi
[](https://github.com/microsoft/generative-ai-for-beginners?WT.mc_id=academic-105485-koreyst)
[-9333EA?style=for-the-badge&labelColor=E5E7EB&color=9333EA)](https://github.com/microsoft/Generative-AI-for-beginners-dotnet?WT.mc_id=academic-105485-koreyst)
[-C084FC?style=for-the-badge&labelColor=E5E7EB&color=C084FC)](https://github.com/microsoft/generative-ai-for-beginners-java?WT.mc_id=academic-105485-koreyst)
@ -218,40 +239,40 @@ Ekibimiz diğer kurslar da üretiyor! Göz atın:
---
### Core Learning
### Temel Öğrenme
[](https://aka.ms/ml-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/datascience-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/ai-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/Security-101?WT.mc_id=academic-96948-sayoung)
[](https://aka.ms/webdev-beginners?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/iot-beginners?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/xr-development-for-beginners?WT.mc_id=academic-105485-koreyst)
---
### Copilot Series
[](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
[](https://github.com/microsoft/mastering-github-copilot-for-dotnet-csharp-developers?WT.mc_id=academic-105485-koreyst)
[](https://aka.ms/GitHubCopilotAI?WT.mc_id=academic-105485-koreyst)
Yapay zeka uygulamaları geliştirme konusunda takılırsanız ya da herhangi bir sorunuz olursa, MCP hakkında tartışmalara katılmak için diğer öğrenciler ve deneyimli geliştiricilerle buluşun. Soruların hoş karşılandığı ve bilginin özgürce paylaşıldığı destekleyici bir topluluktur.
Tıkanırsanız veya AI uygulamaları geliştirme konusunda herhangi bir sorunuz olursa MCP hakkında diğer öğrenenlerle ve deneyimli geliştiricilerle tartışmalara katılın. Soruların hoş karşılandığı ve bilginin özgürce paylaşıldığı destekleyici bir topluluktur.
Bu depo MIT lisansıaltında lisanslanmıştır. Daha fazla bilgi için [LICENSE](../../LICENSE) dosyasına bakınız.
Bu depo MIT lisansıile lisanslanmıştır. Daha fazla bilgi için [LICENSE](../../LICENSE) dosyasına bakınız.
---
<!-- CO-OP TRANSLATOR DISCLAIMER START -->
**Feragatname**:
Bu belge, AI çeviri servisi [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hatalar veya yanlışlıklar içerebileceğini lütfen unutmayınız. Orijinal belge, kendi dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi önerilir. Bu çevirinin kullanımından kaynaklanan herhangi bir yanlış anlama veya yanlış yorumlama nedeniyle sorumluluk kabul edilmemektedir.
**Feragatname**:
Bu belge, AI çeviri hizmeti [Co-op Translator](https://github.com/Azure/co-op-translator) kullanılarak çevrilmiştir. Doğruluk için çaba göstersek de, otomatik çevirilerin hatalar veya yanlışlıklar içerebileceğini lütfen unutmayın. Orijinal belge, kendi ana dilinde yetkili kaynak olarak kabul edilmelidir. Kritik bilgiler için profesyonel insan çevirisi tavsiye edilir. Bu çevirinin kullanılması sonucu ortaya çıkabilecek yanlış anlamalar veya yorum hatalarından sorumlu değiliz.