分享MDN前端结构化技能、实践指南、学习资源

前言

MDN课程为成为一名成功的前端开发人员提供了一个结构化的基本技能和实践指南,以及推荐的学习资源。

先看下让人不得不服的书《宝宝的网页设计》(套装共3册)

宝宝的HTML、宝宝的CSS、宝宝的JavaScript

全球首套中英文宝宝编程启蒙书,编程已经不再是一小部分人的先进理念和高端技能,它已经变成了未来孩子的基本生活技能、生存技能。It's never too early to develop code babies.学编程永远都不会嫌弃早。

作者:约翰 C. 范德-霍伊维尔(John C. Vanden-Heuvel)

出版社:中国科学技术大学出版社

出版时间:2016年11月 

Web1.0时代2005年前的静态网页三剑客Fireworks+Dreamweaver+Flash用于网页制作,Web2.0时代2005年后的动态网页三剑客HTML+CSS+JavaScript用于前端开发,后端开发四大家族PHP、JSP、ASP.NET、JAVA,在Web技术领域不少技术之间都有着交叉关系,只能通十行才可能做到精一行。

学习顺序推荐:前端构建HTML->CSS->JavaScript->jQuery->CSS3->HTML5->Vue.js+前端打包webpack、gulp、babel、express,最好可以再延伸到后端服务,这样才算得上真正意义上的Web工程师。

一、入门

1.1软技能

培养良好的学习、研究和合作态度,以提高你的成功机会。

1.2环境设置

熟悉您的开发环境和用于构建网站的工具。

二、核心

2.1Web标准

了解网络如何在高水平上工作,以及创建网络技术的过程。

2.2语义HTML

学习HTML的基本原理,HTML是一种用于定义和构建网络内容的语言。

2.3CSS基础知识

深入了解CSS的基本原理,这是一种用于设计网站样式和布局的语言。

2.4CSS文本样式

重点关注使用CSS来设置文本样式和应用自定义web字体。

2.5CSS布局

学习在各种设备上创建灵活布局的现代技术。

2.6JavaScript基础知识

专注于核心JavaScript语言和周围的基本主题。

2.7可访问性

了解普遍访问web内容的必要性以及如何编写可访问的代码。

2.8为开发人员设计

欣赏基本的设计理论,如何说设计语言,以及是什么让网站看起来好看。

2.9版本控制

理解为什么版本控制是必要的,并使用GitHub存储代码和与他人协作。

三、扩展

3.1转换和动画CSS

将动画添加到工具箱中,以增强用户体验和感知性能。

3.2自定义JS对象

创建自定义JavaScript对象,以更深入地了解面向对象编程。

3.3Web API

深入研究常见的WebAPI,以了解WebAPI的一般工作方式。

3.4表演

探索如何创建高性能、快速加载的网站并提高感知性能。

3.5安全和隐私

了解如何保护数据免受未经授权的访问,以及如何负责任地处理用户数据。

3.6测试

探索测试的必要性,并学习如何实现常见的测试类型。

3.7JavaScript框架

研究流行的JavaScript框架的特性,并使用它们来实现常见的用例。

3.8CSS工具

看看流行的CSS工具,了解它们可以解决哪些代码问题。

3.9其他工装类型

了解web项目中常见的其他工具类型的用途和用法。

附录:

传统的RPC、SOAP方式的Web服务,JSON格式进行交互,但还是属于RPC风格的。从资源的定义、获取、表述、关联、状态变迁等角度, 快速理解RESTful架构背后的概念。RESTful架构与传统的RPC、SOAP等方式在理念上有很大的不同。

REST全称是Representational State Transfer,中文意思是表述(编者注:通常译为表征)性状态转移。 它首次出现在2000年Roy Fielding的博士论文中,Roy Fielding是HTTP规范的主要编写者之一。 他在论文中提到:"我这篇文章的写作目的,就是想在符合架构原理的前提下,理解和评估以网络为基础的应用软件的架构设计,得到一个功能强、性能好、适宜通信的架构。REST指的是一组架构约束条件和原则。" 如果一个架构符合REST的约束条件和原则,我们就称它为RESTful架构。

