版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
《TypeScript入门与全栈式网站开发实战》教学大纲课程基本信息课程代码课程名称TypeScript入门与全栈式网站开发实战开课学院信息科学与技术适用专业软件工程、计算机科学与技术等学分4总学时64理论学时32实践学时32课程性质必修专业课程类别专业课考核方式课程设计先修课程无选用教材《TypeScript入门与全栈式网站开发实战》清华大学出版社,2024制定人审核人批准人制定时间审核时间批准时间课程简介TypeScript是由微软开发的、基于JavaScript的开源编程语言。目前,TypeScript已在前端领域占据重要地位,得到了广泛运用和开发市场的普遍认可。TypeScrip可应用予前端开发,甚至实现后端开发。本课程分三个部分12章来学习TypeScript语言。第一部分为基础篇,包含TypeScript开发入门、基础语法、面向对象、包装类和集合类型;第二部分为进阶篇,包含TypeScript语法进阶、名称空间和模块、类型声明文件;第三部分为实战案例篇,为巩固知识和提升TypeScript开发实践技能,准备了4个案例项目:使用Puppeteer框架爬取图书信息、将图书信息保存至MongoDB、实现后端RESTfulAPI服务、实现前端Vue应用。课程目标课程思政目标:树立正确的人生观、价值观、事业观、技术观,形成良好的开发习惯,培养团队开发和协同工作的意识,提高沟通能力和自我表达能力。具有软件工程师的基本素质,良好的编码能力、自觉的规范意识和团队精神、正确的价值取向、科技报国的社会责任感、探索未知终身学习的意识、精益求精的工匠精神。知识与能力目标:本课程使学生能够在零基础基础上,了解编程及项目开发的基本概念,掌握TypeScript语法、Puppeteer框架、Mongoose模块、Express.js、Vue3等相关技术,能应用相关技术从事简单应用的开发,为将来企业级全栈开发应用的实现奠定坚实的基础。要求学生在案例学习的基础上,分小组完成大作页项目的开发。在此过程中可锻炼学生的项目开发能力,体验软件的实施、协作过程。对领悟设计思想、强化训练技巧的能力也将大幅提升。四、课程内容与教学要求第一章开发入门(一)课程内容JavaScript语言的优缺点、JavaScript与TypeScript的关系、TypeScript语言的优点、搭建TypeScript开发环境。(二)教学要求了解:JavaScript语言的优缺点、TypeScript语言的优点理解:JavaScript与TypeScript的关系掌握:搭建TypeScript开发环境重点:整体TypeScript开发环境的搭建第二章基础语法(一)课程内容注释、标识符、关键字、基础类型、变量、常量、操作符、分支语句、循环语句和循环函数、跳转、函数。(二)教学要求掌握:基础类型、变量、操作符、分支语句、循环语句、循环函数、跳转、函数重点:分支语句、循环语句、函数难点:基础类型繁杂、循环函数、递归函数、箭头函数、回调函数第三章面向对象(一)课程内容类和对象的基本概念、类结构、属性、成员函数、访问器、构造函数、创建对象、继承语法、单继承、函数覆盖与多态、this与super、抽象类、定义接口、接口实现类等一系列知识和概念。(二)教学要求理解:类、对象的基本概念,继承、覆盖、多态的概念和使用场合,抽象类和接口概念和作用掌握:类的设计,对象的创建,继承、覆盖、多态相关语法,关键字this和super的使用,接口的定义和使用重点:类的设计、对象的创建和继承难点:多态第四章包装类(一)课程内容Boolean、Number、String、正则表达式。(二)教学要求理解:Boolean、Number、String包装类型的使用场合,正则表达式作用掌握:Boolean、Number、String包装类型的使用,正则表达式的常见应用重点:String包装类型的使用难点:正则表达式第五章集合类型(一)课程内容数组、元组、Set、Map类型,集合类型间的转换。(二)教学要求理解:数组、元组、Set、Map类型的使用的使用场合,数组、元组、Set、Map类型间可进行转换掌握:组、元组、Set、Map类型的使用,数组、元组、Set、Map类型间的转换难点:数组、元组、Set、Map类型的使用有些繁杂重点:数组、元组、Map类型的使用第六章语法进阶(一)课程内容解构与展开、访问修饰符和只读修饰符、修饰器及修饰工厂,接口兼容性、类兼容性、函数兼容性,联合、交叉、别名、推断、断言、泛型,泛型类、泛型约束、索引签名约束,错误处理,异步处理。(二)教学要求理解:解构与展开的使用场合,访问修饰符和只读修饰符的作用,各类修饰器及修饰工厂,类型不一致时,需要进行兼容性处理,类型操作的作用,约束的作用和使用场景,错误的概念,异步处理的概念,以及2种异步处理编程写法的特点掌握:解构与展开的使用代码,访问修饰符和只读修饰符的使用代码,兼容性代码,类型操作相关代码,约束代码,处理错误的trycatchfinally语法,异步处理的Promise写法和async+await写法难点:修饰器的定义和使用,理解和使用兼容性,泛型定义和使用,异步处理概念和应用重点:解构与展开,接口兼容性、类兼容性、联合、交叉、别名、推断的使用,处理错误的trycatchfinally语法、异步处理的Promise写法和async+await写法第七章名称空间和模块(一)课程内容定义名称空间和导出资源、名称空间嵌套、跨文件访问名称空间内资源、普通脚本资源全局可见、模块导出默认资源、模块导出多个资源、同时导出默认资源和普通资源、导入变量的只读特征、导出导入的其他语法、CommonJS规则下模块的导出导入(二)教学要求理解:名称空间和资源的导入和导出在项目中的作用掌握:定义名称空间,导出导出资源,跨文件访问资源,CommonJS规则下模块的导出导入难点:同时导出默认资源和普通资源重点:定义名称空间和导出导入资源第八章类型声明文件(一)课程内容获取内置API的类型声明文件、获取常用第三方JS库的类型声明文件、对JavaScript文件的直接支持、为.js文件编写类型声明文件(二)教学要求理解:声明文件的作用掌握:获取内置API的类型声明文件,获取常用第三方JS库的类型声明文件的写法,对JavaScript文件的直接支持写法,为.js文件能编写自定义的类型声明文件难点:为.js文件能编写自定义的类型声明文件重点:为.js文件能编写自定义的类型声明文件第九章使用Puppeteer框架爬取书籍信息(一)课程内容演示:用TypeScript语言调用Puppeteer框架API,对清华大学出版社网站“新书推荐”书籍信息进行爬取。然后调用Node.js内置模块fs,保存信息到Json文件中。(二)教学要求理解:Puppeteer框架的作用和优点,使用Puppeteer框架爬取书籍信息的流程掌握:搭建Puppeteer框架爬取数据的开发环境,使用Puppeteer框架爬取书籍信息,并保存为JSON格式数据的核心代码难点:Puppeteer框架爬取书籍信息实现代码重点:编写Puppeteer框架爬取书籍信息实现代码并测试第十章书籍信息保存至MongoDB中(一)课程内容将爬取的Json格式信息,使用Mongoose框架API存放到MongoDB数据库中。(二)教学要求理解:了解MongoDB数据库相关概念,操作MongoDB的框架Mongoose作用掌握:搭建将书籍信息保存至MongoDB中的开发环境,使用Mongoose模块,将Books.json文件中的书籍信息保存到MongoDB数据库的核心代码难点:利用MongooseAPI,将Books.json数据填入MongoDB数据库重点:利用MongooseAPI,将Books.json数据填入MongoDB数据库第十一章实现RESTfulAPI服务(一)课程内容用Express.js应用框架构建RESTfulAPI服务,提供对MongoDB数据库中存放的书籍信息进行功能操作:获取列表信息、获取详细信息、修改书籍信息、更换书籍封面图片、删除书籍等。(二)教学要求理解:RESTfulAPI是一种软件架构风格-将行为和资源分离,Express.js是一个轻量级的Web应用框架掌握:搭建实现RESTfulAPI服务的开发环境,能基于Express.js搭建RESTfulAPI应用的整体构架难点:实现RESTfulAPI服务复杂度较大:涉及中间件、路由、实现控制器等部分重点:基于Express.js搭建RESTfulAPI应用的整体构架,利用MongooseAPI实现控制器核心代码第十二章实现前端Vue应用(一)课程内容设计Web前端Vue3应用,调用RESTfulAPI来实现对书籍信息的管理。(二)教学要求理解:Vue3项目特点,前端Vue3应用实现的整体思路掌握:使用Vite构建Vue3项目整体构架,安装vue-router模块、配置路由,定义实体类、设计服务类、设计Vue组件,编写与API交互代码难点:Vue项目复杂度较大:涉及面较多,不易实现重点:创建Vue项目整体框架,并在框架基础上设计逻辑代码,实现与后端API的交互五、本课程开设的实践(训)针对TypeScript语法,1~8章后设有相应的“实战闯关”练习环节:实战闯关1:环境搭建、初试开发实战闯关2:基础语法实战闯关3:面向对象实战闯关4:包装对象、正则表达式实战闯关5:集合实战闯关6:语法进阶实战闯关7:名称空间和模块实战闯关8:类型声明文件巩固TypeScript语法,在9~12章安排了项目实践:项目实践1:使用Puppeteer框架爬取书籍信息 项目实践2:将书籍信息保存至MongoDB中MongoDB项目实践3:实现RESTfulAPI服务项目实践4:实现前端Vue应用六、课程考核(一)考核要求本课程成绩评定采用项目答辩的形式展示大作业作品,要求提交项目文档,项目报告,进行项目的演示。成绩构成:平时成绩40%(4次作业),期末成绩60%(二)成绩评定序号考核形式考核方法考核权重备注1平时成绩4次作业40%2期末成绩项目(大作业)答辩60%总评成绩100%说明:学生不提交或被认定为抄袭者,以0分计算。七、参考书目及学习资料教材名称:《TypeScript入门与全栈式网站开发实战》清华大学出版社,2024参考资料(资源):
[1]汪明.TypeScript实战[M].北京:清华大学出版社,2020.
[2]柳伟卫.Node.js+Express+MongoDB+Vue.js全栈开发[M].北京:清华大学出版社,2013.
[3]郑均辉,薛燚.JavaScript+Vue+React全程实例[M].北京:清华大学出版社,2019.
[4]吕鸣.Vue.js3应用开发与核心源码解析[M].北京:清华大学出版社,2022.
[5]ALEXISG.精通MongoDB3.x[M].陈凯,译.北京:清华大学出版社,2019.
[6]EDWARDSG,SABHARWALN.MongoDB实战:架构、开发与管理[M].蒲成,译.北京:清华大学出版社,2017.
[7]ISAACKSJD.ES2015/2016编程实战[M].林赐,译.北京:清华大学出版社,2019[8]TypeScript官网[9]Node.js官网[10]VsCode官网[11]D3.js官网[12]MongoDB官网注:(1)DefinitelyTyped公共库的类型声明文件查询页/DefinitelyTyped/DefinitelyTyped/find/master(2)清华大学出版社网站“新书推荐”首页/booksCenter/new_book_recommend.html执笔教师:专业主任:教学院长:《TypeScript入门与全栈式网站开发实战》教学进度表—学年第学期授课专业:授课班级课程名称:TypeScript入门与全栈式网站开发实战任课教师:学期总学时教学周数周学时课程属性课程类型考核方式考核形式试卷形式课程标准公共课专业基础课专业课ABC考试考查形成性非形
成性闭卷开卷有无64164√√√√大作业√选用教材
《TypeScript入门与全栈式网站开发实战》清华大学出版社,2024年3月是否规划教材是否√需实验器材及设备硬件:PC机、投影机、麦克风、电脑课桌椅;
软件:Windows10操作系统、VSCode、node16、mongodb、Chrome、录屏软件、Office环境等(连接外网)周次日
期课内(计划内)学时分配课外学时安排主要内容讲授校内
实训校外
实践讨论小计主要内容地点学时11.1JavaScript与TypeScript
1.2搭建TypeScript开发环境
编程基础:
2.1.1注释、2.1.2标识符、2.1.3关键字、
2.1.4基础类型之:any、number、bigint、string、boolean22422.1.4基础类型之:数组类型、元组类型
2.1.4基础类型之:枚举、对象、null、undefined、void
2.1.4基础类型之:never、symbol
2.1.5变量、2.1.6常量
2.1.7操作符之:算术、关系、逻辑22432.1.7操作符之:位运算
2.1.7操作符之:赋值、条件、空值合并
2.1.7操作符之:类型操作、优先级和结合性
2.2.1流程控制之:分支
2.2.2循环语句之:while、dowhile、for、forin、forof22442.2.2循环函数之:foreach、every、some
2.2.3跳转:break、continue
2.3.1函数定义
2.3.2可选参数、默认参数和剩余参数
2.3.3重载函数、2.3.4递归函数、2.3.5匿名函数、2.3.6箭头函数、2.3.7回调函数22453.1.1类结构
3.1.2属性、3.1.3函数、3.1.4访问器、3.1.5构造函数
3.2.1对象概述
3.2.2创建对象、3.3.1继承语法、3.3.2单继承
3.3.3函数覆盖与多态、3.3.4this与super
3.4抽象类
3.5.1定义接口
3.5.2接口实现类、3.5.3接口多继承22464.1Boolean类、4.2Number类
4.3.1String常见属性、4.3.2String常见函数
4.3.3正则表达式之:
1.正则表达式的2种写法、2.正则表达式修饰符:i、g、m、3.正则表达式模式22475.1.1创建数组对象、5.1.2Array类常用函数和属性
5.2.1定义元组和赋值、5.2.2元组常用操作
5.3.1创建Set对象、5.3.2Set类常用操作
5.4.1创建Map对象、5.4.2Map类常用函数和属性、5.5不同集合类型间的转换22486.1.1数组的解构与展开、6.1.2对象的解构与展开
6.2.1访问修饰符、6.2.2只读修饰符
6.3.1类装饰器、6.3.2其他装饰器、6.3.3装饰器工厂、6.3.4装饰器执行顺序22496.4.1接口兼容性、6.4.2类兼容性、6.4.3函数兼容性
6.5.1联合类型、6.5.2交叉类型、6.5.3类型别名、6.5.4类型推断、6.5.5类型断言
6.5.6泛型之:1.泛型函数、2.泛型接口224106.5.6泛型之:3.泛型类、4.泛型约束、5.索引签名约束
6.6错误处理
6.7.1传统回调函数实现异步处理、6.7.2Prom
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 铁路货运服务合同
- 短期版空地租赁合同范本
- 墙绘服务合同示范模板
- 青少年责任保证
- 石子购销合同协议
- 临时工派遣合同
- 保鲜包装材料购买合同
- 汽车租约合同样本
- 卫星数据处理测绘招标文件
- 房建工程监理招标项目
- 重庆市江北区2023-2024学年六年级下学期期末考试数学试题
- DB32-T 4757-2024 连栋塑料薄膜温室建造技术规范
- 2023年职业病监测评估培训考试卷(A卷)附有答案
- 地漏剖面节点构造讲解
- 古代戏剧与现代话剧的对比
- 2024-2029年中国儿童牙冠行业市场现状分析及竞争格局与投资发展研究报告
- 上海市徐汇、金山、虹口区2024届高三语文一模作文解析
- (高清版)JGT 486-2015 混凝土用复合掺合料
- 2024年北京东城区高三二模英语试题和答案
- 快递主管岗位职责
- 医疗差错、纠纷、事故登记表
评论
0/150
提交评论