Merge branch 'main' into suman

pull/968/head
Suman Paik 3 years ago committed by GitHub
commit be6973fbb5
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

@ -17,7 +17,7 @@ In this lesson, we'll cover:
- Basic elements of a program - Basic elements of a program
- Useful software and tooling for the professional developer - Useful software and tooling for the professional developer
> You can take this lesson on [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming?WT.mc_id=academic-77807-sagibbon)! > You can take this lesson on [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming/?WT.mc_id=academic-77807-sagibbon)!
## What is Programming? ## What is Programming?
@ -132,7 +132,7 @@ Many browsers come with *developer tools* (DevTools) that contain a set of helpf
#### Popular Browsers and DevTools #### Popular Browsers and DevTools
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -148,8 +148,8 @@ Options for the command line will differ based on the operating system you use.
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -157,13 +157,13 @@ Options for the command line will differ based on the operating system you use.
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7/?WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7/?WT.mc_id=academic-77807-sagibbon)
#### Popular Command Line Tools #### Popular Command Line Tools
@ -180,7 +180,7 @@ When a developer wants to learn something new, they'll most likely turn to docum
- [Mozilla Developer Network (MDN)](https://developer.mozilla.org/docs/Web), from Mozilla, the publishers of the [Firefox](https://www.mozilla.org/firefox/) browser - [Mozilla Developer Network (MDN)](https://developer.mozilla.org/docs/Web), from Mozilla, the publishers of the [Firefox](https://www.mozilla.org/firefox/) browser
- [Frontend Masters](https://frontendmasters.com/learn/) - [Frontend Masters](https://frontendmasters.com/learn/)
- [Web.dev](https://web.dev), from Google, publishers of [Chrome](https://www.google.com/chrome/) - [Web.dev](https://web.dev), from Google, publishers of [Chrome](https://www.google.com/chrome/)
- [Microsoft's own developer docs](https://docs.microsoft.com/microsoft-edge/#microsoft-edge-for-developers?WT.mc_id=academic-77807-sagibbon), for [Microsoft Edge](https://www.microsoft.com/edge/?WT.mc_id=academic-77807-sagibbon) - [Microsoft's own developer docs](https://docs.microsoft.com/microsoft-edge/#microsoft-edge-for-developers/?WT.mc_id=academic-77807-sagibbon), for [Microsoft Edge](https://www.microsoft.com/edge/?WT.mc_id=academic-77807-sagibbon)
✅ Do some research: Now that you know the basics of a web developer's environment, compare and contrast it with a web designer's environment. ✅ Do some research: Now that you know the basics of a web developer's environment, compare and contrast it with a web designer's environment.

@ -126,7 +126,7 @@ Muchos navegadores vienen con *herramientas para desarrolladores* (DevTools) que
#### Navegadores y herramientas de desarrollo populares #### Navegadores y herramientas de desarrollo populares
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -142,8 +142,8 @@ Las opciones para la línea de comando varían según el sistema operativo que u
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [Mintty](https://mintty.github.io/) - [Mintty](https://mintty.github.io/)
@ -151,13 +151,13 @@ Las opciones para la línea de comando varían según el sistema operativo que u
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7/?WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7/?WT.mc_id=academic-77807-sagibbon)
#### Línea de comandos (CLI) Populares #### Línea de comandos (CLI) Populares

@ -17,7 +17,7 @@ Sa araling ito, tatalakayin natin:
- Mga pangunahing elemento ng isang programa - Mga pangunahing elemento ng isang programa
- Kapaki-pakinabang na software at tooling para sa propesyonal na developer - Kapaki-pakinabang na software at tooling para sa propesyonal na developer
> Maaari mong kunin ang araling ito [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming?WT.mc_id=academic-77807-sagibbon)! > Maaari mong kunin ang araling ito [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming/?WT.mc_id=academic-77807-sagibbon)!
## Ano ang Programming? ## Ano ang Programming?
@ -128,7 +128,7 @@ Maraming browser ang kasama ng *developer tools* (DevTools) na naglalaman ng isa
#### Mga sikat na Browser at DevTools #### Mga sikat na Browser at DevTools
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -144,8 +144,8 @@ Mag-iiba ang mga opsyon para sa command line batay sa operating system na iyong
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -153,13 +153,13 @@ Mag-iiba ang mga opsyon para sa command line batay sa operating system na iyong
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7/?WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7/?WT.mc_id=academic-77807-sagibbon)
#### Mga sikat na Command Line Tool #### Mga sikat na Command Line Tool

@ -123,7 +123,7 @@ Un autre outil crucial est le navigateur. Les développeurs Web comptent sur le
De nombreux navigateurs sont livrés avec des *outils de développement* (DevTools) qui contiennent un ensemble de fonctionnalités et d'informations utiles pour aider les développeurs à collecter et capturer des informations importantes sur leur application. Par exemple: si une page Web contient des erreurs, il est parfois utile de savoir quand elles se sont produites. DevTools dans un navigateur peut être configuré pour capturer ces informations. De nombreux navigateurs sont livrés avec des *outils de développement* (DevTools) qui contiennent un ensemble de fonctionnalités et d'informations utiles pour aider les développeurs à collecter et capturer des informations importantes sur leur application. Par exemple: si une page Web contient des erreurs, il est parfois utile de savoir quand elles se sont produites. DevTools dans un navigateur peut être configuré pour capturer ces informations.
#### Navigateurs et outils de développement populaires #### Navigateurs et outils de développement populaires
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -139,8 +139,8 @@ Les options de la ligne de commande varient en fonction du système d'exploitati
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (appellé également CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (appellé également CMD) 💻
- [Terminal Windows](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Terminal Windows](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -148,13 +148,13 @@ Les options de la ligne de commande varient en fonction du système d'exploitati
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Command Line Tools ( CLI ) populaires #### Command Line Tools ( CLI ) populaires

@ -124,7 +124,7 @@ back add r0,r1
#### लोकप्रिय ब्राउज़रों और DevTools #### लोकप्रिय ब्राउज़रों और DevTools
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -140,8 +140,8 @@ back add r0,r1
#### विंडोज #### विंडोज
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -149,13 +149,13 @@ back add r0,r1
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### लिनक्स #### लिनक्स
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### लोकप्रिय कमांड लाइन टूल्स #### लोकप्रिय कमांड लाइन टूल्स

@ -125,7 +125,7 @@ Banyak browser datang dengan *alat pengembang* (DevTools) yang berisi serangkaia
#### Browser dan DevTools Populer #### Browser dan DevTools Populer
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -141,8 +141,8 @@ Pilihan untuk command line akan berbeda berdasarkan sistem operasi yang Anda gun
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -150,13 +150,13 @@ Pilihan untuk command line akan berbeda berdasarkan sistem operasi yang Anda gun
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Alat Command Line Populer #### Alat Command Line Populer

@ -124,7 +124,7 @@ Molti browser dispongono di *strumenti per lo sviluppatore* (DevTools) che conte
#### Popolari Browser e DevTools #### Popolari Browser e DevTools
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://sviluppatori.google.com/web/tools/chrome-devtools/) - [Chrome](https://sviluppatori.google.com/web/tools/chrome-devtools/)
- [Firefox](https://sviluppatore.mozilla.org/docs/Tools) - [Firefox](https://sviluppatore.mozilla.org/docs/Tools)
@ -140,8 +140,8 @@ Le alternative per la riga di comando differiriscono in base al sistema operativ
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -149,13 +149,13 @@ Le alternative per la riga di comando differiriscono in base al sistema operativ
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Popolari Strumenti da Riga di Comando #### Popolari Strumenti da Riga di Comando

@ -165,7 +165,7 @@ Web開発者は、自分のコードがWeb上でどのように実行される
#### 有名なブラウザ #### 有名なブラウザ
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -190,8 +190,8 @@ Web開発者は、自分のコードがWeb上でどのように実行される
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -199,13 +199,13 @@ Web開発者は、自分のコードがWeb上でどのように実行される
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### 有名なコマンドラインツール #### 有名なコマンドラインツール

@ -124,7 +124,7 @@ back add r0,r1
#### 인기있는 브라우저와 DevTools #### 인기있는 브라우저와 DevTools
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -140,8 +140,8 @@ command line 옵션은 사용하는 운영체제에 따라 다릅니다.
#### 윈도우즈 #### 윈도우즈
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -149,13 +149,13 @@ command line 옵션은 사용하는 운영체제에 따라 다릅니다.
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### 리눅스 #### 리눅스
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### 인기있는 Command Line 도구 #### 인기있는 Command Line 도구

@ -125,7 +125,7 @@ Veel browsers hebben ingebouwd *ontwikkel gereedschap* (DevTools) waarmee ontwik
#### Populaire Browsers en DevTools #### Populaire Browsers en DevTools
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -141,8 +141,8 @@ Beschikbaarheid van command lines verschilt op basis van het besturingssysteem w
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (ook bekend als CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (ook bekend als CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -150,13 +150,13 @@ Beschikbaarheid van command lines verschilt op basis van het besturingssysteem w
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Populaire Command Line Applicaties #### Populaire Command Line Applicaties

@ -17,7 +17,7 @@
- कार्यक्रमको आधारभूत तत्वहरू - कार्यक्रमको आधारभूत तत्वहरू
- व्यावसायिक विकासकर्ताको लागि उपयोगी सफ्टवेयर र उपकरण - व्यावसायिक विकासकर्ताको लागि उपयोगी सफ्टवेयर र उपकरण
> तपाईंले [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming?WT.mc_id=academic-77807-sagibbon) मा यो पाठ लिन सक्नुहुन्छ! > तपाईंले [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming/?WT.mc_id=academic-77807-sagibbon) मा यो पाठ लिन सक्नुहुन्छ!
## प्रोग्रामिङ भनेको के हो? ## प्रोग्रामिङ भनेको के हो?

@ -2,7 +2,7 @@
Essa lição trata dos básicos de linguagens de programação. Os tópicos tratados aqui se aplicam na maioria das linguagens de programação modernas. Na sessão 'Ferramentas', você vai aprender sobre softwares úteis que ajudarão como uma pessoa desenvolvedora. Essa lição trata dos básicos de linguagens de programação. Os tópicos tratados aqui se aplicam na maioria das linguagens de programação modernas. Na sessão 'Ferramentas', você vai aprender sobre softwares úteis que ajudarão como uma pessoa desenvolvedora.
![Introdução a Programação](/sketchnotes/webdev101-programming.png) ![Introdução à Programação](../../../sketchnotes/webdev101-programming.png)
> Sketchnote por [Tomomi Imura](https://twitter.com/girlie_mac) > Sketchnote por [Tomomi Imura](https://twitter.com/girlie_mac)
@ -137,7 +137,7 @@ Muitos navegadores vêm com _ferramentas para desenvolvimento_ (DevTools) que co
#### Navegadores Populares e DevTools #### Navegadores Populares e DevTools
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -156,8 +156,8 @@ _💻 = já vem pré-instalado no sistema operacional._
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (also known as CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -165,13 +165,13 @@ _💻 = já vem pré-instalado no sistema operacional._
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Ferramentas Populares para Linha de Comando #### Ferramentas Populares para Linha de Comando

@ -19,7 +19,7 @@
- Основные элементы программы - Основные элементы программы
- Полезный софт и инструментарий для профессионального разработчика - Полезный софт и инструментарий для профессионального разработчика
> Этот урок можно пройти на [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming?WT.mc_id=academic-77807-sagibbon)! > Этот урок можно пройти на [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming/?WT.mc_id=academic-77807-sagibbon)!
## Что такое программирование? ## Что такое программирование?
@ -132,7 +132,7 @@ back add r0,r1
#### Популярные браузеры и инструменты разработки #### Популярные браузеры и инструменты разработки
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -148,8 +148,8 @@ _💻 = предустановлен в операционной системе.
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (также известный как CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (также известный как CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -157,13 +157,13 @@ _💻 = предустановлен в операционной системе.
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Популярные инструменты командной строки #### Популярные инструменты командной строки

@ -17,7 +17,7 @@
- ஒரு நிரலின் அடிப்படை கூறுகள் - ஒரு நிரலின் அடிப்படை கூறுகள்
- தொழில்முறை டெவலப்பர் பயனுள்ள மென்பொருள் மற்றும் கருவி - தொழில்முறை டெவலப்பர் பயனுள்ள மென்பொருள் மற்றும் கருவி
> நீங்கள் இந்த பாடத்தை [மைக்ரோசாப்ட் கற்றல்](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming?WT.mc_id=academic-77807-sagibbon) பற்றி எடுத்துக் கொள்ளலாம்! > நீங்கள் இந்த பாடத்தை [மைக்ரோசாப்ட் கற்றல்](https://docs.microsoft.com/learn/modules/web-development-101/introduction-programming/?WT.mc_id=academic-77807-sagibbon) பற்றி எடுத்துக் கொள்ளலாம்!
## நிரலாக்க என்றால் என்ன?? ## நிரலாக்க என்றால் என்ன??
@ -129,7 +129,7 @@ back add r0,r1
#### பிரபலமான உலாவிகள் மற்றும் தேவ்டூல்ஸ் #### பிரபலமான உலாவிகள் மற்றும் தேவ்டூல்ஸ்
- [விளிம்பு](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [விளிம்பு](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [குரோம்](https://developers.google.com/web/tools/chrome-devtools/) - [குரோம்](https://developers.google.com/web/tools/chrome-devtools/)
- [பயர்பாக்ஸ்](https://developer.mozilla.org/docs/Tools) - [பயர்பாக்ஸ்](https://developer.mozilla.org/docs/Tools)
@ -145,8 +145,8 @@ back add r0,r1
#### விண்டோஸ் #### விண்டோஸ்
- [பவர்ஷெல்](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [பவர்ஷெல்](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [கட்டளை வரி](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (சி.எம்.டி என்றும் அழைக்கப்படுகிறது) 💻 - [கட்டளை வரி](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (சி.எம்.டி என்றும் அழைக்கப்படுகிறது) 💻
- [விண்டோஸ் முனையம்](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [விண்டோஸ் முனையம்](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [புதினா](https://mintty.github.io/) - [புதினா](https://mintty.github.io/)
@ -154,13 +154,13 @@ back add r0,r1
- [முனையம்](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [முனையம்](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [ஐடெர்ம்](https://iterm2.com/) - [ஐடெர்ம்](https://iterm2.com/)
- [பவர்ஷெல்](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [பவர்ஷெல்](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [பாஸ்](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [பாஸ்](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [கேடிஇ கான்சோல்](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [கேடிஇ கான்சோல்](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [பவர்ஷெல்](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [பவர்ஷெல்](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### பிரபலமான கட்டளை வரி கருவிகள் #### பிரபலமான கட்டளை வரி கருவிகள்

@ -124,7 +124,7 @@ back add r0,r1
#### 主流浏览器和 DevTools #### 主流浏览器和 DevTools
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -140,8 +140,8 @@ back add r0,r1
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (即 CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (即 CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -149,13 +149,13 @@ back add r0,r1
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### 常用命令行工具 #### 常用命令行工具

@ -124,7 +124,7 @@ back add r0,r1
#### 常見瀏覽器與網頁開發工具 #### 常見瀏覽器與網頁開發工具
- [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium?WT.mc_id=academic-77807-sagibbon) - [Edge](https://docs.microsoft.com/microsoft-edge/devtools-guide-chromium/?WT.mc_id=academic-77807-sagibbon)
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/) - [Chrome](https://developers.google.com/web/tools/chrome-devtools/)
- [Firefox](https://developer.mozilla.org/docs/Tools) - [Firefox](https://developer.mozilla.org/docs/Tools)
@ -140,8 +140,8 @@ back add r0,r1
#### Windows #### Windows
- [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7?WT.mc_id=academic-77807-sagibbon) 💻 - [Powershell](https://docs.microsoft.com/powershell/scripting/overview?view=powershell-7/?WT.mc_id=academic-77807-sagibbon) 💻
- [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands?WT.mc_id=academic-77807-sagibbon) (又稱作 CMD) 💻 - [Command Line](https://docs.microsoft.com/windows-server/administration/windows-commands/windows-commands/?WT.mc_id=academic-77807-sagibbon) (又稱作 CMD) 💻
- [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon) - [Windows Terminal](https://docs.microsoft.com/windows/terminal/?WT.mc_id=academic-77807-sagibbon)
- [mintty](https://mintty.github.io/) - [mintty](https://mintty.github.io/)
@ -149,13 +149,13 @@ back add r0,r1
- [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻 - [Terminal](https://support.apple.com/guide/terminal/open-or-quit-terminal-apd5265185d-f365-44cb-8b09-71a064a42125/mac) 💻
- [iTerm](https://iterm2.com/) - [iTerm](https://iterm2.com/)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-macos/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### Linux #### Linux
- [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻 - [Bash](https://www.gnu.org/software/bash/manual/html_node/index.html) 💻
- [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html) - [KDE Konsole](https://docs.kde.org/trunk5/en/konsole/konsole/index.html)
- [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux?view=powershell-7?WT.mc_id=academic-77807-sagibbon) - [Powershell](https://docs.microsoft.com/powershell/scripting/install/installing-powershell-core-on-linux/?view=powershell-7&WT.mc_id=academic-77807-sagibbon)
#### 其他常用指令 #### 其他常用指令

@ -0,0 +1,11 @@
# ഡോക്‌സ് വായിക്കുന്നു
## നിർദ്ദേശങ്ങൾ
ഒരു വെബ് ഡെവലപ്പർക്ക് ആവശ്യമായേക്കാവുന്ന നിരവധി ടൂളുകൾ ഇതിൽ ഉണ്ട് [ക്ലയന്റ് സൈഡ് ടൂളിങ്ങിനുള്ള MDN ഡോക്യുമെന്റേഷൻ](https://developer.mozilla.org/docs/Learn/Tools_and_testing/Understanding_client-side_tools/Overview). പാഠത്തിൽ ഉൾപ്പെടുത്താത്ത 3 ഉപകരണങ്ങൾ തിരഞ്ഞെടുക്കുക, എന്തുകൊണ്ടാണ് ഒരു വെബ് ഡെവലപ്പർ ഇത് ഉപയോഗിക്കുന്നതെന്ന് വിശദീകരിക്കുക, കൂടാതെ ഈ വിഭാഗത്തിൽ പെടുന്ന ഒരു ടൂളിനായി തിരയുകയും അതിന്റെ ഡോക്യുമെന്റേഷൻ പങ്കിടുകയും ചെയ്യുക. MDN ഡോക്സിൽ നിന്നുള്ള ടൂൾ ഉദാഹരണം ഉപയോഗിക്കരുത്.
## റൂബ്രിക്
മാതൃകാപരമായ | മതിയായ | കൂടുതൽ നന്നാകാൻ ഉണ്ട്
--- | --- | -- |
|എന്തുകൊണ്ട് വെബ് ഡെവലപ്പർ ടൂൾ ഉപയോഗിക്കുമെന്ന് വിശദീകരിച്ചു എങ്ങനെയെന്ന് വിശദീകരിച്ചു, പക്ഷേ എന്തുകൊണ്ട് ഡവലപ്പർ ടൂൾ ഉപയോഗിക്കും| ഒരു ഡെവലപ്പർ എങ്ങനെ അല്ലെങ്കിൽ എന്തുകൊണ്ട് ഉപകരണം ഉപയോഗിക്കുമെന്ന് പരാമർശിച്ചിട്ടില്ല |

@ -318,12 +318,12 @@ Read more about [contributing to open source software](https://opensource.guide/
[Git cheatsheet](https://training.github.com/downloads/github-git-cheat-sheet/). [Git cheatsheet](https://training.github.com/downloads/github-git-cheat-sheet/).
Practice, practice, practice. GitHub has great learning paths available via [lab.github.com](https://lab.github.com/): Practice, practice, practice. GitHub has great learning paths available via [skills.github.com](https://skills.github.com):
- [First Week on GitHub](https://lab.github.com/githubtraining/first-week-on-github) - [First Week on GitHub](https://skills.github.com/#first-week-on-github)
You'll also find more advanced labs. You'll also find more advanced courses.
## Assignment ## Assignment
Complete [the First Week on GitHub training lab](https://lab.github.com/githubtraining/first-week-on-github) Complete [the First Week on GitHub course](https://skills.github.com/#first-week-on-github)

@ -12,7 +12,7 @@
This quote perfectly highlights the importance of creating accessible websites. An application that can't be accessed by all is by definition exclusionary. As web developers we should always have accessibility in mind. By having this focus from the beginning you will be well on your way to ensure everyone can access the pages you create. In this lesson, you'll learn about the tools that can help you ensure that your web assets are accessible and how to build with accessibility in mind. This quote perfectly highlights the importance of creating accessible websites. An application that can't be accessed by all is by definition exclusionary. As web developers we should always have accessibility in mind. By having this focus from the beginning you will be well on your way to ensure everyone can access the pages you create. In this lesson, you'll learn about the tools that can help you ensure that your web assets are accessible and how to build with accessibility in mind.
> You can take this lesson on [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/accessibility?WT.mc_id=academic-77807-sagibbon)! > You can take this lesson on [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/accessibility/?WT.mc_id=academic-77807-sagibbon)!
## Tools to use ## Tools to use
@ -28,7 +28,7 @@ Every web developer should familiarize themselves with a screen reader. As highl
Some browsers also have built-in tools and extensions that can read text aloud or even provide some basic navigational features, such as [these accessibility-focused Edge browser tools](https://support.microsoft.com/help/4000734/microsoft-edge-accessibility-features). These are also important accessibility tools, but function very differently from screen readers and they should not be mistaken for screen reader testing tools. Some browsers also have built-in tools and extensions that can read text aloud or even provide some basic navigational features, such as [these accessibility-focused Edge browser tools](https://support.microsoft.com/help/4000734/microsoft-edge-accessibility-features). These are also important accessibility tools, but function very differently from screen readers and they should not be mistaken for screen reader testing tools.
✅ Try a screen reader and browser text reader. On Windows [Narrator](https://support.microsoft.com/windows/complete-guide-to-narrator-e4397a0d-ef4f-b386-d8ae-c172f109bdb1?WT.mc_id=academic-77807-sagibbon) is included by default, and [JAWS](https://webaim.org/articles/jaws/) and [NVDA](https://www.nvaccess.org/about-nvda/) can also be installed. On macOS and iOS, [VoiceOver](https://support.apple.com/guide/voiceover/welcome/10) is installed by default. ✅ Try a screen reader and browser text reader. On Windows [Narrator](https://support.microsoft.com/windows/complete-guide-to-narrator-e4397a0d-ef4f-b386-d8ae-c172f109bdb1/?WT.mc_id=academic-77807-sagibbon) is included by default, and [JAWS](https://webaim.org/articles/jaws/) and [NVDA](https://www.nvaccess.org/about-nvda/) can also be installed. On macOS and iOS, [VoiceOver](https://support.apple.com/guide/voiceover/welcome/10) is installed by default.
### Zoom ### Zoom

@ -12,7 +12,7 @@
Cette citation met parfaitement l'accent sur l'importance de créer des sites Web accessibles. Une application qui ne peut pas être accessible par tous est par définition exclusionnaire. En tant que développeurs Web, nous devrions toujours avoir l'accessibilité à l'esprit. En ayant cet objectif dès le début, vous serez déjà bien lancé sur la façon de vous assurer que tout le monde peut accéder aux pages que vous créez. Dans cette leçon, vous découvrirez les outils pouvant vous aider à vous assurer que vos éléments Web sont accessibles et comment développer avec l'accessibilité à l'esprit. Cette citation met parfaitement l'accent sur l'importance de créer des sites Web accessibles. Une application qui ne peut pas être accessible par tous est par définition exclusionnaire. En tant que développeurs Web, nous devrions toujours avoir l'accessibilité à l'esprit. En ayant cet objectif dès le début, vous serez déjà bien lancé sur la façon de vous assurer que tout le monde peut accéder aux pages que vous créez. Dans cette leçon, vous découvrirez les outils pouvant vous aider à vous assurer que vos éléments Web sont accessibles et comment développer avec l'accessibilité à l'esprit.
> Vous pouvez accéder à cette leçon sur [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/accessibility?WT.mc_id=academic-77807-sagibbon)! > Vous pouvez accéder à cette leçon sur [Microsoft Learn](https://docs.microsoft.com/learn/modules/web-development-101/accessibility/?WT.mc_id=academic-77807-sagibbon)!
## Outils à utiliser ## Outils à utiliser

@ -0,0 +1,17 @@
# ਵੈੱਬ ਵਿਕਾਸ ਨਾਲ ਸ਼ੁਰੂਆਤ ਕਰਨਾ
ਕੋਰਸ ਦੇ ਇਸ ਭਾਗ ਵਿੱਚ, ਤੁਹਾਨੂੰ ਇੱਕ ਪੇਸ਼ੇਵਰ ਵਿਕਾਸਕਾਰ ਬਣਨ ਲਈ ਮਹੱਤਵਪੂਰਨ ਗੈਰ-ਪ੍ਰੋਜੈਕਟ ਅਧਾਰਤ ਸੰਕਲਪਾਂ ਨਾਲ ਜਾਣੂ ਕਰਵਾਇਆ ਜਾਵੇਗਾ।
### ਵਿਸ਼ਾ
1. [ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾਵਾਂ ਅਤੇ ਵਪਾਰਕ ਸਾਧਨਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ](../1-intro-to-programming-languages/translations/README.en.md)
2. [GitHub ਬੇਸਿਕਸ](../2-github-basics/translations/README.en.md)
3. [ਪਹੁੰਚਯੋਗਤਾ ਮੂਲ ਗੱਲਾਂ](../3-accessibility/translations/README.en.md)
### ਕ੍ਰੈਡਿਟ
ਪਹੁੰਚਯੋਗਤਾ ਦੀਆਂ ਬੁਨਿਆਦੀ ਗੱਲਾਂ [ਕ੍ਰਿਸਟੋਫਰ ਹੈਰੀਸਨ](https://twitter.com/geektrainer) ਦੁਆਰਾ ♥️ ਦੁਆਰਾ ਲਿਖੀਆਂ ਗਈਆਂ ਸਨ।
GitHub ਦੀ ਜਾਣ-ਪਛਾਣ [floordress](https://twitter.com/floordtrees) ਦੁਆਰਾ ♥️ ਦੁਆਰਾ ਲਿਖੀ ਗਈ ਸੀ।
ਪ੍ਰੋਗਰਾਮਿੰਗ ਭਾਸ਼ਾਵਾਂ ਅਤੇ ਵਪਾਰਕ ਸਾਧਨਾਂ ਦੀ ਜਾਣ-ਪਛਾਣ [ਜੈਸਮੀਨ ਗ੍ਰੀਨਵੇ] (https://twitter.com/paladique) ਦੁਆਰਾ ♥️ ਦੁਆਰਾ ਲਿਖੀ ਗਈ ਸੀ।

@ -4,9 +4,9 @@ Nesta seção do currículo, você será introduzida a conceitos não baseados e
### Tópicos ### Tópicos
1. [Introdução a Linguagens de Programação e Ferramentas](1-intro-to-programming-languages/README..pt.md) 1. [Introdução a Linguagens de Programação e Ferramentas](../1-intro-to-programming-languages/translations/README.pt.md)
2. [GitHub Básico](2-github-basics/README.pt.md) 2. [GitHub Básico](../2-github-basics/translations/README.pt.md)
3. [Acesibilidade Básica](3-accessibility/README.pt.md) 3. [Acesibilidade Básica](../3-accessibility/translations/README.pt.md)
### Créditos ### Créditos

@ -0,0 +1,11 @@
# Məlumat növləri üzrə məşqlər
## Təlimatlar
Təsəvvür edin ki, bir alış-veriş səbəti düzəldin. Alış-veriş təcrübənizi tamamlamaq üçün lazım olan məlumat növləri haqqında bəzi sənədləri yazın. Seçimlərinizə necə gəldiniz?
## Ünvan kitabçası
Meyarlar | Əla | adekvat | Təkmilləşdirmələr lazımdır
--- | --- | --- | - |
|| Altı məlumat növü onların istifadəsini sənədləşdirərək ətraflı şəkildə sadalanır və araşdırılır | Dörd növ məlumat tədqiq edilir | İki növ məlumat tədqiq edilir |

@ -1,4 +1,4 @@
# जावास्क्रिप्ट मूल बातें: तरीके और कार्य # जावास्क्रिप्ट मूल बातें: मेथड्स और फंक्शन्स
![जावास्क्रिप्ट मूल बातें - कार्य](/sketchnotes/webdev101-js-functions.png) ![जावास्क्रिप्ट मूल बातें - कार्य](/sketchnotes/webdev101-js-functions.png)
> [टोमोमी इमुरा](https://twitter.com/girlie_mac) द्वारा स्केचनेट > [टोमोमी इमुरा](https://twitter.com/girlie_mac) द्वारा स्केचनेट
@ -6,18 +6,18 @@
## पूर्व व्याख्यान प्रश्नोत्तरी ## पूर्व व्याख्यान प्रश्नोत्तरी
[पूर्व व्याख्यान प्रश्नोत्तरी](https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/9?loc=hi) [पूर्व व्याख्यान प्रश्नोत्तरी](https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/9?loc=hi)
जब हम कोड लिखने के बारे में सोचते हैं, तो हम हमेशा यह सुनिश्चित करना चाहते हैं कि हमारा कोड पढ़ने योग्य हो। हालांकि यह काउंटरटाइनेटिव लगता है, लेकिन कोड को लिखे जाने की तुलना में कई गुना अधिक पढ़ा जाता है। एक डेवलपर टूलबॉक्स में एक कोर टूल, जिसमें यह सुनिश्चित करने के लिए कि कोड योग्य है **फ़ंक्शन** है। जब हम कोड लिखने के बारे में सोचते हैं, तो हम हमेशा यह सुनिश्चित करना चाहते हैं कि हमारा कोड पढ़ने योग्य हो। हालांकि यह तर्कविरूद्ध लगता है, लेकिन कोड को लिखे जाने की तुलना में कई गुना अधिक पढ़ा जाता है। एक डेवलपर टूलबॉक्स में एक कोर टूल, जिसमें यह सुनिश्चित करने के लिए कि कोड योग्य है **फ़ंक्शन** है।
[![मेथड्स एंड फ़ंक्शंस ](https://img.youtube.com/vi/XgKsD6Zwvlc/0.jpg)](https://youtube.com/watch?v=XgKsD6Zwvlc "मेथड्स एंड फ़ंक्शंस") [![मेथड्स एंड फ़ंक्शंस ](https://img.youtube.com/vi/XgKsD6Zwvlc/0.jpg)](https://youtube.com/watch?v=XgKsD6Zwvlc "मेथड्स और फ़ंक्शंस")
> मेथड्स एंड फ़ंक्शंस के बारे में वीडियो के लिए ऊपर दी गई छवि पर क्लिक करें। > मेथड्स और फ़ंक्शंस के बारे में वीडियो के लिए ऊपर दी गई छवि पर क्लिक करें।
## फ़ंक्शंस ## फ़ंक्शंस
इसके मूल में, एक फ़ंक्शन कोड का एक ब्लॉक है जिसे हम मांग पर निष्पादित कर सकते हैं। यह उन परिदृश्यों के लिए एकदम सही है जहाँ हमें एक ही कार्य को कई बार करने की आवश्यकता होती है; कई स्थानों पर तर्क की नकल करने के बजाय (जो समय आने पर इसे अपडेट करना कठिन बना देगा), हम इसे एक स्थान पर केंद्रीकृत कर सकते हैं, और जब भी हमें ऑपरेशन की आवश्यकता हो, तब कॉल कर सकते हैं - आप अन्य कार्यों से भी कॉल कर सकते हैं! इसके मूल में, एक फ़ंक्शन कोड का एक ब्लॉक है जिसे हम मांग पर निष्पादित कर सकते हैं। यह उन परिदृश्यों के लिए एकदम सही है जहाँ हमें एक ही कार्य को कई बार करने की आवश्यकता होती है; कई स्थानों पर तर्क की नकल करने के बजाय (जो समय आने पर इसे अपडेट करना कठिन बना देगा), हम इसे एक स्थान पर केंद्रीकृत कर सकते हैं, और जब भी हमें ऑपरेशन की आवश्यकता हो, तब कॉल कर सकते हैं - आप अन्य फंक्शन्स से भी एक फंक्शन को कॉल कर सकते हैं!
बस के रूप में महत्वपूर्ण एक समारोह का नाम करने की क्षमता है। हालांकि यह तुच्छ प्रतीत हो सकता है, लेकिन नाम कोड के एक सेक्शन का दस्तावेजीकरण करने का एक त्वरित तरीका प्रदान करता है। आप इसे एक बटन पर एक लेबल के रूप में सोच सकते हैं। अगर मैं एक बटन पर क्लिक करता हूं जिसमें लिखा है "टाइमर को रद्द करें", मुझे पता है कि यह घड़ी को चलाने से रोकने वाला है। एक फंक्शन का नाम रखने की क्षमता भी इतनी ही महत्वपूर्ण है। हालांकि यह भ्रामक प्रतीत हो सकता है, लेकिन नाम कोड के एक सेक्शन का दस्तावेजीकरण करने का एक त्वरित तरीका प्रदान करता है। आप इसे एक बटन पर एक लेबल के रूप में सोच सकते हैं। अगर मैं एक बटन पर क्लिक करता हूं जिसमें लिखा है "टाइमर रद्द करें", मुझे पता है कि यह घड़ी को चलाने से रोकने वाला है।
## फंक्शन बनाना और कॉल करना ## फंक्शन बनाना और कॉल करना
@ -37,14 +37,14 @@ function displayGreeting() {
} }
``` ```
जब भी हम अपने फ़ंक्शन को कॉल करना (या इनवोक करना) चाहते हैं, हम `()` के बाद फ़ंक्शन के नाम का उपयोग करते हैं। यह ध्यान देने योग्य है कि हमारे फ़ंक्शन को कॉल करने का निर्णय लेने से पहले या बाद में परिभाषित किया जा सकता है; जावास्क्रिप्ट कंपाइलर इसे आपके लिए खोजेगा। जब भी हम अपने फ़ंक्शन को कॉल करना (या इनवोक करना) चाहते हैं, हम फ़ंक्शन के नाम के बाद `()` का उपयोग करते हैं। यह ध्यान देने योग्य है कि हमारे फ़ंक्शन को कॉल करने का निर्णय लेने से पहले या बाद में परिभाषित किया जा सकता है; जावास्क्रिप्ट कंपाइलर इसे आपके लिए खोजेगा।
```javascript ```javascript
// calling our function // calling our function
displayGreeting(); displayGreeting();
``` ```
> **नोट:** एक विशेष प्रकार का फ़ंक्शन है जिसे **method** के रूप में जाना जाता है, जिसे आप पहले से ही उपयोग कर रहे हैं! वास्तव में, हमने इसे ऊपर अपने डेमो में देखा था जब हमने `console.log` का उपयोग किया था। किसी कार्य को किसी फ़ंक्शन से अलग करने वाली विधि एक ऑब्जेक्ट से जुड़ी होती है (हमारे उदाहरण में `console`), जबकि एक फ़ंक्शन फ्री फ़्लोटिंग है। आपने सुना होगा कई डेवलपर्स इन शब्दों का इस्तेमाल परस्पर करते हैं > **नोट:** एक विशेष प्रकार का फ़ंक्शन है जिसे **मेथड** के रूप में जाना जाता है, जिसका आप पहले से ही उपयोग कर रहे हैं! वास्तव में, हमने इसे ऊपर अपने डेमो में देखा था जब हमने `console.log` का उपयोग किया था। जो चीज मेथड को फंक्शन से अलग बनाती है वो है की मेथड एक ऑब्जेक्ट से जुड़ी होती है (हमारे उदाहरण में `console`), जबकि एक फ़ंक्शन फ्री-फ़्लोटिंग है। आप कई डेवलपर्स से इन शब्दों का इस्तेमाल परस्पर करते सुनेंगे
### सर्वोत्तम फ़ंक्शन प्रथाएं ### सर्वोत्तम फ़ंक्शन प्रथाएं
@ -56,9 +56,9 @@ displayGreeting();
## किसी फ़ंक्शन के लिए जानकारी पास करना ## किसी फ़ंक्शन के लिए जानकारी पास करना
किसी फ़ंक्शन को अधिक पुन: प्रयोज्य बनाने के लिए आप अक्सर उसमें जानकारी देना चाहेंगे। अगर हम ऊपर अपने `displayGreeting` उदाहरण पर विचार करते हैं, तो यह केवल **Hello,world** प्रदर्शित करेगा। सबसे उपयोगी फ़ंक्शन कोई नहीं बना सकता है। यदि हम इसे थोड़ा और लचीला बनाना चाहते हैं, जैसे किसी व्यक्ति को बधाई देने के लिए व्यक्ति का नाम निर्दिष्ट करने की अनुमति देना, हम एक **पैरामीटर** जोड़ सकते हैं। एक पैरामीटर (जिसे कभी-कभी **आर्गुमेंट** भी कहा जाता है), एक फ़ंक्शन को भेजी जाने वाली अतिरिक्त जानकारी है। किसी फ़ंक्शन को अधिक पुन: प्रयोज्य बनाने के लिए आप अक्सर उसमें जानकारी देना चाहेंगे। अगर हम ऊपर अपने `displayGreeting` उदाहरण पर विचार करते हैं, तो यह केवल **Hello, world** प्रदर्शित करेगा। सबसे उपयोगी फ़ंक्शन कोई नहीं बना सकता है। यदि हम इसे थोड़ा और लचीला बनाना चाहते हैं, जैसे किसी व्यक्ति को बधाई देने के लिए व्यक्ति का नाम निर्दिष्ट करने की अनुमति देना, हम एक **पैरामीटर** जोड़ सकते हैं। एक पैरामीटर (जिसे कभी-कभी **आर्गुमेंट** भी कहा जाता है), एक फ़ंक्शन को भेजी जाने वाली अतिरिक्त जानकारी है।
पैरामीटर को कोष्ठक के भीतर परिभाषा भाग में सूचीबद्ध किया गया है और अल्पविराम को अलग किया जाता है: पैरामीटर को कोष्ठक के भीतर परिभाषा भाग में सूचीबद्ध किया जाता है और अल्पविराम को अलग किया जाता है:
```javascript ```javascript
function name(param, param2, param3) { function name(param, param2, param3) {
@ -102,7 +102,7 @@ displayGreeting('Christopher', 'Hi');
// displays "Hi, Christopher" // displays "Hi, Christopher"
``` ```
## मान लौटाएं ## आउटपुट लौटाएं
अब तक हमने जो फ़ंक्शन बनाया है वह हमेशा [कंसोल](https://developer.mozilla.org/docs/Web/API/console) पर आउटपुट करेगा। कभी-कभी यह ठीक वही हो सकता है जिसकी हम तलाश कर रहे हैं, खासकर जब हम फ़ंक्शन बनाते हैं जो अन्य सेवाओं को कॉल करेगा। लेकिन क्या होगा अगर मैं गणना करने और मान प्रदान करने के लिए एक सहायक फ़ंक्शन बनाना चाहता हूं तो मैं इसे कहीं और उपयोग कर सकता हूं? अब तक हमने जो फ़ंक्शन बनाया है वह हमेशा [कंसोल](https://developer.mozilla.org/docs/Web/API/console) पर आउटपुट करेगा। कभी-कभी यह ठीक वही हो सकता है जिसकी हम तलाश कर रहे हैं, खासकर जब हम फ़ंक्शन बनाते हैं जो अन्य सेवाओं को कॉल करेगा। लेकिन क्या होगा अगर मैं गणना करने और मान प्रदान करने के लिए एक सहायक फ़ंक्शन बनाना चाहता हूं तो मैं इसे कहीं और उपयोग कर सकता हूं?
@ -192,4 +192,4 @@ setTimeout(() => {
## असाइनमेंट ## असाइनमेंट
[फन विथ फंशन्स ](assignment.hi.md) [फन विथ फंशन्स ](assignment.hi.md)

@ -0,0 +1,13 @@
# Funksiyalarla Əylən
## Təlimatlar
Fərqli funksiyalar yaradın, həm nəyisə qaytaran funksiyalar, həm də heç nə qaytarmayan funksiyalar.
Defolt dəyərləri olan parametrlər və parametrlərin qarışığı olan bir funksiya yarada bildiyinizə baxın.
## Rubrika
| Meyarlar | Nümunəvi | Müvafiq | Təkmilləşdirmə Ehtiyacı var |
| -------- | ------------------------------------------------- ----------------------------------- | ------------------------------------------------- -------------- | ----------------- |
| | Həll müxtəlif parametrlərə malik iki və ya daha çox yaxşı işləyən funksiya ilə təklif olunur | İşçi həll bir funksiya və bir neçə parametr ilə təklif olunur | Həlldə səhvlər var |

@ -2,7 +2,7 @@
## Instrucciones ## Instrucciones
Cree un programa que enumere cada tercer número entre 1 y 20 y lo imprima en la consola. Cree un programa que enumere cada tercer número entre 1 y 20 e imprimalo en la consola.
> SUGERENCIA: use un bucle for y modifique la expresión-iteración > SUGERENCIA: use un bucle for y modifique la expresión-iteración
@ -10,4 +10,4 @@ Cree un programa que enumere cada tercer número entre 1 y 20 y lo imprima en la
| Criterios | Ejemplar | Adecuado | Necesita mejorar | | Criterios | Ejemplar | Adecuado | Necesita mejorar |
| -------- | --------------------------------------- | ------------------------ | ------------------------------ | | -------- | --------------------------------------- | ------------------------ | ------------------------------ |
| | El programa se ejecuta correctamente y está comentado | Programa no comentado | El programa está incompleto o con errores | | | El programa se ejecuta correctamente y está comentado | Programa no comentado | El programa está incompleto o con errores |

@ -7,7 +7,7 @@ JavaScript es el lenguaje de la web. En estas cuatro lecciones, aprenderá sus c
1. [Variables y tipos de datos](../1-data-types/translations/README.es.md) 1. [Variables y tipos de datos](../1-data-types/translations/README.es.md)
2. [Funciones y métodos](../2-functions-methods/translations/README.es.md) 2. [Funciones y métodos](../2-functions-methods/translations/README.es.md)
3. [Toma de decisiones con JavaScript](../3-making-decisions/translations/README.es.md) 3. [Toma de decisiones con JavaScript](../3-making-decisions/translations/README.es.md)
4. [Arrays and Loops](../4-arrays-loops/translations/README.es.md) 4. [Matrices y bucles](../4-arrays-loops/translations/README.es.md)
### Créditos ### Créditos

@ -255,7 +255,7 @@ Add a 'bubble' shine to the left bottom area of the jar to make it look more gla
![finished terrarium](./images/terrarium-final.png) ![finished terrarium](./images/terrarium-final.png)
To complete the post-lecture quiz, go through this Learn module: [Style your HTML app with CSS](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics?WT.mc_id=academic-77807-sagibbon) To complete the post-lecture quiz, go through this Learn module: [Style your HTML app with CSS](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics/?WT.mc_id=academic-77807-sagibbon)
## Post-Lecture Quiz ## Post-Lecture Quiz

@ -252,4 +252,4 @@ CSS parece engañosamente sencillo, pero existen muchos desafíos cuando se trat
**Asignación**: [Refactorización CSS](assignment.es.md) **Asignación**: [Refactorización CSS](assignment.es.md)
[Diseñe su aplicación HTML con CSS](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics?WT.mc_id=academic-77807-sagibbon) [Diseñe su aplicación HTML con CSS](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics/?WT.mc_id=academic-77807-sagibbon)

@ -250,7 +250,7 @@ Ajoutez un éclat "bulle" à la partie inférieure gauche du pot pour qu'il ress
![terrarium terminé](../images/terrarium-final.png) ![terrarium terminé](../images/terrarium-final.png)
Pour répondre au Quiz de validation des connaissances, suivez ce module d'apprentissage : [Donnez du style à votre application HTML avec CSS](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics?WT.mc_id=academic-77807-sagibbon) Pour répondre au Quiz de validation des connaissances, suivez ce module d'apprentissage : [Donnez du style à votre application HTML avec CSS](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics/?WT.mc_id=academic-77807-sagibbon)
## Quiz de validation des connaissances ## Quiz de validation des connaissances

@ -248,7 +248,7 @@ Aggiungere una lucentezza a forma di bolla nell'area inferiore sinistra del bara
![terrario finito](../images/terrarium-final.png) ![terrario finito](../images/terrarium-final.png)
Per completare il quiz post-lezione, seguire questo modulo di apprendimento: [Applicare uno stile al codice HTML con CSS](https://docs.microsoft.com/it-it/learn/modules/build-simple-website/4-css-basics?WT.mc_id=academic-77807-sagibbon) Per completare il quiz post-lezione, seguire questo modulo di apprendimento: [Applicare uno stile al codice HTML con CSS](https://docs.microsoft.com/it-it/learn/modules/build-simple-website/4-css-basics/?WT.mc_id=academic-77807-sagibbon)
## Quiz Post-Lezione ## Quiz Post-Lezione

@ -248,7 +248,7 @@ HTML マークアップの各植物には、id とクラスの組み合わせが
![finished terrarium](../images/terrarium-final.png) ![finished terrarium](../images/terrarium-final.png)
レッスン後の小テストを完成させるには、この Learn モジュールを通ってください: [HTML アプリを CSS でスタイルを整える](https://docs.microsoft.com/ja-jp/learn/modules/build-simple-website/4-css-basics?WT.mc_id=academic-77807-sagibbon) レッスン後の小テストを完成させるには、この Learn モジュールを通ってください: [HTML アプリを CSS でスタイルを整える](https://docs.microsoft.com/ja-jp/learn/modules/build-simple-website/4-css-basics/?WT.mc_id=academic-77807-sagibbon)
## レッスン後の小テスト ## レッスン後の小テスト

@ -248,7 +248,7 @@ jar 좌측 하단 부분에 'bubble' 광택을 추가하여 유리처럼 보이
![finished terrarium](.././images/terrarium-final.png) ![finished terrarium](.././images/terrarium-final.png)
강의 후 퀴즈를 완료하려면, 다음 학습 모듈을 진행하십시오: [Style your HTML app with CSS](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics?WT.mc_id=academic-77807-sagibbon) 강의 후 퀴즈를 완료하려면, 다음 학습 모듈을 진행하십시오: [Style your HTML app with CSS](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics/?WT.mc_id=academic-77807-sagibbon)
## 강의 후 퀴즈 ## 강의 후 퀴즈

@ -0,0 +1,264 @@
# 花艺瓶项目 Part 1 CSS 简介
![Introduction to CSS](../../../sketchnotes/webdev101-css.png)
> 由 [Tomomi Imura](https://twitter.com/girlie_mac) 绘制
## 课前测试
[课前测试](https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/17)
### 介绍
CSS即层叠样式表解决了网络开发的一个重要问题如何让你的网站看起来更漂亮。对你的应用程序进行样式设计可以使它们更实用、更美观你还可以使用 CSS 来创建响应式网页设计RWD--使你的网页可以根据不同窗口大小改变呈现方式。CSS 不仅可以让你的网页看起来漂亮它还包括动画和转换可以为你的网页提供复杂的交互。CSS 工作组帮助维护当前的 CSS 规范;你可以在[万维网联盟的网站](https://www.w3.org/Style/CSS/members).上关注他们的工作。
> 注意CSS 是一种不断发展的语言,就像网络上的所有东西一样,并不是所有的浏览器都支持规范的最新部分。要经常通过 [CanIUse.com](https://caniuse.com) 来检查你的实现在相关浏览器的支持情况。
在本课中,我们将为我们的在线花艺瓶添加样式,并进一步了解几个 CSS 概念层叠Cascade、继承Inheritance和选择器Selectors的使用、定位Positioning以及使用 CSS 构建布局Layout。在这个过程中我们将对花艺瓶进行布局并创建实际的花艺瓶本身。
### 先决条件
你应该已经为你的水族箱建立了HTML并准备好了样式。
### 任务
在你的 `terrarium` 目录中,创建一个名为 `style.css` 的新文件。在 `<head>` 部分导入该文件:
```html
<link rel="stylesheet" href="./style.css" />
```
---
## 层叠Cascade
层叠样式表包含了样式“层叠”的概念即一个样式的应用由其优先级来指导。由网站作者设置的样式优先于由浏览器设置的样式。“内联Inline”设置的样式优先于外部样式表中设置的样式。
### 任务
在你的 `<h1>` 标签上添加内联样式 `"color: red"`
```HTML
<h1 style="color: red">My Terrarium</h1>
```
然后,在你的`style.css`文件中添加以下代码:
```CSS
h1 {
color: blue;
}
```
✅ 你的网页显示了哪种颜色?为什么?你能找到一个覆盖该样式的方法吗?你什么时候会想这样做,或者为什么不这样做?
---
## 继承Inheritance
样式会从一个父级的样式继承到一个子级的样式,这样嵌套的元素就继承了它们父级的样式。
### 任务
将 body 的字体设置为给定的字体,并检查查看嵌套元素的字体:
```CSS
body {
font-family: helvetica, arial, sans-serif;
}
```
打开你的浏览器控制台的“元素”标签,观察 H1 的字体。如浏览器中所述,它的字体继承自 body
![inherited font](images/1.png)
✅ 你能让被嵌套的样式继承其他属性吗?
---
## CSS 选择器Selectors)
### 标签
到目前为止,你的 `style.css` 文件只有几个标签的样式,而且页面看起来很奇怪:
```CSS
body {
font-family: helvetica, arial, sans-serif;
}
h1 {
color: #3a241d;
text-align: center;
}
```
这种给标签样式的方式只能控制特别的元素。当你需要控制你的花艺瓶中许多植物的样式时,你需要利用 CSS 选择器。
### IDIds
添加一些样式来布局左边和右边的容器。由于只有一个左边的容器和一个右边的容器,它们在标记中被赋予了 id 标记。要为它们设计样式,请使用 `#`
```CSS
#left-container {
background-color: #eee;
width: 15%;
left: 0px;
top: 0px;
position: absolute;
height: 100%;
padding: 10px;
}
#right-container {
background-color: #eee;
width: 15%;
right: 0px;
top: 0px;
position: absolute;
height: 100%;
padding: 10px;
}
```
在这里,你把这些容器用绝对定位放在屏幕的最左边和右边,并对它们的宽度使用了百分比,这样它们就可以在小屏幕上缩放来正常显示。
✅ 这段代码相当重复,因此不要照抄;你能找到一个更好的方法来给这些 id 样式,也许可以用一个 id 和一个 class ?你需要修改 HTML 和 CSS。
```html
<div id="left-container" class="container"></div>
```
### 类Classes
在上面的例子中,你为屏幕上两个独特的元素设计了样式。如果你想让样式应用于屏幕上的许多元素,你可以使用 CSS 类。利用这种方法在左边和右边的容器中布局植物。
请注意HTML 中的每个植物都有一个 id 和 class 的组合。JavaScript 稍后会利用 id 控制植物的摆放CSS 则会使用 class 来选择并将样式套用在相应的植物上。
```html
<div class="plant-holder">
<img class="plant" alt="plant" id="plant1" src="./images/plant1.png" />
</div>
```
在你的 `style.css` 文件中添加以下内容:
```CSS
.plant-holder {
position: relative;
height: 13%;
left: -10px;
}
.plant {
position: absolute;
max-width: 150%;
max-height: 150%;
z-index: 2;
}
```
这个片段中值得注意的是相对和绝对定位的混合,我们将在下一节中介绍。我们先来看看使用百分比处理高度的方式:
你将 `plant-holder` 的高度设置为 13%,这是一个很好的数字,可以确保在不需要滚动的情况下,所有的植物都显示在每个垂直容器中。
你设置植物支架向左移动,让植物在其容器中居中。图片有大量的透明区域需要被拖拽进来,向左移动可以更好地在屏幕上显示。
然后,植物本身被赋予 150% 的最大宽度。这使得它可以随着浏览器的缩小而缩小。试着调整你的浏览器的窗口大小;植物将保持在它们的容器中,靠缩小尺寸以适应窗口大小。
同样值得注意的是 z-index 的使用,它可以控制一个元素的相对高度(这样,植物就可以坐在容器的顶部,看起来就像坐在花艺瓶内部一样)。
✅ 为什么你同时需要一个 `plant-holder` 和一个植物 CSS 选择器?
## 定位Positioning
混合位置属性包括静态Static、相对Relative、固定Fixed、绝对Absolute和粘性Sticky位置可能有点棘手但如果操作得当它可以让你很好地控制页面上的元素。
绝对定位的元素是相对于其父级元素定位的,如果没有,则根据 body 定位。
相对定位的元素是根据 CSS 指定的方向来调整其相对初始位置的位置。
在我们的例子中,`plant-holder` 是一个相对定位的元素,被定位在一个绝对定位的容器中。因此,容器被左右夹住,而嵌入其中的 `plant-holder` 会调整它在容器中的位置,为植物的竖排放置提供空间。
> `plant` 本身也有绝对定位,这是为了使其可拖动,你可以在下阶段课程中了解更多。
✅ 试着切换一下容器和 `plant-holder` 的定位类型。会发生什么?
## 布局Layouts
现在你将利用你所学到的知识来建造花艺瓶本身所有这些都是用CSS来完成的。
首先使用CSS将 `.terrarium` div 的子级样式化为一个圆角矩形:
```CSS
.jar-walls {
height: 80%;
width: 60%;
background: #d1e1df;
border-radius: 1rem;
position: absolute;
bottom: 0.5%;
left: 20%;
opacity: 0.5;
z-index: 1;
}
.jar-top {
width: 50%;
height: 5%;
background: #d1e1df;
position: absolute;
bottom: 80.5%;
left: 25%;
opacity: 0.7;
z-index: 1;
}
.jar-bottom {
width: 50%;
height: 1%;
background: #d1e1df;
position: absolute;
bottom: 0%;
left: 25%;
opacity: 0.7;
}
.dirt {
width: 60%;
height: 5%;
background: #3a241d;
position: absolute;
border-radius: 0 0 1rem 1rem;
bottom: 1%;
left: 20%;
opacity: 0.7;
z-index: -1;
}
```
注意这里使用的是百分比。如果你缩小你的浏览器窗口,你可以看到罐子是如何缩放的。也可以注意到罐子元素的宽度和高度百分比,以及每个元素是如何被绝对定位在中心,钉在窗口的底部的。
我们还使用 `rem` 来表示 `border-radius`,这是一种字体相对的长度。在 [CSS 规范](https://www.w3.org/TR/css-values-3/#font-relative-lengths)中阅读更多关于这种相对测量的类型。
✅ 试着改变罐子的颜色和不透明度与泥土的颜色。会发生什么?为什么?
---
## 🚀挑战
在瓶子的左边底部区域添加一个“气泡反光”,使其看起来更像玻璃。你将对 `.jar-glossy-long``.jar-glossy-short` 进行样式化,使其看起来像一个反射的光泽。下面是它的成果图:
![花艺瓶成果图](../images/terrarium-final.png)
要完成课后测验,请通过这个学习模块:[用 CSS 样式化你的 HTML 网页](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics?WT.mc_id=academic-13441-cxa)
## 课后测试
[课后测试](https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/18)
## 复习 & 预习
CSS 看似简单明了但在试图为所有浏览器和所有屏幕尺寸完美地设计一个应用程序时却存在许多挑战。CSS-Grid 和 Flexbox 是为了使这项工作更有条理、更可靠而开发的工具。通过游玩 [Flexbox Froggy](https://flexboxfroggy.com/) 和 [Grid Garden](https://codepip.com/games/grid-garden/) 来了解这些工具。
## 作业
[CSS 重构](assignment.md)

@ -248,7 +248,7 @@ h1 {
![盆栽盒成果圖](../images/terrarium-final.png) ![盆栽盒成果圖](../images/terrarium-final.png)
在做課後測驗前,請先前往下列的學習頁面:[用 CSS 造型化你的網頁應用](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics?WT.mc_id=academic-77807-sagibbon) 在做課後測驗前,請先前往下列的學習頁面:[用 CSS 造型化你的網頁應用](https://docs.microsoft.com/learn/modules/build-simple-website/4-css-basics/?WT.mc_id=academic-77807-sagibbon)
## 課後測驗 ## 課後測驗

@ -116,7 +116,7 @@ In addition, the terrariumElement that is passed to this function is assigned a
## The Pointerdrag function ## The Pointerdrag function
The terrariumElement is ready to be dragged around; when the `onpointerdown` event is fired, the function pointerDrag is invoked. Add that function right under this line: `terrariumElement.onpointerdown = pointerDrag;`: The `terrariumElement` is ready to be dragged around; when the `onpointerdown` event is fired, the function `pointerDrag` is invoked. Add that function right under this line: `terrariumElement.onpointerdown = pointerDrag;`:
### Task ### Task

@ -6,9 +6,9 @@
# पाठ # पाठ
1. [एचटीएमएल का परिचय](../1-intro-to-html/README.hi.md) 1. [एचटीएमएल का परिचय](../1-intro-to-html/translations/README.hi.md)
2. [सीएसएस का परिचय](../2-intro-to-css/README.hi.md) 2. [सीएसएस का परिचय](../2-intro-to-css/translations/README.hi.md)
3. [डोम और जेएस क्लोजर का परिचय](../3-intro-to-DOM-and-closures/README.hi.md) 3. [डोम और जेएस क्लोजर का परिचय](../3-intro-to-DOM-and-closures/translations/README.hi.md)
## आभार सूची ## आभार सूची

@ -6,9 +6,9 @@ Uma pequena reflexão de arrastar e soltar sobre o código. Com um pouco de HTML
# Lições # Lições
1. [Introdução ao CSS](./intro-to-css/README.md) 1. [Introdução ao HTML](../1-intro-to-html/README.md)
2. [Introdução ao HTML](./intro-to-html/README.md) 2. [Introdução ao CSS](../2-intro-to-css/README.md)
3. [Introdução ao DOM e JS Closures(fechamentos)](intro-to-DOM-and-js-closures/README.md) 3. [Introdução ao DOM e JS Closures(fechamentos)](../3-intro-to-DOM-and-closures/README.md)
## Créditos ## Créditos

@ -23,7 +23,7 @@ Esta lição pressupõe que você esteja familiarizado com os seguintes conceito
## Lição ## Lição
[Criando um jogo de digitação usando programação orientada a eventos](./typing-game/README.md) [Criando um jogo de digitação usando programação orientada a eventos](../typing-game/README.md)
## Créditos ## Créditos

@ -48,6 +48,8 @@ Before you start building, take a look at the process of building and deploying
![screenshot of the Edge browser showing the open edge://extensions page and open settings menu](images/install-on-edge.png) ![screenshot of the Edge browser showing the open edge://extensions page and open settings menu](images/install-on-edge.png)
> Note: Make sure to toggle on developer mode and allow extension from other stores.
In essence, the process will be: In essence, the process will be:
- build your extension using `npm run build` - build your extension using `npm run build`

@ -18,11 +18,11 @@ The topic of how to make your websites blazingly fast on all kinds of devices, f
The first thing you need to do to ensure that your site is running efficiently is to gather data about its performance. The first place to do this is in the developer tools of your web browser. In Edge, you can select the "Settings and more" button (the three dots icon on the top right of the browser), then navigate to More Tools > Developer Tools and open the Performance tab. You can also use the keyboard shortcuts `Ctrl` + `Shift` + `I` on Windows or `Option` + `Command` + `I` on Mac to open developer tools. The first thing you need to do to ensure that your site is running efficiently is to gather data about its performance. The first place to do this is in the developer tools of your web browser. In Edge, you can select the "Settings and more" button (the three dots icon on the top right of the browser), then navigate to More Tools > Developer Tools and open the Performance tab. You can also use the keyboard shortcuts `Ctrl` + `Shift` + `I` on Windows or `Option` + `Command` + `I` on Mac to open developer tools.
The Performance tab contains a Profiling tool. Open a website (try, for example, [https://www.microsoft.com](https://www.microsoft.com?WT.mc_id=academic-77807-sagibbon)) and click the 'Record' button, then refresh the site. Stop the recording at any time, and you will be able to see the routines that are generated to 'script', 'render', and 'paint' the site: The Performance tab contains a Profiling tool. Open a website (try, for example, [https://www.microsoft.com](https://www.microsoft.com/?WT.mc_id=academic-77807-sagibbon)) and click the 'Record' button, then refresh the site. Stop the recording at any time, and you will be able to see the routines that are generated to 'script', 'render', and 'paint' the site:
![Edge profiler](./images/profiler.png) ![Edge profiler](./images/profiler.png)
✅ Visit the [Microsoft Documentation](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance?WT.mc_id=academic-77807-sagibbon) on the Performance panel in Edge ✅ Visit the [Microsoft Documentation](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance/?WT.mc_id=academic-77807-sagibbon) on the Performance panel in Edge
> Tip: to get an accurate reading of your website's startup time, clear your browser's cache > Tip: to get an accurate reading of your website's startup time, clear your browser's cache

@ -20,7 +20,7 @@ La pestaña Rendimiento contiene una herramienta de creación de perfiles. Abra
![Edge profiler](./images/profiler.png) ![Edge profiler](./images/profiler.png)
✅ Visite la [Documentación de Microsoft](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance?WT.mc_id=academic-77807-sagibbon) en el panel Rendimiento en Edge ✅ Visite la [Documentación de Microsoft](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance/?WT.mc_id=academic-77807-sagibbon) en el panel Rendimiento en Edge
> Consejo: para obtener una lectura real de la hora de inicio de su sitio web, borre la memoria caché de su navegador > Consejo: para obtener una lectura real de la hora de inicio de su sitio web, borre la memoria caché de su navegador

@ -22,7 +22,7 @@ L'onglet Performance contient un outil de profilage. Ouvrez un site Web (essayez
![Edge profiler](../images/profiler.png) ![Edge profiler](../images/profiler.png)
✅ Consultez la [Documentation Microsoft](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance?WT.mc_id=academic-77807-sagibbon) à propos du panneau Performances dans Edge ✅ Consultez la [Documentation Microsoft](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance/?WT.mc_id=academic-77807-sagibbon) à propos du panneau Performances dans Edge
> Astuce : pour avoir une vraie lecture de l'heure de démarrage de votre site web, videz le cache de votre navigateur > Astuce : pour avoir une vraie lecture de l'heure de démarrage de votre site web, videz le cache de votre navigateur

@ -22,7 +22,7 @@ Performance 탭에는 Profiling 도구가 있습니다. 웹 사이트를 열고
![Edge profiler](.././images/profiler.png) ![Edge profiler](.././images/profiler.png)
✅ Edge에서 Performance 패널에서 [Microsoft Documentation](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance?WT.mc_id=academic-77807-sagibbon)를 방문하세요 ✅ Edge에서 Performance 패널에서 [Microsoft Documentation](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance/?WT.mc_id=academic-77807-sagibbon)를 방문하세요
> Tip: 웹 사이트의 시작 시간을 순수하게 보려면, 브라우저의 캐시를 지우세요 > Tip: 웹 사이트의 시작 시간을 순수하게 보려면, 브라우저의 캐시를 지우세요

@ -22,7 +22,7 @@ Performance 分頁包括了效能分析工具。開啟一個網頁,例如 http
![Edge 性能分析工具](../images/profiler.png) ![Edge 性能分析工具](../images/profiler.png)
✅ 造訪 [Microsoft 文件](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance?WT.mc_id=academic-77807-sagibbon)觀看 Edge 的 Performance 分頁資訊 ✅ 造訪 [Microsoft 文件](https://docs.microsoft.com/microsoft-edge/devtools-guide/performance/?WT.mc_id=academic-77807-sagibbon)觀看 Edge 的 Performance 分頁資訊
> 提示:要取得真正的網頁開啟時間,記得清除你的瀏覽器快取。 > 提示:要取得真正的網頁開啟時間,記得清除你的瀏覽器快取。

@ -217,7 +217,7 @@ Think about how the pub-sub pattern can enhance a game. Which parts should emit
## Review & Self Study ## Review & Self Study
Learn more about Pub/Sub by [reading about it](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber?WT.mc_id=academic-77807-sagibbon). Learn more about Pub/Sub by [reading about it](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber/?WT.mc_id=academic-77807-sagibbon).
## Assignment ## Assignment

@ -211,6 +211,6 @@ A medida que las cosas se complican cuando tu juego crece, este patrón permanec
## Revisión y autoestudio ## Revisión y autoestudio
Obtenga más información sobre Pub / Sub al [leer sobre él](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber?WT.mc_id=academic-77807-sagibbon). Obtenga más información sobre Pub / Sub al [leer sobre él](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber/?WT.mc_id=academic-77807-sagibbon).
**Tarea**: [Mock up a game](assignment.es.md) **Tarea**: [Mock up a game](assignment.es.md)

@ -217,7 +217,7 @@ Pensez à la façon dont le modèle pub-sub peut améliorer un jeu. Quelles part
## Révision et étude personnelle ## Révision et étude personnelle
En savoir plus sur Pub/Sub en [lisant sur ce sujet](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber?WT.mc_id=academic-77807-sagibbon). En savoir plus sur Pub/Sub en [lisant sur ce sujet](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber/?WT.mc_id=academic-77807-sagibbon).
## Affectation ## Affectation

@ -215,7 +215,7 @@ eventEmitter.on(Messages.HERO_MOVE_LEFT, () => {
## समीक्षा और स्व अध्ययन ## समीक्षा और स्व अध्ययन
pub/sub[के बारे में पढ़े](https://docs.microsoft.com/azure/altecture/patterns/publisher-subscriber?WT.mc_id=academic-77807-sagibbon) और अधिक जानें . pub/sub[के बारे में पढ़े](https://docs.microsoft.com/azure/altecture/patterns/publisher-subscriber/?WT.mc_id=academic-77807-sagibbon) और अधिक जानें .
## असाइनमेंट ## असाइनमेंट

@ -217,7 +217,7 @@ pub-sub パターンがどのようにゲームを盛り上げるかを考えて
## 復習と自己学習 ## 復習と自己学習
Pub/Sub については、[こちらを読んでみてください](https://docs.microsoft.com/ja-jp/azure/architecture/patterns/publisher-subscriber?WT.mc_id=academic-77807-sagibbon)。 Pub/Sub については、[こちらを読んでみてください](https://docs.microsoft.com/ja-jp/azure/architecture/patterns/publisher-subscriber/?WT.mc_id=academic-77807-sagibbon)。
## 課題 ## 課題

@ -217,7 +217,7 @@ pub-sub 패턴이 어떻게 게임을 발전시킬 수 있는지 생각해보세
## 리뷰 & 자기주도 학습 ## 리뷰 & 자기주도 학습
[reading about it](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber?WT.mc_id=academic-77807-sagibbon)으로 Pub/Sub에 대해 조금 더 배워봅시다. [reading about it](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber/?WT.mc_id=academic-77807-sagibbon)으로 Pub/Sub에 대해 조금 더 배워봅시다.
## 과제 ## 과제

@ -217,7 +217,7 @@ eventEmitter.on(Messages.HERO_MOVE_LEFT, () => {
## 複習與自學 ## 複習與自學
藉由[閱讀此連結](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber?WT.mc_id=academic-77807-sagibbon)來認識更多關於發布與訂閱的設計模式。 藉由[閱讀此連結](https://docs.microsoft.com/azure/architecture/patterns/publisher-subscriber/?WT.mc_id=academic-77807-sagibbon)來認識更多關於發布與訂閱的設計模式。
## 作業 ## 作業

@ -106,9 +106,9 @@ Lo anterior iniciará un servidor HTTP en la dirección `http://localhost:5000`.
GAME_END_WIN: "GAME_END_WIN", GAME_END_WIN: "GAME_END_WIN",
``` ```
2. **Agregar código de reinicio** código que reinicia el juego con solo presionar un botón seleccionado. 2. **Agregar código de reinicio**. Código que reinicia el juego con solo presionar un botón seleccionado.
1. **Escuche la tecla "Enter"**. Edite el eventListener de su ventana para escuchar esta prensa: 1. **Escuche la tecla "Enter"**. Edite el eventListener de su ventana para escuchar esta acción:
```javascript ```javascript
else if(evt.key === "Enter") { else if(evt.key === "Enter") {

@ -0,0 +1,31 @@
# Construa um jogo espacial
Um jogo espacial para ensinar fundamentos JavaScript mais avançados
Nesta lição, você aprenderá a construir seu próprio jogo espacial. Se você já jogou o jogo "Space Invaders", este jogo tem a mesma ideia: pilotar uma nave espacial e atirar em monstros que descem de cima. Veja como ficará o jogo finalizado:
![Finished game](../images/pewpew.gif)
Nestas seis lições, você aprenderá o seguinte:
- **Interaja** com o elemento Canvas para desenhar coisas em uma tela
- **Entenda** o sistema de coordenadas cartesianas
- **Aprenda** o padrão Pub-Sub para criar uma arquitetura de jogo de som mais fácil de manter e estender
- **Utilize** Async/Await para carregar recursos do jogo
- **Trate** eventos de teclado
## Visão Geral
- Teoria
- [Introdução à criação de jogos com JavaScript](../1-introduction/translations/README.pt-BR.md)
- Prática
- [Desenhando no Canvas](../2-drawing-to-canvas/translations/README.pt-BR.md)
- [Movendo elementos pela tela](../3-moving-elements-around/README.pt-BR.md)
- [Detecção de colisão](../4-collision-detection/README.pt-BR.md)
- [Mantendo a pontuação](../5-keeping-score/assignment.md/README.pt-BR.md)
- [Terminando e reiniciando o jogo](../6-end-condition/README.pt-BR.md)
## Créditos
Os assets utilizados para isso vieram de https://www.kenney.nl/.
Se você gosta de construir jogos, esses são alguns assets muito bons, muitos são gratuitos e alguns são pagos.

@ -301,7 +301,7 @@ Add a new template and route for a third page that shows the credits for this ap
## Review & Self Study ## Review & Self Study
Routing is one of the surprisingly tricky parts of web development, especially as the web moves from page refresh behaviors to Single Page Application page refreshes. Read a little about [how the Azure Static Web App service](https://docs.microsoft.com/azure/static-web-apps/routes?WT.mc_id=academic-77807-sagibbon) handles routing. Can you explain why some of the decisions described on that document are necessary? Routing is one of the surprisingly tricky parts of web development, especially as the web moves from page refresh behaviors to Single Page Application page refreshes. Read a little about [how the Azure Static Web App service](https://docs.microsoft.com/azure/static-web-apps/routes/?WT.mc_id=academic-77807-sagibbon) handles routing. Can you explain why some of the decisions described on that document are necessary?
## Assignment ## Assignment

@ -302,7 +302,7 @@ Ajoutez un nouveau modèle et une route pour une troisième page qui affiche les
## Révision et étude personnelle ## Révision et étude personnelle
Le routage est l'une des parties étonnamment délicates du développement Web, d'autant plus que le Web passe des comportements d'actualisation des pages aux actualisations des pages d'application à page unique. En savoir plus sur [comment le service Azure Static Web App](https://docs.microsoft.com/azure/static-web-apps/routes?WT.mc_id=academic-77807-sagibbon) gère le routage . Pouvez-vous expliquer pourquoi certaines des décisions décrites dans ce document sont nécessaires? Le routage est l'une des parties étonnamment délicates du développement Web, d'autant plus que le Web passe des comportements d'actualisation des pages aux actualisations des pages d'application à page unique. En savoir plus sur [comment le service Azure Static Web App](https://docs.microsoft.com/azure/static-web-apps/routes/?WT.mc_id=academic-77807-sagibbon) gère le routage . Pouvez-vous expliquer pourquoi certaines des décisions décrites dans ce document sont nécessaires?
## Affectation ## Affectation

@ -297,7 +297,7 @@ updateRoute();
## समीक्षा और स्व अध्ययन ## समीक्षा और स्व अध्ययन
रूटिंग वेब विकास के आश्चर्यजनक रूप से मुश्किल भागों में से एक है, विशेष रूप से वेब पेज रीफ्रेश बिहेवियर से लेकर सिंगल पेज एप्लीकेशन पेज रिफ्रेश तक चलता है। [कैसे Azure स्टेटिक वेब ऐप सेवा](https://docs.microsoft.com/azure/static-web-apps/routes?WT.mc_id=academic-77807-sagibbon) के बारे में थोड़ा पढ़ें रूटिंग । क्या आप बता सकते हैं कि उस दस्तावेज़ पर वर्णित कुछ निर्णय क्यों आवश्यक हैं? रूटिंग वेब विकास के आश्चर्यजनक रूप से मुश्किल भागों में से एक है, विशेष रूप से वेब पेज रीफ्रेश बिहेवियर से लेकर सिंगल पेज एप्लीकेशन पेज रिफ्रेश तक चलता है। [कैसे Azure स्टेटिक वेब ऐप सेवा](https://docs.microsoft.com/azure/static-web-apps/routes/?WT.mc_id=academic-77807-sagibbon) के बारे में थोड़ा पढ़ें रूटिंग । क्या आप बता सकते हैं कि उस दस्तावेज़ पर वर्णित कुछ निर्णय क्यों आवश्यक हैं?
## असाइनमेंट ## असाइनमेंट

@ -297,7 +297,7 @@ updateRoute();
## 復習と自己学習 ## 復習と自己学習
ルーティングは Web 開発の驚くほどトリッキーな部分の1つで、特に Web がページ更新の動作からシングルページアプリケーションのページ更新へと移行するにつれ、そのような部分が増えてきています。[Azure Static Web Apps プレビューでのルート](https://docs.microsoft.com/ja-jp/azure/static-web-apps/routes?WT.mc_id=academic-77807-sagibbon)がルーティングを扱うことについて少し読んでみてください。そのドキュメントに記載されているいくつかの決定が必要な理由を説明できますか? ルーティングは Web 開発の驚くほどトリッキーな部分の1つで、特に Web がページ更新の動作からシングルページアプリケーションのページ更新へと移行するにつれ、そのような部分が増えてきています。[Azure Static Web Apps プレビューでのルート](https://docs.microsoft.com/ja-jp/azure/static-web-apps/routes/?WT.mc_id=academic-77807-sagibbon)がルーティングを扱うことについて少し読んでみてください。そのドキュメントに記載されているいくつかの決定が必要な理由を説明できますか?
## 課題 ## 課題

@ -288,7 +288,7 @@ updateRoute();
## 리뷰 & 자기주도 학습 ## 리뷰 & 자기주도 학습
라우팅은 웹 개발의 놀랍고 까다로운 부분 중 하나입니다, 특히 웹의 페이지 새로고침 동작에서 단일 페이지 애플리케이션 페이지 새로고침으로 이동함에 따라 더욱 더 그렇습니다. [how the Azure Static Web App service](https://docs.microsoft.com/azure/static-web-apps/routes?WT.mc_id=academic-77807-sagibbon)의 라우터 제어에 대해 약간 봅니다. 그 문서에 기술된 몇 가지 결정이 필요한 이유를 설명할 수 있나요? 라우팅은 웹 개발의 놀랍고 까다로운 부분 중 하나입니다, 특히 웹의 페이지 새로고침 동작에서 단일 페이지 애플리케이션 페이지 새로고침으로 이동함에 따라 더욱 더 그렇습니다. [how the Azure Static Web App service](https://docs.microsoft.com/azure/static-web-apps/routes/?WT.mc_id=academic-77807-sagibbon)의 라우터 제어에 대해 약간 봅니다. 그 문서에 기술된 몇 가지 결정이 필요한 이유를 설명할 수 있나요?
## 과제 ## 과제

@ -299,7 +299,7 @@ Tambahkan templat dan laluan baru untuk halaman ketiga yang menunjukkan kredit u
## Mengkaji & Belajar Sendiri ## Mengkaji & Belajar Sendiri
Perutean adalah salah satu bahagian pengembangan web yang sangat mengejutkan, terutama ketika web beralih dari tingkah laku penyegaran halaman ke penyegaran halaman Aplikasi Halaman Tunggal. Baca sedikit mengenai [bagaimana perkhidmatan Aplikasi Web Statik Azure](https://docs.microsoft.com/azure/static-web-apps/routes?WT.mc_id=academic-77807-sagibbon) menangani penghalaan . Bolehkah anda menjelaskan mengapa beberapa keputusan yang dijelaskan pada dokumen itu diperlukan? Perutean adalah salah satu bahagian pengembangan web yang sangat mengejutkan, terutama ketika web beralih dari tingkah laku penyegaran halaman ke penyegaran halaman Aplikasi Halaman Tunggal. Baca sedikit mengenai [bagaimana perkhidmatan Aplikasi Web Statik Azure](https://docs.microsoft.com/azure/static-web-apps/routes/?WT.mc_id=academic-77807-sagibbon) menangani penghalaan . Bolehkah anda menjelaskan mengapa beberapa keputusan yang dijelaskan pada dokumen itu diperlukan?
## Tugasan ## Tugasan

@ -300,7 +300,7 @@ updateRoute();
## 複習與自學 ## 複習與自學
網頁路由是網頁開發中很棘手的部分,特別是將網頁切換轉變為單一頁面應用程式(Single Page Application)。閱讀關於[Azure Static Web App 提供服務的方式](https://docs.microsoft.com/azure/static-web-apps/routes?WT.mc_id=academic-77807-sagibbon)以處理網頁路由。你能解釋為什麼文件上的某些決定會如此重要呢? 網頁路由是網頁開發中很棘手的部分,特別是將網頁切換轉變為單一頁面應用程式(Single Page Application)。閱讀關於[Azure Static Web App 提供服務的方式](https://docs.microsoft.com/azure/static-web-apps/routes/?WT.mc_id=academic-77807-sagibbon)以處理網頁路由。你能解釋為什麼文件上的某些決定會如此重要呢?
## 作業 ## 作業

@ -111,7 +111,7 @@ navigate('/dashboard');
✅ Did you know that by default, you can only call server APIs from the *same domain and port* than the web page you are viewing? This is security mechanism enforced by browsers. But wait, our web app is running on `localhost:3000` whereas the server API is running on ` localhost:5000`, why does it work? By using a technique called [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS), it is possible to perform cross-origin HTTP requests if the server adds special headers to the response, allowing exceptions for specific domains. ✅ Did you know that by default, you can only call server APIs from the *same domain and port* than the web page you are viewing? This is security mechanism enforced by browsers. But wait, our web app is running on `localhost:3000` whereas the server API is running on ` localhost:5000`, why does it work? By using a technique called [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS), it is possible to perform cross-origin HTTP requests if the server adds special headers to the response, allowing exceptions for specific domains.
> Learn more about APIs by taking this [lesson](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art?WT.mc_id=academic-77807-sagibbon) > Learn more about APIs by taking this [lesson](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art/?WT.mc_id=academic-77807-sagibbon)
## Update HTML to display data ## Update HTML to display data

@ -111,7 +111,7 @@ navigate('/dashboard');
✅ Saviez-vous que par défaut, vous ne pouvez appeler les API du serveur quà partir du *même domaine et port* que la page Web que vous consultez? Il sagit dun mécanisme de sécurité appliqué par les navigateurs. Mais attendez, notre application web sexécute sur 'localhost:3000' alors que lAPI du serveur sexécute sur `localhost:3000`, pourquoi cela fonctionne-t-il? En utilisant une technique appelée [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS), il est possible deffectuer des requêtes HTTP inter-origines si le serveur ajoute des en-têtes spéciaux à la réponse, ce qui permet des exceptions pour des domaines spécifiques. ✅ Saviez-vous que par défaut, vous ne pouvez appeler les API du serveur quà partir du *même domaine et port* que la page Web que vous consultez? Il sagit dun mécanisme de sécurité appliqué par les navigateurs. Mais attendez, notre application web sexécute sur 'localhost:3000' alors que lAPI du serveur sexécute sur `localhost:3000`, pourquoi cela fonctionne-t-il? En utilisant une technique appelée [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS), il est possible deffectuer des requêtes HTTP inter-origines si le serveur ajoute des en-têtes spéciaux à la réponse, ce qui permet des exceptions pour des domaines spécifiques.
> En savoir plus sur les API en suivant cette [leçon](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art?WT.mc_id=academic-77807-sagibbon) > En savoir plus sur les API en suivant cette [leçon](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art/?WT.mc_id=academic-77807-sagibbon)
## Mettre à jour le code HTML pour afficher les données ## Mettre à jour le code HTML pour afficher les données

@ -111,7 +111,7 @@ navigate('/dashboard');
✅ क्या आप जानते हैं कि डिफ़ॉल्ट रूप से, आप सर्वर API को केवल उसी वेब पेज से *उसी डोमेन और पोर्ट* से कॉल कर सकते हैं जो आप देख रहे हैं? यह सुरक्षा तंत्र है जो ब्राउज़र द्वारा लागू किया जाता है। लेकिन रुकिए, हमारा वेब ऐप `localhost:3000` पर चल रहा है जबकि सर्वर एपीआई `localhost:5000` पर चल रहा है, यह काम क्यों नहीं करता है? [क्रॉस-ओरिजिनल रिसोर्स शेयरिंग (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS) नामक तकनीक का उपयोग करके, क्रॉस-ऑरिजनल HTTP रिक्वेस्ट करना संभव है अगर सर्वर प्रतिक्रिया के लिए विशेष हेडर जोड़ता है, विशिष्ट डोमेन के लिए अपवाद की अनुमति देता है। ✅ क्या आप जानते हैं कि डिफ़ॉल्ट रूप से, आप सर्वर API को केवल उसी वेब पेज से *उसी डोमेन और पोर्ट* से कॉल कर सकते हैं जो आप देख रहे हैं? यह सुरक्षा तंत्र है जो ब्राउज़र द्वारा लागू किया जाता है। लेकिन रुकिए, हमारा वेब ऐप `localhost:3000` पर चल रहा है जबकि सर्वर एपीआई `localhost:5000` पर चल रहा है, यह काम क्यों नहीं करता है? [क्रॉस-ओरिजिनल रिसोर्स शेयरिंग (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS) नामक तकनीक का उपयोग करके, क्रॉस-ऑरिजनल HTTP रिक्वेस्ट करना संभव है अगर सर्वर प्रतिक्रिया के लिए विशेष हेडर जोड़ता है, विशिष्ट डोमेन के लिए अपवाद की अनुमति देता है।
> इसे [पाठ](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art?WT.mc_id=academic-77807-sagibbon) ले कर एपीआई के बारे में और जानें > इसे [पाठ](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art/?WT.mc_id=academic-77807-sagibbon) ले कर एपीआई के बारे में और जानें
## डेटा प्रदर्शित करने के लिए HTML अपडेट करें ## डेटा प्रदर्शित करने के लिए HTML अपडेट करें

@ -111,7 +111,7 @@ navigate('/dashboard');
✅ Tahukah anda bahawa secara lalai, anda hanya dapat memanggil API pelayan dari *domain dan port yang sama* daripada halaman web yang anda lihat? Ini adalah mekanisme keselamatan yang dikuatkuasakan oleh penyemak imbas. Tetapi tunggu, aplikasi web kami berjalan di `localhost: 3000` sedangkan API pelayan berjalan di `localhost: 5000`, mengapa ia berfungsi? Dengan menggunakan teknik yang disebut [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS), adalah mungkin untuk melakukan permintaan HTTP bersilang asal jika pelayan menambah tajuk khas untuk respons, yang memungkinkan pengecualian untuk domain tertentu. ✅ Tahukah anda bahawa secara lalai, anda hanya dapat memanggil API pelayan dari *domain dan port yang sama* daripada halaman web yang anda lihat? Ini adalah mekanisme keselamatan yang dikuatkuasakan oleh penyemak imbas. Tetapi tunggu, aplikasi web kami berjalan di `localhost: 3000` sedangkan API pelayan berjalan di `localhost: 5000`, mengapa ia berfungsi? Dengan menggunakan teknik yang disebut [Cross-Origin Resource Sharing (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS), adalah mungkin untuk melakukan permintaan HTTP bersilang asal jika pelayan menambah tajuk khas untuk respons, yang memungkinkan pengecualian untuk domain tertentu.
> Ketahui lebih lanjut mengenai API dengan mengambil [pelajaran](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art?WT.mc_id=academic-77807-sagibbon) > Ketahui lebih lanjut mengenai API dengan mengambil [pelajaran](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art/?WT.mc_id=academic-77807-sagibbon)
## Kemas kini HTML untuk memaparkan data ## Kemas kini HTML untuk memaparkan data

@ -113,7 +113,7 @@ navigate('/dashboard');
✅ 你知道在預設上,你只能從*同一個網域(domain)與連接埠(port)*的網頁呼叫伺服器 APIs 嗎?這是瀏覽器強制性的安全機制。但我們的網頁應用程式在 `localhost:3000` 上執行,而伺服器 API 則在 `localhost:5000` 上執行。為什麼這樣能正常運作?利用[跨來源資源共用 (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS),只要伺服器添加特殊的標頭檔到網頁回應中,我們就可以處理跨資源的 HTTP 請求,允許特殊的網域進行呼叫。 ✅ 你知道在預設上,你只能從*同一個網域(domain)與連接埠(port)*的網頁呼叫伺服器 APIs 嗎?這是瀏覽器強制性的安全機制。但我們的網頁應用程式在 `localhost:3000` 上執行,而伺服器 API 則在 `localhost:5000` 上執行。為什麼這樣能正常運作?利用[跨來源資源共用 (CORS)](https://developer.mozilla.org/docs/Web/HTTP/CORS),只要伺服器添加特殊的標頭檔到網頁回應中,我們就可以處理跨資源的 HTTP 請求,允許特殊的網域進行呼叫。
> 藉由前往[此課程](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art?WT.mc_id=academic-77807-sagibbon)學習更多有關 API 的資訊。 > 藉由前往[此課程](https://docs.microsoft.com/learn/modules/use-apis-discover-museum-art/?WT.mc_id=academic-77807-sagibbon)學習更多有關 API 的資訊。
## 更新 HTML 顯示資料 ## 更新 HTML 顯示資料

@ -16,6 +16,6 @@ In this project, you'll learn how to build a fictional bank. These lessons inclu
These lessons were written with :hearts: by [Yohan Lasorsa](https://twitter.com/sinedied). These lessons were written with :hearts: by [Yohan Lasorsa](https://twitter.com/sinedied).
If you're interested to learn how to build the [server API](/7-bank-project/api/README.md) used in these lessons, you can follow [this series of videos](https://aka.ms/NodeBeginner?WT.mc_id=academic-77807-sagibbon) (in particular videos 17 through 21). If you're interested to learn how to build the [server API](/7-bank-project/api/README.md) used in these lessons, you can follow [this series of videos](https://aka.ms/NodeBeginner) (in particular videos 17 through 21).
You can also take a look at [this interactive Learn tutorial](https://aka.ms/learn/express-api). You can also take a look at [this interactive Learn tutorial](https://aka.ms/learn/express-api).

@ -50,12 +50,12 @@
"dev": true "dev": true
}, },
"accepts": { "accepts": {
"version": "1.3.7", "version": "1.3.8",
"resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.7.tgz", "resolved": "https://registry.npmjs.org/accepts/-/accepts-1.3.8.tgz",
"integrity": "sha512-Il80Qs2WjYlJIBNzNkK6KYqlVMTbZLXgHx2oT0pU/fjRHyEp+PEfEPY0R3WCwAGVOtauxh1hOxNgIf5bv7dQpA==", "integrity": "sha512-PYAthTa2m2VKxuvSD3DPC/Gy+U+sOA1LAuT8mkmRuvw+NACSaeXEQ+NHcVF7rONl6qcaxV3Uuemwawk+7+SJLw==",
"requires": { "requires": {
"mime-types": "~2.1.24", "mime-types": "~2.1.34",
"negotiator": "0.6.2" "negotiator": "0.6.3"
} }
}, },
"acorn": { "acorn": {
@ -115,7 +115,7 @@
"array-flatten": { "array-flatten": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz", "resolved": "https://registry.npmjs.org/array-flatten/-/array-flatten-1.1.1.tgz",
"integrity": "sha1-ml9pkFGx5wczKPKgCJaLZOopVdI=" "integrity": "sha512-PCVAQswWemu6UdxsDFFX/+gVeYqKAod3D3UVm91jHwynguOwAvYPhx8nNlM++NqRcK6CxxpUafjmhIdKiHibqg=="
}, },
"astral-regex": { "astral-regex": {
"version": "1.0.0", "version": "1.0.0",
@ -130,20 +130,22 @@
"dev": true "dev": true
}, },
"body-parser": { "body-parser": {
"version": "1.19.0", "version": "1.20.1",
"resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.19.0.tgz", "resolved": "https://registry.npmjs.org/body-parser/-/body-parser-1.20.1.tgz",
"integrity": "sha512-dhEPs72UPbDnAQJ9ZKMNTP6ptJaionhP5cBb541nXPlW60Jepo9RV/a4fX4XWW9CuFNK22krhrj1+rgzifNCsw==", "integrity": "sha512-jWi7abTbYwajOytWCQc37VulmWiRae5RyTpaCyDcS5/lMdtwSz5lOpDE67srw/HYe35f1z3fDQw+3txg7gNtWw==",
"requires": { "requires": {
"bytes": "3.1.0", "bytes": "3.1.2",
"content-type": "~1.0.4", "content-type": "~1.0.4",
"debug": "2.6.9", "debug": "2.6.9",
"depd": "~1.1.2", "depd": "2.0.0",
"http-errors": "1.7.2", "destroy": "1.2.0",
"http-errors": "2.0.0",
"iconv-lite": "0.4.24", "iconv-lite": "0.4.24",
"on-finished": "~2.3.0", "on-finished": "2.4.1",
"qs": "6.7.0", "qs": "6.11.0",
"raw-body": "2.4.0", "raw-body": "2.5.1",
"type-is": "~1.6.17" "type-is": "~1.6.18",
"unpipe": "1.0.0"
}, },
"dependencies": { "dependencies": {
"debug": { "debug": {
@ -157,7 +159,7 @@
"ms": { "ms": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
} }
} }
}, },
@ -172,9 +174,18 @@
} }
}, },
"bytes": { "bytes": {
"version": "3.1.0", "version": "3.1.2",
"resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.0.tgz", "resolved": "https://registry.npmjs.org/bytes/-/bytes-3.1.2.tgz",
"integrity": "sha512-zauLjrfCG+xvoyaqLoV8bLVXXNGC4JqlxFCutSDWA6fJrTo2ZuvLYTqZ7aHBLZSMOopbzwv8f+wZcVzfVTI2Dg==" "integrity": "sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg=="
},
"call-bind": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/call-bind/-/call-bind-1.0.2.tgz",
"integrity": "sha512-7O+FbCihrB5WGbFYesctwmTKae6rOiIzmz1icreWJ+0aA7LJfuqhEso2T9ncpcFtzMQtzXf2QGGueWJGTYsqrA==",
"requires": {
"function-bind": "^1.1.1",
"get-intrinsic": "^1.0.2"
}
}, },
"callsites": { "callsites": {
"version": "3.1.0", "version": "3.1.0",
@ -256,11 +267,11 @@
"dev": true "dev": true
}, },
"content-disposition": { "content-disposition": {
"version": "0.5.3", "version": "0.5.4",
"resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.3.tgz", "resolved": "https://registry.npmjs.org/content-disposition/-/content-disposition-0.5.4.tgz",
"integrity": "sha512-ExO0774ikEObIAEV9kDo50o+79VCUdEB6n6lzKgGwupcVeRlhrj3qGAfwq8G6uBJjkqLrhT0qEYFcWng8z1z0g==", "integrity": "sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==",
"requires": { "requires": {
"safe-buffer": "5.1.2" "safe-buffer": "5.2.1"
} }
}, },
"content-type": { "content-type": {
@ -269,14 +280,14 @@
"integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA==" "integrity": "sha512-hIP3EEPs8tB9AT1L+NUqtwOAps4mk2Zob89MWXMHjHWg9milF/j4osnnQLXBCBFBk/tvIG/tUc9mOUJiPBhPXA=="
}, },
"cookie": { "cookie": {
"version": "0.4.0", "version": "0.5.0",
"resolved": "https://registry.npmjs.org/cookie/-/cookie-0.4.0.tgz", "resolved": "https://registry.npmjs.org/cookie/-/cookie-0.5.0.tgz",
"integrity": "sha512-+Hp8fLp57wnUSt0tY0tHEXh4voZRDnoIrZPqlo3DPiI4y9lwg/jqx+1Om94/W6ZaPDOUbnjOt/99w66zk+l1Xg==" "integrity": "sha512-YZ3GUyn/o8gfKJlnlX7g7xq4gyO6OSuhGPKaaGssGB2qgDUS0gPgtTvoyZLTt9Ab6dC4hfc9dV5arkvc/OCmrw=="
}, },
"cookie-signature": { "cookie-signature": {
"version": "1.0.6", "version": "1.0.6",
"resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz", "resolved": "https://registry.npmjs.org/cookie-signature/-/cookie-signature-1.0.6.tgz",
"integrity": "sha1-4wOogrNCzD7oylE6eZmXNNqzriw=" "integrity": "sha512-QADzlaHc8icV8I7vbaJXJwod9HWYp8uCqf1xa4OfNu1T7JVxQIrUgOWtHdNDtPiywmFbiS12VjotIXLrKM3orQ=="
}, },
"cors": { "cors": {
"version": "2.8.5", "version": "2.8.5",
@ -314,14 +325,14 @@
"dev": true "dev": true
}, },
"depd": { "depd": {
"version": "1.1.2", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/depd/-/depd-1.1.2.tgz", "resolved": "https://registry.npmjs.org/depd/-/depd-2.0.0.tgz",
"integrity": "sha1-m81S4UwJd2PnSbJ0xDRu0uVgtak=" "integrity": "sha512-g7nH6P6dyDioJogAAGprGpCtVImJhpPk/roCzdb3fIh61/s/nPsfR6onyMwkCAR/OlC3yBC0lESvUoQEAssIrw=="
}, },
"destroy": { "destroy": {
"version": "1.0.4", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz", "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.2.0.tgz",
"integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA=" "integrity": "sha512-2sJGJTaXIIaR1w4iJSNoN0hnMY7Gpc/n8D4qSCJw8QqFWXf7cuAgnEHxBpweaVcPevC2l3KpjYCx3NypQQgaJg=="
}, },
"doctrine": { "doctrine": {
"version": "3.0.0", "version": "3.0.0",
@ -335,7 +346,7 @@
"ee-first": { "ee-first": {
"version": "1.1.1", "version": "1.1.1",
"resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz", "resolved": "https://registry.npmjs.org/ee-first/-/ee-first-1.1.1.tgz",
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=" "integrity": "sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow=="
}, },
"emoji-regex": { "emoji-regex": {
"version": "7.0.3", "version": "7.0.3",
@ -346,7 +357,7 @@
"encodeurl": { "encodeurl": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
"integrity": "sha1-rT/0yG7C0CkyL1oCw6mmBslbP1k=" "integrity": "sha512-TPJXq8JqFaVYm2CWmPvnP2Iyo4ZSM7/QKcSmuMLDObfpH5fi7RUGmd/rTDf+rut/saiDiQEeVTNgAmJEdAOx0w=="
}, },
"enquirer": { "enquirer": {
"version": "2.3.6", "version": "2.3.6",
@ -360,7 +371,7 @@
"escape-html": { "escape-html": {
"version": "1.0.3", "version": "1.0.3",
"resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz", "resolved": "https://registry.npmjs.org/escape-html/-/escape-html-1.0.3.tgz",
"integrity": "sha1-Aljq5NPQwJdN4cFpGI7wBR0dGYg=" "integrity": "sha512-NiSupZ4OeuGwr68lGIeym/ksIZMJodUGOSCZ/FSnTxcrekbvqrgdUxlJOMpijaKZVjAJrWrGs/6Jy8OMuyj9ow=="
}, },
"escape-string-regexp": { "escape-string-regexp": {
"version": "1.0.5", "version": "1.0.5",
@ -495,40 +506,41 @@
"etag": { "etag": {
"version": "1.8.1", "version": "1.8.1",
"resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz", "resolved": "https://registry.npmjs.org/etag/-/etag-1.8.1.tgz",
"integrity": "sha1-Qa4u62XvpiJorr/qg6x9eSmbCIc=" "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg=="
}, },
"express": { "express": {
"version": "4.17.1", "version": "4.18.2",
"resolved": "https://registry.npmjs.org/express/-/express-4.17.1.tgz", "resolved": "https://registry.npmjs.org/express/-/express-4.18.2.tgz",
"integrity": "sha512-mHJ9O79RqluphRrcw2X/GTh3k9tVv8YcoyY4Kkh4WDMUYKRZUq0h1o0w2rrrxBqM7VoeUVqgb27xlEMXTnYt4g==", "integrity": "sha512-5/PsL6iGPdfQ/lKM1UuielYgv3BUoJfz1aUwU9vHZ+J7gyvwdQXFEBIEIaxeGf0GIcreATNyBExtalisDbuMqQ==",
"requires": { "requires": {
"accepts": "~1.3.7", "accepts": "~1.3.8",
"array-flatten": "1.1.1", "array-flatten": "1.1.1",
"body-parser": "1.19.0", "body-parser": "1.20.1",
"content-disposition": "0.5.3", "content-disposition": "0.5.4",
"content-type": "~1.0.4", "content-type": "~1.0.4",
"cookie": "0.4.0", "cookie": "0.5.0",
"cookie-signature": "1.0.6", "cookie-signature": "1.0.6",
"debug": "2.6.9", "debug": "2.6.9",
"depd": "~1.1.2", "depd": "2.0.0",
"encodeurl": "~1.0.2", "encodeurl": "~1.0.2",
"escape-html": "~1.0.3", "escape-html": "~1.0.3",
"etag": "~1.8.1", "etag": "~1.8.1",
"finalhandler": "~1.1.2", "finalhandler": "1.2.0",
"fresh": "0.5.2", "fresh": "0.5.2",
"http-errors": "2.0.0",
"merge-descriptors": "1.0.1", "merge-descriptors": "1.0.1",
"methods": "~1.1.2", "methods": "~1.1.2",
"on-finished": "~2.3.0", "on-finished": "2.4.1",
"parseurl": "~1.3.3", "parseurl": "~1.3.3",
"path-to-regexp": "0.1.7", "path-to-regexp": "0.1.7",
"proxy-addr": "~2.0.5", "proxy-addr": "~2.0.7",
"qs": "6.7.0", "qs": "6.11.0",
"range-parser": "~1.2.1", "range-parser": "~1.2.1",
"safe-buffer": "5.1.2", "safe-buffer": "5.2.1",
"send": "0.17.1", "send": "0.18.0",
"serve-static": "1.14.1", "serve-static": "1.15.0",
"setprototypeof": "1.1.1", "setprototypeof": "1.2.0",
"statuses": "~1.5.0", "statuses": "2.0.1",
"type-is": "~1.6.18", "type-is": "~1.6.18",
"utils-merge": "1.0.1", "utils-merge": "1.0.1",
"vary": "~1.1.2" "vary": "~1.1.2"
@ -545,7 +557,7 @@
"ms": { "ms": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
} }
} }
}, },
@ -577,16 +589,16 @@
} }
}, },
"finalhandler": { "finalhandler": {
"version": "1.1.2", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.1.2.tgz", "resolved": "https://registry.npmjs.org/finalhandler/-/finalhandler-1.2.0.tgz",
"integrity": "sha512-aAWcW57uxVNrQZqFXjITpW3sIUQmHGG3qSb9mUah9MgMC4NeWhNOlNjXEYq3HjRAvL6arUviZGGJsBg6z0zsWA==", "integrity": "sha512-5uXcUVftlQMFnWC9qu/svkWv3GTd2PfUhK/3PLkYNAe7FbqJMt3515HaxE6eRL74GdsriiwujiawdaB1BpEISg==",
"requires": { "requires": {
"debug": "2.6.9", "debug": "2.6.9",
"encodeurl": "~1.0.2", "encodeurl": "~1.0.2",
"escape-html": "~1.0.3", "escape-html": "~1.0.3",
"on-finished": "~2.3.0", "on-finished": "2.4.1",
"parseurl": "~1.3.3", "parseurl": "~1.3.3",
"statuses": "~1.5.0", "statuses": "2.0.1",
"unpipe": "~1.0.0" "unpipe": "~1.0.0"
}, },
"dependencies": { "dependencies": {
@ -601,7 +613,7 @@
"ms": { "ms": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
} }
} }
}, },
@ -623,14 +635,14 @@
"dev": true "dev": true
}, },
"forwarded": { "forwarded": {
"version": "0.1.2", "version": "0.2.0",
"resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.1.2.tgz", "resolved": "https://registry.npmjs.org/forwarded/-/forwarded-0.2.0.tgz",
"integrity": "sha1-mMI9qxF1ZXuMBXPozszZGw/xjIQ=" "integrity": "sha512-buRG0fpBtRHSTCOASe6hD258tEubFoRLb4ZNA6NxMVHNw2gOcwHo9wyablzMzOA5z9xA9L1KNjk/Nt6MT9aYow=="
}, },
"fresh": { "fresh": {
"version": "0.5.2", "version": "0.5.2",
"resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz", "resolved": "https://registry.npmjs.org/fresh/-/fresh-0.5.2.tgz",
"integrity": "sha1-PYyt2Q2XZWn6g1qx+OSyOhBWBac=" "integrity": "sha512-zJ2mQYM18rEFOudeV4GShTGIQ7RbzA7ozbU9I/XBpm7kqgMywgmylMwXHxZJmkVoYkna9d2pVXVXPdYTP9ej8Q=="
}, },
"fs.realpath": { "fs.realpath": {
"version": "1.0.0", "version": "1.0.0",
@ -638,12 +650,27 @@
"integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=", "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
"dev": true "dev": true
}, },
"function-bind": {
"version": "1.1.1",
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.1.tgz",
"integrity": "sha512-yIovAzMX49sF8Yl58fSCWJ5svSLuaibPxXQJFLmBObTuCr0Mf1KiPopGM9NiFjiYBCbfaa2Fh6breQ6ANVTI0A=="
},
"functional-red-black-tree": { "functional-red-black-tree": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz", "resolved": "https://registry.npmjs.org/functional-red-black-tree/-/functional-red-black-tree-1.0.1.tgz",
"integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=", "integrity": "sha1-GwqzvVU7Kg1jmdKcDj6gslIHgyc=",
"dev": true "dev": true
}, },
"get-intrinsic": {
"version": "1.1.3",
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.1.3.tgz",
"integrity": "sha512-QJVz1Tj7MS099PevUG5jvnt9tSkXN8K14dxQlikJuPt4uD9hHAHjLyLBiLR5zELelBdD9QNRAXZzsJx0WaDL9A==",
"requires": {
"function-bind": "^1.1.1",
"has": "^1.0.3",
"has-symbols": "^1.0.3"
}
},
"glob": { "glob": {
"version": "7.1.6", "version": "7.1.6",
"resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz",
@ -676,29 +703,35 @@
"type-fest": "^0.8.1" "type-fest": "^0.8.1"
} }
}, },
"has": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has/-/has-1.0.3.tgz",
"integrity": "sha512-f2dvO0VU6Oej7RkWJGrehjbzMAjFp5/VKPp5tTpWIV4JHHZK1/BxbFRtf/siA2SWTe09caDmVtYYzWEIbBS4zw==",
"requires": {
"function-bind": "^1.1.1"
}
},
"has-flag": { "has-flag": {
"version": "3.0.0", "version": "3.0.0",
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
"integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=", "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
"dev": true "dev": true
}, },
"has-symbols": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.0.3.tgz",
"integrity": "sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A=="
},
"http-errors": { "http-errors": {
"version": "1.7.2", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/http-errors/-/http-errors-1.7.2.tgz", "resolved": "https://registry.npmjs.org/http-errors/-/http-errors-2.0.0.tgz",
"integrity": "sha512-uUQBt3H/cSIVfch6i1EuPNy/YsRSOUBXTVfZ+yR7Zjez3qjBz6i9+i4zjNaoqcoFVI4lQJ5plg63TvGfRSDCRg==", "integrity": "sha512-FtwrG/euBzaEjYeRqOgly7G0qviiXoJWnvEH2Z1plBdXgbyjv34pHTSb9zoeHMyDy33+DWy5Wt9Wo+TURtOYSQ==",
"requires": { "requires": {
"depd": "~1.1.2", "depd": "2.0.0",
"inherits": "2.0.3", "inherits": "2.0.4",
"setprototypeof": "1.1.1", "setprototypeof": "1.2.0",
"statuses": ">= 1.5.0 < 2", "statuses": "2.0.1",
"toidentifier": "1.0.0" "toidentifier": "1.0.1"
},
"dependencies": {
"inherits": {
"version": "2.0.3",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.3.tgz",
"integrity": "sha1-Yzwsg+PaQqUC9SRmAiSA9CCCYd4="
}
} }
}, },
"iconv-lite": { "iconv-lite": {
@ -744,8 +777,7 @@
"inherits": { "inherits": {
"version": "2.0.4", "version": "2.0.4",
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
"integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ=="
"dev": true
}, },
"ipaddr.js": { "ipaddr.js": {
"version": "1.9.1", "version": "1.9.1",
@ -826,17 +858,17 @@
"media-typer": { "media-typer": {
"version": "0.3.0", "version": "0.3.0",
"resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz", "resolved": "https://registry.npmjs.org/media-typer/-/media-typer-0.3.0.tgz",
"integrity": "sha1-hxDXrwqmJvj/+hzgAWhUUmMlV0g=" "integrity": "sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ=="
}, },
"merge-descriptors": { "merge-descriptors": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz", "resolved": "https://registry.npmjs.org/merge-descriptors/-/merge-descriptors-1.0.1.tgz",
"integrity": "sha1-sAqqVW3YtEVoFQ7J0blT8/kMu2E=" "integrity": "sha512-cCi6g3/Zr1iqQi6ySbseM1Xvooa98N0w31jzUYrXPX2xqObmFGHJ0tQ5u74H3mVh7wLouTseZyYIq39g8cNp1w=="
}, },
"methods": { "methods": {
"version": "1.1.2", "version": "1.1.2",
"resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz", "resolved": "https://registry.npmjs.org/methods/-/methods-1.1.2.tgz",
"integrity": "sha1-VSmk1nZUE07cxSZmVoNbD4Ua/O4=" "integrity": "sha512-iclAHeNqNm68zFtnZ0e+1L2yUIdvzNoauKU4WBA3VvH/vPFieF7qfRlwUZU+DA9P9bPXIS90ulxoUoCH23sV2w=="
}, },
"mime": { "mime": {
"version": "1.6.0", "version": "1.6.0",
@ -844,22 +876,22 @@
"integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==" "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg=="
}, },
"mime-db": { "mime-db": {
"version": "1.44.0", "version": "1.52.0",
"resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.44.0.tgz", "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz",
"integrity": "sha512-/NOTfLrsPBVeH7YtFPgsVWveuL+4SjjYxaQ1xtM1KMFj7HdxlBlxeyNLzhyJVx7r4rZGJAZ/6lkKCitSc/Nmpg==" "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg=="
}, },
"mime-types": { "mime-types": {
"version": "2.1.27", "version": "2.1.35",
"resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.27.tgz", "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz",
"integrity": "sha512-JIhqnCasI9yD+SsmkquHBxTSEuZdQX5BuQnS2Vc7puQQQ+8yiP5AY5uWhpdv4YL4VM5c6iliiYWPgJ/nJQLp7w==", "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==",
"requires": { "requires": {
"mime-db": "1.44.0" "mime-db": "1.52.0"
} }
}, },
"minimatch": { "minimatch": {
"version": "3.0.4", "version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true, "dev": true,
"requires": { "requires": {
"brace-expansion": "^1.1.7" "brace-expansion": "^1.1.7"
@ -893,19 +925,24 @@
"dev": true "dev": true
}, },
"negotiator": { "negotiator": {
"version": "0.6.2", "version": "0.6.3",
"resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.2.tgz", "resolved": "https://registry.npmjs.org/negotiator/-/negotiator-0.6.3.tgz",
"integrity": "sha512-hZXc7K2e+PgeI1eDBe/10Ard4ekbfrrqG8Ep+8Jmf4JID2bNg7NvCPOZN+kfF574pFQI7mum2AUqDidoKqcTOw==" "integrity": "sha512-+EUsqGPLsM+j/zdChZjsnX51g4XrHFOIXwfnCVPGlQk/k5giakcKsuxCObBRu6DSm9opw/O6slWbJdghQM4bBg=="
}, },
"object-assign": { "object-assign": {
"version": "4.1.1", "version": "4.1.1",
"resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz", "resolved": "https://registry.npmjs.org/object-assign/-/object-assign-4.1.1.tgz",
"integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM=" "integrity": "sha1-IQmtx5ZYh8/AXLvUQsrIv7s2CGM="
}, },
"object-inspect": {
"version": "1.12.2",
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.12.2.tgz",
"integrity": "sha512-z+cPxW0QGUp0mcqcsgQyLVRDoXFQbXOwBaqyF7VIgI4TWNQsDHrBpUQslRmIfAoYWdYzs6UlKJtB2XJpTaNSpQ=="
},
"on-finished": { "on-finished": {
"version": "2.3.0", "version": "2.4.1",
"resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.4.1.tgz",
"integrity": "sha1-IPEzZIGwg811M3mSoWlxqi2QaUc=", "integrity": "sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==",
"requires": { "requires": {
"ee-first": "1.1.1" "ee-first": "1.1.1"
} }
@ -962,7 +999,7 @@
"path-to-regexp": { "path-to-regexp": {
"version": "0.1.7", "version": "0.1.7",
"resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz", "resolved": "https://registry.npmjs.org/path-to-regexp/-/path-to-regexp-0.1.7.tgz",
"integrity": "sha1-32BBeABfUi8V60SQ5yR6G/qmf4w=" "integrity": "sha512-5DFkuoqlv1uYQKxy8omFBeJPQcdoE07Kv2sferDCrAq1ohOU+MSDswDIbnx3YAM60qIOnYa53wBhXW0EbMonrQ=="
}, },
"prelude-ls": { "prelude-ls": {
"version": "1.2.1", "version": "1.2.1",
@ -983,11 +1020,11 @@
"dev": true "dev": true
}, },
"proxy-addr": { "proxy-addr": {
"version": "2.0.6", "version": "2.0.7",
"resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.6.tgz", "resolved": "https://registry.npmjs.org/proxy-addr/-/proxy-addr-2.0.7.tgz",
"integrity": "sha512-dh/frvCBVmSsDYzw6n926jv974gddhkFPfiN8hPOi30Wax25QZyZEGveluCgliBnqmuM+UJmBErbAUFIoDbjOw==", "integrity": "sha512-llQsMLSUDUPT44jdrU/O37qlnifitDP+ZwrmmZcoSKyLKvtZxpyV0n2/bD/N4tBAAZ/gJEdZU7KMraoK1+XYAg==",
"requires": { "requires": {
"forwarded": "~0.1.2", "forwarded": "0.2.0",
"ipaddr.js": "1.9.1" "ipaddr.js": "1.9.1"
} }
}, },
@ -998,9 +1035,12 @@
"dev": true "dev": true
}, },
"qs": { "qs": {
"version": "6.7.0", "version": "6.11.0",
"resolved": "https://registry.npmjs.org/qs/-/qs-6.7.0.tgz", "resolved": "https://registry.npmjs.org/qs/-/qs-6.11.0.tgz",
"integrity": "sha512-VCdBRNFTX1fyE7Nb6FYoURo/SPe62QCaAyzJvUjwRaIsc+NePBEniHlvxFmmX56+HZphIGtV0XeCirBtpDrTyQ==" "integrity": "sha512-MvjoMCJwEarSbUYk5O+nmoSzSutSsTwF85zcHPQ9OrlFoZOYIjaqBAJIqIXjptyD5vThxGq52Xu/MaJzRkIk4Q==",
"requires": {
"side-channel": "^1.0.4"
}
}, },
"range-parser": { "range-parser": {
"version": "1.2.1", "version": "1.2.1",
@ -1008,12 +1048,12 @@
"integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg=="
}, },
"raw-body": { "raw-body": {
"version": "2.4.0", "version": "2.5.1",
"resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.4.0.tgz", "resolved": "https://registry.npmjs.org/raw-body/-/raw-body-2.5.1.tgz",
"integrity": "sha512-4Oz8DUIwdvoa5qMJelxipzi/iJIi40O5cGV1wNYp5hvZP8ZN0T+jiNkL0QepXs+EsQ9XJ8ipEDoiH70ySUJP3Q==", "integrity": "sha512-qqJBtEyVgS0ZmPGdCFPWJ3FreoqvG4MVQln/kCgF7Olq95IbOp0/BWyMwbdtn4VTvkM8Y7khCQ2Xgk/tcrCXig==",
"requires": { "requires": {
"bytes": "3.1.0", "bytes": "3.1.2",
"http-errors": "1.7.2", "http-errors": "2.0.0",
"iconv-lite": "0.4.24", "iconv-lite": "0.4.24",
"unpipe": "1.0.0" "unpipe": "1.0.0"
} }
@ -1040,9 +1080,9 @@
} }
}, },
"safe-buffer": { "safe-buffer": {
"version": "5.1.2", "version": "5.2.1",
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz",
"integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==" "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ=="
}, },
"safer-buffer": { "safer-buffer": {
"version": "2.1.2", "version": "2.1.2",
@ -1056,23 +1096,23 @@
"dev": true "dev": true
}, },
"send": { "send": {
"version": "0.17.1", "version": "0.18.0",
"resolved": "https://registry.npmjs.org/send/-/send-0.17.1.tgz", "resolved": "https://registry.npmjs.org/send/-/send-0.18.0.tgz",
"integrity": "sha512-BsVKsiGcQMFwT8UxypobUKyv7irCNRHk1T0G680vk88yf6LBByGcZJOTJCrTP2xVN6yI+XjPJcNuE3V4fT9sAg==", "integrity": "sha512-qqWzuOjSFOuqPjFe4NOsMLafToQQwBSOEpS+FwEt3A2V3vKubTquT3vmLTQpFgMXp8AlFWFuP1qKaJZOtPpVXg==",
"requires": { "requires": {
"debug": "2.6.9", "debug": "2.6.9",
"depd": "~1.1.2", "depd": "2.0.0",
"destroy": "~1.0.4", "destroy": "1.2.0",
"encodeurl": "~1.0.2", "encodeurl": "~1.0.2",
"escape-html": "~1.0.3", "escape-html": "~1.0.3",
"etag": "~1.8.1", "etag": "~1.8.1",
"fresh": "0.5.2", "fresh": "0.5.2",
"http-errors": "~1.7.2", "http-errors": "2.0.0",
"mime": "1.6.0", "mime": "1.6.0",
"ms": "2.1.1", "ms": "2.1.3",
"on-finished": "~2.3.0", "on-finished": "2.4.1",
"range-parser": "~1.2.1", "range-parser": "~1.2.1",
"statuses": "~1.5.0" "statuses": "2.0.1"
}, },
"dependencies": { "dependencies": {
"debug": { "debug": {
@ -1086,32 +1126,32 @@
"ms": { "ms": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz", "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
"integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=" "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A=="
} }
} }
}, },
"ms": { "ms": {
"version": "2.1.1", "version": "2.1.3",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.1.tgz", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz",
"integrity": "sha512-tgp+dl5cGk28utYktBsrFqA7HKgrhgPsg6Z/EfhWI4gl1Hwq8B/GmY/0oXZ6nF8hDVesS/FpnYaD/kOWhYQvyg==" "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA=="
} }
} }
}, },
"serve-static": { "serve-static": {
"version": "1.14.1", "version": "1.15.0",
"resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.14.1.tgz", "resolved": "https://registry.npmjs.org/serve-static/-/serve-static-1.15.0.tgz",
"integrity": "sha512-JMrvUwE54emCYWlTI+hGrGv5I8dEwmco/00EvkzIIsR7MqrHonbD9pO2MOfFnpFntl7ecpZs+3mW+XbQZu9QCg==", "integrity": "sha512-XGuRDNjXUijsUL0vl6nSD7cwURuzEgglbOaFuZM9g3kwDXOWVTck0jLzjPzGD+TazWbboZYu52/9/XPdUgne9g==",
"requires": { "requires": {
"encodeurl": "~1.0.2", "encodeurl": "~1.0.2",
"escape-html": "~1.0.3", "escape-html": "~1.0.3",
"parseurl": "~1.3.3", "parseurl": "~1.3.3",
"send": "0.17.1" "send": "0.18.0"
} }
}, },
"setprototypeof": { "setprototypeof": {
"version": "1.1.1", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.1.1.tgz", "resolved": "https://registry.npmjs.org/setprototypeof/-/setprototypeof-1.2.0.tgz",
"integrity": "sha512-JvdAWfbXeIGaZ9cILp38HntZSFSo3mWg6xGcJJsd+d4aRMOqauag1C63dJfDw7OaMYwEbHMOxEZ1lqVRYP2OAw==" "integrity": "sha512-E5LDX7Wrp85Kil5bhZv46j8jOeboKq5JMmYM3gVGdGH8xFpPWXUMsNrlODCrkoxMEeNi/XZIwuRvY4XNwYMJpw=="
}, },
"shebang-command": { "shebang-command": {
"version": "2.0.0", "version": "2.0.0",
@ -1128,6 +1168,16 @@
"integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==",
"dev": true "dev": true
}, },
"side-channel": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.0.4.tgz",
"integrity": "sha512-q5XPytqFEIKHkGdiMIrY10mvLRvnQh42/+GoBlFW3b2LXLE2xxJpZFdm94we0BaoV3RwJyGqg5wS7epxTv0Zvw==",
"requires": {
"call-bind": "^1.0.0",
"get-intrinsic": "^1.0.2",
"object-inspect": "^1.9.0"
}
},
"slice-ansi": { "slice-ansi": {
"version": "2.1.0", "version": "2.1.0",
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-2.1.0.tgz",
@ -1146,9 +1196,9 @@
"dev": true "dev": true
}, },
"statuses": { "statuses": {
"version": "1.5.0", "version": "2.0.1",
"resolved": "https://registry.npmjs.org/statuses/-/statuses-1.5.0.tgz", "resolved": "https://registry.npmjs.org/statuses/-/statuses-2.0.1.tgz",
"integrity": "sha1-Fhx9rBd2Wf2YEfQ3cfqZOBR4Yow=" "integrity": "sha512-RwNA9Z/7PrK06rYLIzFMlaF+l73iwpzsqRIFgbMLbTcLD6cOao82TaWefPXQvB2fOC4AjuYSEndS7N/mTCbkdQ=="
}, },
"string-width": { "string-width": {
"version": "3.1.0", "version": "3.1.0",
@ -1221,9 +1271,9 @@
"dev": true "dev": true
}, },
"toidentifier": { "toidentifier": {
"version": "1.0.0", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.0.tgz", "resolved": "https://registry.npmjs.org/toidentifier/-/toidentifier-1.0.1.tgz",
"integrity": "sha512-yaOH/Pk/VEhBWWTlhI+qXxDFXlejDGcQipMlyxda9nthulaxLZUNcUqFxokp0vcYnvteJln5FNQDRrxj3YcbVw==" "integrity": "sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA=="
}, },
"type-check": { "type-check": {
"version": "0.4.0", "version": "0.4.0",
@ -1252,7 +1302,7 @@
"unpipe": { "unpipe": {
"version": "1.0.0", "version": "1.0.0",
"resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz", "resolved": "https://registry.npmjs.org/unpipe/-/unpipe-1.0.0.tgz",
"integrity": "sha1-sr9O6FFKrmFltIF4KdIbLvSZBOw=" "integrity": "sha512-pjy2bYhSsufwWlKwPc+l3cN7+wuJlK6uz0YdJEOlQDbl6jo/YlPi4mb8agUkVC8BF7V8NuzeyPNqRksA3hztKQ=="
}, },
"uri-js": { "uri-js": {
"version": "4.2.2", "version": "4.2.2",
@ -1266,7 +1316,7 @@
"utils-merge": { "utils-merge": {
"version": "1.0.1", "version": "1.0.1",
"resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz", "resolved": "https://registry.npmjs.org/utils-merge/-/utils-merge-1.0.1.tgz",
"integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=" "integrity": "sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA=="
}, },
"v8-compile-cache": { "v8-compile-cache": {
"version": "2.1.1", "version": "2.1.1",

@ -20,9 +20,9 @@
"prettier": "^2.0.5" "prettier": "^2.0.5"
}, },
"dependencies": { "dependencies": {
"body-parser": "^1.19.0", "body-parser": "^1.20.1",
"cors": "^2.8.5", "cors": "^2.8.5",
"express": "^4.17.1" "express": "^4.18.2"
}, },
"engines": { "engines": {
"node": ">=10" "node": ">=10"

@ -37,7 +37,7 @@ html, body, #app {
body { body {
font-family: Arial, Helvetica, sans-serif; font-family: Arial, Helvetica, sans-serif;
font-size: 14px; font-size: 16px;
} }
h2 { h2 {
@ -57,7 +57,7 @@ form {
input { input {
margin-top: var(--space-xs); margin-top: var(--space-xs);
margin-bottom: var(--space-sm); margin-bottom: var(--space-sm);
height: 40px; height: 45px;
padding: var(--space-xs) var(--space-sm); padding: var(--space-xs) var(--space-sm);
border: 1px solid var(--border); border: 1px solid var(--border);
border-radius: var(--radius); border-radius: var(--radius);
@ -99,7 +99,7 @@ button:hover {
button:focus { button:focus {
outline: none; outline: none;
border: 2px solid var(--grey); border: 3px solid var(--grey);
} }
.error { .error {

@ -6,8 +6,8 @@
Primero asegúrese de tener el [servidor API](../api/README.md) en ejecución. Primero asegúrese de tener el [servidor API](../api/README.md) en ejecución.
Se puede usar cualquier servidor web para ejecutar la aplicación, pero dado que debe tener [Node.js]https://nodejs.org) instalado de todos modos para ejecutar la API, puede: Se puede usar cualquier servidor web para ejecutar la aplicación, pero dado que debe tener [Node.js](https://nodejs.org) instalado de todos modos para ejecutar la API, puede:
1. Git clone este repositorio. 1. Git clone este repositorio.
2. Abra una terminal, luego ejecute `npx lite-server solution`. Iniciará un servidor web de desarrollo en el puerto `3000` 2. Abra una terminal, luego ejecute `npx lite-server solution`. Iniciará un servidor web de desarrollo en el puerto `3000`
3. Abra `http://localhost: 3000` en un navegador para ejecutar la aplicación. 3. Abra `http://localhost: 3000` en un navegador para ejecutar la aplicación.

@ -1,6 +1,6 @@
# Using a code editor # Using a code editor
This lesson covers the basics of using [VSCode.dev](https://vscode.dev) a code editor for the web so that you can make changes to your code and contribute to a project without installing anything in your computer. This lesson covers the basics of using [VSCode.dev](https://vscode.dev) a web-based code editor so that you can make changes to your code and contribute to a project without installing anything on your computer.
<!---- <!----
TODO: add an optional image TODO: add an optional image
@ -39,7 +39,7 @@ Once it loads, it should look similar to this image:
There are three main sections, starting from the far left and moving to the right: There are three main sections, starting from the far left and moving to the right:
1. The _activity bar_ which includes some icons, like the magnifying glass 🔎, the gear ⚙️ and a few others 1. The _activity bar_ which includes some icons, like the magnifying glass 🔎, the gear ⚙️, and a few others
1. The expanded activity bar which defaults to the _Explorer_, called the _side bar_. 1. The expanded activity bar which defaults to the _Explorer_, called the _side bar_.
1. And finally, the code area to the right. 1. And finally, the code area to the right.
@ -95,7 +95,7 @@ Select a file to open it on the code area, make your changes and save.
Once you are done updating your project, select the _`source control`_ icon which contains all the new changes you have made to your repository. Once you are done updating your project, select the _`source control`_ icon which contains all the new changes you have made to your repository.
To view the changes you made to your project, select the file(s) in the `Changes` folder in the expanded activity bar. This will open a 'Working Tree' for you to visually see the changes you made to the file. Red shows an ommission to the project, while green signifies an addition. To view the changes you made to your project, select the file(s) in the `Changes` folder in the expanded activity bar. This will open a 'Working Tree' for you to visually see the changes you made to the file. Red shows an omission to the project, while green signifies an addition.
![View changes](../images/working-tree.png) ![View changes](../images/working-tree.png)

@ -2,7 +2,7 @@
This project welcomes contributions and suggestions. Most contributions require you to This project welcomes contributions and suggestions. Most contributions require you to
agree to a Contributor License Agreement (CLA) declaring that you have the right to agree to a Contributor License Agreement (CLA) declaring that you have the right to
and actually do, grant us the rights to use your contribution. For details, visit and actually do, grant us the rights to use your contribution. For more details, visit
[https://cla.microsoft.com](https://cla.microsoft.com/?WT.mc_id=academic-77807-sagibbon). [https://cla.microsoft.com](https://cla.microsoft.com/?WT.mc_id=academic-77807-sagibbon).
When you submit a pull request, a CLA-bot will automatically determine whether you need When you submit a pull request, a CLA-bot will automatically determine whether you need
@ -10,5 +10,5 @@ to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simpl
instructions provided by the bot. You will only need to do this once across all repositories using our CLA. Please also try to tell us why you made that change so that we better understand your request. instructions provided by the bot. You will only need to do this once across all repositories using our CLA. Please also try to tell us why you made that change so that we better understand your request.
This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/?WT.mc_id=academic-77807-sagibbon). This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/?WT.mc_id=academic-77807-sagibbon).
For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/?WT.mc_id=academic-77807-sagibbon) For more information, see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/?WT.mc_id=academic-77807-sagibbon)
or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. or contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.

@ -16,24 +16,21 @@ Azure Cloud Advocates at Microsoft are pleased to offer a 12-week, 24-lesson cur
**Hearty thanks to our authors Jen Looper, Chris Noring, Christopher Harrison, Jasmine Greenaway, Yohan Lasorsa, Floor Drees, and sketchnote artist Tomomi Imura!** **Hearty thanks to our authors Jen Looper, Chris Noring, Christopher Harrison, Jasmine Greenaway, Yohan Lasorsa, Floor Drees, and sketchnote artist Tomomi Imura!**
# Are you a student? ### _Are you a student?_
Get started with the following resources: Get started with the following resources:
main
- [Student Hub page](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-13441-cxa) In this page, you will find beginner resources, Student packs and even ways to get a free cert voucher. This is one page you want to bookmark and check from time to time as we switch out content at least monthly. - [Student Hub page](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-13441-cxa) In this page, you will find beginner resources, Student packs and even ways to get a free cert voucher. This is one page you want to bookmark and check from time to time as we switch out content at least monthly.
- [Microsoft Student Learn ambassadors](https://studentambassadors.microsoft.com?WT.mc_id=academic-13441-cxa) Join a global community of student ambassadors, this could be your way into Microsoft. - [Microsoft Student Learn ambassadors](https://studentambassadors.microsoft.com?WT.mc_id=academic-13441-cxa) Join a global community of student ambassadors, this could be your way into Microsoft.
Visit [**Student Hub page**](https://docs.microsoft.com/en-gb/learn/student-hub/?WT.mc_id=academic-13441-cxa) where you will find beginner resources, Student packs and even ways to get a free certificate voucher. This is the page you want to bookmark and check from time to time as we switch out content monthly.
- [Student Hub page](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-13441-cxa) On this page, you will find beginner resources, Student packs and even ways to get a free cert voucher. This is the page you want to bookmark and check from time to time as we switch out content monthly.
- [Microsoft Student Learn ambassadors](https://studentambassadors.microsoft.com?WT.mc_id=academic-13441-cxa) Join a global community of student ambassadors. This could be your way into Microsoft
main
# Getting Started # Getting Started
> **Teachers**, we have [included some suggestions](for-teachers.md) on how to use this curriculum. We'd love your feedback [in our discussion forum](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! > **Teachers**, we have [included some suggestions](for-teachers.md) on how to use this curriculum. We'd love your feedback [in our discussion forum](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **[Students](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, to use this curriculum on your own, fork the entire repo and complete the exercises on your own, starting with a pre-lecture quiz, then reading the lecture and completing the rest of the activities. Try to create the projects by comprehending the lessons rather than copying the solution code; however, that code is available in the /solutions folders in each project-oriented lesson. Another idea would be to form a study group with friends and go through the content together. For further study, we recommend [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon) and watching the videos mentioned below. > **[Students](https://aka.ms/student-page/?WT.mc_id=academic-77807-sagibbon)**, to use this curriculum on your own, fork the entire repo and complete the exercises on your own, starting with a pre-lecture quiz, then reading the lecture and completing the rest of the activities. Try to create the projects by comprehending the lessons rather than copying the solution code; however, that code is available in the /solutions folders in each project-oriented lesson. Another idea would be to form a study group with friends and go through the content together. For further study, we recommend [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon) and watching the videos mentioned below.
[![Promo video](images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII) [![Promo video](images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII)
@ -45,13 +42,13 @@ Gif by [Mohit Jaisal](https://linkedin.com/in/mohitjaisal)
We have chosen two pedagogical tenets while building this curriculum: ensuring that it is project-based and that it includes frequent quizzes. By the end of this series, students will have built a typing game, a virtual terrarium, a 'green' browser extension, a 'space invaders' type game, and a business-type banking app, and will have also learned the basics of JavaScript, HTML, and CSS along with the modern toolchain of today's web developer. We have chosen two pedagogical tenets while building this curriculum: ensuring that it is project-based and that it includes frequent quizzes. By the end of this series, students will have built a typing game, a virtual terrarium, a 'green' browser extension, a 'space invaders' type game, and a business-type banking app, and will have also learned the basics of JavaScript, HTML, and CSS along with the modern toolchain of today's web developer.
> 🎓 You can take the first few lessons in this curriculum as a [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-77807-sagibbon) on Microsoft Learn! > 🎓 You can take the first few lessons in this curriculum as a [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) on Microsoft Learn!
By ensuring that the content aligns with projects, the process is made more engaging for students and retention of concepts will be augmented. We also wrote several starter lessons in JavaScript basics to introduce concepts, paired with a video from the "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-77807-sagibbon)" collection of video tutorials, some of whose authors contributed to this curriculum. By ensuring that the content aligns with projects, the process is made more engaging for students and retention of concepts will be augmented. We also wrote several starter lessons in JavaScript basics to introduce concepts, paired with a video from the "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" collection of video tutorials, some of whose authors contributed to this curriculum.
In addition, a low-stakes quiz before a class sets the intention of the student towards learning a topic, while a second quiz after class ensures further retention. This curriculum was designed to be flexible and fun and can be taken in whole or in part. The projects start small and become increasingly complex by the end of the 12-week cycle. In addition, a low-stakes quiz before a class sets the intention of the student towards learning a topic, while a second quiz after class ensures further retention. This curriculum was designed to be flexible and fun and can be taken in whole or in part. The projects start small and become increasingly complex by the end of the 12-week cycle.
While we have purposefully avoided introducing JavaScript frameworks to concentrate on the basic skills needed as a web developer before adopting a framework, a good next step to completing this curriculum would be learning about Node.js via another collection of videos: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)". While we have purposefully avoided introducing JavaScript frameworks to concentrate on the basic skills needed as a web developer before adopting a framework, a good next step to completing this curriculum would be learning about Node.js via another collection of videos: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
> Find our [Code of Conduct](CODE_OF_CONDUCT.md), [Contributing](CONTRIBUTING.md), and [Translation](TRANSLATIONS.md) guidelines. We welcome your constructive feedback! > Find our [Code of Conduct](CODE_OF_CONDUCT.md), [Contributing](CONTRIBUTING.md), and [Translation](TRANSLATIONS.md) guidelines. We welcome your constructive feedback!
@ -115,6 +112,7 @@ Our team produces other curricula! Check out:
- [IoT for Beginners](https://aka.ms/iot-beginners/?WT.mc_id=academic-77807-sagibbon) - [IoT for Beginners](https://aka.ms/iot-beginners/?WT.mc_id=academic-77807-sagibbon)
- [Data Science for Beginners](https://aka.ms/datascience-beginners/?WT.mc_id=academic-77807-sagibbon) - [Data Science for Beginners](https://aka.ms/datascience-beginners/?WT.mc_id=academic-77807-sagibbon)
- [AI for Beginners](https://aka.ms/ai-beginners/?WT.mc_id=academic-77807-sagibbon) - [AI for Beginners](https://aka.ms/ai-beginners/?WT.mc_id=academic-77807-sagibbon)
- [XR Development for Beginners](https://github.com/microsoft/xr-development-for-beginners)
## License ## License

@ -22,11 +22,9 @@ Similar to Readme's, please translate the assignments as well.
1. Add your translation to the quiz-app by adding a file [here](https://github.com/microsoft/Web-Dev-For-Beginners/tree/main/quiz-app/src/assets/translations), with the proper naming convention (en.json, fr.json). **Please don't localize the words 'true' or 'false' however. thanks!** 1. Add your translation to the quiz-app by adding a file [here](https://github.com/microsoft/Web-Dev-For-Beginners/tree/main/quiz-app/src/assets/translations), with the proper naming convention (en.json, fr.json). **Please don't localize the words 'true' or 'false' however. thanks!**
2. Add your language code to the dropdown in the quiz-app's App.vue file. 2. Edit the quiz-app's [translations index.js file](https://github.com/microsoft/Web-Dev-For-Beginners/blob/main/quiz-app/src/assets/translations/index.js) to add your language.
3. Edit the quiz-app's [translations index.js file](https://github.com/microsoft/Web-Dev-For-Beginners/blob/main/quiz-app/src/assets/translations/index.js) to add your language. 3. Finally, edit ALL the quiz links in your translated README.md files to point directly to your translated quiz: https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/1 becomes https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/1?loc=id
4. Finally, edit ALL the quiz links in your translated README.md files to point directly to your translated quiz: https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/1 becomes https://ashy-river-0debb7803.1.azurestaticapps.net/quiz/1?loc=id
**THANK YOU** **THANK YOU**

@ -30,4 +30,4 @@ There are many ways to make this work in an online classroom format. Please let
## Please give us your thoughts! ## Please give us your thoughts!
We want to make this curriculum work for you and your students. Please give us [feedback](https://forms.microsoft.com/Pages/ResponsePage.aspx?id=v4j5cvGGr0GRqy180BHbR2humCsRZhxNuI79cm6n0hRUQzRVVU9VVlU5UlFLWTRLWlkyQUxORTg5WS4u&WT.mc_id=academic-77807-sagibbon). We want to make this curriculum work for you and your students. Connect with us at the [Teacher corner](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner) and open a [**new issue**](https://github.com/microsoft/Web-Dev-For-Beginners/issues/new/choose) for any requests, bugs and feedback.

@ -0,0 +1,51 @@
# [Sujet de la Leçon]
![Vidéo intégrée ici](url-de-la-vidéo)
## [Quizz précédant la leçon](url-du-quizz)
[Décrire ce que nous avons appris]
### Introduction
Décrire ce que nous avons couvert
> Notes
### Prérequis
Quelles étapes avons-nous couvert avant cette leçon?
### Préparation
Etapes de préparation afin de commencer cette leçon
---
[Parcourir le contenu en blocs]
## [Sujet 1]
### Tâche:
Travailler ensemble afin d'améliorer progressivement votre base de code afin de construire le projet avec du code partagé:
```html
code blocks
```
✅ Vérification de connaissance - utiliser ce moment pour augmenter la connaissance des étudiants avec des questions ouvertes
## [Sujet 2]
## [Sujet 3]
🚀 Challenge: Ajouter un challenge pour les étudiants afin de travailler en collaboration en classe pour améliorer le projet
Optionnel: ajouter une capture d'écran de l'interface utilisateur de la leçon complétée, le cas échéant
## [Quizz suivant la leçon](url-du-quizz)
## Relecture et Etude personelle
**Devoir du au [MM/AA]**: [Nom du Devoir](assignment.fr.md)

@ -0,0 +1,9 @@
# [Nom de la Mission]
## Instructions
## Rubrique
| Critère | Exemplaire | Adéquat | A Améliorer |
| ------- | ---------- | ------- | ----------- |
| | | | |

494
package-lock.json generated

@ -1,11 +1,11 @@
{ {
"name": "ml-for-beginners", "name": "web-dev-for-beginners",
"version": "1.0.0", "version": "1.0.0",
"lockfileVersion": 2, "lockfileVersion": 2,
"requires": true, "requires": true,
"packages": { "packages": {
"": { "": {
"name": "ml-for-beginners", "name": "web-dev-for-beginners",
"version": "1.0.0", "version": "1.0.0",
"license": "MIT", "license": "MIT",
"devDependencies": { "devDependencies": {
@ -64,12 +64,12 @@
} }
}, },
"node_modules/ansi-regex": { "node_modules/ansi-regex": {
"version": "4.1.0", "version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true, "dev": true,
"engines": { "engines": {
"node": ">=6" "node": ">=8"
} }
}, },
"node_modules/ansi-styles": { "node_modules/ansi-styles": {
@ -379,28 +379,14 @@
} }
}, },
"node_modules/cliui": { "node_modules/cliui": {
"version": "5.0.0", "version": "6.0.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
"integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
"dev": true,
"dependencies": {
"string-width": "^3.1.0",
"strip-ansi": "^5.2.0",
"wrap-ansi": "^5.1.0"
}
},
"node_modules/cliui/node_modules/string-width": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
"integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"emoji-regex": "^7.0.1", "string-width": "^4.2.0",
"is-fullwidth-code-point": "^2.0.0", "strip-ansi": "^6.0.0",
"strip-ansi": "^5.1.0" "wrap-ansi": "^6.2.0"
},
"engines": {
"node": ">=6"
} }
}, },
"node_modules/clone-response": { "node_modules/clone-response": {
@ -489,6 +475,15 @@
"node": ">= 0.10.0" "node": ">= 0.10.0"
} }
}, },
"node_modules/connect-history-api-fallback": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz",
"integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==",
"dev": true,
"engines": {
"node": ">=0.8"
}
},
"node_modules/connect-livereload": { "node_modules/connect-livereload": {
"version": "0.6.1", "version": "0.6.1",
"resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.6.1.tgz", "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.6.1.tgz",
@ -540,7 +535,7 @@
"node_modules/decamelize": { "node_modules/decamelize": {
"version": "1.2.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
"dev": true, "dev": true,
"engines": { "engines": {
"node": ">=0.10.0" "node": ">=0.10.0"
@ -589,44 +584,44 @@
"dev": true "dev": true
}, },
"node_modules/docsify": { "node_modules/docsify": {
"version": "4.12.1", "version": "4.13.0",
"resolved": "https://registry.npmjs.org/docsify/-/docsify-4.12.1.tgz", "resolved": "https://registry.npmjs.org/docsify/-/docsify-4.13.0.tgz",
"integrity": "sha512-7v4UlCYLTmb83leJLIlheQlQ8kDTbTxcpMttRg0Uf92Nl//m0AcKFHoLLo5HHS4UhnO0KhDV8SKCdTR279zI9A==", "integrity": "sha512-dM2D0LZKrhK9e5cPwzOTO8FJ2l9IxgiSmTgLBIMjkBlTs1rAUT5camzekbk2AhH0Tw+5lzkNrSb7dmKFuTiLCA==",
"dev": true, "dev": true,
"hasInstallScript": true, "hasInstallScript": true,
"dependencies": { "dependencies": {
"dompurify": "^2.2.6",
"marked": "^1.2.9", "marked": "^1.2.9",
"medium-zoom": "^1.0.6", "medium-zoom": "^1.0.6",
"opencollective-postinstall": "^2.0.2", "opencollective-postinstall": "^2.0.2",
"prismjs": "^1.23.0", "prismjs": "^1.27.0",
"strip-indent": "^3.0.0", "strip-indent": "^3.0.0",
"tinydate": "^1.3.0", "tinydate": "^1.3.0",
"tweezer.js": "^1.4.0" "tweezer.js": "^1.4.0"
} }
}, },
"node_modules/docsify-cli": { "node_modules/docsify-cli": {
"version": "4.4.3", "version": "4.4.4",
"resolved": "https://registry.npmjs.org/docsify-cli/-/docsify-cli-4.4.3.tgz", "resolved": "https://registry.npmjs.org/docsify-cli/-/docsify-cli-4.4.4.tgz",
"integrity": "sha512-oI/cD04b+hklNd9yKiN9p9EqGx9UKL6p4D0J3fS9L5fpwOti1F8p2rshGJTyArxUlw6EeEBtaJd4rzPzBkK+Lw==", "integrity": "sha512-NAZgg6b0BsDuq/Pe+P19Qb2J1d+ZVbS0eGkeCNxyu4F9/CQSsRqZqAvPJ9/0I+BCHn4sgftA2jluqhQVzKzrSA==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"chalk": "^2.4.2", "chalk": "^2.4.2",
"connect": "^3.6.0", "connect": "^3.6.0",
"connect-history-api-fallback": "^1.6.0",
"connect-livereload": "^0.6.0", "connect-livereload": "^0.6.0",
"cp-file": "^7.0.0", "cp-file": "^7.0.0",
"docsify": "^4.12.1", "docsify": "^4.12.2",
"docsify-server-renderer": ">=4.10.0", "docsify-server-renderer": ">=4.10.0",
"enquirer": "^2.3.6", "enquirer": "^2.3.6",
"fs-extra": "^8.1.0", "fs-extra": "^8.1.0",
"get-port": "^5.0.0", "get-port": "^5.0.0",
"livereload": "^0.9.1", "livereload": "^0.9.2",
"lru-cache": "^5.1.1", "lru-cache": "^5.1.1",
"open": "^6.4.0", "open": "^6.4.0",
"serve-static": "^1.12.1", "serve-static": "^1.12.1",
"update-notifier": "^4.1.0", "update-notifier": "^4.1.0",
"yargonaut": "^1.1.2", "yargonaut": "^1.1.2",
"yargs": "^14.2.0" "yargs": "^15.3.0"
}, },
"bin": { "bin": {
"docsify": "bin/docsify" "docsify": "bin/docsify"
@ -724,12 +719,6 @@
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
"dev": true "dev": true
}, },
"node_modules/emoji-regex": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
"integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
"dev": true
},
"node_modules/encodeurl": { "node_modules/encodeurl": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
@ -891,15 +880,16 @@
"dev": true "dev": true
}, },
"node_modules/find-up": { "node_modules/find-up": {
"version": "3.0.0", "version": "4.1.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
"integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"locate-path": "^3.0.0" "locate-path": "^5.0.0",
"path-exists": "^4.0.0"
}, },
"engines": { "engines": {
"node": ">=6" "node": ">=8"
} }
}, },
"node_modules/fresh": { "node_modules/fresh": {
@ -1215,15 +1205,6 @@
"node": ">=0.10.0" "node": ">=0.10.0"
} }
}, },
"node_modules/is-fullwidth-code-point": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
"integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
"dev": true,
"engines": {
"node": ">=4"
}
},
"node_modules/is-glob": { "node_modules/is-glob": {
"version": "4.0.1", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
@ -1404,16 +1385,15 @@
"dev": true "dev": true
}, },
"node_modules/locate-path": { "node_modules/locate-path": {
"version": "3.0.0", "version": "5.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
"integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"p-locate": "^3.0.0", "p-locate": "^4.1.0"
"path-exists": "^3.0.0"
}, },
"engines": { "engines": {
"node": ">=6" "node": ">=8"
} }
}, },
"node_modules/lodash": { "node_modules/lodash": {
@ -1456,21 +1436,21 @@
} }
}, },
"node_modules/markdown-link-extractor": { "node_modules/markdown-link-extractor": {
"version": "1.3.0", "version": "1.3.1",
"resolved": "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-1.3.0.tgz", "resolved": "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-1.3.1.tgz",
"integrity": "sha512-1qXoYqhsU5qgWtUF9HQlBF82jRrakENh+7nmPUxoMJw13kf92jzb72EchrSsw5vdqbDLJurkpNL50xLFRhjmbw==", "integrity": "sha512-IosNBtHXplzEq2n9WoSi83LNLCWgLnb+8Xq379Ct5xrLLzmqPUtc+A1oqo6Sd32YfKus9uLedFNSwFK1sCzoNQ==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"marked": "^2.0.5" "marked": "^4.0.10"
} }
}, },
"node_modules/markdown-link-extractor/node_modules/marked": { "node_modules/markdown-link-extractor/node_modules/marked": {
"version": "2.1.1", "version": "4.2.4",
"resolved": "https://registry.npmjs.org/marked/-/marked-2.1.1.tgz", "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.4.tgz",
"integrity": "sha512-5XFS69o9CzDpQDSpUYC+AN2xvq8yl1EGa5SG/GI1hP78/uTeo3PDfiDNmsUyiahpyhToDDJhQk7fNtJsga+KVw==", "integrity": "sha512-Wcc9ikX7Q5E4BYDPvh1C6QNSxrjC9tBgz+A/vAhp59KXUgachw++uMvMKiSW8oA85nopmPZcEvBoex/YLMsiyA==",
"dev": true, "dev": true,
"bin": { "bin": {
"marked": "bin/marked" "marked": "bin/marked.js"
}, },
"engines": { "engines": {
"node": ">= 12" "node": ">= 12"
@ -1525,9 +1505,9 @@
} }
}, },
"node_modules/minimatch": { "node_modules/minimatch": {
"version": "3.0.4", "version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"brace-expansion": "^1.1.7" "brace-expansion": "^1.1.7"
@ -1719,15 +1699,15 @@
} }
}, },
"node_modules/p-locate": { "node_modules/p-locate": {
"version": "3.0.0", "version": "4.1.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
"integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"p-limit": "^2.0.0" "p-limit": "^2.2.0"
}, },
"engines": { "engines": {
"node": ">=6" "node": ">=8"
} }
}, },
"node_modules/p-timeout": { "node_modules/p-timeout": {
@ -1785,12 +1765,12 @@
} }
}, },
"node_modules/path-exists": { "node_modules/path-exists": {
"version": "3.0.0", "version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
"integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
"dev": true, "dev": true,
"engines": { "engines": {
"node": ">=4" "node": ">=8"
} }
}, },
"node_modules/path-is-absolute": { "node_modules/path-is-absolute": {
@ -2074,7 +2054,7 @@
"node_modules/require-directory": { "node_modules/require-directory": {
"version": "2.1.1", "version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
"integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
"dev": true, "dev": true,
"engines": { "engines": {
"node": ">=0.10.0" "node": ">=0.10.0"
@ -2210,7 +2190,7 @@
"node_modules/set-blocking": { "node_modules/set-blocking": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
"dev": true "dev": true
}, },
"node_modules/setprototypeof": { "node_modules/setprototypeof": {
@ -2263,15 +2243,6 @@
"node": ">=8" "node": ">=8"
} }
}, },
"node_modules/string-width/node_modules/ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true,
"engines": {
"node": ">=8"
}
},
"node_modules/string-width/node_modules/emoji-regex": { "node_modules/string-width/node_modules/emoji-regex": {
"version": "8.0.0", "version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
@ -2287,28 +2258,16 @@
"node": ">=8" "node": ">=8"
} }
}, },
"node_modules/string-width/node_modules/strip-ansi": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
"integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
"dev": true,
"dependencies": {
"ansi-regex": "^5.0.0"
},
"engines": {
"node": ">=8"
}
},
"node_modules/strip-ansi": { "node_modules/strip-ansi": {
"version": "5.2.0", "version": "6.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"ansi-regex": "^4.1.0" "ansi-regex": "^5.0.1"
}, },
"engines": { "engines": {
"node": ">=6" "node": ">=8"
} }
}, },
"node_modules/strip-indent": { "node_modules/strip-indent": {
@ -2601,7 +2560,7 @@
"node_modules/which-module": { "node_modules/which-module": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
"integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==",
"dev": true "dev": true
}, },
"node_modules/widest-line": { "node_modules/widest-line": {
@ -2617,33 +2576,52 @@
} }
}, },
"node_modules/wrap-ansi": { "node_modules/wrap-ansi": {
"version": "5.1.0", "version": "6.2.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
"integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"ansi-styles": "^3.2.0", "ansi-styles": "^4.0.0",
"string-width": "^3.0.0", "string-width": "^4.1.0",
"strip-ansi": "^5.0.0" "strip-ansi": "^6.0.0"
}, },
"engines": { "engines": {
"node": ">=6" "node": ">=8"
} }
}, },
"node_modules/wrap-ansi/node_modules/string-width": { "node_modules/wrap-ansi/node_modules/ansi-styles": {
"version": "3.1.0", "version": "4.3.0",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"emoji-regex": "^7.0.1", "color-convert": "^2.0.1"
"is-fullwidth-code-point": "^2.0.0",
"strip-ansi": "^5.1.0"
}, },
"engines": { "engines": {
"node": ">=6" "node": ">=8"
},
"funding": {
"url": "https://github.com/chalk/ansi-styles?sponsor=1"
}
},
"node_modules/wrap-ansi/node_modules/color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"dependencies": {
"color-name": "~1.1.4"
},
"engines": {
"node": ">=7.0.0"
} }
}, },
"node_modules/wrap-ansi/node_modules/color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
},
"node_modules/wrappy": { "node_modules/wrappy": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
@ -2771,43 +2749,35 @@
} }
}, },
"node_modules/yargs": { "node_modules/yargs": {
"version": "14.2.3", "version": "15.4.1",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz", "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
"integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==", "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"cliui": "^5.0.0", "cliui": "^6.0.0",
"decamelize": "^1.2.0", "decamelize": "^1.2.0",
"find-up": "^3.0.0", "find-up": "^4.1.0",
"get-caller-file": "^2.0.1", "get-caller-file": "^2.0.1",
"require-directory": "^2.1.1", "require-directory": "^2.1.1",
"require-main-filename": "^2.0.0", "require-main-filename": "^2.0.0",
"set-blocking": "^2.0.0", "set-blocking": "^2.0.0",
"string-width": "^3.0.0", "string-width": "^4.2.0",
"which-module": "^2.0.0", "which-module": "^2.0.0",
"y18n": "^4.0.0", "y18n": "^4.0.0",
"yargs-parser": "^15.0.1" "yargs-parser": "^18.1.2"
},
"engines": {
"node": ">=8"
} }
}, },
"node_modules/yargs-parser": { "node_modules/yargs-parser": {
"version": "15.0.3", "version": "18.1.3",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.3.tgz", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
"integrity": "sha512-/MVEVjTXy/cGAjdtQf8dW3V9b97bPN7rNn8ETj6BmAQL7ibC7O1Q9SPJbGjgh3SlwoBNXMzj/ZGIj8mBgl12YA==", "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
"dev": true, "dev": true,
"dependencies": { "dependencies": {
"camelcase": "^5.0.0", "camelcase": "^5.0.0",
"decamelize": "^1.2.0" "decamelize": "^1.2.0"
}
},
"node_modules/yargs/node_modules/string-width": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
"integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
"dev": true,
"dependencies": {
"emoji-regex": "^7.0.1",
"is-fullwidth-code-point": "^2.0.0",
"strip-ansi": "^5.1.0"
}, },
"engines": { "engines": {
"node": ">=6" "node": ">=6"
@ -2871,9 +2841,9 @@
"dev": true "dev": true
}, },
"ansi-regex": { "ansi-regex": {
"version": "4.1.0", "version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true "dev": true
}, },
"ansi-styles": { "ansi-styles": {
@ -3113,27 +3083,14 @@
"dev": true "dev": true
}, },
"cliui": { "cliui": {
"version": "5.0.0", "version": "6.0.0",
"resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz", "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
"integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==", "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"string-width": "^3.1.0", "string-width": "^4.2.0",
"strip-ansi": "^5.2.0", "strip-ansi": "^6.0.0",
"wrap-ansi": "^5.1.0" "wrap-ansi": "^6.2.0"
},
"dependencies": {
"string-width": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
"integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
"dev": true,
"requires": {
"emoji-regex": "^7.0.1",
"is-fullwidth-code-point": "^2.0.0",
"strip-ansi": "^5.1.0"
}
}
} }
}, },
"clone-response": { "clone-response": {
@ -3210,6 +3167,12 @@
"utils-merge": "1.0.1" "utils-merge": "1.0.1"
} }
}, },
"connect-history-api-fallback": {
"version": "1.6.0",
"resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-1.6.0.tgz",
"integrity": "sha512-e54B99q/OUoH64zYYRf3HBP5z24G38h5D3qXu23JGRoigpX5Ss4r9ZnDk3g0Z8uQC2x2lPaJ+UlWBc1ZWBWdLg==",
"dev": true
},
"connect-livereload": { "connect-livereload": {
"version": "0.6.1", "version": "0.6.1",
"resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.6.1.tgz", "resolved": "https://registry.npmjs.org/connect-livereload/-/connect-livereload-0.6.1.tgz",
@ -3252,7 +3215,7 @@
"decamelize": { "decamelize": {
"version": "1.2.0", "version": "1.2.0",
"resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz", "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
"integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=", "integrity": "sha512-z2S+W9X73hAUUki+N+9Za2lBlun89zigOyGrsax+KUQ6wKW4ZoWpEYBkGhQjwAjjDCkWxhY0VKEhk8wzY7F5cA==",
"dev": true "dev": true
}, },
"decompress-response": { "decompress-response": {
@ -3289,43 +3252,43 @@
"dev": true "dev": true
}, },
"docsify": { "docsify": {
"version": "4.12.1", "version": "4.13.0",
"resolved": "https://registry.npmjs.org/docsify/-/docsify-4.12.1.tgz", "resolved": "https://registry.npmjs.org/docsify/-/docsify-4.13.0.tgz",
"integrity": "sha512-7v4UlCYLTmb83leJLIlheQlQ8kDTbTxcpMttRg0Uf92Nl//m0AcKFHoLLo5HHS4UhnO0KhDV8SKCdTR279zI9A==", "integrity": "sha512-dM2D0LZKrhK9e5cPwzOTO8FJ2l9IxgiSmTgLBIMjkBlTs1rAUT5camzekbk2AhH0Tw+5lzkNrSb7dmKFuTiLCA==",
"dev": true, "dev": true,
"requires": { "requires": {
"dompurify": "^2.2.6",
"marked": "^1.2.9", "marked": "^1.2.9",
"medium-zoom": "^1.0.6", "medium-zoom": "^1.0.6",
"opencollective-postinstall": "^2.0.2", "opencollective-postinstall": "^2.0.2",
"prismjs": "^1.23.0", "prismjs": "^1.27.0",
"strip-indent": "^3.0.0", "strip-indent": "^3.0.0",
"tinydate": "^1.3.0", "tinydate": "^1.3.0",
"tweezer.js": "^1.4.0" "tweezer.js": "^1.4.0"
} }
}, },
"docsify-cli": { "docsify-cli": {
"version": "4.4.3", "version": "4.4.4",
"resolved": "https://registry.npmjs.org/docsify-cli/-/docsify-cli-4.4.3.tgz", "resolved": "https://registry.npmjs.org/docsify-cli/-/docsify-cli-4.4.4.tgz",
"integrity": "sha512-oI/cD04b+hklNd9yKiN9p9EqGx9UKL6p4D0J3fS9L5fpwOti1F8p2rshGJTyArxUlw6EeEBtaJd4rzPzBkK+Lw==", "integrity": "sha512-NAZgg6b0BsDuq/Pe+P19Qb2J1d+ZVbS0eGkeCNxyu4F9/CQSsRqZqAvPJ9/0I+BCHn4sgftA2jluqhQVzKzrSA==",
"dev": true, "dev": true,
"requires": { "requires": {
"chalk": "^2.4.2", "chalk": "^2.4.2",
"connect": "^3.6.0", "connect": "^3.6.0",
"connect-history-api-fallback": "^1.6.0",
"connect-livereload": "^0.6.0", "connect-livereload": "^0.6.0",
"cp-file": "^7.0.0", "cp-file": "^7.0.0",
"docsify": "^4.12.1", "docsify": "^4.12.2",
"docsify-server-renderer": ">=4.10.0", "docsify-server-renderer": ">=4.10.0",
"enquirer": "^2.3.6", "enquirer": "^2.3.6",
"fs-extra": "^8.1.0", "fs-extra": "^8.1.0",
"get-port": "^5.0.0", "get-port": "^5.0.0",
"livereload": "^0.9.1", "livereload": "^0.9.2",
"lru-cache": "^5.1.1", "lru-cache": "^5.1.1",
"open": "^6.4.0", "open": "^6.4.0",
"serve-static": "^1.12.1", "serve-static": "^1.12.1",
"update-notifier": "^4.1.0", "update-notifier": "^4.1.0",
"yargonaut": "^1.1.2", "yargonaut": "^1.1.2",
"yargs": "^14.2.0" "yargs": "^15.3.0"
} }
}, },
"docsify-server-renderer": { "docsify-server-renderer": {
@ -3403,12 +3366,6 @@
"integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=", "integrity": "sha1-WQxhFWsK4vTwJVcyoViyZrxWsh0=",
"dev": true "dev": true
}, },
"emoji-regex": {
"version": "7.0.3",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
"integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
"dev": true
},
"encodeurl": { "encodeurl": {
"version": "1.0.2", "version": "1.0.2",
"resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz", "resolved": "https://registry.npmjs.org/encodeurl/-/encodeurl-1.0.2.tgz",
@ -3536,12 +3493,13 @@
"dev": true "dev": true
}, },
"find-up": { "find-up": {
"version": "3.0.0", "version": "4.1.0",
"resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
"integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
"dev": true, "dev": true,
"requires": { "requires": {
"locate-path": "^3.0.0" "locate-path": "^5.0.0",
"path-exists": "^4.0.0"
} }
}, },
"fresh": { "fresh": {
@ -3785,12 +3743,6 @@
"integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=", "integrity": "sha1-qIwCU1eR8C7TfHahueqXc8gz+MI=",
"dev": true "dev": true
}, },
"is-fullwidth-code-point": {
"version": "2.0.0",
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
"integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
"dev": true
},
"is-glob": { "is-glob": {
"version": "4.0.1", "version": "4.0.1",
"resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz", "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.1.tgz",
@ -3932,13 +3884,12 @@
"dev": true "dev": true
}, },
"locate-path": { "locate-path": {
"version": "3.0.0", "version": "5.0.0",
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
"integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
"dev": true, "dev": true,
"requires": { "requires": {
"p-locate": "^3.0.0", "p-locate": "^4.1.0"
"path-exists": "^3.0.0"
} }
}, },
"lodash": { "lodash": {
@ -3972,18 +3923,18 @@
} }
}, },
"markdown-link-extractor": { "markdown-link-extractor": {
"version": "1.3.0", "version": "1.3.1",
"resolved": "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-1.3.0.tgz", "resolved": "https://registry.npmjs.org/markdown-link-extractor/-/markdown-link-extractor-1.3.1.tgz",
"integrity": "sha512-1qXoYqhsU5qgWtUF9HQlBF82jRrakENh+7nmPUxoMJw13kf92jzb72EchrSsw5vdqbDLJurkpNL50xLFRhjmbw==", "integrity": "sha512-IosNBtHXplzEq2n9WoSi83LNLCWgLnb+8Xq379Ct5xrLLzmqPUtc+A1oqo6Sd32YfKus9uLedFNSwFK1sCzoNQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"marked": "^2.0.5" "marked": "^4.0.10"
}, },
"dependencies": { "dependencies": {
"marked": { "marked": {
"version": "2.1.1", "version": "4.2.4",
"resolved": "https://registry.npmjs.org/marked/-/marked-2.1.1.tgz", "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.4.tgz",
"integrity": "sha512-5XFS69o9CzDpQDSpUYC+AN2xvq8yl1EGa5SG/GI1hP78/uTeo3PDfiDNmsUyiahpyhToDDJhQk7fNtJsga+KVw==", "integrity": "sha512-Wcc9ikX7Q5E4BYDPvh1C6QNSxrjC9tBgz+A/vAhp59KXUgachw++uMvMKiSW8oA85nopmPZcEvBoex/YLMsiyA==",
"dev": true "dev": true
} }
} }
@ -4019,9 +3970,9 @@
"dev": true "dev": true
}, },
"minimatch": { "minimatch": {
"version": "3.0.4", "version": "3.1.2",
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz",
"integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==",
"dev": true, "dev": true,
"requires": { "requires": {
"brace-expansion": "^1.1.7" "brace-expansion": "^1.1.7"
@ -4157,12 +4108,12 @@
} }
}, },
"p-locate": { "p-locate": {
"version": "3.0.0", "version": "4.1.0",
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
"integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
"dev": true, "dev": true,
"requires": { "requires": {
"p-limit": "^2.0.0" "p-limit": "^2.2.0"
} }
}, },
"p-timeout": { "p-timeout": {
@ -4205,9 +4156,9 @@
"dev": true "dev": true
}, },
"path-exists": { "path-exists": {
"version": "3.0.0", "version": "4.0.0",
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz",
"integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==",
"dev": true "dev": true
}, },
"path-is-absolute": { "path-is-absolute": {
@ -4429,7 +4380,7 @@
"require-directory": { "require-directory": {
"version": "2.1.1", "version": "2.1.1",
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
"integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==",
"dev": true "dev": true
}, },
"require-main-filename": { "require-main-filename": {
@ -4543,7 +4494,7 @@
"set-blocking": { "set-blocking": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz", "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
"integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=", "integrity": "sha512-KiKBS8AnWGEyLzofFfmvKwpdPzqiy16LvQfK3yv/fVH7Bj13/wl3JSR1J+rfgRE9q7xUJK4qvgS8raSOeLUehw==",
"dev": true "dev": true
}, },
"setprototypeof": { "setprototypeof": {
@ -4590,12 +4541,6 @@
"strip-ansi": "^6.0.0" "strip-ansi": "^6.0.0"
}, },
"dependencies": { "dependencies": {
"ansi-regex": {
"version": "5.0.1",
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
"integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
"dev": true
},
"emoji-regex": { "emoji-regex": {
"version": "8.0.0", "version": "8.0.0",
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
@ -4607,25 +4552,16 @@
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
"integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
"dev": true "dev": true
},
"strip-ansi": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.0.tgz",
"integrity": "sha512-AuvKTrTfQNYNIctbR1K/YGTR1756GycPsg7b9bdV9Duqur4gv6aKqHXah67Z8ImS7WEz5QVcOtlfW2rZEugt6w==",
"dev": true,
"requires": {
"ansi-regex": "^5.0.0"
}
} }
} }
}, },
"strip-ansi": { "strip-ansi": {
"version": "5.2.0", "version": "6.0.1",
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
"integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
"dev": true, "dev": true,
"requires": { "requires": {
"ansi-regex": "^4.1.0" "ansi-regex": "^5.0.1"
} }
}, },
"strip-indent": { "strip-indent": {
@ -4851,7 +4787,7 @@
"which-module": { "which-module": {
"version": "2.0.0", "version": "2.0.0",
"resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz", "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
"integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=", "integrity": "sha512-B+enWhmw6cjfVC7kS8Pj9pCrKSc5txArRyaYGe088shv/FGWH+0Rjx/xPgtsWfsUtS27FkP697E4DDhgrgoc0Q==",
"dev": true "dev": true
}, },
"widest-line": { "widest-line": {
@ -4864,26 +4800,39 @@
} }
}, },
"wrap-ansi": { "wrap-ansi": {
"version": "5.1.0", "version": "6.2.0",
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
"integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==", "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
"dev": true, "dev": true,
"requires": { "requires": {
"ansi-styles": "^3.2.0", "ansi-styles": "^4.0.0",
"string-width": "^3.0.0", "string-width": "^4.1.0",
"strip-ansi": "^5.0.0" "strip-ansi": "^6.0.0"
}, },
"dependencies": { "dependencies": {
"string-width": { "ansi-styles": {
"version": "3.1.0", "version": "4.3.0",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
"integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
"dev": true, "dev": true,
"requires": { "requires": {
"emoji-regex": "^7.0.1", "color-convert": "^2.0.1"
"is-fullwidth-code-point": "^2.0.0",
"strip-ansi": "^5.1.0"
} }
},
"color-convert": {
"version": "2.0.1",
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
"integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
"dev": true,
"requires": {
"color-name": "~1.1.4"
}
},
"color-name": {
"version": "1.1.4",
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
"integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
"dev": true
} }
} }
}, },
@ -4984,41 +4933,28 @@
} }
}, },
"yargs": { "yargs": {
"version": "14.2.3", "version": "15.4.1",
"resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz", "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
"integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==", "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
"dev": true, "dev": true,
"requires": { "requires": {
"cliui": "^5.0.0", "cliui": "^6.0.0",
"decamelize": "^1.2.0", "decamelize": "^1.2.0",
"find-up": "^3.0.0", "find-up": "^4.1.0",
"get-caller-file": "^2.0.1", "get-caller-file": "^2.0.1",
"require-directory": "^2.1.1", "require-directory": "^2.1.1",
"require-main-filename": "^2.0.0", "require-main-filename": "^2.0.0",
"set-blocking": "^2.0.0", "set-blocking": "^2.0.0",
"string-width": "^3.0.0", "string-width": "^4.2.0",
"which-module": "^2.0.0", "which-module": "^2.0.0",
"y18n": "^4.0.0", "y18n": "^4.0.0",
"yargs-parser": "^15.0.1" "yargs-parser": "^18.1.2"
},
"dependencies": {
"string-width": {
"version": "3.1.0",
"resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
"integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
"dev": true,
"requires": {
"emoji-regex": "^7.0.1",
"is-fullwidth-code-point": "^2.0.0",
"strip-ansi": "^5.1.0"
}
}
} }
}, },
"yargs-parser": { "yargs-parser": {
"version": "15.0.3", "version": "18.1.3",
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.3.tgz", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
"integrity": "sha512-/MVEVjTXy/cGAjdtQf8dW3V9b97bPN7rNn8ETj6BmAQL7ibC7O1Q9SPJbGjgh3SlwoBNXMzj/ZGIj8mBgl12YA==", "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
"dev": true, "dev": true,
"requires": { "requires": {
"camelcase": "^5.0.0", "camelcase": "^5.0.0",

@ -16,7 +16,7 @@
"development", "development",
"curriculum" "curriculum"
], ],
"author": "Jen Looper and team", "author": "Microsoft Cloud Advocates",
"license": "MIT", "license": "MIT",
"bugs": { "bugs": {
"url": "https://github.com/microsoft/Web-Dev-For-Beginners/issues" "url": "https://github.com/microsoft/Web-Dev-For-Beginners/issues"

@ -0,0 +1,8 @@
module.exports = {
extends: [
'plugin:vue/vue3-recommended',
],
rules: {
'vue/multi-word-component-names': 'off'
}
}

@ -1,5 +0,0 @@
module.exports = {
presets: [
'@vue/cli-plugin-babel/preset'
]
}

File diff suppressed because it is too large Load Diff

@ -14,12 +14,13 @@
"vue-router": "^3.4.9" "vue-router": "^3.4.9"
}, },
"devDependencies": { "devDependencies": {
"@vue/cli-plugin-babel": "~4.5.0", "@babel/core": "^7.20.5",
"@vue/cli-plugin-eslint": "~4.5.0", "@babel/eslint-parser": "^7.19.1",
"@vue/cli-service": "~4.5.0", "@vue/cli-plugin-babel": "^5.0.8",
"babel-eslint": "^10.1.0", "@vue/cli-plugin-eslint": "^5.0.8",
"eslint": "^6.7.2", "@vue/cli-service": "^5.0.8",
"eslint-plugin-vue": "^6.2.2", "eslint": "^8.29.0",
"eslint-plugin-vue": "^9.8.0",
"vue-template-compiler": "^2.6.11" "vue-template-compiler": "^2.6.11"
}, },
"eslintConfig": { "eslintConfig": {

@ -1,10 +1,20 @@
<template> <template>
<div> <div>
<nav> <nav>
<router-link class="navlink" to="/">Home</router-link> <router-link
class="navlink"
to="/"
>
Home
</router-link>
<label for="locale">locale</label> <label for="locale">locale</label>
<select v-model="locale"> <select v-model="locale">
<option v-for="localeName in availableLocales" :key="localeName">{{ localeName }}</option> <option
v-for="localeName in availableLocales"
:key="localeName"
>
{{ localeName }}
</option>
</select> </select>
</nav> </nav>
<div id="app"> <div id="app">

File diff suppressed because it is too large Load Diff

@ -1,21 +1,34 @@
<template> <template>
<div class="card"> <div class="card">
<div v-for="q in questions" :key="q.id"> <div
v-for="q in questions"
:key="q.id"
>
<div v-if="route == q.id"> <div v-if="route == q.id">
<h2>{{ q.title }}</h2> <h2>{{ q.title }}</h2>
<hr /> <hr>
<h3 v-if="complete" class="message">{{ $t("complete") }}</h3> <h3
v-if="complete"
class="message"
>
{{ $t("complete") }}
</h3>
<div v-else> <div v-else>
<h3 v-if="error" class="error">{{ $t("error") }}</h3> <h3
v-if="error"
class="error"
>
{{ $t("error") }}
</h3>
<h2> <h2>
{{ q.quiz[currentQuestion].questionText }} {{ q.quiz[currentQuestion].questionText }}
</h2> </h2>
<div> <div>
<button <button
:key="index"
v-for="(option, index) in q.quiz[currentQuestion].answerOptions" v-for="(option, index) in q.quiz[currentQuestion].answerOptions"
@click="handleAnswerClick(option.isCorrect)" :key="index"
class="btn ans-btn" class="btn ans-btn"
@click="handleAnswerClick(option.isCorrect)"
> >
{{ option.answerText }} {{ option.answerText }}
</button> </button>
@ -47,6 +60,10 @@ export default {
}, },
i18n: { messages }, i18n: { messages },
created() {
this.route = this.$route.params.id;
this.locale = this.$route.query.loc;
},
methods: { methods: {
handleAnswerClick(isCorrect) { handleAnswerClick(isCorrect) {
this.error = false; this.error = false;
@ -63,9 +80,5 @@ export default {
} }
}, },
}, },
created() {
this.route = this.$route.params.id;
this.locale = this.$route.query.loc;
},
}; };
</script> </script>

@ -20,9 +20,9 @@
> **শিক্ষকরা**, এই পাঠ্যক্রমটি কীভাবে ব্যবহার করা যায় সে সম্পর্কে আমরা [কিছু পরামর্শ অন্তর্ভুক্ত করেছি](for-teachers.md)। আমরা আপনার প্রতিক্রিয়া পছন্দ করব [আমাদের আলোচনা ফোরামে](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! > **শিক্ষকরা**, এই পাঠ্যক্রমটি কীভাবে ব্যবহার করা যায় সে সম্পর্কে আমরা [কিছু পরামর্শ অন্তর্ভুক্ত করেছি](for-teachers.md)। আমরা আপনার প্রতিক্রিয়া পছন্দ করব [আমাদের আলোচনা ফোরামে](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **ছাত্ররা**, এই পাঠ্যক্রমটি নিজে ব্যবহার করার জন্য, পুরো রেপোকে কাঁটাচামচ করুন এবং নিজে থেকেই অনুশীলনগুলি সম্পূর্ণ করুন, একটি প্রি-লেকচার কুইজ দিয়ে শুরু করুন, তারপর লেকচারটি পড়ুন এবং বাকি কার্যক্রমগুলি সম্পূর্ণ করুন। সমাধান কোড অনুলিপি করার পরিবর্তে পাঠগুলি বোঝার মাধ্যমে প্রকল্পগুলি তৈরি করার চেষ্টা করুন; তবে কোডটি প্রতিটি প্রকল্প-ভিত্তিক পাঠের /সমাধান ফোল্ডারে উপলব্ধ। আরেকটি ধারণা হবে বন্ধুদের সাথে একটি স্টাডি গ্রুপ গঠন করা এবং একসাথে বিষয়বস্তুর মধ্য দিয়ে যাওয়া। আরও অধ্যয়নের জন্য, আমরা [মাইক্রোসফট শিক্ষা](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon) এবং নীচে উল্লিখিত ভিডিওগুলি দেখার পরামর্শ দিই৷ > **ছাত্ররা**, এই পাঠ্যক্রমটি নিজে ব্যবহার করার জন্য, পুরো রেপোকে কাঁটাচামচ করুন এবং নিজে থেকেই অনুশীলনগুলি সম্পূর্ণ করুন, একটি প্রি-লেকচার কুইজ দিয়ে শুরু করুন, তারপর লেকচারটি পড়ুন এবং বাকি কার্যক্রমগুলি সম্পূর্ণ করুন। সমাধান কোড অনুলিপি করার পরিবর্তে পাঠগুলি বোঝার মাধ্যমে প্রকল্পগুলি তৈরি করার চেষ্টা করুন; তবে কোডটি প্রতিটি প্রকল্প-ভিত্তিক পাঠের /সমাধান ফোল্ডারে উপলব্ধ। আরেকটি ধারণা হবে বন্ধুদের সাথে একটি স্টাডি গ্রুপ গঠন করা এবং একসাথে বিষয়বস্তুর মধ্য দিয়ে যাওয়া। আরও অধ্যয়নের জন্য, আমরা [মাইক্রোসফট শিক্ষা](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon) এবং নীচে উল্লিখিত ভিডিওগুলি দেখার পরামর্শ দিই৷
[![প্রোমো ভিডিও](../web.gif)](https://youtube.com/watch?v=R1wrdtmBSII 'Promo video') [![প্রোমো ভিডিও](/images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII 'Promo video')
গিফ বানিয়েছে [মোহিত জয়সাল](https://linkedin.com/in/mohitjaisal) গিফ বানিয়েছে [মোহিত জয়সাল](https://linkedin.com/in/mohitjaisal)
@ -32,13 +32,13 @@
এই পাঠ্যক্রমটি তৈরি করার সময় আমরা দুটি শিক্ষাগত নীতি বেছে নিয়েছি: এটি নিশ্চিত করা যে এটি প্রকল্প-ভিত্তিক এবং এতে ঘন ঘন কুইজ অন্তর্ভুক্ত রয়েছে। এই সিরিজের শেষ নাগাদ, শিক্ষার্থীরা একটি টাইপিং গেম, একটি ভার্চুয়াল টেরারিয়াম, একটি 'গ্রিন' ব্রাউজার এক্সটেনশন, একটি 'স্পেস ইনভেডার' টাইপ গেম এবং একটি ব্যবসায়িক-টাইপ ব্যাঙ্কিং অ্যাপ তৈরি করবে এবং জাভাস্ক্রিপ্টের মৌলিক বিষয়গুলি শিখবে। , এইছটিএমেল, এবং সিএসেস সহ আজকের ওয়েব ডেভেলপারের আধুনিক টুলচেন। এই পাঠ্যক্রমটি তৈরি করার সময় আমরা দুটি শিক্ষাগত নীতি বেছে নিয়েছি: এটি নিশ্চিত করা যে এটি প্রকল্প-ভিত্তিক এবং এতে ঘন ঘন কুইজ অন্তর্ভুক্ত রয়েছে। এই সিরিজের শেষ নাগাদ, শিক্ষার্থীরা একটি টাইপিং গেম, একটি ভার্চুয়াল টেরারিয়াম, একটি 'গ্রিন' ব্রাউজার এক্সটেনশন, একটি 'স্পেস ইনভেডার' টাইপ গেম এবং একটি ব্যবসায়িক-টাইপ ব্যাঙ্কিং অ্যাপ তৈরি করবে এবং জাভাস্ক্রিপ্টের মৌলিক বিষয়গুলি শিখবে। , এইছটিএমেল, এবং সিএসেস সহ আজকের ওয়েব ডেভেলপারের আধুনিক টুলচেন।
> 🎓 আপনি মাইক্রোসফট শিক্ষা এ [শিক্ষা পথ](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-77807-sagibbon) হিসেবে এই পাঠ্যক্রমের প্রথম কয়েকটি পাঠ নিতে পারেন! > 🎓 আপনি মাইক্রোসফট শিক্ষা এ [শিক্ষা পথ](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) হিসেবে এই পাঠ্যক্রমের প্রথম কয়েকটি পাঠ নিতে পারেন!
বিষয়বস্তুটি প্রকল্পের সাথে সারিবদ্ধ হয়েছে তা নিশ্চিত করার মাধ্যমে, প্রক্রিয়াটিকে শিক্ষার্থীদের জন্য আরও আকর্ষক করে তোলা হয় এবং ধারণার ধারণকে বর্ধিত করা হবে। আমরা ধারণাগুলি প্রবর্তন করার জন্য জাভাস্ক্রিপ্ট বেসিকগুলিতে বেশ কয়েকটি স্টার্টার পাঠও লিখেছি, যা "[বিগিনার্স সিরিজ থেকে: জাভাস্ক্রিপ্ট](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id) থেকে ভিডিওর সাথে যুক্ত করেছি ভিডিও টিউটোরিয়ালের সংগ্রহ, যার কিছু লেখক এই পাঠ্যক্রমটিতে অবদান রেখেছেন। বিষয়বস্তুটি প্রকল্পের সাথে সারিবদ্ধ হয়েছে তা নিশ্চিত করার মাধ্যমে, প্রক্রিয়াটিকে শিক্ষার্থীদের জন্য আরও আকর্ষক করে তোলা হয় এবং ধারণার ধারণকে বর্ধিত করা হবে। আমরা ধারণাগুলি প্রবর্তন করার জন্য জাভাস্ক্রিপ্ট বেসিকগুলিতে বেশ কয়েকটি স্টার্টার পাঠও লিখেছি, যা "[বিগিনার্স সিরিজ থেকে: জাভাস্ক্রিপ্ট](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id) থেকে ভিডিওর সাথে যুক্ত করেছি ভিডিও টিউটোরিয়ালের সংগ্রহ, যার কিছু লেখক এই পাঠ্যক্রমটিতে অবদান রেখেছেন।
উপরন্তু, একটি ক্লাসের আগে একটি লো-স্টেক কুইজ একটি বিষয় শেখার প্রতি শিক্ষার্থীর অভিপ্রায় নির্ধারণ করে, যখন ক্লাসের পরে একটি দ্বিতীয় কুইজ আরও ধারণ নিশ্চিত করে। এই পাঠ্যক্রমটি নমনীয় এবং মজাদার হওয়ার জন্য ডিজাইন করা হয়েছে এবং সম্পূর্ণ বা আংশিকভাবে নেওয়া যেতে পারে। প্রকল্পগুলি ছোট শুরু হয় এবং 12 সপ্তাহের চক্রের শেষে ক্রমবর্ধমান জটিল হয়ে ওঠে। উপরন্তু, একটি ক্লাসের আগে একটি লো-স্টেক কুইজ একটি বিষয় শেখার প্রতি শিক্ষার্থীর অভিপ্রায় নির্ধারণ করে, যখন ক্লাসের পরে একটি দ্বিতীয় কুইজ আরও ধারণ নিশ্চিত করে। এই পাঠ্যক্রমটি নমনীয় এবং মজাদার হওয়ার জন্য ডিজাইন করা হয়েছে এবং সম্পূর্ণ বা আংশিকভাবে নেওয়া যেতে পারে। প্রকল্পগুলি ছোট শুরু হয় এবং 12 সপ্তাহের চক্রের শেষে ক্রমবর্ধমান জটিল হয়ে ওঠে।
যদিও আমরা উদ্দেশ্যপ্রণোদিতভাবে জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক প্রবর্তন করা এড়িয়ে গেছি যাতে একটি ফ্রেমওয়ার্ক গ্রহণ করার আগে ওয়েব ডেভেলপার হিসাবে প্রয়োজনীয় মৌলিক দক্ষতাগুলিতে মনোনিবেশ করা যায়, এই পাঠ্যক্রমটি সম্পূর্ণ করার একটি ভাল পরবর্তী পদক্ষেপটি ভিডিওগুলির আরেকটি সংগ্রহের মাধ্যমে নোড যেএস সম্পর্কে শেখা হবে: "[শিককারী এর জন্য সিরিজ: নোড যেএস](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)"। যদিও আমরা উদ্দেশ্যপ্রণোদিতভাবে জাভাস্ক্রিপ্ট ফ্রেমওয়ার্ক প্রবর্তন করা এড়িয়ে গেছি যাতে একটি ফ্রেমওয়ার্ক গ্রহণ করার আগে ওয়েব ডেভেলপার হিসাবে প্রয়োজনীয় মৌলিক দক্ষতাগুলিতে মনোনিবেশ করা যায়, এই পাঠ্যক্রমটি সম্পূর্ণ করার একটি ভাল পরবর্তী পদক্ষেপটি ভিডিওগুলির আরেকটি সংগ্রহের মাধ্যমে নোড যেএস সম্পর্কে শেখা হবে: "[শিককারী এর জন্য সিরিজ: নোড যেএস](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)"।
> আমাদের [আচরণবিধি](CODE_OF_CONDUCT.md), [অবদান করা](CONTRIBUTING.md), এবং [অনুবাদ](TRANSLATIONS.md) নির্দেশিকা খুঁজুন। আমরা আপনার গঠনমূলক প্রতিক্রিয়া স্বাগত জানাই! > আমাদের [আচরণবিধি](CODE_OF_CONDUCT.md), [অবদান করা](CONTRIBUTING.md), এবং [অনুবাদ](TRANSLATIONS.md) নির্দেশিকা খুঁজুন। আমরা আপনার গঠনমূলক প্রতিক্রিয়া স্বাগত জানাই!

@ -20,9 +20,9 @@
> **Καθηγητές**, έχουμε [συμπεριλάβει κάποιες προτάσεις](for-teachers.el.md) για το πως να χρησιμοποιήσετε αυτό το πρόγραμμα μαθηματών. Θα χαρούμε πολύ τα σχόλια σας στο [φόρουμ συζήτησης](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! > **Καθηγητές**, έχουμε [συμπεριλάβει κάποιες προτάσεις](for-teachers.el.md) για το πως να χρησιμοποιήσετε αυτό το πρόγραμμα μαθηματών. Θα χαρούμε πολύ τα σχόλια σας στο [φόρουμ συζήτησης](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **Μαθητές**, για να χρησιμοποιήσετε αυτό το πρόγραμμα μαθηματών, κάντε fork ολόκληρο το repo και ολοκληρώστε τις ασκήσεις μόνοι σας, ξεκινώντας με ένα κουίζ πρίν το μάθημα, μετά διαβάζοντας το μάθημα και ολοκληρώνοντας τις υπόλοιπες δραστηριότητες. Προσπαθήστε να κάνετε τις εργασίες κατανώντας τα μαθήματα παρά να αντιγράφετε απλά τον έτοιμο κώδικα με τη λύση. Ωστόσο, ο κώδικας με τη λύση είναι διαθέσιμος στους φακέλους /solutions στο κάθε μάθημα. Μια άλλη ιδέα θα ήταν να δημιουργήσετε μια ομάδα μελέτης με φίλους, και να δείτε το περιεχόμενο των μαθημάτων από κοινού. Για παραιτέρω μελέτη, προτείνουμε το [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon) και παρακολουθώντας τα βίντεο που αναφέρονται παρακάτω. > **Μαθητές**, για να χρησιμοποιήσετε αυτό το πρόγραμμα μαθηματών, κάντε fork ολόκληρο το repo και ολοκληρώστε τις ασκήσεις μόνοι σας, ξεκινώντας με ένα κουίζ πρίν το μάθημα, μετά διαβάζοντας το μάθημα και ολοκληρώνοντας τις υπόλοιπες δραστηριότητες. Προσπαθήστε να κάνετε τις εργασίες κατανώντας τα μαθήματα παρά να αντιγράφετε απλά τον έτοιμο κώδικα με τη λύση. Ωστόσο, ο κώδικας με τη λύση είναι διαθέσιμος στους φακέλους /solutions στο κάθε μάθημα. Μια άλλη ιδέα θα ήταν να δημιουργήσετε μια ομάδα μελέτης με φίλους, και να δείτε το περιεχόμενο των μαθημάτων από κοινού. Για παραιτέρω μελέτη, προτείνουμε το [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon) και παρακολουθώντας τα βίντεο που αναφέρονται παρακάτω.
[![Promo video](../screenshot.png)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video") [![Promo video](/images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video")
> 🎥 Κάντε κλικ στην εικόνα για ένα βίντεο σχετικά με το έργο αυτό και τους ανθρώπους που το δημιούργησαν! > 🎥 Κάντε κλικ στην εικόνα για ένα βίντεο σχετικά με το έργο αυτό και τους ανθρώπους που το δημιούργησαν!
@ -30,13 +30,13 @@
Επιλέξαμε δύο παιδαγωγικές αρχές κατά τη δημιουργία αυτού του προγράμματος μαθημάτων: διασφαλίσαμε ότι βασίζεται σε εργασίες και ότι περιλαμβάνει συχνά κουίζ. Μέχρι το τέλος των μαθημάτων, οι μαθητές θα έχουν δημιουργήσει ένα παιχνίδι πληκτρολόγησης, ένα εικονικό terrarium, μια «πράσινη» επέκταση προγράμματος περιήγησης, ένα παιχνίδι τύπου «space invaders» και μια τραπεζική εφαρμογή επιχειρηματικού τύπου και θα έχουν μάθει τα βασικά της JavaScript , HTML και CSS μαζί με τα σύγχρονα εργαλεία του σημερινού προγραμματιστή ιστού. Επιλέξαμε δύο παιδαγωγικές αρχές κατά τη δημιουργία αυτού του προγράμματος μαθημάτων: διασφαλίσαμε ότι βασίζεται σε εργασίες και ότι περιλαμβάνει συχνά κουίζ. Μέχρι το τέλος των μαθημάτων, οι μαθητές θα έχουν δημιουργήσει ένα παιχνίδι πληκτρολόγησης, ένα εικονικό terrarium, μια «πράσινη» επέκταση προγράμματος περιήγησης, ένα παιχνίδι τύπου «space invaders» και μια τραπεζική εφαρμογή επιχειρηματικού τύπου και θα έχουν μάθει τα βασικά της JavaScript , HTML και CSS μαζί με τα σύγχρονα εργαλεία του σημερινού προγραμματιστή ιστού.
> 🎓 Μπορείτε να κάνετε τα πρώτα μαθήματα αυτού του προγραμμάτος ως [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-77807-sagibbon) στο Microsoft Learn! > 🎓 Μπορείτε να κάνετε τα πρώτα μαθήματα αυτού του προγραμμάτος ως [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) στο Microsoft Learn!
Διασφαλίζοντας ότι το περιεχόμενο συνδυάζεται με εργασίες, η διαδικασία γίνεται πιο ελκυστική για τους μαθητές και η διατήρηση των εννοιών αυξάνετε. Γράψαμε επίσης, πολλά αρχικά μαθήματα JavaScript για να εισαγάγουμε τις βασικές έννοιες, συνδυαζόμενο με βίντεο από τη "[Σειρά για αρχάριους: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-77807-sagibbon)" συλλογή των βιντεο tutorial, μερικοί από τους συγγραφείς των οποίων συνέβαλαν σε αυτό το πρόγραμμα μαθημάτων. Διασφαλίζοντας ότι το περιεχόμενο συνδυάζεται με εργασίες, η διαδικασία γίνεται πιο ελκυστική για τους μαθητές και η διατήρηση των εννοιών αυξάνετε. Γράψαμε επίσης, πολλά αρχικά μαθήματα JavaScript για να εισαγάγουμε τις βασικές έννοιες, συνδυαζόμενο με βίντεο από τη "[Σειρά για αρχάριους: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" συλλογή των βιντεο tutorial, μερικοί από τους συγγραφείς των οποίων συνέβαλαν σε αυτό το πρόγραμμα μαθημάτων.
Επιπλέον, ένα κουίζ χαμηλής συμμετοχής πριν από κάθε μάθημα, θέτει την πρόθεση του μαθητή προς την εκμάθηση ενός θέματος, ενώ ένα δεύτερο κουίζ μετά το μάθημα εξασφαλίζει τη περαιτέρω διατήρηση του. Αυτό το πρόγραμμα μαθημάτων σχεδιάστηκε για να είναι ευέλικτο και διασκεδαστικό και μπορεί να γίνει ολόκληρο ή εν μέρει. Οι εργασίες ξεκινούν μικρές και γίνονται όλο και πιο περίπλοκες μέχρι το τέλος του κύκλου των 12 εβδομάδων. Επιπλέον, ένα κουίζ χαμηλής συμμετοχής πριν από κάθε μάθημα, θέτει την πρόθεση του μαθητή προς την εκμάθηση ενός θέματος, ενώ ένα δεύτερο κουίζ μετά το μάθημα εξασφαλίζει τη περαιτέρω διατήρηση του. Αυτό το πρόγραμμα μαθημάτων σχεδιάστηκε για να είναι ευέλικτο και διασκεδαστικό και μπορεί να γίνει ολόκληρο ή εν μέρει. Οι εργασίες ξεκινούν μικρές και γίνονται όλο και πιο περίπλοκες μέχρι το τέλος του κύκλου των 12 εβδομάδων.
Ενώ έχουμε αποφύγει σκόπιμα την εισαγωγή των JavaScript frameworks, ώστε να επικεντρωθούμε στις βασικές δεξιότητες που απαιτούνται ως προγραμματιστής Ιστού πριν υιοθετήσουμε ένα framework, ένα καλό επόμενο βήμα για την ολοκλήρωση αυτού του προγράμματος μαθημάτων θα ήταν η εκμάθηση του Node.js μέσω μιας άλλης συλλογής βίντεο: "[Σειρά για αρχάριους: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)". Ενώ έχουμε αποφύγει σκόπιμα την εισαγωγή των JavaScript frameworks, ώστε να επικεντρωθούμε στις βασικές δεξιότητες που απαιτούνται ως προγραμματιστής Ιστού πριν υιοθετήσουμε ένα framework, ένα καλό επόμενο βήμα για την ολοκλήρωση αυτού του προγράμματος μαθημάτων θα ήταν η εκμάθηση του Node.js μέσω μιας άλλης συλλογής βίντεο: "[Σειρά για αρχάριους: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
> Βρείτε τα [Code of Conduct](../CODE_OF_CONDUCT.md), [Contributing](../CONTRIBUTING.md), και [Translation](../TRANSLATIONS.md) για οδηγίες. Ευπρόσδεκτα όλα τα εποικοδομητικά σχόλιά σας! > Βρείτε τα [Code of Conduct](../CODE_OF_CONDUCT.md), [Contributing](../CONTRIBUTING.md), και [Translation](../TRANSLATIONS.md) για οδηγίες. Ευπρόσδεκτα όλα τα εποικοδομητικά σχόλιά σας!

@ -0,0 +1,111 @@
[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE)
[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/)
[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/)
[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/)
[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/)
[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/)
[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)
# توسعه وب برای مبتدیان - یک برنامه درسی
آژوره کلود آدوکتس در مایکروسافت از ارائه یک برنامه درسی 12 هفته ای 24 درس در مورد مبانی جاوا اسکریپت، سی اس اس و اچ تی ام ال خوشحالند. هر درس شامل آزمون های قبل و بعد از درس، دستورالعمل های مکتوب برای تکمیل درس، یک راه حل، یک تکلیف و موارد دیگر است. آموزش مبتنی بر پروژه ما به شما امکان می دهد در حین ساختن یاد بگیرید، راهی ثابت شده برای "چسبیدن" مهارت های جدید.
از نویسندگانمان جن لوپر، کریس نورینگ، کریستوفر هریسون، جاسمین گریناوی، یوهان لاسورسا، فلور دریس، و تومومی ایمورا، نویسندگان ما صمیمانه تشکر می‌کنیم!
**از نویسندگانمان، جن لوپر، کریس نورینگ، کریستوفر هریسون، جاسمین گریناوی، یوهان لاسورسا، فلور دریس و تومومی ایمورا، نویسندگان ما صمیمانه تشکر می‌کنیم!**
# شما دانش آموز هستید؟
با منابع زیر شروع کنید:
- [Student Hub page](https://docs.microsoft.com/en-gb/learn/student-hub?WT.mc_id=academic-13441-cxa) در این صفحه، منابع مبتدی، بسته های دانشجویی و حتی راه های دریافت کوپن گواهی رایگان را خواهید یافت. این صفحه‌ای است که می‌خواهید هر چند وقت یک‌بار به عنوان نشانه‌گذاری و بررسی کنید، زیرا ما حداقل ماهانه محتوا را تغییر می‌دهیم
- [Microsoft Student Learn ambassadors](https://studentambassadors.microsoft.com?WT.mc_id=academic-13441-cxa) به یک جامعه جهانی از سفیران دانشجو بپیوندید، این می تواند راه شما برای ورود به مایکروسافت باشد
# شروع شدن
> **معلمان** [شامل چند پیشنهاد](for-teachers.md) داریم در مورد نحوه استفاده از این برنامه درسی. [در انجمن بحث ما](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **[دانش آموزان](https://aka.ms/student-page)**, برای استفاده از این برنامه درسی به تنهایی، کل مخزن را چنگال کنید و تمرینات را به تنهایی کامل کنید، با یک مسابقه قبل از سخنرانی شروع کنید، سپس سخنرانی را بخوانید و بقیه فعالیت ها را تکمیل کنید. سعی کنید پروژه ها را با درک درس ها به جای کپی کردن کد راه حل ایجاد کنید. با این حال، این کد در پوشه های /solutions در هر درس پروژه محور موجود است. ایده دیگر این است که یک گروه مطالعه با دوستان تشکیل دهید و مطالب را با هم مرور کنید. برای مطالعه بیشتر توصیه می کنیم [مايكروسافت لرن](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-13441-cxa) و با تماشای فیلم های ذکر شده در زیر.
[![Promo video](images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII)
گیف توسط [موهیت جیسال](https://linkedin.com/in/mohitjaisal)
> 🎥 برای دریافت ویدیویی در مورد پروژه و افرادی که آن را ایجاد کرده اند، روی تصویر بالا کلیک کنید!
## آموزش و پرورش
ما در هنگام ساختن این برنامه درسی دو اصل آموزشی را انتخاب کرده ایم: اطمینان از پروژه محور بودن آن و اینکه شامل آزمون های مکرر است. تا پایان این مجموعه، دانش‌آموزان یک بازی تایپ، یک تراریوم مجازی، یک افزونه مرورگر سبز، یک بازی از نوع مهاجمان فضایی و یک برنامه بانکی از نوع کسب‌وکار خواهند ساخت و اصول جاوا اسکریپت را یاد خواهند گرفت. ، اچ تی ام ال و سی اس اس به همراه زنجیره ابزار مدرن توسعه دهندگان وب امروزی.
> 🎓 شما می توانید چند درس اول این برنامه درسی را در مایکروسافت لرن به عنوان یک [مسیر یادگیری](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-13441-cxa)
بخوانید.
با حصول اطمینان از همسویی محتوا با پروژه ها، این فرآیند برای دانش آموزان جذاب تر می شود و حفظ مفاهیم تقویت می شود. ما همچنین چندین درس ابتدایی در مبانی جاوا اسکریپت نوشتیم تا مفاهیم را معرفی کنیم، همراه با ویدئو از "[سری مبتدیان به: جاوا اسکریپت](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-13441-cxa)" مجموعه ای از آموزش های ویدئویی که برخی از نویسندگان آن در این برنامه درسی مشارکت داشته اند.
علاوه بر این، یک مسابقه کم هزینه قبل از کلاس، قصد دانش آموز را برای یادگیری یک موضوع تعیین می کند، در حالی که آزمون دوم بعد از کلاس، حفظ بیشتر را تضمین می کند. این برنامه درسی به گونه ای طراحی شده است که انعطاف پذیر و سرگرم کننده باشد و می تواند به طور کامل یا جزئی انجام شود. پروژه ها کوچک شروع می شوند و در پایان چرخه 12 هفته ای به طور فزاینده ای پیچیده می شوند.
در حالی که ما عمداً از معرفی فریمورک‌های جاوا اسکریپت خودداری کرده‌ایم تا بر مهارت‌های اساسی مورد نیاز به‌عنوان یک توسعه‌دهنده وب قبل از اتخاذ یک چارچوب تمرکز کنیم، گام بعدی خوب برای تکمیل این برنامه درسی، یادگیری در مورد Node.js از طریق مجموعه‌ای دیگر از ویدیوها است : "[سری مبتدی به: نود جی اس](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-13441-cxa)".
> ما را پیدا کنید [کد رفتار](CODE_OF_CONDUCT.md), [کمک کردن](CONTRIBUTING.md), و [ترجمه](TRANSLATIONS.md) دستورالعمل ها. ما از بازخورد سازنده شما استقبال می کنیم!
## هر درس شامل:
- طرحی اختیاری
- ویدیوی تکمیلی اختیاری
- مسابقه گرم کردن قبل از درس
- درس نوشتاری
- برای درس های پروژه محور، راهنمای گام به گام نحوه ساخت پروژه
- بررسی دانش
- یک چالش
- خواندن تکمیلی
- وظیفه
- مسابقه بعد از درس
> ** نکته ای در مورد آزمون ها **: همه آزمون ها [در این برنامه](https://ashy-river-0debb7803.1.azurestaticapps.net/?loc=fa) موجود است, برای 48 آزمون مجموع سه سوال هر کدام. آنها از داخل درس ها پیوند داده شده اند، اما برنامه مسابقه می تواند به صورت محلی اجرا شود. دستورالعمل موجود در پوشه «کویز-برنامه» را دنبال کنید. آنها به تدریج در حال بومی سازی هستند.
## درس ها
| | نام پروژه | مفاهیم تدریس شده | اهداف یادگیری | درس مرتبط | نویسنده |
| :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: |
| 01 | شروع شدن | مقدمه ای بر برنامه نویسی و ابزارهای تجارت | زیربنای اساسی بیشتر زبان های برنامه نویسی و نرم افزاری را بیاموزید که به توسعه دهندگان حرفه ای کمک می کند کارهای خود را انجام دهند | [مقدمه ای بر زبان های برنامه نویسی و ابزارهای تجارت](/1-getting-started-lessons/1-intro-to-programming-languages/README.md) | جزمین |
| 02 | شروع شدن | اصول گیت هاب شامل کار با یک تیم است | نحوه استفاده از گیت هاب در پروژه خود، نحوه همکاری با دیگران بر اساس کد | [معرفی گیت هاب](/1-getting-started-lessons/2-github-basics/README.md) | فلور |
| 03 | شروع شدن | دسترسی | اصول دسترسی به وب را بیاموزید | [مبانی دسترسی](/1-getting-started-lessons/3-accessibility/README.md) | کریستفر |
| 04 | اصول جی اس | انواع داده جاوا اسکریپت | اصول اولیه انواع داده جاوا اسکریپت | [انواع داده ها](/2-js-basics/1-data-types/README.md) | جزمین |
| 05 | اصول جی اس | توابع و روش ها | با توابع و روش های مدیریت جریان منطقی برنامه آشنا شوید | [توابع و روش ها](/2-js-basics/2-functions-methods/README.md) | جزمین و کریستوفر |
| 06 | اصول جی اس | تصمیم گیری با جی اس | بیاموزید که چگونه با استفاده از روش های تصمیم گیری در کد خود شرایط ایجاد کنید | [تصمیم گیری](/2-js-basics/3-making-decisions/README.md) | جزمین |
| 07 | اصول جی اس | آرایه ها و حلقه ها | با داده ها با استفاده از آرایه ها و حلقه ها در جاوا اسکریپت کار کنید | [آرایه ها و حلقه ها](/2-js-basics/4-arrays-loops/README.md) | جزمین |
| 08 | [تراریوم](/3-terrarium/solution/README.md) | اچ تی ام ال در عمل | کد اچ تی ام ال را به صورت آنلاین بسازید، با تمرکز بر روی ایجاد یک صفحه بزرگ | [مقدمه ای بر اچ تی ام ال](/3-terrarium/1-intro-to-html/README.md) | جن |
| 09 | [تراریوم](/3-terrarium/solution/README.md) | سی اس اس در عمل | ساخت سی اس اس برای سبک تراریوم آنلاین، با تمرکز بر اصول اولیه سی اس اس از جمله پاسخگو بودن صفحه | [مقدمه ای بر سی اس اس](/3-terrarium/2-intro-to-css/README.md) | جن || 10 | [تراریوم](/3-terrarium/solution/README.md) | بسته شدن جاوا اسکریپت، دستکاری دام | جاوا اسکریپت را بسازید تا تراریوم به عنوان یک رابط کشیدن و رها کردن، با تمرکز بر بسته شدن و دستکاری دام عمل کند. | [بسته شدن جاوا اسکریپت، دستکاری دام](/3-terrarium/3-intro-to-DOM-and-closures/README.md) | جن |
| 11 | [بازی تایپ](/4-typing-game/solution/README.md) | یک بازی تایپ بسازید | با نحوه استفاده از رویدادهای صفحه کلید برای هدایت منطق برنامه جاوا اسکریپت خود آشنا شوید | [برنامه نویسی رویداد محور](/4-typing-game/typing-game/README.md) | کریستوفر |
| 12 | [پسوند مرورگر سبز](/5-browser-extension/solution/README.md) | کار با مرورگرها | با نحوه کار مرورگرها، تاریخچه آنها و نحوه ایجاد داربست در اولین عناصر یک برنامه افزودنی مرورگر آشنا شوید | [درباره مرورگرها](/5-browser-extension/1-about-browsers/README.md) | جن |
| 13 | [پسوند مرورگر سبز](/5-browser-extension/solution/README.md) | ساخت فرم، فراخوانی ای پی ای و ذخیره متغیرها در حافظه محلی | عناصر جاوا اسکریپت افزونه مرورگر خود را برای فراخوانی یک ای پی ای با استفاده از متغیرهای ذخیره شده در حافظه محلی بسازید | [ای پی ای، فرم‌ها و فضای ذخیره‌سازی محلی](/5-browser-extension/2-forms-browsers-local-storage/README.md) | جن |
| 14 | [پسوند مرورگر سبز](/5-browser-extension/solution/README.md) | فرآیندهای پس زمینه در مرورگر، عملکرد وب | از فرآیندهای پس‌زمینه مرورگر برای مدیریت نماد برنامه افزودنی استفاده کنید. در مورد عملکرد وب و برخی بهینه سازی هایی که باید انجام دهید بیاموزید | [وظایف و عملکرد پس زمینه](/5-browser-extension/3-background-tasks-and-performance/README.md) | جن |
| 15 | [بازی فضایی](/6-space-game/solution/README.md) | توسعه بازی پیشرفته تر با جاوا اسکریپت | با استفاده از کلاس‌ها و ترکیب و الگوی پاب/ساب، در آماده‌سازی برای ساختن یک بازی، درباره وراثت بیاموزید. | [مقدمه ای بر توسعه بازی پیشرفته](/6-space-game/1-introduction/README.md) | کریس |
| 16 | [بازی فضایی](/6-space-game/solution/README.md) | طراحی روی بوم | درباره کانواز ای پی ای که برای کشیدن عناصر به صفحه استفاده می شود، بیاموزید | [طراحی روی بوم](/6-space-game/2-drawing-to-canvas/README.md) | کریس |
| 17 | [بازی فضایی](/6-space-game/solution/README.md) | حرکت عناصر در اطراف صفحه نمایش | کشف کنید که چگونه عناصر می توانند با استفاده از مختصات دکارتی و کانواز ای پی ای حرکت کنند | [حرکت عناصر در اطراف](/6-space-game/3-moving-elements-around/README.md) | کریس |
| 18 | [بازی فضایی](/6-space-game/solution/README.md) | تشخیص برخورد | با استفاده از کلیدهای کلیدی، عناصر را با هم برخورد کرده و به یکدیگر واکنش نشان دهند و یک عملکرد خنک کننده برای اطمینان از عملکرد بازی ارائه دهید. | [تشخیص برخورد](/6-space-game/4-collision-detection/README.md) | کریس |
| 19 | [بازی فضایی](/6-space-game/solution/README.md) | حفظ امتیاز | محاسبات ریاضی را بر اساس وضعیت و عملکرد بازی انجام دهید | [حفظ امتیاز](/6-space-game/5-keeping-score/README.md) | کریس |
| 20 | [بازی فضایی](/6-space-game/solution/README.md) | پایان و شروع مجدد بازی | درباره پایان و شروع مجدد بازی، از جمله پاکسازی دارایی ها و بازنشانی مقادیر متغیر، اطلاعات کسب کنید | [شرط پایان](/6-space-game/6-end-condition/README.md) | کریس |
| 21 | [اپلیکیشن بانکداری](/7-bank-project/solution/README.md) | الگوها و مسیرهای اچ تی ام ال در یک برنامه وب | نحوه ایجاد داربست معماری یک وب سایت چند صفحه ای با استفاده از مسیریابی و قالب های اچ تی ام ال را بیاموزید | [الگوها و مسیرهای اچ تی ام ال](/7-bank-project/1-template-route/README.md) | یوهان |
| 22 | [اپلیکیشن بانکداری](/7-bank-project/solution/README.md) | یک فرم ورود و ثبت نام بسازید | در مورد ساخت فرم ها و روال های اعتبار سنجی ارائه اطلاعات کسب کنید | [فرم](/7-bank-project/2-forms/README.md) | یوهان |
| 23 | [اپلیکیشن بانکداری](/7-bank-project/solution/README.md) | روش های واکشی و استفاده از داده ها | چگونه داده ها به داخل و خارج از برنامه شما جریان می یابد، چگونه آن را واکشی کنید، ذخیره کنید، و از بین ببرید | [داده ها](/7-bank-project/3-data/README.md) | یوهان |
| 24 | [اپلیکیشن بانکداری](/7-bank-project/solution/README.md) | مفاهیم مدیریت دولتی | بیاموزید که چگونه برنامه شما حالت خود را حفظ می کند و چگونه آن را به صورت برنامه ریزی مدیریت کنید | [مدیریت ستیت](/7-bank-project/4-state-management/README.md) | یوهان |
## دسترسی آفلاین
با استفاده از [Docsify](https://docsify.js.org/#/) می توانید این اسناد را به صورت آفلاین اجرا کنید. این مخزن را در دستگاه محلی خود [نصب کنید Docsify](https://docsify.js.org/#/quickstart) و سپس در پوشه اصلی این مخزن، «docsify serve» را تایپ کنید. این وب سایت در پورت 3000 در لوکال هاست شما ارائه می شود: «localhost:3000».
## پی دی اف
پی دی اف تمام دروس را می توان یافت [اینجا](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf)
## سایر برنامه های درسی
تیم ما برنامه های درسی دیگری تولید می کند! وارسی:
- [یادگیری ماشینی برای مبتدیان](https://aka.ms/ml-beginners)
- [اینترنت اشیا برای مبتدیان](https://aka.ms/iot-beginners)
- [علم داده برای مبتدیان](https://aka.ms/datascience-beginners)
- [هوش مصنوعی برای مبتدیان](https://aka.ms/ai-beginners)

@ -20,9 +20,9 @@ Ang Azure Cloud Advocates sa Microsoft ay nalulugod na mag-alok ng 12-linggo, 24
> **Mga Guro**, mayroon kaming [included some suggestions](../for-teachers.md) kung paano gamitin ang curriculum na ito. Gusto namin ang iyong feedback [sa aming discussion forum](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! > **Mga Guro**, mayroon kaming [included some suggestions](../for-teachers.md) kung paano gamitin ang curriculum na ito. Gusto namin ang iyong feedback [sa aming discussion forum](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **Mga mag-aaral**, para magamit ang curriculum na ito nang mag-isa, i-fork ang buong repo at kumpletuhin ang mga pagsasanay nang mag-isa, simula sa pagsusulit bago ang lecture, pagkatapos ay basahin ang lecture at kumpletuhin ang iba pang aktibidad. Subukang lumikha ng mga proyekto sa pamamagitan ng pag-unawa sa mga aralin sa halip na pagkopya ng code ng solusyon; gayunpaman, ang code na iyon ay magagamit sa mga folder ng /solutions sa bawat aralin na nakatuon sa proyekto. Ang isa pang ideya ay ang bumuo ng isang grupo ng pag-aaral kasama ang mga kaibigan at sabay-sabay na suriin ang nilalaman. Para sa karagdagang pag-aaral, inirerekomenda namin ang [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon) and by watching the videos mentioned below. > **Mga mag-aaral**, para magamit ang curriculum na ito nang mag-isa, i-fork ang buong repo at kumpletuhin ang mga pagsasanay nang mag-isa, simula sa pagsusulit bago ang lecture, pagkatapos ay basahin ang lecture at kumpletuhin ang iba pang aktibidad. Subukang lumikha ng mga proyekto sa pamamagitan ng pag-unawa sa mga aralin sa halip na pagkopya ng code ng solusyon; gayunpaman, ang code na iyon ay magagamit sa mga folder ng /solutions sa bawat aralin na nakatuon sa proyekto. Ang isa pang ideya ay ang bumuo ng isang grupo ng pag-aaral kasama ang mga kaibigan at sabay-sabay na suriin ang nilalaman. Para sa karagdagang pag-aaral, inirerekomenda namin ang [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon) and by watching the videos mentioned below.
[![Promo video](../screenshot.png)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video") [![Promo video](/images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video")
> 🎥 I-click ang larawan sa itaas para sa isang video tungkol sa proyekto at sa mga taong lumikha nito! > 🎥 I-click ang larawan sa itaas para sa isang video tungkol sa proyekto at sa mga taong lumikha nito!
@ -30,13 +30,13 @@ Ang Azure Cloud Advocates sa Microsoft ay nalulugod na mag-alok ng 12-linggo, 24
Pumili kami ng dalawang pedagogical tenets habang binubuo ang curriculum na ito: pagtiyak na ito ay batay sa proyekto at kasama nito ang madalas na mga pagsusulit. Sa pagtatapos ng seryeng ito, makakagawa ang mga mag-aaral ng laro sa pag-type, virtual terrarium, extension ng browser na 'berde', uri ng larong 'space invaders', at banking app na uri ng negosyo, at matututunan nila ang mga pangunahing kaalaman sa JavaScript. , HTML, at CSS kasama ang modernong toolchain ng web developer ngayon. Pumili kami ng dalawang pedagogical tenets habang binubuo ang curriculum na ito: pagtiyak na ito ay batay sa proyekto at kasama nito ang madalas na mga pagsusulit. Sa pagtatapos ng seryeng ito, makakagawa ang mga mag-aaral ng laro sa pag-type, virtual terrarium, extension ng browser na 'berde', uri ng larong 'space invaders', at banking app na uri ng negosyo, at matututunan nila ang mga pangunahing kaalaman sa JavaScript. , HTML, at CSS kasama ang modernong toolchain ng web developer ngayon.
> 🎓 Maaari mong kunin ang mga unang aralin sa kurikulum na ito bilang a [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-77807-sagibbon) on Microsoft Learn! > 🎓 Maaari mong kunin ang mga unang aralin sa kurikulum na ito bilang a [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) on Microsoft Learn!
Sa pamamagitan ng pagtiyak na ang nilalaman ay naaayon sa mga proyekto, ang proseso ay ginagawang mas nakakaengganyo para sa mga mag-aaral at ang pagpapanatili ng mga konsepto ay madaragdagan. Sumulat din kami ng ilang panimulang aralin sa mga pangunahing kaalaman sa JavaScript upang ipakilala ang mga konsepto, na ipinares sa video mula sa "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-77807-sagibbon)" collection of video tutorials, some of whose authors contributed to this curriculum. Sa pamamagitan ng pagtiyak na ang nilalaman ay naaayon sa mga proyekto, ang proseso ay ginagawang mas nakakaengganyo para sa mga mag-aaral at ang pagpapanatili ng mga konsepto ay madaragdagan. Sumulat din kami ng ilang panimulang aralin sa mga pangunahing kaalaman sa JavaScript upang ipakilala ang mga konsepto, na ipinares sa video mula sa "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" collection of video tutorials, some of whose authors contributed to this curriculum.
Bilang karagdagan, ang isang mababang-stakes na pagsusulit bago ang isang klase ay nagtatakda ng intensyon ng mag-aaral sa pag-aaral ng isang paksa, habang ang pangalawang pagsusulit pagkatapos ng klase ay nagsisiguro ng karagdagang pagpapanatili. Ang kurikulum na ito ay idinisenyo upang maging flexible at masaya at maaaring kunin nang buo o bahagi. Ang mga proyekto ay nagsisimula sa maliit at nagiging mas kumplikado sa pagtatapos ng 12 linggong ikot. Bilang karagdagan, ang isang mababang-stakes na pagsusulit bago ang isang klase ay nagtatakda ng intensyon ng mag-aaral sa pag-aaral ng isang paksa, habang ang pangalawang pagsusulit pagkatapos ng klase ay nagsisiguro ng karagdagang pagpapanatili. Ang kurikulum na ito ay idinisenyo upang maging flexible at masaya at maaaring kunin nang buo o bahagi. Ang mga proyekto ay nagsisimula sa maliit at nagiging mas kumplikado sa pagtatapos ng 12 linggong ikot.
Bagama't sinadya naming iwasan ang pagpapakilala ng mga balangkas ng JavaScript upang makapag-concentrate sa mga pangunahing kasanayang kailangan bilang isang web developer bago magpatibay ng isang balangkas, isang magandang susunod na hakbang sa pagkumpleto ng kurikulum na ito ay ang pag-aaral tungkol sa Node.js sa pamamagitan ng isa pang koleksyon ng mga video: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)". Bagama't sinadya naming iwasan ang pagpapakilala ng mga balangkas ng JavaScript upang makapag-concentrate sa mga pangunahing kasanayang kailangan bilang isang web developer bago magpatibay ng isang balangkas, isang magandang susunod na hakbang sa pagkumpleto ng kurikulum na ito ay ang pag-aaral tungkol sa Node.js sa pamamagitan ng isa pang koleksyon ng mga video: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
> Hanapin ang aming [Code of Conduct](../CODE_OF_CONDUCT.md), [Contributing](../CONTRIBUTING.md), at [Translation](../TRANSLATIONS.md) mga alituntunin. Tinatanggap namin ang iyong nakabubuo na feedback! > Hanapin ang aming [Code of Conduct](../CODE_OF_CONDUCT.md), [Contributing](../CONTRIBUTING.md), at [Translation](../TRANSLATIONS.md) mga alituntunin. Tinatanggap namin ang iyong nakabubuo na feedback!
> >

@ -28,7 +28,7 @@ Commencez avec les ressources suivantes :
> **Instituteurs**, nous avons [inclus quelques suggestions](for-teachers.fr.md) sur la façon dutiliser ce programme. Nous aimerions avoir vos commentaires [dans notre forum de discussion](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! > **Instituteurs**, nous avons [inclus quelques suggestions](for-teachers.fr.md) sur la façon dutiliser ce programme. Nous aimerions avoir vos commentaires [dans notre forum de discussion](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **Elèves**, pour utiliser ce programme par vous-même, effectuer un Fork lensemble du dépôt et compléter les exercices par vous-même, en commençant par un quiz préalable, puis en lisant le cours et en complétant le reste des activités. Essayez de créer les projets en comprenant les leçons plutôt que de copier le code de la solution; toutefois, ce code est disponible dans les dossiers /solutions de chaque leçon orientée projet. Une autre idée serait de former un groupe détude avec des amis et de parcourir le contenu ensemble. Pour une étude plus approfondie, nous recommandons [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon) et en regardant les vidéos mentionnées ci-dessous. > **Elèves**, pour utiliser ce programme par vous-même, effectuer un Fork lensemble du dépôt et compléter les exercices par vous-même, en commençant par un quiz préalable, puis en lisant le cours et en complétant le reste des activités. Essayez de créer les projets en comprenant les leçons plutôt que de copier le code de la solution; toutefois, ce code est disponible dans les dossiers /solutions de chaque leçon orientée projet. Une autre idée serait de former un groupe détude avec des amis et de parcourir le contenu ensemble. Pour une étude plus approfondie, nous recommandons [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon) et en regardant les vidéos mentionnées ci-dessous.
[![Vidéo promotionnelle](../images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Vidéo promotionnelle") [![Vidéo promotionnelle](../images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Vidéo promotionnelle")
@ -40,13 +40,13 @@ Gif par [Mohit Jaisal](https://linkedin.com/in/mohitjaisal)
Nous avons choisi deux principes pédagogiques lors de lélaboration de ce programme : sassurer quil est basé sur des projets et quil comprend des quiz fréquents. À la fin de cette série, les élèves auront construit un jeu de dactylographie, un terrarium virtuel, une extension de navigateur 'verte', un jeu de type 'space invaders' et une application bancaire de type professionnel, et auront appris les bases de JavaScript, HTML et CSS ainsi que la chaîne doutils moderne du développeur Web daujourdhui. Nous avons choisi deux principes pédagogiques lors de lélaboration de ce programme : sassurer quil est basé sur des projets et quil comprend des quiz fréquents. À la fin de cette série, les élèves auront construit un jeu de dactylographie, un terrarium virtuel, une extension de navigateur 'verte', un jeu de type 'space invaders' et une application bancaire de type professionnel, et auront appris les bases de JavaScript, HTML et CSS ainsi que la chaîne doutils moderne du développeur Web daujourdhui.
> 🎓 Vous pouvez prendre les premières leçons de ce programme en tant que [Parcours dapprentissage](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-77807-sagibbon) sur Microsoft Learn! > 🎓 Vous pouvez prendre les premières leçons de ce programme en tant que [Parcours dapprentissage](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) sur Microsoft Learn!
En veillant à ce que le contenu saligne sur les projets, le processus est rendu plus attrayant pour les étudiants et la rétention des concepts sera augmentée. Nous avons également écrit plusieurs leçons de démarrage sur les bases de JavaScript pour introduire des concepts, associées à une vidéo de la "[Série pour débutants à : JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-77807-sagibbon)" une collection de tutoriels vidéo, dont certains auteurs ont contribué à ce programme. En veillant à ce que le contenu saligne sur les projets, le processus est rendu plus attrayant pour les étudiants et la rétention des concepts sera augmentée. Nous avons également écrit plusieurs leçons de démarrage sur les bases de JavaScript pour introduire des concepts, associées à une vidéo de la "[Série pour débutants à : JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" une collection de tutoriels vidéo, dont certains auteurs ont contribué à ce programme.
En outre, un quiz à faible enjeu avant un cours définit lintention de lélève dapprendre un sujet, tandis quun deuxième quiz après le cours assure une rétention supplémentaire. Ce programme a été conçu pour être flexible et amusant et peut être pris en tout ou en partie. Les projets commencent petit et deviennent de plus en plus complexes à la fin du cycle de 12 semaines. En outre, un quiz à faible enjeu avant un cours définit lintention de lélève dapprendre un sujet, tandis quun deuxième quiz après le cours assure une rétention supplémentaire. Ce programme a été conçu pour être flexible et amusant et peut être pris en tout ou en partie. Les projets commencent petit et deviennent de plus en plus complexes à la fin du cycle de 12 semaines.
Bien que nous ayons délibérément évité dintroduire des frameworks JavaScript afin de nous concentrer sur les compétences de base nécessaires en tant que développeur Web avant dadopter un framework, une bonne prochaine étape pour compléter ce programme serait den apprendre davantage sur Node.js via une autre collection de vidéos: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)". Bien que nous ayons délibérément évité dintroduire des frameworks JavaScript afin de nous concentrer sur les compétences de base nécessaires en tant que développeur Web avant dadopter un framework, une bonne prochaine étape pour compléter ce programme serait den apprendre davantage sur Node.js via une autre collection de vidéos: "[Série pour débutants en Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
> Trouvez nos directives de [Code de conduite](../CODE_OF_CONDUCT.md), pour [Contribuer](../CONTRIBUTING.md) et de [Traduction](../TRANSLATIONS.md). Vos commentaires constructifs sont les bienvenus! > Trouvez nos directives de [Code de conduite](../CODE_OF_CONDUCT.md), pour [Contribuer](../CONTRIBUTING.md) et de [Traduction](../TRANSLATIONS.md). Vos commentaires constructifs sont les bienvenus!
@ -72,28 +72,28 @@ Bien que nous ayons délibérément évité dintroduire des frameworks JavaSc
| :---: | :------------------------------------------------------: | :--------------------------------------------------------------------: | --------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------: | :---------------------: | | :---: | :------------------------------------------------------: | :--------------------------------------------------------------------: | --------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------: | :---------------------: |
| 01 | Pour commencer | Introduction à la programmation et aux outils métiers | Savoir les bases de quelques langages de programmation et leur utilité dans la création de solutions informatiques | [Introduction à la programmation](/1-getting-started-lessons/1-intro-to-programming-languages/translations/README.fr.md) | Jasmine | | 01 | Pour commencer | Introduction à la programmation et aux outils métiers | Savoir les bases de quelques langages de programmation et leur utilité dans la création de solutions informatiques | [Introduction à la programmation](/1-getting-started-lessons/1-intro-to-programming-languages/translations/README.fr.md) | Jasmine |
| 02 | Pour commencer | Les bases de Github et le travail en groupe | Apprendre comment utiliser GitHub et contribuer à des projets | [Introduction aux bases de GitHub](/1-getting-started-lessons/2-github-basics/translations/README.fr.md) | Floor | | 02 | Pour commencer | Les bases de Github et le travail en groupe | Apprendre comment utiliser GitHub et contribuer à des projets | [Introduction aux bases de GitHub](/1-getting-started-lessons/2-github-basics/translations/README.fr.md) | Floor |
| 03 | Pour commencer | Accessibilité | Apprendre les bases de l'accessibilité Web | [Accessibility Fundamentals](/1-getting-started-lessons/3-accessibility/translations/README.fr.md) | Christopher | | 03 | Pour commencer | Accessibilité | Apprendre les bases de l'accessibilité Web | [Fondamentaux de l'accessibilité](/1-getting-started-lessons/3-accessibility/translations/README.fr.md) | Christopher |
| 04 | Les bases de JS | Types de données JavaScript | Les bases des types de données JavaScript | [Types de données](/2-js-basics/1-data-types/translations/README.fr.md) | Jasmine | | 04 | Les bases de JS | Types de données JavaScript | Les bases des types de données JavaScript | [Types de données](/2-js-basics/1-data-types/translations/README.fr.md) | Jasmine |
| 05 | Les bases de JS | Fonctions et méthodes | En savoir plus sur les fonctions et les méthodes de gestion du flux logique dune application flow | [Fonctions et méthodes](/2-js-basics/2-functions-methods/translations/README.fr.md) | Jasmine et Christopher | | 05 | Les bases de JS | Fonctions et méthodes | En savoir plus sur les fonctions et les méthodes de gestion du flux logique dune application flow | [Fonctions et méthodes](/2-js-basics/2-functions-methods/translations/README.fr.md) | Jasmine et Christopher |
| 06 | Les bases de JS | Prendre des décisions avec JS | Découvrez comment créer des conditions dans votre code à laide de méthodes de prise de décision methods | [Prendre des décisions](/2-js-basics/3-making-decisions/translations/README.fr.md) | Jasmine | | 06 | Les bases de JS | Prendre des décisions avec JS | Découvrez comment créer des conditions dans votre code à laide de méthodes de prise de décision methods | [Prendre des décisions](/2-js-basics/3-making-decisions/translations/README.fr.md) | Jasmine |
| 07 | Les bases de JS | Tableaux et boucles | Utiliser des données à laide de tableaux et de boucles en JavaScript | [Tableaux et boucles](/2-js-basics/4-arrays-loops/translations/README.fr.md) | Jasmine | | 07 | Les bases de JS | Tableaux et boucles | Utiliser des données à laide de tableaux et de boucles en JavaScript | [Tableaux et boucles](/2-js-basics/4-arrays-loops/translations/README.fr.md) | Jasmine |
| 08 | [Terrarium](/3-terrarium/solution/translations/README.fr.md) | HTML en pratique | Construisez le code HTML pour créer un terrarium en ligne, en vous concentrant sur la construction dune mise en page | [Introduction to HTML](/3-terrarium/1-intro-to-html/translations/README.fr.md) | Jen | | 08 | [Terrarium](/3-terrarium/solution/translations/README.fr.md) | HTML en pratique | Construisez le code HTML pour créer un terrarium en ligne, en vous concentrant sur la construction dune mise en page | [Introduction au HTML](/3-terrarium/1-intro-to-html/translations/README.fr.md) | Jen |
| 09 | [Terrarium](/3-terrarium/solution/translations/README.fr.md) | CSS en pratique | Construisez le CSS pour styliser le terrarium en ligne, en vous concentrant sur les bases du CSS, y compris rendre la page réactive | [Introduction to CSS](/3-terrarium/2-intro-to-css/translations/README.fr.md) | Jen | | 09 | [Terrarium](/3-terrarium/solution/translations/README.fr.md) | CSS en pratique | Construisez le CSS pour styliser le terrarium en ligne, en vous concentrant sur les bases du CSS, y compris rendre la page réactive | [Introduction au CSS](/3-terrarium/2-intro-to-css/translations/README.fr.md) | Jen |
| 10 | [Terrarium](/3-terrarium/solution/translations/README.fr.md) | Fermetures JavaScript, manipulation DOM | Construisez le JavaScript pour que le terrarium fonctionne comme une interface glisser/déposer, en vous concentrant sur les fermetures et la manipulation du DOM | [Fermetures JavaScript, manipulation DOM](/3-terrarium/3-intro-to-DOM-and-closures/translations/README.fr.md) | Jen | | 10 | [Terrarium](/3-terrarium/solution/translations/README.fr.md) | Fermetures JavaScript, manipulation DOM | Construisez le JavaScript pour que le terrarium fonctionne comme une interface glisser/déposer, en vous concentrant sur les fermetures et la manipulation du DOM | [Fermetures JavaScript, manipulation DOM](/3-terrarium/3-intro-to-DOM-and-closures/translations/README.fr.md) | Jen |
| 11 | [Typing Game](/4-typing-game/solution/translations/README.fr.md) | Créer un jeu de frappe | Découvrez comment utiliser les événements de clavier pour piloter la logique de votre application JavaScript | [Event-Driven Programming](/4-typing-game/typing-game/translations/README.fr.md) | Christopher | | 11 | [Typing Game](/4-typing-game/solution/translations/README.fr.md) | Créer un jeu de frappe | Découvrez comment utiliser les événements de clavier pour piloter la logique de votre application JavaScript | [Programmation événementielle](/4-typing-game/typing-game/translations/README.fr.md) | Christopher |
| 12 | [Green Browser Extension](/5-browser-extension/solution/translations/README.fr.md) | Utilisation des navigateurs | Découvrez comment fonctionnent les navigateurs, leur historique et comment échafauder les premiers éléments dune extension de navigateur | [About Browsers](/5-browser-extension/1-about-browsers/translations/README.fr.md) | Jen | | 12 | [Green Browser Extension](/5-browser-extension/solution/translations/README.fr.md) | Utilisation des navigateurs | Découvrez comment fonctionnent les navigateurs, leur historique et comment échafauder les premiers éléments dune extension de navigateur | [À propos des navigateurs](/5-browser-extension/1-about-browsers/translations/README.fr.md) | Jen |
| 13 | [Green Browser Extension](/5-browser-extension/solution/translations/README.fr.md) | Création dun formulaire, appel dune API et stockage de variables dans le stockage local | Générez les éléments JavaScript de votre extension de navigateur pour appeler une API à laide de variables stockées dans le stockage local | [APIs, Forms, and Local Storage](/5-browser-extension/2-forms-browsers-local-storage/translations/README.fr.md) | Jen | | 13 | [Green Browser Extension](/5-browser-extension/solution/translations/README.fr.md) | Création dun formulaire, appel dune API et stockage de variables dans le stockage local | Générez les éléments JavaScript de votre extension de navigateur pour appeler une API à laide de variables stockées dans le stockage local | [API, formulaires et stockage local](/5-browser-extension/2-forms-browsers-local-storage/translations/README.fr.md) | Jen |
| 14 | [Green Browser Extension](/5-browser-extension/solution/translations/README.fr.md) | Processus en arrière-plan dans le navigateur, performances Web | Utilisez les processus darrière-plan du navigateur pour gérer licône de lextension; en savoir plus sur les performances Web et quelques optimisations à faire | [Background Tasks and Performance](/5-browser-extension/3-background-tasks-and-performance/translations/README.fr.md) | Jen | | 14 | [Green Browser Extension](/5-browser-extension/solution/translations/README.fr.md) | Processus en arrière-plan dans le navigateur, performances Web | Utilisez les processus darrière-plan du navigateur pour gérer licône de lextension; en savoir plus sur les performances Web et quelques optimisations à faire | [Les tâches et les performances en arrière-plan](/5-browser-extension/3-background-tasks-and-performance/translations/README.fr.md) | Jen |
| 15 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Développement avancé d'un jeu en Javascript | En savoir plus sur lhéritage en utilisant à la fois les classes et la composition et le modèle Pub/Sub, en préparation de la création dun jeu | [Introduction au développement avancé d'un jeu en Javascript](/6-space-game/1-introduction/translations/README.fr.md) | Chris | | 15 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Développement avancé d'un jeu en Javascript | En savoir plus sur lhéritage en utilisant à la fois les classes et la composition et le modèle Pub/Sub, en préparation de la création dun jeu | [Introduction au développement avancé d'un jeu en Javascript](/6-space-game/1-introduction/translations/README.fr.md) | Chris |
| 16 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Les Canvas | En savoir plus sur lAPI Canvas, utilisée pour dessiner des éléments sur un écran | [Dessiner des Canvas](/6-space-game/2-drawing-to-canvas/translations/README.fr.md) | Chris | | 16 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Les Canvas | En savoir plus sur lAPI Canvas, utilisée pour dessiner des éléments sur un écran | [Dessiner des Canvas](/6-space-game/2-drawing-to-canvas/translations/README.fr.md) | Chris |
| 17 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Déplacement déléments autour de lécran | Découvrez comment les éléments peuvent gagner du mouvement à laide des coordonnées cartésiennes et de lAPI Canvas | [Moving Elements Around](/6-space-game/3-moving-elements-around/translations/README.fr.md) | Chris | | 17 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Déplacement déléments autour de lécran | Découvrez comment les éléments peuvent gagner du mouvement à laide des coordonnées cartésiennes et de lAPI Canvas | [Déplacer des éléments autour](/6-space-game/3-moving-elements-around/translations/README.fr.md) | Chris |
| 18 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Détection de collision | Faire entrer en collision les éléments et les faire réagir les uns aux autres à laide dappuis sur les touches et fournir une fonction de refroidissement pour assurer les performances du jeu | [Collision Detection](/6-space-game/4-collision-detection/translations/README.fr.md) | Chris | | 18 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Détection de collision | Faire entrer en collision les éléments et les faire réagir les uns aux autres à laide dappuis sur les touches et fournir une fonction de refroidissement pour assurer les performances du jeu | [Détection de collision](/6-space-game/4-collision-detection/translations/README.fr.md) | Chris |
| 19 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Garder le score | Effectuez des calculs mathématiques en fonction de létat du jeu et des performances | [Keeping Score](/6-space-game/5-keeping-score/translations/README.fr.md) | Chris | | 19 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Garder le score | Effectuez des calculs mathématiques en fonction de létat du jeu et des performances | [Garder le score](/6-space-game/5-keeping-score/translations/README.fr.md) | Chris |
| 20 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Fin et redémarrage du jeu | Découvrez comment terminer et redémarrer le jeu, y compris le nettoyage des ressources et la réinitialisation des valeurs variables | [Fin Condition](/6-space-game/6-end-condition/translations/README.fr.md) | Chris | | 20 | [Jeu de l'espace](/6-space-game/solution/translations/README.fr.md) | Fin et redémarrage du jeu | Découvrez comment terminer et redémarrer le jeu, y compris le nettoyage des ressources et la réinitialisation des valeurs variables | [Les conditions de fin](/6-space-game/6-end-condition/translations/README.fr.md) | Chris |
| 21 | [Application bancaire](/7-bank-project/solution/translations/README.fr.md) | Modèles et Routes HTML dans une application Web | Savoir l'utilité des Templates et Routes dans la gestion d'un site web multi-pages. | [HTML Templates et Routes](/7-bank-project/1-template-route/translations/README.fr.md) | Yohan | | 21 | [Application bancaire](/7-bank-project/solution/translations/README.fr.md) | Modèles et Routes HTML dans une application Web | Savoir l'utilité des Templates et Routes dans la gestion d'un site web multi-pages. | [HTML Templates et Routes](/7-bank-project/1-template-route/translations/README.fr.md) | Yohan |
| 22 | [Application bancaire](/7-bank-project/solution/translations/README.fr.md) | Créez un formulaire de connexion et dinscription | En savoir plus sur la création de formulaires et la gestion des routines de validation | [Formulaires](/7-bank-project/2-forms/translations/README.fr.md) | Yohan | | 22 | [Application bancaire](/7-bank-project/solution/translations/README.fr.md) | Créez un formulaire de connexion et dinscription | En savoir plus sur la création de formulaires et la gestion des routines de validation | [Formulaires](/7-bank-project/2-forms/translations/README.fr.md) | Yohan |
| 23 | [Application bancaire](/7-bank-project/solution/translations/README.fr.md) | Fetch et utilisation des données | Comment les données entrent et sortent de votre application, comment les récupérer, les stocker et les supprimer | [Données](/7-bank-project/3-data/translations/README.fr.md) | Yohan | | 23 | [Application bancaire](/7-bank-project/solution/translations/README.fr.md) | Fetch et utilisation des données | Comment les données entrent et sortent de votre application, comment les récupérer, les stocker et les supprimer | [Données](/7-bank-project/3-data/translations/README.fr.md) | Yohan |
| 24 | [Application bancaire](/7-bank-project/solution/translations/README.fr.md) | Concepts de la gestion des states | Découvrez comment votre application conserve son état et comment la gérer par programme | [Gestion des states](/7-bank-project/4-state-management/translations/README.fr.md) | Yohan | | 24 | [Application bancaire](/7-bank-project/solution/translations/README.fr.md) | Concepts de la gestion des states | Découvrez comment votre application conserve son état et comment la gérer par programme | [Gestion de l'état](/7-bank-project/4-state-management/translations/README.fr.md) | Yohan |
## Accéder au cours hors connexion ## Accéder au cours hors connexion

@ -18,7 +18,7 @@ Microsoft के Azure Cloud Advocates को 12-सप्ताह, 24-पा
> **शिक्षकों**, हमने इस पाठ्यक्रम का उपयोग करने के बारे में [कुछ सुझाव](for-teachers.hi.md) शामिल किए हैं। यदि आप अपना स्वयं का पाठ बनाना चाहते हैं, तो हमने एक [पाठ टेम्पलेट](lesson-template/translations/README.hi.md) भी शामिल किया है > **शिक्षकों**, हमने इस पाठ्यक्रम का उपयोग करने के बारे में [कुछ सुझाव](for-teachers.hi.md) शामिल किए हैं। यदि आप अपना स्वयं का पाठ बनाना चाहते हैं, तो हमने एक [पाठ टेम्पलेट](lesson-template/translations/README.hi.md) भी शामिल किया है
> **छात्र**, अपने दम पर इस पाठ्यक्रम का उपयोग करने के लिए, पूरे रेपो को फोर्क करें और अपने दम पर अभ्यास पूरा करें, एक प्री-लेक्चर क्विज़ से शुरू करें, फिर लेक्चर को पढ़ें और बाकी गतिविधियों को पूरा करें। समाधान कोड को कॉपी करने के बजाय पाठों को समझकर परियोजनाओं को बनाने की कोशिश करें; हालाँकि यह कोड प्रत्येक प्रोजेक्ट-ओरिएंटेड पाठ में / समाधान फ़ोल्डर में उपलब्ध है। एक और विचार दोस्तों के साथ एक अध्ययन समूह बनाने और एक साथ सामग्री के माध्यम से जाने का होगा। आगे के अध्ययन के लिए, हम अनुशंसा करते हैं [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon) और नीचे दिए गए वीडियो देखकर। > **छात्र**, अपने दम पर इस पाठ्यक्रम का उपयोग करने के लिए, पूरे रेपो को फोर्क करें और अपने दम पर अभ्यास पूरा करें, एक प्री-लेक्चर क्विज़ से शुरू करें, फिर लेक्चर को पढ़ें और बाकी गतिविधियों को पूरा करें। समाधान कोड को कॉपी करने के बजाय पाठों को समझकर परियोजनाओं को बनाने की कोशिश करें; हालाँकि यह कोड प्रत्येक प्रोजेक्ट-ओरिएंटेड पाठ में / समाधान फ़ोल्डर में उपलब्ध है। एक और विचार दोस्तों के साथ एक अध्ययन समूह बनाने और एक साथ सामग्री के माध्यम से जाने का होगा। आगे के अध्ययन के लिए, हम अनुशंसा करते हैं [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon) और नीचे दिए गए वीडियो देखकर।
[![प्रोमो वीडियो](../images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "प्रोमो वीडियो") [![प्रोमो वीडियो](../images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "प्रोमो वीडियो")
@ -28,11 +28,11 @@ Microsoft के Azure Cloud Advocates को 12-सप्ताह, 24-पा
हमने इस पाठ्यक्रम का निर्माण करते समय दो शैक्षणिक सिद्धांतों को चुना है: यह सुनिश्चित करना कि यह परियोजना-आधारित है और इसमें बार-बार क्विज़ शामिल हैं। इस श्रृंखला के अंत तक, छात्रों ने एक टाइपिंग गेम, एक वर्चुअल टेरारियम, एक 'ग्रीन' ब्राउज़र एक्सटेंशन, एक 'स्पेस इनवेस्टर्स' टाइप गेम और एक बिजनेस-टाइप बैंकिंग ऐप बनाया होगा, और जावास्क्रिप्ट की मूल बातें सीखी होंगी। , आज के वेब डेवलपर के आधुनिक टूलचैन के साथ, HTML और सीएसएस। हमने इस पाठ्यक्रम का निर्माण करते समय दो शैक्षणिक सिद्धांतों को चुना है: यह सुनिश्चित करना कि यह परियोजना-आधारित है और इसमें बार-बार क्विज़ शामिल हैं। इस श्रृंखला के अंत तक, छात्रों ने एक टाइपिंग गेम, एक वर्चुअल टेरारियम, एक 'ग्रीन' ब्राउज़र एक्सटेंशन, एक 'स्पेस इनवेस्टर्स' टाइप गेम और एक बिजनेस-टाइप बैंकिंग ऐप बनाया होगा, और जावास्क्रिप्ट की मूल बातें सीखी होंगी। , आज के वेब डेवलपर के आधुनिक टूलचैन के साथ, HTML और सीएसएस।
यह सुनिश्चित करते हुए कि सामग्री परियोजनाओं के साथ संरेखित होती है, प्रक्रिया को छात्रों के लिए अधिक आकर्षक बनाया जाता है और अवधारणाओं की अवधारण को संवर्धित किया जाएगा। हमने अवधारणाओं को पेश करने के लिए जावास्क्रिप्ट मूल बातें में कई स्टार्टर पाठ भी लिखे, वीडियो ट्यूटोरियल के "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-77807-sagibbon)" संग्रह के साथ, जिनके कुछ लेखकों ने इस पाठ्यक्रम में योगदान दिया। यह सुनिश्चित करते हुए कि सामग्री परियोजनाओं के साथ संरेखित होती है, प्रक्रिया को छात्रों के लिए अधिक आकर्षक बनाया जाता है और अवधारणाओं की अवधारण को संवर्धित किया जाएगा। हमने अवधारणाओं को पेश करने के लिए जावास्क्रिप्ट मूल बातें में कई स्टार्टर पाठ भी लिखे, वीडियो ट्यूटोरियल के "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" संग्रह के साथ, जिनके कुछ लेखकों ने इस पाठ्यक्रम में योगदान दिया।
इसके अलावा, एक कक्षा से पहले एक कम-दांव प्रश्नोत्तरी एक विषय सीखने की दिशा में छात्र का इरादा निर्धारित करता है, जबकि कक्षा के बाद एक दूसरा प्रश्नोत्तरी एक प्रतिधारण सुनिश्चित करता है। इस पाठ्यक्रम को लचीला और मज़ेदार बनाने के लिए डिज़ाइन किया गया था और इसे पूर्ण या आंशिक रूप से लिया जा सकता है। परियोजनाएं छोटी शुरू होती हैं और 12 सप्ताह के चक्र के अंत तक तेजी से जटिल हो जाती हैं। इसके अलावा, एक कक्षा से पहले एक कम-दांव प्रश्नोत्तरी एक विषय सीखने की दिशा में छात्र का इरादा निर्धारित करता है, जबकि कक्षा के बाद एक दूसरा प्रश्नोत्तरी एक प्रतिधारण सुनिश्चित करता है। इस पाठ्यक्रम को लचीला और मज़ेदार बनाने के लिए डिज़ाइन किया गया था और इसे पूर्ण या आंशिक रूप से लिया जा सकता है। परियोजनाएं छोटी शुरू होती हैं और 12 सप्ताह के चक्र के अंत तक तेजी से जटिल हो जाती हैं।
जबकि हमने उद्देश्यपूर्ण रूप से जावास्क्रिप्ट फ्रेमवर्क शुरू करने से बचा है, ताकि एक फ्रेमवर्क अपनाने से पहले वेब डेवलपर के रूप में आवश्यक बुनियादी कौशल पर ध्यान केंद्रित किया जा सके, इस पाठ्यक्रम को पूरा करने के लिए एक अच्छा अगला कदम वीडियो के एक अन्य संग्रह के माध्यम से Node.js के बारे में सीखना होगा: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)". जबकि हमने उद्देश्यपूर्ण रूप से जावास्क्रिप्ट फ्रेमवर्क शुरू करने से बचा है, ताकि एक फ्रेमवर्क अपनाने से पहले वेब डेवलपर के रूप में आवश्यक बुनियादी कौशल पर ध्यान केंद्रित किया जा सके, इस पाठ्यक्रम को पूरा करने के लिए एक अच्छा अगला कदम वीडियो के एक अन्य संग्रह के माध्यम से Node.js के बारे में सीखना होगा: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
हमारे [आचार संहिता](/CODE_OF_CONDUCT.md), [योगदान](/CONTRIBUTING.md), और [अनुवाद](/TRANSLATIONS.md) दिशानिर्देश खोजें। हम आपकी रचनात्मक प्रतिक्रिया का स्वागत करते हैं! हमारे [आचार संहिता](/CODE_OF_CONDUCT.md), [योगदान](/CONTRIBUTING.md), और [अनुवाद](/TRANSLATIONS.md) दिशानिर्देश खोजें। हम आपकी रचनात्मक प्रतिक्रिया का स्वागत करते हैं!
> >

@ -10,32 +10,32 @@
[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners) [![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)
# Web Development untuk pemula - Kurikulum # Pengembangan Website untuk pemula - Kurikulum
Azure Cloud Advocates di Microsoft dengan senang hati menawarkan kurikulum 12 minggu 24 pelajaran tentang JavaScript, CSS, dan dasar-dasar HTML. Setiap pelajaran mencakup kuis sebelum dan sesudah pelajaran, instruksi tertulis untuk menyelesaikan pelajaran, solusi, tugas, dan banyak lagi. Pedagogi berbasis proyek kami memungkinkan Anda untuk belajar sambil membangun, cara yang terbukti untuk keterampilan baru untuk 'stick'. Azure Cloud Advocates di Microsoft dengan senang hati menawarkan kurikulum 12 minggu 24 pelajaran tentang JavaScript, CSS, dan dasar-dasar HTML. Setiap pelajaran mencakup kuis sebelum dan sesudah pelajaran, instruksi tertulis untuk menyelesaikan pelajaran, solusi, tugas, dan banyak lagi. Pedagogi berbasis proyek kami memungkinkan Anda untuk belajar sambil membangun, cara yang terbukti untuk keterampilan baru untuk 'stick'.
**Terima kasih yang sebesar-besarnya kepada penulis kami Jen Looper, Chris Noring, Christopher Harrison, Jasmine Greenaway, Yohan Lasorsa, Floor Drees, dan sketchnote artis Tomomi Imura!** **Terima kasih yang sebesar-besarnya kepada penulis kami Jen Looper, Chris Noring, Christopher Harrison, Jasmine Greenaway, Yohan Lasorsa, Floor Drees, dan seniman sketchnote Tomomi Imura!**
# Mulai # Mulai
> **Guru**, kita punya [termasuk beberapa saran](for-teachers.md) tentang bagaimana menggunakan kurikulum ini. Kami akan menyukai tanggapan Anda [di forum diskusi kami](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! > **Guru**, kita punya [termasuk beberapa saran](for-teachers.md) tentang bagaimana menggunakan kurikulum ini. Kami akan menyukai tanggapan Anda [di forum diskusi kami](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **Pelajar**, untuk menggunakan kurikulum ini sendiri, bagilah seluruh repo dan selesaikan latihannya sendiri, dimulai dengan kuis pra-kuliah, kemudian membaca kuliah dan menyelesaikan sisa kegiatan. Cobalah untuk membuat proyek dengan memahami pelajaran daripada menyalin kode solusi; namun kode tersebut tersedia di folder /solutions di setiap pelajaran berorientasi proyek. Ide lain adalah membentuk kelompok belajar dengan teman-teman dan membahas isinya bersama-sama. Untuk studi lebih lanjut, kami merekomendasikan [Belajar Microsoft](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon) dan dengan menonton video yang disebutkan di bawah ini. > **Pelajar**, untuk menggunakan kurikulum ini sendiri, bagilah seluruh repo dan selesaikan latihannya sendiri, dimulai dengan kuis pra-kuliah, kemudian membaca kuliah dan menyelesaikan sisa kegiatan. Cobalah untuk membuat proyek dengan memahami pelajaran daripada menyalin kode solusi; namun kode tersebut tersedia di folder /solutions di setiap pelajaran berorientasi proyek. Ide lain adalah membentuk kelompok belajar dengan teman-teman dan membahas isinya bersama-sama. Untuk studi lebih lanjut, kami merekomendasikan [Belajar Microsoft](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon) dan dengan menonton video yang disebutkan di bawah ini.
[![Promo video](https://github.com/GarudaID/Web-Dev-For-Beginners/blob/main/images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video") [![Promo video](/images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video")
Gif by [Mohit Jaisal](https://linkedin.com/in/mohitjaisal) Gif oleh [Mohit Jaisal](https://linkedin.com/in/mohitjaisal)
> 🎥 Klik gambar di atas untuk melihat video tentang proyek dan orang-orang yang membuatnya! > 🎥 Klik gambar di atas untuk melihat video tentang proyek dan orang-orang yang membuatnya!
## Pedagogy ## Pedagogi
Kami telah memilih dua prinsip pedagogis saat membangun kurikulum ini: memastikan bahwa itu berbasis proyek dan termasuk kuis yang sering. Pada akhir seri ini, siswa akan membuat game mengetik, terarium virtual, ekstensi browser 'hijau', game tipe 'penyerbu ruang', dan aplikasi perbankan tipe bisnis, dan akan mempelajari dasar-dasar JavaScript , HTML, dan CSS bersama dengan rantai alat modern dari pengembang web saat ini. Kami telah memilih dua prinsip pedagogis saat membangun kurikulum ini: memastikan bahwa itu berbasis proyek dan termasuk kuis yang sering. Pada akhir seri ini, siswa akan membuat game mengetik, terarium virtual, ekstensi browser 'hijau', game tipe 'penyerbu ruang', dan aplikasi perbankan tipe bisnis, dan akan mempelajari dasar-dasar JavaScript , HTML, dan CSS bersama dengan rantai alat modern dari pengembang web saat ini.
> 🎓 Anda dapat mengambil beberapa pelajaran pertama dalam kurikulum ini sebagai [Pelajari Jalur](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-77807-sagibbon) di Microsoft Learn! > 🎓 Anda dapat mengambil beberapa pelajaran pertama dalam kurikulum ini sebagai [Pelajari Jalur](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) di Microsoft Learn!
Dengan memastikan bahwa konten selaras dengan proyek, proses dibuat lebih menarik bagi siswa dan retensi konsep akan ditambah. Kami juga menulis beberapa pelajaran awal dalam dasar-dasar JavaScript untuk memperkenalkan konsep, dipasangkan dengan video dari "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-77807-sagibbon)" kumpulan video tutorial, yang beberapa penulisnya berkontribusi pada kurikulum ini. Dengan memastikan bahwa konten selaras dengan proyek, proses dibuat lebih menarik bagi siswa dan retensi konsep akan ditambah. Kami juga menulis beberapa pelajaran awal dalam dasar-dasar JavaScript untuk memperkenalkan konsep, dipasangkan dengan video dari "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" kumpulan video tutorial, yang beberapa penulisnya berkontribusi pada kurikulum ini.
Selain itu, kuis berisiko rendah sebelum kelas menetapkan niat siswa untuk mempelajari suatu topik, sementara kuis kedua setelah kelas memastikan retensi lebih lanjut. Kurikulum ini dirancang agar fleksibel dan menyenangkan serta dapat diambil secara keseluruhan atau sebagian. Proyek mulai kecil dan menjadi semakin kompleks pada akhir siklus 12 minggu. Selain itu, kuis berisiko rendah sebelum kelas menetapkan niat siswa untuk mempelajari suatu topik, sementara kuis kedua setelah kelas memastikan retensi lebih lanjut. Kurikulum ini dirancang agar fleksibel dan menyenangkan serta dapat diambil secara keseluruhan atau sebagian. Proyek mulai kecil dan menjadi semakin kompleks pada akhir siklus 12 minggu.
Meskipun kami sengaja menghindari pengenalan kerangka kerja JavaScript untuk berkonsentrasi pada keterampilan dasar yang dibutuhkan sebagai pengembang web sebelum mengadopsi kerangka kerja, langkah selanjutnya yang baik untuk menyelesaikan kurikulum ini adalah mempelajari Node.js melalui kumpulan video lainnya: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)". Meskipun kami sengaja menghindari pengenalan kerangka kerja JavaScript untuk berkonsentrasi pada keterampilan dasar yang dibutuhkan sebagai pengembang web sebelum mengadopsi kerangka kerja, langkah selanjutnya yang baik untuk menyelesaikan kurikulum ini adalah mempelajari Node.js melalui kumpulan video lainnya: "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
> Temukan kami [Code of Conduct](CODE_OF_CONDUCT.md), [Contributing](CONTRIBUTING.md), dan [Translation](TRANSLATIONS.md) pedoman. Kami menyambut umpan balik konstruktif Anda! > Temukan kami [Code of Conduct](CODE_OF_CONDUCT.md), [Contributing](CONTRIBUTING.md), dan [Translation](TRANSLATIONS.md) pedoman. Kami menyambut umpan balik konstruktif Anda!
## Setiap pelajaran termasuk: ## Setiap pelajaran termasuk:
@ -81,13 +81,13 @@ Meskipun kami sengaja menghindari pengenalan kerangka kerja JavaScript untuk ber
| 23 | [Banking App](/7-bank-project/solution/README.md) | Metode Mengambil dan Menggunakan Data | Bagaimana data mengalir masuk dan keluar dari aplikasi Anda, cara mengambilnya, menyimpannya, dan membuangnya | [Data](/7-bank-project/3-data/README.md) | Yohan | | 23 | [Banking App](/7-bank-project/solution/README.md) | Metode Mengambil dan Menggunakan Data | Bagaimana data mengalir masuk dan keluar dari aplikasi Anda, cara mengambilnya, menyimpannya, dan membuangnya | [Data](/7-bank-project/3-data/README.md) | Yohan |
| 24 | [Banking App](/7-bank-project/solution/README.md) | Konsep Manajemen Negara | Pelajari cara aplikasi Anda mempertahankan status dan cara mengelolanya secara terprogram | [State Management](/7-bank-project/4-state-management/README.md) | Yohan | | 24 | [Banking App](/7-bank-project/solution/README.md) | Konsep Manajemen Negara | Pelajari cara aplikasi Anda mempertahankan status dan cara mengelolanya secara terprogram | [State Management](/7-bank-project/4-state-management/README.md) | Yohan |
## Akses Offline ## Akses Luring
Anda dapat menjalankan dokumentasi ini secara offline dengan menggunakan [Docsify](https://docsify.js.org/#/). Fork repo ini, [install Docsify](https://docsify.js.org/#/quickstart) di mesin lokal Anda, dan kemudian di folder root repo ini, ketik `docsify serve`. Situs web akan disajikan pada port 3000 di localhost Anda: `localhost:3000`. Anda dapat menjalankan dokumentasi ini secara luring dengan menggunakan [Docsify](https://docsify.js.org/#/). Fork repo ini, [install Docsify](https://docsify.js.org/#/quickstart) di mesin lokal Anda, dan kemudian di folder root repo ini, ketik `docsify serve`. Situs web akan disajikan pada port 3000 di localhost Anda: `localhost:3000`.
## PDF ## PDF
PDF dari semua pelajaran dapat ditemukan [here](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf) PDF dari semua pelajaran dapat ditemukan [di sini](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf)
## Kurikulum lainnya ## Kurikulum lainnya

@ -0,0 +1,112 @@
[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE)
[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/)
[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/)
[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pulls/)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/)
[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/)
[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/)
[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)
# Sviluppo Web per Principianti - Un programma di lezioni
Gli Azure Cloud Advocates di Microsoft hanno il piacere di offrire un corso di 12 settimane, 24 lezioni riguardante le basi di JavaScript, CSS e HTML. Ogni lezione include dei quiz pre e post lezione, istruzioni scritte per completare la lezione, una soluzione, un esercizio ed altro. La nostra pedagogia basata su progetti ti consente di imparare mentre costruisci, un metodo collaudato per consolidare le nuove skill.
**Sentiti ringraziamenti ai nostri autori Jen Looper, Chris Noring, Christopher Harrison, Jasmine Greenaway, Yohan Lasorsa, Floor Drees, e all'artista sketchnote Tomomi Imura!**
# Sei uno studente?
Inizia con le seguenti risorse:
- [Pagina Student Hub](https://docs.microsoft.com/it-it/learn/student-hub?WT.mc_id=academic-13441-cxa) In questa pagina troverai risorse per principianti, pacchetti studente ed anche come ottenere voucher di certificazione gratuiti. Questa è la pagina da salvare tra i preferiti e controllare di tanto in tanto, ne aggiorniamo i contenuti con cadenza almeno mensile.
- [Microsoft Student Learn ambassadors](https://studentambassadors.microsoft.com?WT.mc_id=academic-13441-cxa) Unisciti alla community globale di student ambassadors, questa potrebbe essere la tua strada per entrare in Microsoft
# Per iniziare
> **Insegnanti**, abbiamo [inserito alcuni suggerimenti](/translations/for-teachers.it.md) su come utilizzare questo corso. Ci piacerebbe ricevere il tuo feedback [nel nostro forum di discussione](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **[Studenti](https://aka.ms/student-page)**, per usare questo corso per conto vostro, effettuate una fork dell'intera repo e completate gli esercizi da soli iniziando con i quiz pre-lezione, proseguite poi con la lettura e completate il resto delle attività. Provate a creare i progetti comprendendo le lezioni piuttosto che copiando il codice soluzione; tuttavia, detto codice è disponibile nella cartella /solutions di ogni lezione comprendente un progetto. Un'altra idea potrebbe essere du creare un gruppo di studi con gli amici ed esplorare i contenuti insieme. Per scoprire di più, consigliamo [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-13441-cxa) e la visione dei video menzionati sotto.
[![Promo video](/images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII)
Gif di [Mohit Jaisal](https://linkedin.com/in/mohitjaisal)
> 🎥 Clicca l'immagine sopra per un video riguardo al progetto e delle persone che lo hanno realizzato!
## Pedagogia
Abbiamo tenuto conto di due principi pedagogici nella realizzazione di questo corso: assicurarci che sia basato su dei progetti e che includa frequenti quiz. Alla fine di questa serie, gli studenti avranno costruito un tipico gioco, un terrario virtuale, una estensione del browser 'green', un gioco stile 'space invaders' e un'app business di banking, ed avranno appreso le basi di JavaScript, HTML e CSS insieme all'attuale toolchain degli sviluppatori web di oggi.
> 🎓 Puoi seguire le prime lezioni di questo corso come [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-13441-cxa) su Microsoft Learn!
Assicurandoci che il contenuto sia allineato con i progetti, il processo viene reso più coinvolgente per gli studenti e la memorizzazione dei concetti sarà migliorata. Abbiamo inoltre scritto diverse lezioni introduttive sulle basi di JavaScript per introdurre dei concetti, accompagnate da video dalla collezione di video tutorial "[Serie per Principianti a: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-13441-cxa)", della quale alcuni autori hanno contribuito a questo progetto.
Inoltre un quiz a bassa difficoltà prima di una lezione fissa nello studente l'intenzione di apprendere un argomento, mentre un secondo quiz dopo la lezione garantisce un'ulteriore conservazione delle nozioni apprese. Questo corso è stato progettato per essere flessibile e divertente e può essere seguito per intero o solo in parte. Il progetto parte in piccolo per poi diventare progressivamente più complesso verso la fine del ciclo di 12 settimane.
Anche se abbiamo volutamente evitato di introdurre i frameworks JavaScript per concentrarci sulle skill di base richieste ad un web developer prima di adottare un framework, un buon prossimo passo per completare questo corso sarebbe scoprire di più riguardo a Node.js tramite un'altra collezione di video: "[Serie per Principianti a: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-13441-cxa)".
> Guarda il nostro [Codice di Condotta](CODE_OF_CONDUCT.md) e le linee guida su [Contributi](CONTRIBUTING.md) e [Traduzioni](TRANSLATIONS.md). I tuoi feedback costruttivi sono i benvenuti!
## Ogni lezione include:
- sketchnote opzionale
- video supplementare opzionale
- quiz di riscaldamento pre-lezione
- lezione scritta
- per le lezioni basate su progetti, guida passo-passo su come costruire il progetto
- check delle competenze
- una sfida
- letture aggiuntive
- compiti
- quiz post-lezione
> **Una nota riguardo ai quiz**: Tutti i quiz sono contenuti [in questa app](https://ashy-river-0debb7803.1.azurestaticapps.net/), per un totale di 48 quiz da 3 domande ciascuno. Sono raggiungibili dall'interno delle lezioni ma possono anche essere eseguiti in locale; segui le istruzioni contenute nella cartella `quiz-app`. Questi sono progressivamente in via di traduzione.
## Lezioni
| | Nome Progetto | Concetti Insegnati | Obiettivi di Apprendimento | Link alla Lezione | Autore |
| :-: | :------------------------------------------------------: | :--------------------------------------------------------------------: | ----------------------------------------------------------------------------------------------------------------------------------- | :----------------------------------------------------------------------------------------------------------------------------: | :---------------------: |
| 01 | Per Iniziare | Introduzione alla programmazione e agli strumenti del mestiere | Scopri le fondamenta della maggior parte dei linguaggi di programmazione e sul software che aiuta gli sviluppatori professionisti a svolgere il proprio lavoro | [Introduzione alla programmazione e agli strumenti del mestiere](/1-getting-started-lessons/1-intro-to-programming-languages/translations/README.it.md) | Jasmine |
| 02 | Per Iniziare | Basi di GitHub, include lavorare in team | Come usare GitHub nel tuo progetto, come collaborare con altri sul codice | [Introduzione a GitHub](/1-getting-started-lessons/2-github-basics/translations/README.it.md) | Floor |
| 03 | Per Iniziare | Accessibilità | Impara le basi dell'accessibilità web | [Fondamenta di Accessibilità](/1-getting-started-lessons/3-accessibility/translations/README.it.md) | Christopher |
| 04 | Basi di JS | JavaScript Data Types | Le basi dei data types di JavaScript | [Data Types](/2-js-basics/1-data-types/translations/README.it.md) | Jasmine |
| 05 | Basi di JS | Funzioni e Metodi | Informazioni su funzioni e metodi per gestire il flusso logico di un'applicazione | [Funzioni e Metodi](/2-js-basics/2-functions-methods/translations/README.it.md) | Jasmine and Christopher |
| 06 | Basi di JS | Prendere decisioni con JS | Scopri come creare condizioni nel tuo codice utilizzando il processo decisionale | [Prendere Decisioni](/2-js-basics/3-making-decisions/translations/README.it.md) | Jasmine |
| 07 | Basi di JS | Arrays e Loops | Lavorare con i dati usando gli arrays ed i loops in JavaScript | [Arrays e Loops](/2-js-basics/4-arrays-loops/translations/README.it.md) | Jasmine |
| 08 | [Terrario](/3-terrarium/solution/README.md) | HTML in Pratica | Costruisci l'HTML per creare un terrario online, concentrandoti sulla creazione di un layout | [Introduzione all'HTML](/3-terrarium/1-intro-to-html/translations/README.it.md) | Jen |
| 09 | [Terrario](/3-terrarium/solution/README.md) | CSS in Pratica | Costruisci il CSS per dare uno stile al terrario online, concentrandoti sulle basi del CSS incluso come rendere la pagina reattiva | [Introduzione al CSS](/3-terrarium/2-intro-to-css/translations/README.it.md) | Jen |
| 10 | [Terrario](/3-terrarium/solution/README.md) | JavaScript Closures, DOM manipulation | Costruisci il JavaScript per far funzionare il terrario come un'interfaccia drag/drop, concentrandoti sulle closures e sulla DOM manipulation | [JavaScript Closures, DOM manipulation](/3-terrarium/3-intro-to-DOM-and-closures/translations/README.it.md) | Jen |
| 11 | [Gioco di Battitura](/4-typing-game/solution/README.md) | Costruisci un Gioco di Battitura | Scopri come utilizzare gli eventi della tastiera per guidare la logica della tua app JavaScript | [Programmazione guidata dagli eventi](/4-typing-game/typing-game/translations/README.it.md) | Christopher |
| 12 | [Estensione Browser Green](/5-browser-extension/solution/translation/README.it.md) | Lavorare con i Browser | Scopri come funzionano i browser, la loro storia e come impostare i primi elementi di un'estensione del browser | [Riguardo ai Browsers](/5-browser-extension/1-about-browsers/translations/README.it.md) | Jen |
| 13 | [Estensione Browser Green](/5-browser-extension/solution/translation/README.it.md) | Creazione di un modulo, chiamata API e archiviazione di variabili nella memoria locale | Crea gli elementi JavaScript della tua estensione browser per chiamare un'API utilizzando le variabili archiviate nella memoria locale | [APIs, Forms, e Memoria Locale](/5-browser-extension/2-forms-browsers-local-storage/translations/README.it.md) | Jen |
| 14 | [Estensione Browser Green](/5-browser-extension/solution/translation/README.it.md) | Processi in background nel browser, performance web | Utilizzare i processi in background del browser per gestire l'icona dell'estensione; scopri di più sulle prestazioni web e alcune ottimizzazioni da apportare | [Processi in Background e Performance](/5-browser-extension/3-background-tasks-and-performance/translations/README.it.md) | Jen |
| 15 | [Gioco Spaziale](/6-space-game/solution/README.md) | Sviluppo di giochi più avanzati con JavaScript | Scopri l'ereditarietà utilizzando sia Classi che Composizione e il modello Pub/Sub, in preparazione alla creazione di un gioco | [Introduzione allo Sviluppo di Giochi Avanzato](/6-space-game/1-introduction/translations/README.it.md) | Chris |
| 16 | [Gioco Spaziale](/6-space-game/solution/README.md) | Disegnare su canvas | Ulteriori informazioni sull'API Canvas, utilizzata per disegnare elementi su uno schermo | [Disegnare su Canvas](/6-space-game/2-drawing-to-canvas/translations/README.it.md) | Chris |
| 17 | [Gioco Spaziale](/6-space-game/solution/README.md) | Muovere elementi sullo schermo | Scopri come gli elementi possono muoversi utilizzando le coordinate cartesiane e l'API Canvas | [Muovere elementi](/6-space-game/3-moving-elements-around/translations/README.it.md) | Chris |
| 18 | [Gioco Spaziale](/6-space-game/solution/README.md) | Rilevamento delle collisioni | Far scontrare e reagire tra loro gli element premendo i tasti e fornendo una funzione di cooldown per garantire le prestazioni del gioco | [Rilevamento delle collisioni](/6-space-game/4-collision-detection/translations/README.it.md) | Chris |
| 19 | [Gioco Spaziale](/6-space-game/solution/README.md) | Tenere il Punteggio | Esegui calcoli matematici in base allo stato e alle prestazioni del gioco | [Tenere il Punteggio](/6-space-game/5-keeping-score/translations/README.it.md) | Chris |
| 20 | [Gioco Spaziale](/6-space-game/solution/README.md) | Terminare e riavviare il gioco | Scopri come terminare e riavviare il gioco, inclusa la pulizia degli asset e il ripristino dei valori delle variabili | [Le Condizioni di Termine](/6-space-game/6-end-condition/translations/README.it.md) | Chris |
| 21 | [App Bancaria](/7-bank-project/solution/translations/README.it.md) | Modelli e rotte HTML in un'app Web | Scopri come creare le basi dell'architettura di un sito Web multipagina utilizzando routing e templates HTML | [Templates HTML e Rotte](/7-bank-project/1-template-route/translations/README.it.md) | Yohan |
| 22 | [App Bancaria](/7-bank-project/solution/translations/README.it.md) | Costruire un Form di Login e Registrazione | Linformazioni sulla creazione di moduli e sulla gestione delle routine di convalida | [Forms](/7-bank-project/2-forms/translations/README.it.md) | Yohan |
| 23 | [App Bancaria](/7-bank-project/solution/translations/README.it.md) | Metodi di recupero e utilizzo dei dati | Come i dati entrano e escono dalla tua app, come recuperarli, archiviarli ed eliminarli | [Dati](/7-bank-project/3-data/translations/README.it.md) | Yohan |
| 24 | [App Bancaria](/7-bank-project/solution/README.md) | Concetti di Gestione dello Stato | Scopri come la tua app mantiene lo stato e come gestirla programmaticamente | [Gestione dello Stato](/7-bank-project/4-state-management/translations/README.it.md) | Yohan |
## Accesso offline
Puoi utilizzare questa documentazione offline utilizzando [Docsify](https://docsify.js.org/#/). Esegui un fork di questa repo, [installa Docsify](https://docsify.js.org/#/quickstart) sul tuo dispositivo locale e successivamente nella cartella radice (root) di questa repo esegui `docsify serve`. Il sito web girerà sulla porta 3000 del tuo localhost: `localhost:3000`.
## PDF
Puoi trovare un PDF con tutte le lezioni [qui](https://microsoft.github.io/Web-Dev-For-Beginners/pdf/readme.pdf).
## Altri corsi
Il nostro team produce altri corsi! Dai uno sguardo:
- [Machine Learning per Principianti](https://aka.ms/ml-beginners)
- [IoT per Principianti](https://aka.ms/iot-beginners)
- [Data Science per Principianti](https://aka.ms/datascience-beginners)
- [AI per Principianti](https://aka.ms/ai-beginners)

@ -6,9 +6,9 @@
> **先生方**、このカリキュラムをどのように使用するか、[いくつかの提案があります](for-teachers.ja.md)。あなた自身のレッスンを作成したい場合は、[レッスンテンプレート](lesson-template/translations/README.ja.md)もご用意しています。 > **先生方**、このカリキュラムをどのように使用するか、[いくつかの提案があります](for-teachers.ja.md)。あなた自身のレッスンを作成したい場合は、[レッスンテンプレート](lesson-template/translations/README.ja.md)もご用意しています。
> **学生の皆さん**、このカリキュラムを自分で使うためには、リポジトリ全体をフォークして、講義前の小テストから始めて、講義を読んで、残りのアクティビティを自分で完成させてください。解答コードは各レッスンの /solutions フォルダにありますが、解答コードをコピーするのではなく、授業を理解した上でプロジェクトを作成するようにしてください。また、友達と勉強会を作って、一緒に勉強するのもいいでしょう。さらに勉強するには、[Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon) や以下のビデオを見ることをお勧めします。 > **学生の皆さん**、このカリキュラムを自分で使うためには、リポジトリ全体をフォークして、講義前の小テストから始めて、講義を読んで、残りのアクティビティを自分で完成させてください。解答コードは各レッスンの /solutions フォルダにありますが、解答コードをコピーするのではなく、授業を理解した上でプロジェクトを作成するようにしてください。また、友達と勉強会を作って、一緒に勉強するのもいいでしょう。さらに勉強するには、[Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon) や以下のビデオを見ることをお勧めします。
[![Promo video](../screenshot.png)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video") [![Promo video](/images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video")
> 上の画像をクリックすると、プロジェクトとそれを作成した人々についてのビデオを見ることができます。 > 上の画像をクリックすると、プロジェクトとそれを作成した人々についてのビデオを見ることができます。
@ -16,11 +16,11 @@
私たちは、このカリキュラムを構築する際に、2つの教育学的な考え方を選択しました。このシリーズが終わる頃には、学生はタイピングゲーム、バーチャルテラリウム、「グリーン」ブラウザ拡張機能、「スペースインベーダー」タイプのゲーム、ビジネスタイプの銀行アプリを作成し、JavaScript、HTML、CSS の基本を、今日の Web 開発者の最新のツールチェーンとともに学んでいることでしょう。 私たちは、このカリキュラムを構築する際に、2つの教育学的な考え方を選択しました。このシリーズが終わる頃には、学生はタイピングゲーム、バーチャルテラリウム、「グリーン」ブラウザ拡張機能、「スペースインベーダー」タイプのゲーム、ビジネスタイプの銀行アプリを作成し、JavaScript、HTML、CSS の基本を、今日の Web 開発者の最新のツールチェーンとともに学んでいることでしょう。
コンテンツがプロジェクトに沿ったものであることを確認することで、プロセスは学生にとってより魅力的なものとなり、概念の定着率が向上します。また、JavaScriptの基本的な概念を紹介するために、いくつかのスターターレッスンを執筆し、その中の何人かの著者がこのカリキュラムに貢献しているビデオチュートリアルのコレクション "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-77807-sagibbon)" のビデオと組み合わせました。 コンテンツがプロジェクトに沿ったものであることを確認することで、プロセスは学生にとってより魅力的なものとなり、概念の定着率が向上します。また、JavaScriptの基本的な概念を紹介するために、いくつかのスターターレッスンを執筆し、その中の何人かの著者がこのカリキュラムに貢献しているビデオチュートリアルのコレクション "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" のビデオと組み合わせました。
また、授業前の小テストで学習者の学習意図を確認し、授業後に2回目の小テストを行うことで、学習の定着度を高めています。このカリキュラムは柔軟性があり、楽しく、全体的にも部分的にも受講できるように設計されています。プロジェクトは小さなものから始まり、12週間のサイクルが終わる頃には徐々に複雑なものになっていきます。 また、授業前の小テストで学習者の学習意図を確認し、授業後に2回目の小テストを行うことで、学習の定着度を高めています。このカリキュラムは柔軟性があり、楽しく、全体的にも部分的にも受講できるように設計されています。プロジェクトは小さなものから始まり、12週間のサイクルが終わる頃には徐々に複雑なものになっていきます。
フレームワークを採用する前に Web 開発者として必要とされる基本的なスキルに集中するため、JavaScript フレームワークの紹介は意図的に避けていますが、このカリキュラムを修了するための良い次のステップとして、別のビデオのコレクション "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)" を通して Node.js について学ぶことができます。 フレームワークを採用する前に Web 開発者として必要とされる基本的なスキルに集中するため、JavaScript フレームワークの紹介は意図的に避けていますが、このカリキュラムを修了するための良い次のステップとして、別のビデオのコレクション "[Beginner Series to: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)" を通して Node.js について学ぶことができます。
> [行動規範](./CODE_OF_CONDUCT.md)、[貢献](./CONTRIBUTING.md)、[翻訳](./TRANSLATIONS.md)のガイドラインをご覧ください。建設的なご意見をお待ちしております。 > [行動規範](./CODE_OF_CONDUCT.md)、[貢献](./CONTRIBUTING.md)、[翻訳](./TRANSLATIONS.md)のガイドラインをご覧ください。建設的なご意見をお待ちしております。
> >

@ -0,0 +1,85 @@
[![GitHub license](https://img.shields.io/github/license/microsoft/Web-Dev-For-Beginners.svg)](https://github.com/microsoft/Web-Dev-For-Beginners/blob/master/LICENSE)
[![GitHub contributors](https://img.shields.io/github/contributors/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/graphs/contributors/)
[![GitHub issues](https://img.shields.io/github/issues/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/issues/)
[![GitHub pull-requests](https://img.shields.io/github/issues-pr/microsoft/Web-Dev-For-Beginners.svg)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/pull/)
[![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
[![GitHub watchers](https://img.shields.io/github/watchers/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Watch&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/watchers/)
[![GitHub forks](https://img.shields.io/github/forks/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Fork&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/network/)
[![GitHub stars](https://img.shields.io/github/stars/microsoft/Web-Dev-For-Beginners.svg?style=social&label=Star&maxAge=2592000)](https://GitHub.com/microsoft/Web-Dev-For-Beginners/stargazers/)
[![Open in Visual Studio Code](https://img.shields.io/static/v1?logo=visualstudiocode&label=&message=Open%20in%20Visual%20Studio%20Code&labelColor=2c2c32&color=007acc&logoColor=007acc)](https://open.vscode.dev/microsoft/Web-Dev-For-Beginners)
# नवशिक्यांसाठी वेब विकास - एक कोर्स
सर्व JavaScript, CSS आणि HTML मूलभूत गोष्टींचा समावेश असलेला 12-आठवड्याचा, 24-धडा अभ्यासक्रम ऑफर करताना Microsoft च्या Azure Cloud Advocates खूश आहेत. प्रत्येक धड्यात पाठपूर्व आणि पाठोत्तर प्रश्नमंजुषा, धडा पूर्ण करण्यासाठी लिखित सूचना, उपाय, असाइनमेंट आणि बरेच काही समाविष्ट आहे. आमची प्रकल्प-आधारित अध्यापनशास्त्र तुम्हाला तुम्ही तयार करत असताना शिकण्याची परवानगी देते, नवीन कौशल्ये 'स्टिक=' करण्याचा एक सिद्ध मार्ग.
** आमच्या लेखक जेन लूपर, ख्रिस नॉरिंग, ख्रिस्तोफर हॅरिसन, जास्मिन ग्रीनवे, योहान लासोरा, फ्लोर ड्राईस आणि स्केचनोट कलाकार टोमोमी इमुरा यांचे मनःपूर्वक आभार!**
> **शिक्षक**, आम्ही हा अभ्यासक्रम कसा वापरायचा याबद्दल [काही टिपा](for-teachers.en.md) समाविष्ट केल्या आहेत. तुम्हाला तुमचा स्वतःचा मजकूर तयार करायचा असल्यास, आम्ही एक [मजकूर टेम्पलेट](leson-template/translations/README.en.md) देखील समाविष्ट केले आहे.
> **विद्यार्थी**, या कोर्समध्ये स्वतःहून प्रवेश करण्यासाठी, संपूर्ण रेपो फोर्क करा आणि स्वतःच व्यायाम पूर्ण करा, व्याख्यानापूर्वीच्या प्रश्नमंजुषापासून सुरुवात करा, नंतर व्याख्यान वाचून उर्वरित क्रियाकलाप पूर्ण करा. सोल्यूशन कोड कॉपी करण्याऐवजी, धडे समजून घेऊन प्रकल्प तयार करण्याचा प्रयत्न करा; तथापि हा कोड प्रत्येक प्रकल्पाभिमुख धड्यातील /सोल्यूशन्स फोल्डरमध्ये उपलब्ध आहे. दुसरी कल्पना म्हणजे मित्रांसोबत अभ्यास गट तयार करणे आणि एकत्रितपणे साहित्याचा अभ्यास करणे. पुढील अभ्यासासाठी, आम्ही [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-13441-cxa) आणि पाहिल्यानंतर खालील व्हिडिओची शिफारस करतो.
[![प्रोमो व्हिडिओ](../images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "प्रोमो व्हिडिओ")
> प्रकल्प आणि ज्या लोकांनी तो बनवला त्याबद्दलच्या व्हिडिओसाठी वरील इमेजवर क्लिक करा!
## अध्यापनशास्त्र
हा अभ्यासक्रम तयार करताना आम्ही दोन अध्यापनशास्त्रीय तत्त्वे निवडली: ते प्रकल्प-आधारित असल्याची खात्री करणे आणि त्यात पुनरावृत्ती झालेल्या प्रश्नमंजुषा समाविष्ट आहेत. या मालिकेच्या शेवटी, विद्यार्थ्यांनी एक टायपिंग गेम, एक व्हर्च्युअल टेरॅरियम, एक 'ग्रीन' ब्राउझर विस्तार, एक 'स्पेस इन्व्हेस्टर्स' प्रकारचा गेम आणि एक व्यवसाय-प्रकार बँकिंग अॅप तयार केला असेल आणि JavaScript च्या मूलभूत गोष्टी शिकल्या असतील. आजच्या वेब डेव्हलपरच्या आधुनिक टूलचेनसह HTML आणि CSS.
सामग्री प्रकल्पांशी संरेखित असल्याची खात्री करून, प्रक्रिया विद्यार्थ्यांसाठी अधिक आकर्षक बनविली जाते आणि संकल्पनांची धारणा वाढविली जाईल. आम्ही संकल्पनांचा परिचय करून देण्यासाठी JavaScript मूलभूत गोष्टींमध्ये अनेक स्टार्टर धडे देखील लिहिले, ज्यात व्हिडिओ ट्यूटोरियलच्या "[Beginners Series to: JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT) समाविष्ट आहे. .mc_id=academic-13441-cxa)", ज्यांच्या काही लेखकांनी या अभ्यासक्रमासाठी योगदान दिले आहे.
शिवाय, वर्गापूर्वी कमी-स्‍टेक्‍स क्विझ विद्यार्थ्‍याचा विषय शिकण्‍याचा हेतू ठरवते, तर वर्गानंतर दुसरी क्विझ कायम ठेवण्‍याची खात्री देते. हा कोर्स लवचिक आणि मजेदार आणि संपूर्ण किंवा काही प्रमाणात घेतला जाऊ शकतो. प्रकल्प लहान सुरू होतात आणि 12 आठवड्यांच्या चक्राच्या शेवटी ते अधिकाधिक जटिल बनतात.
आम्ही जावास्क्रिप्ट फ्रेमवर्कची ओळख करून देण्याचे हेतुपुरस्सर टाळले आहे, फ्रेमवर्क स्वीकारण्यापूर्वी वेब डेव्हलपर म्हणून आवश्यक असलेल्या मूलभूत कौशल्यांवर लक्ष केंद्रित करण्यासाठी, हा अभ्यासक्रम पूर्ण करण्यासाठी पुढील चांगली पायरी म्हणजे व्हिडिओंचा दुसरा संग्रह. Node.js बद्दल याद्वारे शिकू: "[प्रारंभिक मालिका ते: Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-13441 -cxa)".
आमची [आचारसंहिता](/CODE_OF_CONDUCT.md), [योगदान](/CONTRIBUTING.md), आणि [अनुवाद](/TRANSLATIONS.md) मार्गदर्शक तत्त्वे शोधा. आम्ही तुमच्या रचनात्मक अभिप्रायाचे स्वागत करतो!
,
## प्रत्येक धड्यात हे समाविष्ट आहे:
- पर्यायी स्केचनोट
- पर्यायी पूरक व्हिडिओ
- प्री-लेक्चर वॉर्मअप क्विझ
- लिखित मजकूर
- प्रकल्प-आधारित धड्यांसाठी, प्रकल्प तयार करण्यासाठी चरण-दर-चरण मार्गदर्शक
- ज्ञान तपासणी
- एक आव्हान
- परिशिष्ट वाचन
- असाइनमेंट
- पोस्ट लेक्चर क्विझ
> **क्विझबद्दल एक टीप**: सर्व प्रश्नमंजुषा [या अॅपमध्ये](https://ashy-river-0debb7803.1.azurestaticapps.net/)
## धडा
| | प्रकल्पाचे नाव | शिकवलेल्या संकल्पना | शिकण्याचे उद्दिष्ट | लिंक केलेला मजकूर | लिखित मजकूर | स्केचनोट | असाइनमेंट | नवशिक्या क्विझ | अंतिम क्विझ | विडिओ | लेखक |
| :---: | :------------------------------------------------------: | :----------------------------------------------------------: | ------------------------------------------------------------------------------------------------------------------ | :-----------------------------------------------------------------------------------------------------------------: | :------: | :---: | :----: | :----------: | :---------: | :---: | :-------------: |
| 01 | सुरू करण्यासाठी | ट्रैड प्रोग्रामिंग और उपकरणों का परिचय | बर्‍याच प्रोग्रामिंग भाषांमागील मूलभूत गोष्टी जाणून घ्या आणि सॉफ्टवेअर जे व्यावसायिक विकासकांना त्यांची कामे करण्यात मदत करतात | [क्वाड प्रोग्रामिंग आणि टूल्सचा परिचय](/1-getting-started-lessons/1-intro-to-programming-languages/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | जैस्मिन |
| 02 | सुरू करण्यासाठी | टीमसोबत काम करण्यासह गिटहबच्या मूलभूत गोष्टी | तुमच्या प्रोजेक्टमध्ये GitHub कसे वापरावे, कोड बेसवर इतरांशी सहयोग कसे करावे | [GitHub परिचय](/1-getting-started-lessons/2-github-basics/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | फलर |
| 03 | सुरू करण्यासाठी | प्रवेशयोग्यता | वेब ऍक्सेसिबिलिटीची मूलभूत माहिती जाणून घ्या | [सुलभता निधी](/1-getting-started-lessons/3-accessibility/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | क्रिस्टोफर |
| 04 | JS च्या मूलभूत गोष्टी | जावास्क्रिप्ट डेटा प्रकार | Javascript डेटा प्रकारांची मूलभूत माहिती | [डेटा प्रकार](/2-js-basics/1-data-types/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | जैस्मिन |
| 05 | JS च्या मूलभूत गोष्टी | कार्ये आणि पद्धती | अनुप्रयोगाचा तर्क प्रवाह व्यवस्थापित करण्यासाठी कार्ये आणि पद्धतींबद्दल जाणून घ्या | [फंगक्शनस और मेथड्स](/2-js-basics/2-functions-methods/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | जैस्मिन and क्रिस्टोफर |
| 06 | JS च्या मूलभूत गोष्टी | JS सह निर्णय | ननिर्णय घेण्याच्या पद्धती वापरून तुमच्या कोडमध्ये परिस्थिती निर्माण करायला शिका | [निर्णय घेणे](/2-js-basics/3-making-decisions/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | जैस्मिन |
| 07 | JS च्या मूलभूत गोष्टी | अररेस और लूपस | Javascript मध्ये अॅरे आणि ल्युपस वापरून डेटासह कार्य करा | [अररेस और लूपस](/2-js-basics/4-arrays-loops/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | ✅ | जैस्मिन |
| 08 | [टेरारियम](/3-terrarium/solution/translations/README.hi.md) | सराव मध्ये HTML | लेआउटवर लक्ष केंद्रित करून ऑनलाइन टेरेरियम तयार करण्यासाठी HTML तयार करा | [HTML चा परिचय](/3-terrarium/1-intro-to-html/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | जेन |
| 09 | [टेरारियम](/3-terrarium/solution/translations/README.hi.md) | सीएसएस | पृष्ठ प्रतिसादासह CSS च्या मूलभूत गोष्टींवर लक्ष केंद्रित करून टेरेरियम ऑनलाइन स्टाइल करण्यासाठी CSS तयार करा | [CSS चा परिचय](/3-terrarium/2-intro-to-css/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | जेन |
| 10 | [टेरारियम](/3-terrarium/solution/README.md) | Javascript क्लोजर, DOM मॅनिपुलेशन | क्लोजर आणि डीओएम मॅनिपुलेशनवर लक्ष केंद्रित करून ड्रॅग/ड्रॉप इंटरफेस म्हणून टेरेरियम फंक्शन तयार करण्यासाठी JavaScript तयार करा | [जावास्क्रिप्ट क्लोजर और डोम मनिप्यलैशन](/3-terrarium/3-intro-to-DOM-and-closures/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | जेन |
| 11 | [टायपिंग गेम](/4-typing-game/solution/README.md) | एक टायपिंग गेम बनाए | तुमच्या JavaScript अॅपचे लॉजिक चालविण्यासाठी कीबोर्ड इव्हेंट कसे वापरायचे ते शिका | [ईवेंट-संचालित प्रोग्रामिंग](/4-typing-game/typing-game/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | क्रिस्टोफर |
| 12 | [ग्रीन ब्राउजर इक्स्टेन्शन](/5-browser-extension/solution/README.md) | ब्राउझरसह कार्य करणे | ब्राउझर कसे कार्य करतात, त्यांचा इतिहास जाणून घ्या आणि ब्राउझर विस्तारांचे प्रथम घटक तयार करा | [ब्राउझर बद्दल](/5-browser-extension/1-about-browsers/translations/README.hi.md) | ✅ | ✅ | ✅ | ✅ | ✅ | 🛑 | जेन |
| 13 | [ग्रीन ब्राउजर इक्स्टेन्शन](/5-browser-extension/solution/README.md) | फॉर्म तयार करणे, API कॉल करणे आणि स्थानिक स्टोरेजमध्ये व्हेरिएबल्स संचयित करणे | लोकल स्टोरेजमध्ये संग्रहित व्हेरिएबल्स वापरून API कॉल करण्यासाठी तुमच्या ब्राउझर विस्ताराचे JavaScript घटक तयार करा | [API, फॉर्म आणि स्थानिक कथा](/5-browser-extension/2-forms-browsers-local-storage/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | जेन |
| 14 | [ग्रीन ब्राउजर इक्स्टेन्शन](/5-browser-extension/solution/README.md) | ब्राउझर, वेब डिस्प्ले मधील पार्श्वभूमी प्रक्रिया | विस्ताराचे चिन्ह व्यवस्थापित करण्यासाठी ब्राउझरच्या पार्श्वभूमी प्रक्रिया वापरा; वेब कार्यप्रदर्शन तयार करण्यासाठी काही ऑप्टिमायझेशनबद्दल जाणून घ्या आणि | [पार्श्वभूमी कार्ये आणि कार्यप्रदर्शन](/5-browser-extension/3-background-tasks-and-performance/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | जेन |
| 15 | [स्पेस गेम](/6-space-game/solution/README.md) | JavaScript सह अधिक प्रगत गेम डेव्हलपमेंट | गेम तयार करण्याच्या तयारीसाठी रचना आणि पब/सब पॅटर्न दोन्ही वापरून वर्ग आणि वारसा याविषयी जाणून घ्या | [प्रगत गेम विकासाचा परिचय](/6-space-game/1-introduction/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | क्रिस |
| 16 | [स्पेस गेम](/6-space-game/solution/README.md) | कॅनव्हासवर काढा | कॅनव्हास API बद्दल जाणून घ्या, जो स्क्रीनवर घटक काढण्यासाठी वापरला जातो | [कॅनव्हासवर काढा](/6-space-game/2-drawing-to-canvas/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | क्रिस |
| 17 | [स्पेस गेम](/6-space-game/solution/README.md) | स्क्रीनभोवती हलणारे घटक | कॅनव्हास API वापरून कार्टेशियन निर्देशांक आणि घटक कसे मिळवायचे ते शोधा | [हलणारे घटक](/6-space-game/3-moving-elements-around/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | क्रिस |
| 18 | [स्पेस गेम](/6-space-game/solution/README.md) | टक्कर शोध | की दाबून घटक एकमेकांना टक्कर द्या आणि प्रतिक्रिया द्या आणि गेम कार्यप्रदर्शन सुनिश्चित करण्यासाठी कूलडाउन फंक्शन प्रदान करा | [टक्कर शोध](/6-space-game/4-collision-detection/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | क्रिस |
| 19 | [स्पेस गेम](/6-space-game/solution/README.md) | स्कोअर ठेवा | खेळाची स्थिती आणि कामगिरीवर आधारित गणिताची गणना करा | [स्कोअर ठेवा](/6-space-game/5-keeping-score/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | क्रिस |
| 20 | [स्पेस गेम](/6-space-game/solution/README.md) | गेम समाप्त करा आणि रीस्टार्ट करा | मालमत्ता साफ करणे आणि पुली मूल्ये रीसेट करणे यासह गेम कसा संपवायचा आणि रीस्टार्ट कसा करायचा ते जाणून घ्या | [शेवटची स्थिती](/6-space-game/6-end-condition/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | 🛑 | क्रिस |
| 21 | [बैंकिंग एप](/7-bank-project/solution/README.md) | HTML टेम्पलेट्स आणि वेब अॅपमध्ये रूट करा | राउटिंग आणि एचटीएमएल टेम्पलेट्स वापरून मल्टीफेस वेबसाइटचे आर्किटेक्चर स्कॅफोल्ड करायला शिका | [HTML टेम्पलेट आणि मार्ग](/7-bank-project/1-template-route/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | योहन |
| 22 | [बैंकिंग एप](/7-bank-project/solution/README.md) | लॉगिन आणि नोंदणी फॉर्म तयार करा | फॉर्म तयार करणे आणि प्रमाणीकरण दिनचर्या सुपूर्द करणे याबद्दल जाणून घ्या | [फॉर्म्स](/7-bank-project/2-forms/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | योहन |
| 23 | [बैंकिंग एप](/7-bank-project/solution/README.md) | डेटा कसा आणायचा आणि वापरायचा | तुमच्या अॅपवर डेटा कसा प्रवाहित होतो, तो कसा आणायचा, तो कसा संग्रहित करायचा आणि त्याची विल्हेवाट कशी लावायची | [डाटा](/7-bank-project/3-data/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | ✅ | योहन |
| 24 | [बैंकिंग एप](/7-bank-project/solution/README.md) | राज्य व्यवस्थापनाच्या संकल्पना | तुमचे अ‍ॅप स्थिती कशी राखते आणि ते सेंद्रिय पद्धतीने कसे व्यवस्थापित करते ते जाणून घ्या | [स्टेट प्रबंधन](/7-bank-project/4-state-management/translations/README.hi.md) | ✅ | 🛑 | ✅ | ✅ | ✅ | | योहन |
## ऑफलाइन प्रवेश
तुम्ही [Docsify](https://docsify.js.org/#/) वापरून हा दस्तऐवज ऑफलाइन डाउनलोड करू शकता. तुमच्या स्थानिक मशीनवर या रेपोला फोर्क करा, [installed docsify](https://docsify.js.org/#/quickstart) आणि नंतर या रेपोच्या रूट फोल्डरमध्ये `docsify serve` टाइप करा. वेबसाइट तुमच्या लोकलहोस्ट: `localhost:3000` वर पोर्ट 3000 वर दिली जाईल.

@ -22,9 +22,9 @@
> **അദ്ധ്യാപകർ**, ഞങ്ങൾ [ചില നിർദ്ദേശങ്ങൾ ഉൾപ്പെടുത്തിയിട്ടുണ്ട്](/for-teachers.md) ഈ പാഠ്യപദ്ധതി എങ്ങനെ ഉപയോഗിക്കാം എന്നതിനെക്കുറിച്ച്. നിങ്ങളുടെ ഫീഡ്‌ബാക്ക് ഞങ്ങൾ ഇഷ്ടപ്പെടുന്നു [ഞങ്ങളുടെ ചർച്ചാ ഫോറത്തിൽ](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! > **അദ്ധ്യാപകർ**, ഞങ്ങൾ [ചില നിർദ്ദേശങ്ങൾ ഉൾപ്പെടുത്തിയിട്ടുണ്ട്](/for-teachers.md) ഈ പാഠ്യപദ്ധതി എങ്ങനെ ഉപയോഗിക്കാം എന്നതിനെക്കുറിച്ച്. നിങ്ങളുടെ ഫീഡ്‌ബാക്ക് ഞങ്ങൾ ഇഷ്ടപ്പെടുന്നു [ഞങ്ങളുടെ ചർച്ചാ ഫോറത്തിൽ](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **വിദ്യാർത്ഥികൾ**, ഈ പാഠ്യപദ്ധതി സ്വന്തമായി ഉപയോഗിക്കുന്നതിന്, മുഴുവൻ റിപ്പോയും ഫോർക്ക് ചെയ്ത് സ്വന്തമായി വ്യായാമങ്ങൾ പൂർത്തിയാക്കുക, പ്രീ-ലെക്ചർ ക്വിസിൽ തുടങ്ങി, പ്രഭാഷണം വായിച്ച് ബാക്കി പ്രവർത്തനങ്ങൾ പൂർത്തിയാക്കുക. പരിഹാര കോഡ് പകർത്തുന്നതിനുപകരം പാഠങ്ങൾ മനസിലാക്കിക്കൊണ്ട് പ്രോജക്ടുകൾ സൃഷ്ടിക്കാൻ ശ്രമിക്കുക; എന്നിരുന്നാലും ആ പ്രോജക്റ്റ് അധിഷ്ടിതം പാഠത്തിലെ /സൊല്യൂഷൻസ് ഫോൾഡറുകളിൽ ആ കോഡ് ലഭ്യമാണ്. മറ്റൊരു ആശയം സുഹൃത്തുക്കളുമായി ഒരു പഠന ഗ്രൂപ്പ് രൂപീകരിച്ച് ഒരുമിച്ച് ഉള്ളടക്കം പരിശോധിക്കുക എന്നതാണ്. കൂടുതൽ പഠനത്തിന്, ഞങ്ങൾ ശുപാർശ ചെയ്യുന്നു [മൈക്രോസോഫ്റ്റ് ലേൺ](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon) കൂടാതെ താഴെ സൂചിപ്പിച്ചിരിക്കുന്ന വീഡിയോകൾ കണ്ടുകൊണ്ട്. > **വിദ്യാർത്ഥികൾ**, ഈ പാഠ്യപദ്ധതി സ്വന്തമായി ഉപയോഗിക്കുന്നതിന്, മുഴുവൻ റിപ്പോയും ഫോർക്ക് ചെയ്ത് സ്വന്തമായി വ്യായാമങ്ങൾ പൂർത്തിയാക്കുക, പ്രീ-ലെക്ചർ ക്വിസിൽ തുടങ്ങി, പ്രഭാഷണം വായിച്ച് ബാക്കി പ്രവർത്തനങ്ങൾ പൂർത്തിയാക്കുക. പരിഹാര കോഡ് പകർത്തുന്നതിനുപകരം പാഠങ്ങൾ മനസിലാക്കിക്കൊണ്ട് പ്രോജക്ടുകൾ സൃഷ്ടിക്കാൻ ശ്രമിക്കുക; എന്നിരുന്നാലും ആ പ്രോജക്റ്റ് അധിഷ്ടിതം പാഠത്തിലെ /സൊല്യൂഷൻസ് ഫോൾഡറുകളിൽ ആ കോഡ് ലഭ്യമാണ്. മറ്റൊരു ആശയം സുഹൃത്തുക്കളുമായി ഒരു പഠന ഗ്രൂപ്പ് രൂപീകരിച്ച് ഒരുമിച്ച് ഉള്ളടക്കം പരിശോധിക്കുക എന്നതാണ്. കൂടുതൽ പഠനത്തിന്, ഞങ്ങൾ ശുപാർശ ചെയ്യുന്നു [മൈക്രോസോഫ്റ്റ് ലേൺ](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon) കൂടാതെ താഴെ സൂചിപ്പിച്ചിരിക്കുന്ന വീഡിയോകൾ കണ്ടുകൊണ്ട്.
[![പ്രമോ വീഡിയോ](/screenshot.png)](https://youtube.com/watch?v=R1wrdtmBSII "പ്രമോ വീഡിയോ") [![പ്രമോ വീഡിയോ](/images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "പ്രമോ വീഡിയോ")
> 🎥 പ്രോജക്റ്റിനെക്കുറിച്ചും അത് സൃഷ്ടിച്ചവരെക്കുറിച്ചും ഒരു വീഡിയോയ്ക്കായി മുകളിലുള്ള ചിത്രത്തിൽ ക്ലിക്കുചെയ്യുക! > 🎥 പ്രോജക്റ്റിനെക്കുറിച്ചും അത് സൃഷ്ടിച്ചവരെക്കുറിച്ചും ഒരു വീഡിയോയ്ക്കായി മുകളിലുള്ള ചിത്രത്തിൽ ക്ലിക്കുചെയ്യുക!
@ -32,12 +32,12 @@
ഈ പാഠ്യപദ്ധതി നിർമ്മിക്കുമ്പോൾ ഞങ്ങൾ രണ്ട് പെഡഗോഗിക്കൽ സിദ്ധാന്തങ്ങൾ തിരഞ്ഞെടുത്തു: ഇത് പ്രോജക്റ്റ് അടിസ്ഥാനമാക്കിയുള്ളതാണെന്നും അതിൽ പതിവ് ക്വിസുകൾ ഉൾപ്പെടുന്നുവെന്നും ഉറപ്പാക്കുന്നു. ഈ പരമ്പരയുടെ അവസാനത്തോടെ, വിദ്യാർത്ഥികൾ ഒരു ടൈപ്പിംഗ് ഗെയിം, ഒരു വെർച്വൽ ടെറേറിയം, ഒരു 'ഗ്രീൻ' ബ്രൗസർ എക്സ്റ്റൻഷൻ, ഒരു 'സ്പെയ്സ് ഇൻവേഡേഴ്സ്' ടൈപ്പ് ഗെയിം, ഒരു ബിസിനസ്-ടൈപ്പ് ബാങ്കിംഗ് ആപ്പ് എന്നിവ നിർമ്മിക്കുകയും ജാവാസ്ക്രിപ്റ്റിന്റെ അടിസ്ഥാനകാര്യങ്ങൾ പഠിക്കുകയും ചെയ്യും , ഇന്നത്തെ വെബ് ഡെവലപ്പറിന്റെ ആധുനിക ടൂൾചെയിനിനൊപ്പം HTML, CSS എന്നിവയും. ഈ പാഠ്യപദ്ധതി നിർമ്മിക്കുമ്പോൾ ഞങ്ങൾ രണ്ട് പെഡഗോഗിക്കൽ സിദ്ധാന്തങ്ങൾ തിരഞ്ഞെടുത്തു: ഇത് പ്രോജക്റ്റ് അടിസ്ഥാനമാക്കിയുള്ളതാണെന്നും അതിൽ പതിവ് ക്വിസുകൾ ഉൾപ്പെടുന്നുവെന്നും ഉറപ്പാക്കുന്നു. ഈ പരമ്പരയുടെ അവസാനത്തോടെ, വിദ്യാർത്ഥികൾ ഒരു ടൈപ്പിംഗ് ഗെയിം, ഒരു വെർച്വൽ ടെറേറിയം, ഒരു 'ഗ്രീൻ' ബ്രൗസർ എക്സ്റ്റൻഷൻ, ഒരു 'സ്പെയ്സ് ഇൻവേഡേഴ്സ്' ടൈപ്പ് ഗെയിം, ഒരു ബിസിനസ്-ടൈപ്പ് ബാങ്കിംഗ് ആപ്പ് എന്നിവ നിർമ്മിക്കുകയും ജാവാസ്ക്രിപ്റ്റിന്റെ അടിസ്ഥാനകാര്യങ്ങൾ പഠിക്കുകയും ചെയ്യും , ഇന്നത്തെ വെബ് ഡെവലപ്പറിന്റെ ആധുനിക ടൂൾചെയിനിനൊപ്പം HTML, CSS എന്നിവയും.
> 🎓 ഈ പാഠ്യപദ്ധതിയിലെ ആദ്യ കുറച്ച് പാഠങ്ങൾ നിങ്ങൾക്ക് മൈക്രോസോഫ്റ്റ് ലേൺ നെ കുറിച്ചുള്ള ഒരു[പഠന പാത](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-77807-sagibbon) ആയി എടുക്കാം. > 🎓 ഈ പാഠ്യപദ്ധതിയിലെ ആദ്യ കുറച്ച് പാഠങ്ങൾ നിങ്ങൾക്ക് മൈക്രോസോഫ്റ്റ് ലേൺ നെ കുറിച്ചുള്ള ഒരു[പഠന പാത](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) ആയി എടുക്കാം.
പ്രോജക്റ്റുകളുമായി ഉള്ളടക്കം യോജിക്കുന്നുവെന്ന് ഉറപ്പുവരുത്തുന്നതിലൂടെ, ഈ പ്രക്രിയ വിദ്യാർത്ഥികളെ കൂടുതൽ ആകർഷകമാക്കുകയും ആശയങ്ങൾ നിലനിർത്തുന്നത് വർദ്ധിപ്പിക്കുകയും ചെയ്യും. ആശയങ്ങൾ അവതരിപ്പിക്കാൻ ഞങ്ങൾ ജാവാസ്ക്രിപ്റ്റ് അടിസ്ഥാനത്തിൽ നിരവധി സ്റ്റാർട്ടർ പാഠങ്ങൾ എഴുതി, paired with video from the "[ജാവാസ്ക്രിപ്റ്റിലേക്കുള്ള തുടക്കക്കാരുടെ പരമ്പര](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-77807-sagibbon)" വീഡിയോ ട്യൂട്ടോറിയലുകളുടെ ശേഖരം, ചില എഴുത്തുകാർ ഈ പാഠ്യപദ്ധതിക്ക് സംഭാവന നൽകി. പ്രോജക്റ്റുകളുമായി ഉള്ളടക്കം യോജിക്കുന്നുവെന്ന് ഉറപ്പുവരുത്തുന്നതിലൂടെ, ഈ പ്രക്രിയ വിദ്യാർത്ഥികളെ കൂടുതൽ ആകർഷകമാക്കുകയും ആശയങ്ങൾ നിലനിർത്തുന്നത് വർദ്ധിപ്പിക്കുകയും ചെയ്യും. ആശയങ്ങൾ അവതരിപ്പിക്കാൻ ഞങ്ങൾ ജാവാസ്ക്രിപ്റ്റ് അടിസ്ഥാനത്തിൽ നിരവധി സ്റ്റാർട്ടർ പാഠങ്ങൾ എഴുതി, paired with video from the "[ജാവാസ്ക്രിപ്റ്റിലേക്കുള്ള തുടക്കക്കാരുടെ പരമ്പര](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)" വീഡിയോ ട്യൂട്ടോറിയലുകളുടെ ശേഖരം, ചില എഴുത്തുകാർ ഈ പാഠ്യപദ്ധതിക്ക് സംഭാവന നൽകി.
ഇതുകൂടാതെ, ഒരു ക്ലാസിന് മുമ്പുള്ള ഒരു കുറഞ്ഞ ക്വിസ് ഒരു വിഷയം പഠിക്കുന്നതിനുള്ള വിദ്യാർത്ഥിയുടെ ഉദ്ദേശ്യം സജ്ജമാക്കുന്നു, അതേസമയം ക്ലാസിന് ശേഷമുള്ള രണ്ടാമത്തെ ക്വിസ് കൂടുതൽ നിലനിർത്തൽ ഉറപ്പാക്കുന്നു. ഈ പാഠ്യപദ്ധതി രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത് വഴക്കമുള്ളതും രസകരവുമാണ്, ഇത് മുഴുവനായോ ഭാഗികമായോ എടുക്കാം. പദ്ധതികൾ ചെറുതായി ആരംഭിച്ച് 12 ആഴ്ച ചക്രത്തിന്റെ അവസാനത്തോടെ കൂടുതൽ സങ്കീർണമാകുന്നു. ഇതുകൂടാതെ, ഒരു ക്ലാസിന് മുമ്പുള്ള ഒരു കുറഞ്ഞ ക്വിസ് ഒരു വിഷയം പഠിക്കുന്നതിനുള്ള വിദ്യാർത്ഥിയുടെ ഉദ്ദേശ്യം സജ്ജമാക്കുന്നു, അതേസമയം ക്ലാസിന് ശേഷമുള്ള രണ്ടാമത്തെ ക്വിസ് കൂടുതൽ നിലനിർത്തൽ ഉറപ്പാക്കുന്നു. ഈ പാഠ്യപദ്ധതി രൂപകൽപ്പന ചെയ്തിരിക്കുന്നത് വഴക്കമുള്ളതും രസകരവുമാണ്, ഇത് മുഴുവനായോ ഭാഗികമായോ എടുക്കാം. പദ്ധതികൾ ചെറുതായി ആരംഭിച്ച് 12 ആഴ്ച ചക്രത്തിന്റെ അവസാനത്തോടെ കൂടുതൽ സങ്കീർണമാകുന്നു.
ഒരു ചട്ടക്കൂട് സ്വീകരിക്കുന്നതിന് മുമ്പ് ഒരു വെബ് ഡെവലപ്പർ എന്ന നിലയിൽ ആവശ്യമായ അടിസ്ഥാന കഴിവുകളിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നതിന് ഞങ്ങൾ ജാവാസ്ക്രിപ്റ്റ് ചട്ടക്കൂടുകൾ അവതരിപ്പിക്കുന്നത് മനപ്പൂർവ്വം ഒഴിവാക്കിയിട്ടുണ്ടെങ്കിലും, ഈ പാഠ്യപദ്ധതി പൂർത്തിയാക്കുന്നതിനുള്ള ഒരു നല്ല അടുത്ത ഘട്ടം വീഡിയോകളുടെ മറ്റൊരു ശേഖരത്തിലൂടെ നോഡ്.js- നെക്കുറിച്ച് പഠിക്കുക എന്നതാണ്: "[നോഡ്.js ലേക്കുള്ള തുടക്കക്കാരുടെ പരമ്പര](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)". ഒരു ചട്ടക്കൂട് സ്വീകരിക്കുന്നതിന് മുമ്പ് ഒരു വെബ് ഡെവലപ്പർ എന്ന നിലയിൽ ആവശ്യമായ അടിസ്ഥാന കഴിവുകളിൽ ശ്രദ്ധ കേന്ദ്രീകരിക്കുന്നതിന് ഞങ്ങൾ ജാവാസ്ക്രിപ്റ്റ് ചട്ടക്കൂടുകൾ അവതരിപ്പിക്കുന്നത് മനപ്പൂർവ്വം ഒഴിവാക്കിയിട്ടുണ്ടെങ്കിലും, ഈ പാഠ്യപദ്ധതി പൂർത്തിയാക്കുന്നതിനുള്ള ഒരു നല്ല അടുത്ത ഘട്ടം വീഡിയോകളുടെ മറ്റൊരു ശേഖരത്തിലൂടെ നോഡ്.js- നെക്കുറിച്ച് പഠിക്കുക എന്നതാണ്: "[നോഡ്.js ലേക്കുള്ള തുടക്കക്കാരുടെ പരമ്പര](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)".
> ഞങ്ങളുടെ [പെരുമാറ്റച്ചട്ടം](/CODE_OF_CONDUCT.md), [സംഭാവന](/CONTRIBUTING.md), [പരിഭാഷ](/TRANSLATIONS.md) എന്നിവയുടെ മാർഗ്ഗനിർദ്ദേശങ്ങൾ പരിശോധിക്കുക. നിങ്ങളുടെ ക്രിയാത്മക മായ അഭിപ്രായത്തെ ഞങ്ങൾ സ്വാഗതം ചെയ്യുന്നു! > ഞങ്ങളുടെ [പെരുമാറ്റച്ചട്ടം](/CODE_OF_CONDUCT.md), [സംഭാവന](/CONTRIBUTING.md), [പരിഭാഷ](/TRANSLATIONS.md) എന്നിവയുടെ മാർഗ്ഗനിർദ്ദേശങ്ങൾ പരിശോധിക്കുക. നിങ്ങളുടെ ക്രിയാത്മക മായ അഭിപ്രായത്തെ ഞങ്ങൾ സ്വാഗതം ചെയ്യുന്നു!
> >

@ -25,9 +25,9 @@ Nossa pedagogia baseada em prática permite que você aprenda enquanto construi,
> **Estudantes**, para usar esse crrículo por conta própria, faça um fork do repositório inteiro, começando por um qizz pré-aula, veja a aula e então faça o resto das atividades. > **Estudantes**, para usar esse crrículo por conta própria, faça um fork do repositório inteiro, começando por um qizz pré-aula, veja a aula e então faça o resto das atividades.
Procure fazer os projetos baseado no que aprendeu ao invés de simplesmente copiar a solução que se encontra na pasta de soluções das atividades. Procure fazer os projetos baseado no que aprendeu ao invés de simplesmente copiar a solução que se encontra na pasta de soluções das atividades.
Uma boa opção seria criar um grupo de estudos e completar todos os conteúdos juntos. Uma boa opção seria criar um grupo de estudos e completar todos os conteúdos juntos.
Para estudos mais profundos, recomendamos que assista aos vídeos mencionados abaixo e procure pelo [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon). Para estudos mais profundos, recomendamos que assista aos vídeos mencionados abaixo e procure pelo [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon).
[![Promo video](../screenshot.png)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video") [![Promo video](../images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Promo video")
> 🎥 Clique na imagem acima para acessar um vídeo sobre o projeto e aqueles que o criaram ! > 🎥 Clique na imagem acima para acessar um vídeo sobre o projeto e aqueles que o criaram !
@ -37,16 +37,16 @@ Nós escolhemos dois princípos pedagógicos enquanto criávamos este curso: Gar
tivesse quizzes frequentes. tivesse quizzes frequentes.
Até o fim deste curso, estudantes terão construído um jogo de digitação, um terrário virtual, ums extensão de navegador 'verde' , um jogo do tipo 'space invaders', e um aplicativo bancário, e terão aprendido o básico de JavaScript, HTML, e CSS com um moderno conjunto de ferramentas do desenvolvimento web dos dias atuais 🎓 !!! Até o fim deste curso, estudantes terão construído um jogo de digitação, um terrário virtual, ums extensão de navegador 'verde' , um jogo do tipo 'space invaders', e um aplicativo bancário, e terão aprendido o básico de JavaScript, HTML, e CSS com um moderno conjunto de ferramentas do desenvolvimento web dos dias atuais 🎓 !!!
> 🎓 Você pode tomar as primeiras lições nesse curso como um [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-77807-sagibbon) no Microsoft Learn! > 🎓 Você pode tomar as primeiras lições nesse curso como um [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) no Microsoft Learn!
Ao garantir que o conteúdo esteja alinhado com os projetos, o processo se torna mais envolvente para os alunos e a retenção dos conceitos será aumentada. Também escrevemos várias lições iniciais em noções básicas de JavaScript para introduzir conceitos, emparelhadas com o vídeo da coleção [accessible ici](https://www.youtube.com/playlist?list=PLb2HQ45KP0WsFop0pItGSUYl6baYjKEye) de vídeo-aulas, alguns de autores os quais contribuíram para este curso. Ao garantir que o conteúdo esteja alinhado com os projetos, o processo se torna mais envolvente para os alunos e a retenção dos conceitos será aumentada. Também escrevemos várias lições iniciais em noções básicas de JavaScript para introduzir conceitos, emparelhadas com o vídeo da coleção [accessible ici](https://www.youtube.com/playlist?list=PLb2HQ45KP0WsFop0pItGSUYl6baYjKEye) de vídeo-aulas, alguns de autores os quais contribuíram para este curso.
Além disso, um teste simples antes da aula define a intenção do aluno de aprender um tópico, enquanto um segundo teste após a aula garante maior retenção. Este currículo foi projetado para ser flexível e divertido e pode ser realizado no todo ou em partes. Os projetos começam pequenos e tornam-se cada vez mais complexos no final do ciclo de 12 semanas. Além disso, um teste simples antes da aula define a intenção do aluno de aprender um tópico, enquanto um segundo teste após a aula garante maior retenção. Este currículo foi projetado para ser flexível e divertido e pode ser realizado no todo ou em partes. Os projetos começam pequenos e tornam-se cada vez mais complexos no final do ciclo de 12 semanas.
Embora tenhamos evitado propositadamente a introdução de frameworks JavaScript para nos concentrarmos nas habilidades básicas necessárias como desenvolvedor web antes de adotar um framework, uma próxima etapa para concluir este currículo seria aprender sobre Node.js por meio de outra coleção de vídeos: Embora tenhamos evitado propositadamente a introdução de frameworks JavaScript para nos concentrarmos nas habilidades básicas necessárias como desenvolvedor web antes de adotar um framework, uma próxima etapa para concluir este currículo seria aprender sobre Node.js por meio de outra coleção de vídeos:
[Coletânea inicial sobre Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon) [Coletânea inicial sobre Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)
> Encontre nosso [código de condta](CODE_OF_CONDUCT.md), [guia para contribidores](CONTRIBUTING.md), e [o guia para traduções do curso](TRANSLATIONS.md). > Encontre nosso [código de condta](../CODE_OF_CONDUCT.md), [guia para contribidores](CONTRIBUTING.md), e [o guia para traduções do curso](../TRANSLATIONS.md).
Seu Feedback contrutivo é bem vindo. Seu Feedback contrutivo é bem vindo.
> >
@ -67,32 +67,32 @@ Também podem ser acessados localmente pela pasta `quiz-app`.
## Lições ## Lições
| | Nome do projeto | Conceitos ensinados | Objetivos de aprendizado | Lição | Autor | | | Nome do projeto | Conceitos ensinados | Objetivos de aprendizado | Lição | Autor |
| :---: | :------------------------------------------------------: | :--------------------------------------------------------------------: | --------------------------------------------------------------------------------------------------------------------------------- | :------------------------------------------------------------------------------------------------------: | :---------------------: | | :---: |:------------------------------------------------------------------------:| :--------------------------------------------------------------------: | --------------------------------------------------------------------------------------------------------------------------------- |:-------------------------------------------------------------------------------------------------------------------:| :---------------------: |
| 01 | Começando | Introdução à programação | Aprenda os fundamentos básicos por trás da maioria das linguagens de programação e sobre o software que ajuda os desenvolvedores profissionais a fazerem seus trabalhos | [Introdução à programação](/1-getting-started-lessons/1-intro-to-programming-languages/translations/README.pt.md) | Jasmine | | 01 | Começando | Introdução à programação | Aprenda os fundamentos básicos por trás da maioria das linguagens de programação e sobre o software que ajuda os desenvolvedores profissionais a fazerem seus trabalhos | [Introdução à programação](../1-getting-started-lessons/1-intro-to-programming-languages/translations/README.pt.md) | Jasmine |
| 02 | Começando | Introdução às bases do Github, incluindo trabalho em equipe | Como usar o GitHub em seu projeto, como colaborar com outras pessoas em uma base de código | [Introdução às bases do Github](/1-getting-started-lessons/2-github-basics/translations/README.pt.md) | Floor | | 02 | Começando | Introdução às bases do Github, incluindo trabalho em equipe | Como usar o GitHub em seu projeto, como colaborar com outras pessoas em uma base de código | [Introdução às bases do Github](../1-getting-started-lessons/2-github-basics/translations/README.pt.md) | Floor |
| 03 | Começando | Acessibilidade | Apprendra as bases da acessibilidade na Web | [Fundamentos da Acessibilidade](/1-getting-started-lessons/3-accessibility/translations/README.pt.md) | Christopher | | 03 | Começando | Acessibilidade | Apprendra as bases da acessibilidade na Web | [Fundamentos da Acessibilidade](../1-getting-started-lessons/3-accessibility/translations/README.pt.md) | Christopher |
| 04 | Básico de JS | Tipos de dados em JavaScript | O básico de dados em JavaScript | [Tipos de dados](/2-js-basics/1-data-types/translations/README.pt.md) | Jasmine | | 04 | Básico de JS | Tipos de dados em JavaScript | O básico de dados em JavaScript | [Tipos de dados](../2-js-basics/1-data-types/translations/README.pt.md) | Jasmine |
| 05 | Básico de JS | Funções e métodos | Aprenda sobre Funções e métodos para gerenciar o fluxo de lógica de uma aplicação | [Funções e métodos](/2-js-basics/2-functions-methods/translations/README.pt.md) | Jasmine e Christopher | | 05 | Básico de JS | Funções e métodos | Aprenda sobre Funções e métodos para gerenciar o fluxo de lógica de uma aplicação | [Funções e métodos](../2-js-basics/2-functions-methods/translations/README.pt.md) | Jasmine e Christopher |
| 06 | Básico de JS | Tomando decisões com JS | Aprenda como criar condições em seu código usando métodos de tomada de decisão methods | [Tomando decisões](/2-js-basics/3-making-decisions/translations/README.pt.md) | Jasmine | | 06 | Básico de JS | Tomando decisões com JS | Aprenda como criar condições em seu código usando métodos de tomada de decisão methods | [Tomando decisões](../2-js-basics/3-making-decisions/translations/README.pt.md) | Jasmine |
| 07 | Básico de JS | Arrays e Loops | Trabalhe com dados usando arrays e loops em JavaScript | [Arrays e Loops](/2-js-basics/4-arrays-loops/translations/README.pt.md) | Jasmine | | 07 | Básico de JS | Arrays e Loops | Trabalhe com dados usando arrays e loops em JavaScript | [Arrays e Loops](../2-js-basics/4-arrays-loops/translations/README.pt.md) | Jasmine |
| 08 | [Terrarium](/3-terrarium/solution/README.md) | HTML na Prática | Construa o HTML para criar um terrário online, focando em construir um layout | [Introdução a HTML](/3-terrarium/1-intro-to-html/translations/README.pt-BR.md) | Jen | | 08 | [Terrarium](../3-terrarium/solution/README.md) | HTML na Prática | Construa o HTML para criar um terrário online, focando em construir um layout | [Introdução a HTML](../3-terrarium/1-intro-to-html/translations/README.pt-BR.md) | Jen |
| 09 | [Terrarium](/3-terrarium/solution/README.md) | CSS na Prática | Construa o CSS para estilizar o terrário online, focando no básico de inclusão CSS fazendo a página responsiva | [Introdução a CSS](/3-terrarium/2-intro-to-css/README.md) | Jen | | 09 | [Terrarium](../3-terrarium/solution/README.md) | CSS na Prática | Construa o CSS para estilizar o terrário online, focando no básico de inclusão CSS fazendo a página responsiva | [Introdução a CSS](../3-terrarium/2-intro-to-css/README.md) | Jen |
| 10 | [Terrarium](/3-terrarium/solution/README.md) | JavaScript closures, DOM manipulation | Construa o JavaScript para fazer o terrário funcionar como uma interface de arrastar / soltar, focando em fechamentos e manipulação de DOM | [JavaScript Closures, DOM manipulation](/3-terrarium/3-intro-to-DOM-and-closures/README.md) | Jen | | 10 | [Terrarium](../3-terrarium/solution/README.md) | JavaScript closures, DOM manipulation | Construa o JavaScript para fazer o terrário funcionar como uma interface de arrastar / soltar, focando em fechamentos e manipulação de 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) | Construa um jogo de digitação | Aprenda a usar eventos de teclado para conduzir a lógica de seu aplicativo JavaScript | [Programação Orientada a Eventos](/4-typing-game/typing-game/README.md) | Christopher | | 11 | [Typing Game](../4-typing-game/solution/README.md) | Construa um jogo de digitação | Aprenda a usar eventos de teclado para conduzir a lógica de seu aplicativo JavaScript | [Programação Orientada a Eventos](../4-typing-game/typing-game/README.md) | Christopher |
| 12 | [Extensão de navegador verde](/5-browser-extension/solution/README.md) | Trabalhando com navegadores | Aprenda como os navegadores funcionam, seu histórico e como organizar os primeiros elementos de uma extensão do navegador | [Sobre navegadores](/5-browser-extension/1-about-browsers/README.md) | Jen | | 12 | [Extensão de navegador verde](../5-browser-extension/solution/README.md) | Trabalhando com navegadores | Aprenda como os navegadores funcionam, seu histórico e como organizar os primeiros elementos de uma extensão do navegador | [Sobre navegadores](../5-browser-extension/1-about-browsers/README.md) | Jen |
| 13 | [Extensão de navegador verde](/5-browser-extension/solution/README.md) | Construindo um formulário, chamando uma API e armazenando variáveis no armazenamento local | Construa os elementos JavaScript da extensão do seu navegador para chamar uma API usando variáveis armazenadas no armazenamento local | [APIs, Formulários e Armazenamento Local](/5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen | | 13 | [Extensão de navegador verde](../5-browser-extension/solution/README.md) | Construindo um formulário, chamando uma API e armazenando variáveis no armazenamento local | Construa os elementos JavaScript da extensão do seu navegador para chamar uma API usando variáveis armazenadas no armazenamento local | [APIs, Formulários e Armazenamento Local](../5-browser-extension/2-forms-browsers-local-storage/README.md) | Jen |
| 14 | [Extensão de navegador verde](/5-browser-extension/solution/README.md) | Processos em segundo plano no navegador, desempenho da web | Use os processos de segundo plano do navegador para gerenciar o ícone da extensão; aprender sobre o desempenho da web e algumas otimizações para fazer | [Tarefas e desempenho em segundo plano](/5-browser-extension/3-background-tasks-and-performance/README.md) | Jen | | 14 | [Extensão de navegador verde](../5-browser-extension/solution/README.md) | Processos em segundo plano no navegador, desempenho da web | Use os processos de segundo plano do navegador para gerenciar o ícone da extensão; aprender sobre o desempenho da web e algumas otimizações para fazer | [Tarefas e desempenho em segundo plano](../5-browser-extension/3-background-tasks-and-performance/README.md) | Jen |
| 15 | [Jogo Espacial](/6-space-game/solution/README.md) | Desenvolvimento de jogos mais avançado com JavaScript | Saiba mais sobre herança usando classes e composição e o padrão Pub / Sub, na preparação para a construção de um jogo | [Introdução ao desenvolvimento avançado de um jogo em Javascript](/6-space-game/1-introduction/README.md) | Chris | | 15 | [Jogo Espacial](../6-space-game/solution/README.md) | Desenvolvimento de jogos mais avançado com JavaScript | Saiba mais sobre herança usando classes e composição e o padrão Pub / Sub, na preparação para a construção de um jogo | [Introdução ao desenvolvimento avançado de um jogo em Javascript](../6-space-game/1-introduction/README.md) | Chris |
| 16 | [Jogo Espacial](/6-space-game/solution/README.md) | Desenhar na tela | Saiba mais sobre a API Canvas, usada para desenhar elementos em uma tela | [Desenhando na Tela](/6-space-game/2-drawing-to-canvas/README.md) | Chris | | 16 | [Jogo Espacial](../6-space-game/solution/README.md) | Desenhar na tela | Saiba mais sobre a API Canvas, usada para desenhar elementos em uma tela | [Desenhando na Tela](../6-space-game/2-drawing-to-canvas/README.md) | Chris |
| 17 | [Jogo Espacial](/6-space-game/solution/README.md) | Movendo elementos pela tela | Descubra como os elementos podem ganhar movimento usando as coordenadas cartesianas e a API Canvas | [Movendo elementos pela Tela](/6-space-game/3-moving-elements-around/README.md) | Chris | | 17 | [Jogo Espacial](../6-space-game/solution/README.md) | Movendo elementos pela tela | Descubra como os elementos podem ganhar movimento usando as coordenadas cartesianas e a API Canvas | [Movendo elementos pela Tela](../6-space-game/3-moving-elements-around/README.md) | Chris |
| 18 | [Jogo Espacial](/6-space-game/solution/README.md) | Detecção de Colisão | Faça os elementos colidirem e reagirem uns com os outros usando o pressionamento de teclas e fornecer uma função de resfriamento para garantir o desempenho do jogo | [Detecção de Colisão](/6-space-game/4-collision-detection/README.md) | Chris | | 18 | [Jogo Espacial](../6-space-game/solution/README.md) | Detecção de Colisão | Faça os elementos colidirem e reagirem uns com os outros usando o pressionamento de teclas e fornecer uma função de resfriamento para garantir o desempenho do jogo | [Detecção de Colisão](../6-space-game/4-collision-detection/README.md) | Chris |
| 19 | [Jogo Espacial](/6-space-game/solution/README.md) | Mantendo a pontuação | Faça cálculos matemáticos com base no status e no desempenho do jogo | [Mantendo a pontuação](/6-space-game/5-keeping-score/README.md) | Chris | | 19 | [Jogo Espacial](../6-space-game/solution/README.md) | Mantendo a pontuação | Faça cálculos matemáticos com base no status e no desempenho do jogo | [Mantendo a pontuação](../6-space-game/5-keeping-score/README.md) | Chris |
| 20 | [Jogo Espacial](/6-space-game/solution/README.md) | Terminando e reiniciando o jogo | Saiba mais sobre como encerrar e reiniciar o jogo, incluindo limpeza de ativos e redefinição de valores de variáveis | [A condição de encerramento](/6-space-game/6-end-condition/README.md) | Chris | | 20 | [Jogo Espacial](../6-space-game/solution/README.md) | Terminando e reiniciando o jogo | Saiba mais sobre como encerrar e reiniciar o jogo, incluindo limpeza de ativos e redefinição de valores de variáveis | [A condição de encerramento](../6-space-game/6-end-condition/README.md) | Chris |
| 21 | [Banking App](/7-bank-project/solution/README.md) | Templates HTML e rotas em um aplicativo da web | Aprenda a criar o andaime da arquitetura de um site de várias páginas usando modelos de roteamento e HTML | [HTML Templates e Rotas](/7-bank-project/1-template-route/README.md) | Yohan | | 21 | [Banking App](../7-bank-project/solution/README.md) | Templates HTML e rotas em um aplicativo da web | Aprenda a criar o andaime da arquitetura de um site de várias páginas usando modelos de roteamento e HTML | [HTML Templates e Rotas](../7-bank-project/1-template-route/README.md) | Yohan |
| 22 | [Banking App](/7-bank-project/solution/README.md) | Criar um formulário de Login e Cadastro | Aprenda sobre a construção de formulários e rotinas de validação | [Formulários](/7-bank-project/2-forms/README.md) | Yohan | | 22 | [Banking App](../7-bank-project/solution/README.md) | Criar um formulário de Login e Cadastro | Aprenda sobre a construção de formulários e rotinas de validação | [Formulários](../7-bank-project/2-forms/README.md) | Yohan |
| 23 | [Banking App](/7-bank-project/solution/README.md) | Métodos de busca e uso de dados | Como os dados fluem para dentro e para fora do seu aplicativo, como buscá-los, armazená-los e descartá-los | [Dados](/7-bank-project/3-data/README.md) | Yohan | | 23 | [Banking App](../7-bank-project/solution/README.md) | Métodos de busca e uso de dados | Como os dados fluem para dentro e para fora do seu aplicativo, como buscá-los, armazená-los e descartá-los | [Dados](../7-bank-project/3-data/README.md) | Yohan |
| 24 | [Banking App](/7-bank-project/solution/README.md) | Conceitos de Gestão do Estado | Saiba como seu aplicativo mantém o estado e como gerenciá-lo de maneira programática | [Gestão de estados](/7-bank-project/4-state-management/README.md) | Yohan | | 24 | [Banking App](../7-bank-project/solution/README.md) | Conceitos de Gestão do Estado | Saiba como seu aplicativo mantém o estado e como gerenciá-lo de maneira programática | [Gestão de estados](../7-bank-project/4-state-management/README.md) | Yohan |
## Acesso offline ## Acesso offline

@ -20,7 +20,7 @@
> **Преподавателям.** Мы подготовили [несколько советов](for-teachers.ru.md) о том, как использовать этот курс. Будем рады узнать о ваших впечатлениях на [нашем форуме](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)! > **Преподавателям.** Мы подготовили [несколько советов](for-teachers.ru.md) о том, как использовать этот курс. Будем рады узнать о ваших впечатлениях на [нашем форуме](https://github.com/microsoft/Web-Dev-For-Beginners/discussions/categories/teacher-corner)!
> **Ученикам.** Чтобы самостоятельно пройти этот курс, сделайте ответвление (fork) от этого репозитория и выполняйте упражнения из данного курса. Начните с предлекционной викторины, затем прочтите урок, после чего завершите оставшиеся задания и активности. Постарайтесь самостоятельно создавать проекты, используя информацию из уроков, нежели просто копировать текст из предложенных нами решений. Однако, вы всегда сможете найти код-решение в папке `/solutions` для каждого ориентированного на проект урока. Хорошей идеей будет собраться с друзьями и пройти курс всем вместе. Для дальнейшего изучения мы рекомендуем посетить [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81?WT.mc_id=academic-77807-sagibbon), а также посмотреть видеоматериалы, приведённые ниже. > **Ученикам.** Чтобы самостоятельно пройти этот курс, сделайте ответвление (fork) от этого репозитория и выполняйте упражнения из данного курса. Начните с предлекционной викторины, затем прочтите урок, после чего завершите оставшиеся задания и активности. Постарайтесь самостоятельно создавать проекты, используя информацию из уроков, нежели просто копировать текст из предложенных нами решений. Однако, вы всегда сможете найти код-решение в папке `/solutions` для каждого ориентированного на проект урока. Хорошей идеей будет собраться с друзьями и пройти курс всем вместе. Для дальнейшего изучения мы рекомендуем посетить [Microsoft Learn](https://docs.microsoft.com/users/jenlooper-2911/collections/jg2gax8pzd6o81/?WT.mc_id=academic-77807-sagibbon), а также посмотреть видеоматериалы, приведённые ниже.
[![Promo video](../images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Видео-Презентация") [![Promo video](../images/web.gif)](https://youtube.com/watch?v=R1wrdtmBSII "Видео-Презентация")
@ -32,13 +32,13 @@
При построении этого курса, мы придерживались двух педагогических принципов: помнить о том, что курс ориентирован на обучение, путем проектирования и что он должен содержать большое количество викторин. По окончании обучения, ученики создадут игру, тренирующую навыки печати, виртуальный террариум, "зелёное" расширение для браузера, игру типа "Space Invaders" и банковское приложение для бизнеса, изучат основы JavaScript, HTML и CSS, а также набор современных инструментов для веб-разработчика. При построении этого курса, мы придерживались двух педагогических принципов: помнить о том, что курс ориентирован на обучение, путем проектирования и что он должен содержать большое количество викторин. По окончании обучения, ученики создадут игру, тренирующую навыки печати, виртуальный террариум, "зелёное" расширение для браузера, игру типа "Space Invaders" и банковское приложение для бизнеса, изучат основы JavaScript, HTML и CSS, а также набор современных инструментов для веб-разработчика.
> 🎓 Вы можете пройти несколько первых уроков, используя нашу пошаговую систему обучения [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101?WT.mc_id=academic-77807-sagibbon) на сайте Microsoft Learn! > 🎓 Вы можете пройти несколько первых уроков, используя нашу пошаговую систему обучения [Learn Path](https://docs.microsoft.com/learn/paths/web-development-101/?WT.mc_id=academic-77807-sagibbon) на сайте Microsoft Learn!
Проектно-ориентированная стратегия обучения позволяет сделать процесс обучения более привлекательным и облегчить закрепление полученных навыков и информации. Мы также написали несколько уроков, чтобы помочь вам познакомиться с основами JavaScript. Эти уроки совмещены с видео из коллекции уроков "[Знакомство с JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript?WT.mc_id=academic-77807-sagibbon)". Некоторые из авторов этих видео также принимали участие и в создании этого курса. Проектно-ориентированная стратегия обучения позволяет сделать процесс обучения более привлекательным и облегчить закрепление полученных навыков и информации. Мы также написали несколько уроков, чтобы помочь вам познакомиться с основами JavaScript. Эти уроки совмещены с видео из коллекции уроков "[Знакомство с JavaScript](https://channel9.msdn.com/Series/Beginners-Series-to-JavaScript/?WT.mc_id=academic-77807-sagibbon)". Некоторые из авторов этих видео также принимали участие и в создании этого курса.
В дополнение, простая викторина перед уроками позволяет заинтересовать ученика в изучении темы, в то время как вторая викторина после занятия позволяет закрепить полученные знания. Этот курс был создан, чтобы быть занимательным для каждого. Вы можете пройти курс от начала до конца или изучить лишь его часть. Проекты, которые вы будете делать на протяжении курса, просты вначале и станут более сложными по завершении 12-ти недельного курса. В дополнение, простая викторина перед уроками позволяет заинтересовать ученика в изучении темы, в то время как вторая викторина после занятия позволяет закрепить полученные знания. Этот курс был создан, чтобы быть занимательным для каждого. Вы можете пройти курс от начала до конца или изучить лишь его часть. Проекты, которые вы будете делать на протяжении курса, просты вначале и станут более сложными по завершении 12-ти недельного курса.
Мы намеренно не раскрывали тему фреймворков JavaScript, чтобы сконцентрироваться получении базовых навыков, необходимых веб-разработчику. Следующим шагом, после прохождения этого курса, мы рекомендуем изучить Node.js, воспользовавшись этим набором видеоуроков: "[Знакомство с Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs?WT.mc_id=academic-77807-sagibbon)" Мы намеренно не раскрывали тему фреймворков JavaScript, чтобы сконцентрироваться получении базовых навыков, необходимых веб-разработчику. Следующим шагом, после прохождения этого курса, мы рекомендуем изучить Node.js, воспользовавшись этим набором видеоуроков: "[Знакомство с Node.js](https://channel9.msdn.com/Series/Beginners-Series-to-Nodejs/?WT.mc_id=academic-77807-sagibbon)"
> Вы можете ознакомиться с нашей [политикой взаимодействия с сообществом](../CODE_OF_CONDUCT.md), [правила внесения собственного вклада в развитие проекта](../CONTRIBUTING.md) и [правилами для переводчиков](../TRANSLATIONS.md). Мы очень ждём ваших конструктивных отзывов! > Вы можете ознакомиться с нашей [политикой взаимодействия с сообществом](../CODE_OF_CONDUCT.md), [правила внесения собственного вклада в развитие проекта](../CONTRIBUTING.md) и [правилами для переводчиков](../TRANSLATIONS.md). Мы очень ждём ваших конструктивных отзывов!

Some files were not shown because too many files have changed in this diff Show More

Loading…
Cancel
Save