REST本身并没有创造新的技术、组件或服务,而隐藏在RESTful背后的理念就是使用Web的现有特征和能力, 更好地使用现有Web标准中的一些准则和约束。虽然REST本身受Web技术的影响很深, 但是理论上REST架构风格并不是绑定在HTTP上,只不过目前HTTP是唯一与REST相关的实例。 所以我们这里描述的REST也是通过HTTP实现的REST。

RESTful架构应该遵循统一接口原则,统一接口包含了一组受限的预定义的操作,不论什么样的资源,都是通过使用相同的接口进行资源的访问。接口应该使用标准的HTTP方法如GET,PUT和POST,并遵循这些方法的语义。

如果按照HTTP方法的语义来暴露资源,那么接口将会拥有安全性和幂等性的特性,例如GET和HEAD请求都是安全的, 无论请求多少次,都不会改变服务器状态。而GET、HEAD、PUT和DELETE请求都是幂等的,无论对资源操作多少次, 结果总是一样的,后面的请求并不会产生比第一次更多的影响。

要理解RESTful架构,需要理解Representational State Transfer这个词组到底是什么意思,它的每一个词都有些什么涵义。

下面我们结合REST原则,围绕资源展开讨论,从资源的定义、获取、表述、关联、状态变迁等角度,列举一些关键概念并加以解释。

  • 资源与URI
  • 统一资源接口
  • 资源的表述
  • 资源的链接
  • 状态的转移


     

参见:

MDN Curriculum | MDN Curriculum

Restful API - Restful API

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/272537.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机网络 八股

计算机网络体系结构 OSI:物理层、数据链路层、网络层、运输层、会话层、表示层、应用层

鸿蒙Harmony应用开发—ArkTS声明式开发(基础手势:Gauge)

数据量规图表组件,用于将数据展示为环形图表。 说明: 该组件从API Version 8开始支持。后续版本如有新增内容,则采用上角标单独标记该内容的起始版本。 子组件 可以包含单个子组件。 说明: 建议使用文本组件构建当前数值文本和辅…

【xv6操作系统】xv6 启动过程分析

一、调试用到的汇编代码 为了方便, Makefile 会创建.asm 文件,可以通过它来定位究竟是哪个指令导致了 bug。 可以看到, kernel 从 80000000 地址处开始执行,第二列为相应指令(如 auipc) 的 16 进制表示&a…

缩放算法优化步骤详解

添加链接描述 背景 假设数据存放在在unsigned char* m_pData 里面,宽和高分别是:m_nDataWidth m_nDataHeight 给定缩放比例:fXZoom fYZoom,返回缩放后的unsigned char* dataZoom 这里采用最简单的缩放算法即: 根据比…

猫头虎分享已解决Bug || 系统监控故障:MonitoringServiceDown, MetricsCollectionError

博主猫头虎的技术世界 🌟 欢迎来到猫头虎的博客 — 探索技术的无限可能! 专栏链接: 🔗 精选专栏: 《面试题大全》 — 面试准备的宝典!《IDEA开发秘籍》 — 提升你的IDEA技能!《100天精通鸿蒙》 …

如何在一个pycharm项目中创建jupyter notebook文件,并切换到conda环境中

1、第一步可以直接在pycharm项目中创建jupyter notebook文件 2、假若想要切换成pytorch环境做实验例子,会发现报这个错误 Jupyter server process exited with code 1 C:\Users\12430\.conda\envs\pytorch3.11\python.exe: No module named jupyter在这里&#xff…

Python快速入门系列-2(Python的安装与环境设置)

第二章:Python的安装与环境设置 2.1 Python的下载与安装2.1.1 访问Python官网2.1.2 安装Python对于Windows用户对于macOS用户对于Linux用户 2.2 集成开发环境(IDE)的选择与设置2.2.1 PyCharm2.2.2 Visual Studio Code2.2.3 Jupyter Notebook2…

jvm堆概述

《java虚拟机规范》中对java堆的描述是:所有的对象实例以及数组都应当在运行时分配在堆上。 一个JVM实例只存在一个堆内存(就是new 出来一个对象),java内存管理的核心区域 java堆区在jvm启动的时候就被创建,空间大小确定。是jvm管理的最大一…

力扣--滑动窗口438.找到字符串中所有字母异位词

思路分析: 使用两个数组snum和pnum分别记录字符串s和p中各字符出现的次数。遍历字符串p,统计其中各字符的出现次数,存储在pnum数组中。初始化snum数组,统计s的前m-1个字符的出现次数。从第m个字符开始遍历s,通过滑动窗…

