知识要点

C语言

  • C语言的优势
  • 运行一个C程序的全过程
  • 一个C语言函数的一般板式和内容
  • C语言的结构化程序设计(3个结构)
  • 函数的定义和调用
  • C中常见的数据类型及算术运算时的自动类型转换
  • 变量的存储类型和区别
  • 数组的定义、初始化和排序方法
  • 指针的概念、定义、初始化及应用
  • 结构、联合的概念区别以及定义和使用

计算机基础

  • 什么是计算思维?
  • 三大类科学方法及其对应的三大思维。
  • 图灵机及可计算性
  • 什么是算法?算法的基本要素和复杂度
  • 冯诺依曼结构
  • 计算机的系统组成(软件和硬件)及工作原理。
  • 常见的编码方式。
  • 主板、微机总线、CPU、内存、显卡、声卡等。

计算机网络及应用基础

  • 一个计算机网络一般由什么组成?
  • 数据交换分为哪两类(电路交换、分组交换)?其基本思想是什么?
  • 什么是网络协议,用处,其三个基本要素是什么?
  • 三种最常见的网络协议模型及其分层
  • 每层的具体功能以及主要内容。
  • 网络的构成要素(各层交换机、网关等)
  • 网络安全构成要素:防火墙、IDS、反病毒/个人防火墙功能
  • 物理层主要功能。编码技术、奈茥斯特定律、香农公式
  • 数据链路层实现功能。差错控制(奇偶校验、海明码、CRC)、滑动窗口、Ethernet II帧、MTU
  • 带宽(传输速率)、吞吐量(与带宽、主机CPU处理能力、网络拥堵程度等有关)

TCP/IP

  • TCP/IP的概念以及特点(开放性、实用性)
  • TCP/IP分层模型与通信实例:甲主机发给乙主机邮件“早上好”
  • IP协议三大作用模块:IP寻址、路由控制以及IP分包和组包
  • 路由算法:最短路径算法、扩散法、距离向量算法等
  • IP地址分类、掩码以及广播地址
  • IPv4首部:版本、首部长度、总长度、标识、标志、片偏移、生存时间、协议、首部校验和、源地址、目的地址等
  • DNS、ARP、ICMP、DHCP、IP隧道功能作用
  • TCP和UDP的区别和用途
  • TCP首部:源端口、目的端口、序列号、应答、数据偏移、控制位、窗口大小、校验和等
  • TCP(seq ack len)三次握手(SYN SYNACK ACK)、信息发送(ack=seq+len)、四次挥手(fin ack fin ack)
  • TCP建立连接过程、重发控制、滑动窗口协议、流量控制、慢启动、MSS
  • web的三个重要概念
  • 什么是域名、URL、网站名、服务器

HTTP协议

  • RFC2616 RFC7540
  • 有哪几种和哪几类HTTP状态信息(5类)
  • HTTP头部(通用、请求、响应、实体、其他)
  • HTTP1.0 1.1特点(无状态、请求-响应、明文传输、无法复用、队头阻塞)及相关协议下常用的优化手段(合并文件减少请求)
  • HTTP2.0特点(首部压缩、多路复用、优先级请求、服务器推送)
  • 继续100continue 101 switching protocol
  • 成功200 204no content
  • 重定向301move permanently 302move temporarily 304not modified
  • 请求错误400bad request 403forbidden 404 410
  • 服务器端错误500internal server error 503service unavailable
  • get post区别(请求主体、目的、安全性、大小限制、数据类型限制、缓存、刷新)

HTML5

  • 文档类型、模式(混杂、标准、准标准)及其设置
  • HTML中使用JavaScript的方法及有关属性(async、defer、src、type)
  • 入门 HTML5 API文档 MDN例子
  • 都有哪些标签(基本html head body h1 p br、格式b i strong、布局div、链接a href link、表单:form input(text radio checkbox) button textarea select option、表格tabel tr th td、列表ol ul li、音视频audio video source、图像img canvas等)(行内a img b td span input/行外h1 form p ul、display)
  • 新标签audio video output keygen datalist(视频、音频、画布、SVG、表单输入类型、表单元素/属性)
  • 新功能特性及实现(地理定位、localStorage、应用缓存、拖放、Web Workers Worker、服务器发送事件EventSorce)
  • 哪些属性及使用(display、事件)

