README.md

    GitHub license GitHub contributors GitHub issues GitHub pull-requests PRs Welcome

    GitHub watchers GitHub forks GitHub stars

    Open in Visual Studio Code

    面向初学者的网络开发--一门课程

    微软的 Azure Cloud 倡导者很高兴提供一个为期 12 周、24 节课的课程,所有课程都是关于 JavaScript、CSS 和 HTML 基础知识的。每节课都包括课前和课后的小考、完成课程的书面说明、解决方案、作业等等。我们的基于项目的教学法允许你边学边学,这是一种行之有效的新技能“坚持”的方法。

    衷心感谢我们的作者 Jen Looper,Chris Noring,Christopher Harrison,Jasmine Greenaway,Yohan Lasorsa,Floor Drees 和素描笔记艺术家 Tomomi Imura!

    开始

    老师们,我们有 包括一些建议 关于如何使用这门课程。我们希望你的反馈 在我们的讨论区

    学生们,要自己使用这门课程, Fork 整个库,并自己完成练习,从讲课前的小测验开始,然后阅读讲稿,完成其余的活动。尝试通过理解课程而不是复制解决方案代码来创建 Projects ;但是,在每个面向项目的课程中,/solutions 文件夹中的代码都是可用的。另一个想法是与朋友组成一个学习小组,一起学习内容。对于进一步的研究,我们建议 Microsoft Learn 并观看下面提到的视频。

    Promo video

    gif byMohit Jaisal

    点击上面的图片,观看关于这个项目和它的创建者的视频!

    教育学

    在这门课程中,我们选择了两个教学原则:确保它是基于项目的,并包括频繁的小测验。在这个系列的结尾,学生们将会制作一个打字游戏,一个虚拟的水族馆,一个“绿色”浏览器扩展,一个“空间入侵者”类型的游戏,以及一个商业类型的银行应用程序,并且将会学习 JavaScript,HTML 和 CSS 的基础知识,以及当今网络开发者的现代工具链。

    你可以在 Microsoft Learn 上以 学习路径 的形式学习这门课程的前几课!

    通过确保内容与 Projects 一致,该过程将使学生更具吸引力,并且概念的保留将得到增强。我们还在 JavaScript Basics 中编写了几个入门课程来介绍概念,并结合了“[初学者系列到:JavaScript](https://channel9.msdn.com/series/beginners-series-to-JavaScript?wt.mc_id=academic-13441-cxa)”视频教程的集合,其中一些作者为本课程做出了贡献。

    此外,课前的低风险小测验确定了学生学习主题的意图,而课后的第二次小测验则确保了学生的进一步学习。这门课程的设计是灵活和有趣的,可以全部或部分采用。 Projects 从小处开始,到 12 周周期结束时变得越来越复杂。

    虽然我们有意避免引入 JavaScript 框架,以便在采用框架之前专注于 Web 开发人员所需的基本技能,但完成此课程的下一步是通过另一个视频集合学习 Node.js:“[Beginner Series to:Node.js](https://channel9.msdn.com/series/beginners-series-to-nodejs?wt.mc_id=academic-13441-cxa)”。

    找到我们的 行为守则贡献,和 翻译 准则。我们欢迎你的建设性意见反馈!

    每节课包括:

    • 可选的素描笔记
    • 可选补充视频
    • 课前热身测验
    • 书面课
    • 对于基于项目的经验教训,请提供有关如何构建项目的分步指南。
    • 知识检查
    • 一项挑战
    • 补充阅读
    • 任务分配
    • 课后小测验

    小考注意事项:所有小考都包含 在这个应用程序中,共 48 个小考,每个小考 3 道题。它们是从课程中链接的,但测试应用程序可以在本地运行;请按照 quiz-app 文件夹中的说明进行操作。它们正逐渐被本地化。

    教训

    Project Name Concepts Taught 学习目标 Linked Lesson Author
    01 Getting Started Introduction to Programming and Tools of the Trade 了解大多数编程语言背后的基础知识,以及帮助专业开发人员完成工作的软件 Intro to Programming Languages and Tools of the Trade Jasmine
    02 Getting Started Basics of GitHub, includes working with a team 如何在项目中使用 GitHub,如何在代码库中与他人合作 Intro to GitHub Floor
    03 Getting Started Accessibility 学习 Web 可访问性的基础知识 Accessibility Fundamentals Christopher
    04 JS Basics JavaScript Data Types JavaScript 数据类型的基础知识 Data Types Jasmine
    05 JS Basics Functions and Methods 了解函数和管理应用程序逻辑流的方法 Functions and Methods Jasmine and Christopher
    06 JS Basics Making Decisions with JS 了解如何使用决策方法在代码中创建条件 Making Decisions Jasmine
    07 JS Basics Arrays and Loops 使用 JavaScript 中的数组和循环处理数据 Arrays and Loops Jasmine
    08 Terrarium HTML in Practice 构建 HTML 来创建一个在线容器,重点是布局 Introduction to HTML Jen
    09 Terrarium CSS in Practice 构建 CSS 来设计在线文库,重点关注 CSS 的基础知识,包括使页面具有响应性 Introduction to CSS Jen
    10 Terrarium JavaScript Closures, DOM manipulation 构建 JavaScript,使 Terrarium函数成为一个拖放界面,专注于闭包和 DOM 操作 JavaScript Closures, DOM manipulation Jen
    11 Typing Game Build a Typing Game 了解如何使用键盘事件来驱动 JavaScript 应用程序的逻辑 Event-Driven Programming Christopher
    12 Green Browser Extension Working with Browsers 了解浏览器的工作方式、历史以及如何构建浏览器扩展的第一个元素 About Browsers Jen
    13 Green Browser Extension Building a form, calling an API and storing variables in local storage 构建浏览器扩展的 JavaScript 元素,以使用存储在本地存储中的变量调用 API APIs, Forms, and Local Storage Jen
    14 Green Browser Extension Background processes in the browser, web performance 使用浏览器的后台进程来管理扩展的图标;了解有关 Web 性能的信息,并进行一些优化 Background Tasks and Performance Jen
    15 Space Game More Advanced Game Development with JavaScript 学习使用类和组合以及发布 / 订阅模式的继承,为编译一场游戏做准备 Introduction to Advanced Game Development Chris
    16 Space Game Drawing to canvas 了解用于将元素绘制到屏幕上的 Canvas API Drawing to Canvas Chris
    17 Space Game Moving elements around the screen 了解元素如何使用笛卡尔坐标和 Canvas API 获得运动 Moving Elements Around Chris
    18 Space Game Collision detection 使用按键使元素相互碰撞,并提供冷却时间函数,以确保游戏的性能 Collision Detection Chris
    19 Space Game Keeping score 根据游戏的状态和性能进行数学计算。 Keeping Score Chris
    20 Space Game Ending and restarting the game 了解如何结束和重新启动游戏,包括清理资产和重置可变值 The Ending Condition Chris
    21 Banking App HTML Templates and Routes in a Web App 了解如何使用路由和 HTML 模板创建多页面网站的脚手架架构 HTML Templates and Routes Yohan
    22 Banking App Build a Login and Registration Form 了解编译表单和处理验证例程 Forms Yohan
    23 Banking App Methods of Fetching and Using Data 数据如何流入和流出应用程序,如何获取、存储和处理应用程序 Data Yohan
    24 Banking App Concepts of State Management 了解你的应用程序如何保持状态以及如何以编程方式对其进行管理 State Management Yohan

    离线访问

    你可以通过使用 DOCSIFY 离线运行此文档。 Fork 此库,在你的本地机器上 安装 docsify ,然后在此库的根文件夹中,键入 docsify serve。该网站将在你的本地主机上的端口 3000 上提供服务:localhost:3000

    PDF 格式

    可以找到所有课程的 PDF 格式 这里

    其他课程

    我们的团队制作了其他的课程!退房:

    项目简介

    当前项目暂无项目简介

    发行版本

    当前项目没有发行版本

    贡献者 1

    D dallascao @dallascao

    开发语言