STM32_3-1点亮LED灯与蜂鸣器发声

STM32之GPIO GPIO在输出模式时可以控制端口输出高低电平,用以驱动Led蜂鸣器等外设,以及模拟通信协议输出时序等。 输入模式时可以读取端口的高低电平或电压,用于读取按键输入,外接模块电平信号输入,ADC电压采集灯 GP…

C# WinForm AndtUI第三方库 Table控件使用记录

环境搭建 1.在NuGet中搜索AndtUI并下载至C# .NetFramework WinForm项目。 2.添加Table控件至窗体。 使用方法集合 1.单元格点击事件 获取被点击记录特定列内容 private void dgv_CellClick(object sender, MouseEventArgs args, object record, int rowIndex, int columnIn…

一篇搞懂什么是LRU缓存|一篇搞懂LRU缓存的实现|LRUCache详解和实现

LRUCache 文章目录 LRUCache前言项目代码仓库什么时候会用到缓存(Cache)缓存满了,怎么办?什么是LRUCacheLRUCache的实现LRUCache对应的OJ题实现LRUCache对应的STL风格实现 前言 这里分享我的一些博客专栏,都是干货满满的。 手撕数据结构专栏…

解决ts报错:类型“entry”上不存在属性“$AppTools”

uniapp ts 项目,已经将AppTools挂在了vue的原型上,但是在vue页面使用时报错,如图: 解决: 在项目根目录下的tsconfig.json文件添加如下配置: "include": ["src/**/*"],这样报错就消失…

ChatGPT数据分析应用——热力图分析

ChatGPT数据分析应用——热力图分析 ​ 热力图分析既可以算作一种可视化方法,也可以算作一种分析方法,主要用于直观地展示数据的分布情况。接下来我们让ChatGPT解释这个方法的概念并提供相应的案例。发送如下内容给ChatGPT。 ​ ChatGPT收到上述内容后&…

云计算科学与工程实践指南--章节引言收集

云计算科学与工程实践指南–章节引言收集 //本文收集 【云计算科学与工程实践指南】 书中每一章节的引言。 我已厌倦了在一本书中阅读云的定义。难道你不失望吗?你正在阅读一个很好的故事,突然间作者必须停下来介绍云。谁在乎云是什么? 通…

opengl 学习(二)-----你好,三角形

你好&#xff0c;三角形 分类demo效果解析 分类 opengl c demo #include "glad/glad.h" #include "glfw3.h" #include <iostream> #include <cmath> #include <vector>using namespace std;/** * 在学习此节之前&#xff0c;建议将这…

MIT6.828操作系统工程实验学习笔记(二)

前言 这篇文章是接上文的内容&#xff0c;依然是对Lab1的记录 如何启动保护模式 要启动保护模式&#xff0c;需要完成以下三个步骤&#xff1a; 在内存中加载GDT&#xff0c;设置GDTR设置CR0寄存器的PE&#xff08;Protected Enable&#xff09;位&#xff0c;启用保护模式…

【深度学习笔记】6_9 深度循环神经网络deep-rnn

注&#xff1a;本文为《动手学深度学习》开源内容&#xff0c;部分标注了个人理解&#xff0c;仅为个人学习记录&#xff0c;无抄袭搬运意图 6.9 深度循环神经网络 本章到目前为止介绍的循环神经网络只有一个单向的隐藏层&#xff0c;在深度学习应用里&#xff0c;我们通常会用…

使用API有效率地管理Dynadot域名,进行DNS域名解析

关于Dynadot Dynadot是通过ICANN认证的域名注册商&#xff0c;自2002年成立以来&#xff0c;服务于全球108个国家和地区的客户&#xff0c;为数以万计的客户提供简洁&#xff0c;优惠&#xff0c;安全的域名注册以及管理服务。 Dynadot平台操作教程索引&#xff08;包括域名邮…

算法设计与分析(超详解!) 第一节 算法概述

1.算法的定义 算法的非形式化定义&#xff1a;算法是规则的有限集合&#xff0c;是为解决特定问题而规定的一系列操作。 可以理解为&#xff1a;算法&#xff08;algorithm&#xff09;是指在解决问题时&#xff0c;按照某种机械的步骤一定可以得到问题的结果&#xff08;有的…