CSS3

  • 入门 MDN CSS CSS官方文档
  • 盒子模型(IE6及以前的版本宽度算border、以后的IE有标准兼容模式)
  • position分为四种(static、relative、absolute、fixed left)。浮动(float:left)。
  • CSS选择器四类以及优先级(id100 class10 标签1)
  • CSS样式(text font background)(-align -left -color -size)
  • CSS新特性:边框(、阴影)、文本效果(text-shadow、text-overflow)、字体、2d3d旋转、动画(@keyframes form{} to{})、多列、过渡(transition)、用户界面
  • hack:属性hack、选择符hack、IE条件注释hack

JavaScript基础(ECMAScript)

  • JavaScript解析顺序(预编译、执行),所有的var定义变量在预编译阶段的值为undefined,而function定义在预编译阶段则为实际值。var定义的函数在定义前调用会返回语法错误。
  • 变量的类型(基本类型、引用类型)区别。数值转换(Number/parseInt/parseFloat方法、toString/String方法)。初始化及类型检测(typeof、isPrototypeOf、instanceof)
  • 变量复制、参数传递。执行环境、作用域链、变量对象;没有块级作用域
  • 垃圾收集—标记清除(进入/离开环境)、手动内存管理接触变量的引用null;
  • 引用类型实例化、方法;
  1. Object(字面量、属性/方法、通过.或者[“”]访问)
  2. Array:初始化(new 和[])、检测(instanceof Array、Array.isArray())、转换(valueOf()/toString()/join(“”))、队栈(push/pop/shift/unshift)、排序(reverse()/sort()比较字符串/sort(compare))
  3. Function:this(函数据以执行的环境对象)和arguments(有callee属性)、apply和call(设置this、扩充作用域)
  4. RegExp:元字符:[] ^ $ ?=n n{x,} 标志:g、i、m string对象的方法:match、replace等
  5. Date、Function、基本包装类型。以上为本地对象,即可使用new实例化
  6. 单体内置对象Global、Math等不可实例化。宿主为浏览器自带的document、window等
  • 创建对象模式:工厂模式、构造函数模式、原型模式、组合使用构造函数和原型模式,实现方法及其优缺点。用字面量赋值原型对象时,还需要指明constructor对象。包含引用类型的属性值统一。
  • 继承:原型链(构造函数、原型对象、实例指针)、借用构造函数(call/apply)、组合继承
  • 函数表达式:递归(混合模式下可使用arguments.callee(),var fac=(function f(num){reutrn num*f(num-1)}))、闭包(有权访问另一个函数作用域中的变量的函数)实现与避免、模仿块级作用域(function(){//块级作用域})()

BOM与DOM

  • 主流浏览器内核:IE(Trident)、火狐(Gecko)、safari(Webkit)、chrome(Blink)
  • 核心对象window,新建window.open(),window.location,navigator,navigator.plugins(插件)
  • 客户端检测:能力检测、怪癖检测、用户代理检测(navigator.userAgent)
  • 节点获取someNode.childNodes[0] nextSibling previousSibling firstChild lastChild parentChild 节点操作someNode.appendChild(new) insertBefore(new,null) replaceChild(new,old) removeChild(old)
  • 元素特性:div.getAttribute(“id”) div.setAttribute(“id”,”my”) div.removeAttribute(“id”) div.attributes[“id”]

前端综合

  • 性能优化:页面级优化(减少HTTP请求[jscss合、css sprite]、预加载、改变加载顺序、)、代码级优化(JS优化、CSS选择符、HTML、Image等),还有CDN、无cookie服务器、多域名等
  • 事件流(冒泡、捕获、DOM2事件流)、事件处理程序(HTML onclick、DOM0 btn.onclick、DOM2 btn.addEventListenter(“click”,,false)、IE btn.attachEvent(“onclick”,),跨浏览器)、获取事件(DOM event输入参数、IE window.event)、事件对象(DOM this currentTarget Target、IE srcElement)、取消冒泡(DOM stopPropagation()、IE cancelBubble)、取消事件默认事件(DOM preventDefault()、ID returnValue)、事件类型(点击/焦点/文本事件等)、事件委托
  • 实现动画(HTML5 canvas,css3 @keyframes,js 切换数据源、属性等)
  • 跨域、同源策略、JSONP、CORS、document.domain
  • cookie/localstorage/sessionstorage(同源、目的、大小、数据有效期、网络负担、安全性、作用域)

AJAX(Asynchronous Javascript And XML)

  • AJAX的实现机制(Ajax引擎、动态脚本)
  • AJAX实现方法(new open send onreadystatechange、status、responseText)
  • Ext的ajax实现方法