|
|
4 months ago | |
|---|---|---|
| .. | ||
| 1-getting-started-lessons | 4 months ago | |
| 2-js-basics | 4 months ago | |
| 3-terrarium | 4 months ago | |
| 4-typing-game | 4 months ago | |
| 5-browser-extension | 4 months ago | |
| 6-space-game | 4 months ago | |
| 7-bank-project | 4 months ago | |
| 8-code-editor/1-using-a-code-editor | 4 months ago | |
| 9-chat-project | 4 months ago | |
| 10-ai-framework-project | 4 months ago | |
| Git-Basics | 4 months ago | |
| docs | 4 months ago | |
| lesson-template | 4 months ago | |
| memory-game | 4 months ago | |
| quiz-app | 4 months ago | |
| .co-op-translator.json | 4 months ago | |
| AGENTS.md | 4 months ago | |
| CODE_OF_CONDUCT.md | 4 months ago | |
| CONTRIBUTING.md | 4 months ago | |
| README.md | 4 months ago | |
| SECURITY.md | 4 months ago | |
| SUPPORT.md | 4 months ago | |
| _404.md | 4 months ago | |
| for-teachers.md | 4 months ago | |
README.md
Desenvolvimento Web para Iniciantes - Um Currículo
Aprenda os fundamentos do desenvolvimento web com o nosso curso abrangente de 12 semanas, por Microsoft Cloud Advocates. Cada uma das 24 aulas aprofunda JavaScript, CSS e HTML através de projetos práticos como terrários, extensões de browser e jogos espaciais. Participe em questionários, discussões e tarefas práticas. Melhore as suas competências e otimize a retenção do conhecimento com a nossa pedagogia eficaz baseada em projetos. Comece a sua jornada de codificação hoje!
Junte-se à Comunidade Azure AI Foundry Discord
Siga estes passos para começar a usar estes recursos:
- Fork do Repositório: Clique em
- Clone do Repositório:
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git - Junte-se ao Azure AI Foundry Discord e conheça especialistas e outros programadores
🌐 Suporte Multilíngue
Suportado via Ação GitHub (Automatizado & Sempre Atualizado)
Árabe | Bengali | Búlgaro | Birmanês (Myanmar) | Chinês (Simplificado) | Chinês (Tradicional, Hong Kong) | Chinês (Tradicional, Macau) | Chinês (Tradicional, Taiwan) | Croata | Checo | Dinamarquês | Holandês | Estónio | Finlandês | Francês | Alemão | Grego | Hebraico | Hindi | Húngaro | Indonésio | Italiano | Japonês | Kannada | Coreano | Lituano | Malaio | Malayalam | Marathi | Nepali | Pidgin Nigeriano | Norueguês | Persa (Farsi) | Polaco | Português (Brasil) | Português (Portugal) | Punjabi (Gurmukhi) | Romeno | Russo | Sérvio (Cirílico) | Eslovaco | Esloveno | Espanhol | Suaíli | Sueco | Tagalog (Filipino) | Tamil | Telugu | Tailandês | Turco | Ucraniano | Urdu | Vietnamita
Prefere Clonar Localmente?
Este repositório inclui traduções em mais de 50 idiomas, o que aumenta significativamente o tamanho do download. Para clonar sem traduções, use sparse checkout:
git clone --filter=blob:none --sparse https://github.com/microsoft/Web-Dev-For-Beginners.git cd Web-Dev-For-Beginners git sparse-checkout set --no-cone '/*' '!translations' '!translated_images'Isto oferece tudo o que precisa para completar o curso com um download muito mais rápido.
Se desejar que línguas adicionais sejam suportadas, estas estão listadas aqui
🧑🎓 É estudante?
Visite a página Student Hub onde encontrará recursos para iniciantes, kits para estudantes e até formas de obter um voucher de certificado gratuito. Esta é a página que deve guardar nos favoritos e consultar de tempos a tempos, pois atualizamos o conteúdo mensalmente.
📣 Anúncio - Novos desafios no modo Agente GitHub Copilot para completar!
Novo desafio adicionado, procure por "Desafio Agente GitHub Copilot 🚀" na maioria dos capítulos. Este é um novo desafio para completar usando o GitHub Copilot e o modo Agente. Se nunca usou o modo Agente, ele é capaz não só de gerar texto, mas também de criar e editar ficheiros, executar comandos e muito mais.
📣 Anúncio - Novo Projeto para construir usando IA Generativa
Novo projeto de Assistente IA adicionado, veja o projeto
📣 Anúncio - Novo Currículo sobre IA Generativa para JavaScript foi lançado
Não perca o nosso novo currículo de IA Generativa!
Visite https://aka.ms/genai-js-course para começar!
- Aulas que cobrem desde os básicos até RAG.
- Interaja com personagens históricos usando GenAI e a nossa app companheira.
- Narrativa divertida e envolvente, fará viagens no tempo!
Cada aula inclui uma tarefa para completar, um teste de conhecimento e um desafio para guiar a aprendizagem de tópicos como:
- Prompting e engenharia de prompts
- Criação de apps de texto e imagem
- Apps de pesquisa
Visite https://aka.ms/genai-js-course para começar!
🌱 Introdução
Professores, incluímos algumas sugestões aqui sobre como usar este currículo. Agradecemos o seu feedback no nosso fórum de discussão!
Estudantes, para cada aula, comece com um questionário pré-lectura, siga lendo o material da aula, complete as várias atividades e verifique a sua compreensão com o questionário pós-lectura.
Para melhorar a sua experiência de aprendizagem, conecte-se com os seus colegas para trabalharem juntos nos projetos! As discussões são incentivadas no nosso fórum de discussão, onde a nossa equipa de moderadores estará disponível para responder às suas perguntas.
Para aprofundar a sua educação, recomendamos explorar Microsoft Learn para materiais de estudo adicionais.
📋 Configurar o seu ambiente
Este currículo tem um ambiente de desenvolvimento pronto a usar! Ao começar, pode optar por executar o currículo num Codespace (um ambiente baseado no navegador, sem necessidade de instalações), ou localmente no seu computador usando um editor de texto como o Visual Studio Code.
Criar o seu repositório
Para guardar o seu trabalho facilmente, é recomendado criar a sua própria cópia deste repositório. Pode fazê-lo clicando no botão Use this template no topo da página. Isso criará um novo repositório na sua conta GitHub com uma cópia do currículo.
Siga estes passos:
- Fork do Repositório: Clique no botão "Fork" no canto superior direito desta página.
- Clone do Repositório:
git clone https://github.com/microsoft/Web-Dev-For-Beginners.git
Executar o currículo num Codespace
Na sua cópia deste repositório que criou, clique no botão Code e selecione Open with Codespaces. Isso criará um novo Codespace para trabalhar.
Executar o currículo localmente no seu computador
Para executar este currículo localmente no seu computador, precisará de um editor de texto, um browser e uma ferramenta de linha de comandos. A nossa primeira aula, Introdução a Linguagens de Programação e Ferramentas do Ofício, guiará através de várias opções para cada uma destas ferramentas para selecionar o que melhor lhe convém.
A nossa recomendação é usar o Visual Studio Code como editor, que também tem um Terminal incorporado. Pode fazer download do Visual Studio Code aqui.
-
Clone o seu repositório para o seu computador. Pode fazê-lo clicando no botão Code e copiando a URL:
CodeSpace Depois, abra o Terminal dentro do Visual Studio Code e execute o seguinte comando, substituindo
<your-repository-url>pelo URL que acabou de copiar:git clone <your-repository-url> -
Abra a pasta no Visual Studio Code. Pode fazer isto clicando em Ficheiro > Abrir Pasta e selecionando a pasta que acabou de clonar.
Extensões recomendadas para o Visual Studio Code:
- Live Server - para pré-visualizar páginas HTML dentro do Visual Studio Code
- Copilot - para ajudar a escrever código mais rapidamente
📂 Cada lição inclui:
- sketchnote opcional
- vídeo suplementar opcional
- quiz de aquecimento antes da lição
- lição escrita
- para lições baseadas em projetos, guias passo a passo sobre como construir o projeto
- verificação de conhecimento
- um desafio
- leitura suplementar
- tarefa
- quiz pós-lição
Uma nota sobre quizzes: Todos os quizzes estão contidos na pasta Quiz-app, totalizando 48 quizzes de três perguntas cada. Estão disponíveis aqui; a aplicação dos quizzes pode ser executada localmente ou implantada no Azure; siga as instruções na pasta
quiz-app.
🗃️ Lições
| Nome do Projeto | Conceitos Ensinados | Objetivos de Aprendizagem | Lição Ligada | Autor | |
|---|---|---|---|---|---|
| 01 | A Começar | Introdução à Programação e Ferramentas do Ofício | Aprender os fundamentos básicos por detrás da maioria das linguagens de programação e sobre software que ajuda os programadores profissionais a fazer o seu trabalho | Introdução às Linguagens de Programação e Ferramentas do Ofício | Jasmine |
| 02 | A Começar | Noções básicas de GitHub, incluindo trabalho em equipa | Como usar o GitHub no seu projeto, como colaborar com outros numa base de código | Introdução ao GitHub | Floor |
| 03 | A Começar | Acessibilidade | Aprender os fundamentos da acessibilidade web | Fundamentos da Acessibilidade | Christopher |
| 04 | Fundamentos de JS | Tipos de Dados em JavaScript | Os conceitos básicos dos tipos de dados em JavaScript | Tipos de Dados | Jasmine |
| 05 | Fundamentos de JS | Funções e Métodos | Aprender sobre funções e métodos para gerir o fluxo lógico de uma aplicação | Funções e Métodos | Jasmine e Christopher |
| 06 | Fundamentos de JS | Tomar Decisões com JS | Aprender como criar condições no seu código usando métodos de tomada de decisão | Tomar Decisões | Jasmine |
| 07 | Fundamentos de JS | Arrays e Loops | Trabalhar com dados usando arrays e loops em JavaScript | Arrays e Loops | Jasmine |
| 08 | Terrarium | HTML na Prática | Construir o HTML para criar um terrário online, focando na criação de uma disposição/layout | Introdução ao HTML | Jen |
| 09 | Terrarium | CSS na Prática | Construir o CSS para estilizar o terrário online, focando no básico do CSS incluindo tornar a página responsiva | Introdução ao CSS | Jen |
| 10 | Terrarium | Closures em JavaScript, manipulação do DOM | Criar o JavaScript para fazer o terrário funcionar como uma interface drag/drop, focando em closures e manipulação do DOM | Closures em JavaScript, manipulação do DOM | Jen |
| 11 | Typing Game | Criar um Jogo de Digitação | Aprender como usar eventos de teclado para conduzir a lógica da sua aplicação JavaScript | Programação Orientada a Eventos | Christopher |
| 12 | Extensão Verde para Navegadores | Trabalhar com Navegadores | Aprender como os navegadores funcionam, a sua história e como estruturar os primeiros elementos de uma extensão para navegador | Sobre Navegadores | Jen |
| 13 | Extensão Verde para Navegadores | Construir um formulário, chamar uma API e armazenar variáveis no armazenamento local | Construir os elementos JavaScript da sua extensão de navegador para chamar uma API usando variáveis armazenadas no armazenamento local | APIs, Formulários e Armazenamento Local | Jen |
| 14 | Extensão Verde para Navegadores | Processos em segundo plano no navegador, desempenho web | Usar os processos em segundo plano do navegador para gerir o ícone da extensão; aprender sobre desempenho web e algumas otimizações a realizar | Tarefas em Segundo Plano e Desempenho | Jen |
| 15 | Jogo Espacial | Desenvolvimento de Jogos Mais Avançado com JavaScript | Aprender sobre Herança usando Classes e Composição, e o padrão Pub/Sub, para preparar-se para criar um jogo | Introdução ao Desenvolvimento Avançado de Jogos | Chris |
| 16 | Jogo Espacial | Desenhar no canvas | Aprender sobre a API Canvas, usada para desenhar elementos num ecrã | Desenhar no Canvas | Chris |
| 17 | Jogo Espacial | Mover elementos pelo ecrã | Descobrir como os elementos podem ganhar movimento usando coordenadas cartesianas e a API Canvas | Mover Elementos | Chris |
| 18 | Jogo Espacial | Detetar Colisões | Fazer os elementos colidirem e reagirem entre si usando teclas e fornecer uma função de cooldown para garantir o desempenho do jogo | Detetar Colisões | Chris |
| 19 | Jogo Espacial | Manter a pontuação | Realizar cálculos matemáticos baseados no estado e desempenho do jogo | Manter a Pontuação | Chris |
| 20 | Jogo Espacial | Terminar e reiniciar o jogo | Aprender sobre terminar e reiniciar o jogo, incluindo limpar recursos e redefinir valores de variáveis | A Condição de Fim | Chris |
| 21 | App Bancária | Templates HTML e Rotas numa App Web | Aprender como criar a estrutura arquitetónica de um website multipágina usando rotas e templates HTML | Templates HTML e Rotas | Yohan |
| 22 | App Bancária | Criar um Formulário de Login e Registo | Aprender a criar formulários e gerir rotinas de validação | Formulários | Yohan |
| 23 | App Bancária | Métodos para Obter e Usar Dados | Como os dados entram e saem da sua aplicação, como buscá-los, guardá-los e descartá-los | Dados | Yohan |
| 24 | App Bancária | Conceitos de Gestão de Estado | Aprender como a sua aplicação mantém o estado e como gerí-lo programaticamente | Gestão de Estado | Yohan |
| 25 | Browser/VScode Code | Trabalhar com VScode | Aprender a usar um editor de código | Usar o Editor VScode | Chris |
| 26 | Assistentes AI | Trabalhar com AI | Aprender a criar o seu próprio assistente AI | Projeto de Assistente AI | Chris |
🏫 Pedagogia
O nosso currículo foi concebido com dois princípios pedagógicos chave em mente:
- aprendizagem baseada em projetos
- quizzes frequentes
O programa ensina os fundamentos de JavaScript, HTML e CSS, bem como as ferramentas e técnicas mais recentes usadas pelos desenvolvedores web atuais. Os estudantes terão a oportunidade de desenvolver experiência prática criando um jogo de digitação, um terrário virtual, uma extensão de navegador ecológica, um jogo estilo space-invader e uma aplicação bancária para negócios. No final da série, os estudantes terão adquirido uma compreensão sólida do desenvolvimento web.
🎓 Pode fazer as primeiras lições deste currículo como um Caminho de Aprendizagem na Microsoft Learn!
Ao assegurar que o conteúdo está alinhado com projetos, o processo torna-se mais envolvente para os estudantes e a retenção de conceitos será aumentada. Também escrevemos várias lições iniciais sobre os fundamentos de JavaScript para introduzir conceitos, combinadas com um vídeo da coleção de tutoriais em vídeo "Série para Iniciantes em: JavaScript", alguns dos cujos autores contribuíram para este currículo.
Além disso, um quiz de baixo risco antes da aula define a intenção do estudante para aprender um tópico, enquanto um segundo quiz após a aula assegura uma maior retenção. Este currículo foi desenhado para ser flexível e divertido, podendo ser seguido na totalidade ou parcialmente. Os projetos começam pequenos e tornam-se progressivamente mais complexos até final do ciclo de 12 semanas.
Embora tenhamos evitado intencionalmente a introdução de frameworks JavaScript para nos concentrarmos nas competências básicas necessárias como desenvolvedor web antes de adotar um framework, um bom próximo passo para completar este currículo seria aprender sobre Node.js através de outra coleção de vídeos: "Série para Iniciantes em: Node.js".
Visite as nossas orientações do Código de Conduta e Contribuir. Aguardamos o seu feedback construtivo!
🧭 Acesso offline
Pode executar esta documentação offline usando o Docsify. Faça um fork deste repositório, instale o Docsify na sua máquina local e, depois, na pasta raiz deste repositório, digite docsify serve. O site será servido na porta 3000 no seu localhost: localhost:3000.
Um PDF de todas as lições pode ser encontrado aqui.
🎒 Outros Cursos
A nossa equipa produz outros cursos! Confira:
LangChain
Azure / Edge / MCP / Agents
Série de IA Generativa
Aprendizagem Fundamental
Série Copilot
Obter Ajuda
Se ficar preso ou tiver alguma pergunta sobre a construção de aplicações de IA. Junte-se a outros alunos e programadores experientes em discussões sobre MCP. É uma comunidade de apoio onde perguntas são bem-vindas e o conhecimento é partilhado livremente.
Se tiver feedback de produto ou erros durante a construção, visite:
Licença
Este repositório está licenciado ao abrigo da licença MIT. Veja o ficheiro LICENSE para mais informações.
Aviso Legal: Este documento foi traduzido utilizando o serviço de tradução automática Co-op Translator. Embora nos esforcemos por garantir a precisão, esteja ciente de que traduções automáticas podem conter erros ou imprecisões. O documento original no seu idioma nativo deve ser considerado a fonte autoritativa. Para informações críticas, recomenda-se a tradução profissional por um tradutor humano. Não nos responsabilizamos por quaisquer mal-entendidos ou interpretações incorretas decorrentes do uso desta tradução.


