序言:成功永远属于勤劳的人

努力不一定成功

但是想成功必须努力

要耐得住寂寞,忍得了孤独。成果都是慢慢熬出来的。

古人云:立德立功立言即三不朽,写作的想法又萦绕心头。

----------------------------------------------------------------------------------------------

目前在教的课程《数据结构与算法》

计划开设的课程《区块链技术》

两门课程都找不到满意的教材,于是乎打算自己原创。

实在是看不惯那些拼拼凑凑的教科书,原创性创新性都不足,

也很难吸引读者。写书的目的和动机纯粹是为了更好地教学,

这样的作者已经不多了,估计大部分写书都是为了评职称。

1.数据结构

《数据结构》课讲了十多年,教学参考书换了4版,课程内容和

参考书一直在与时俱进地更新。数据结构教材已经非常多了,可以说是琳琅满目。

如何写一本能够吸引读者的参考书,我一直在思考这个问题。

目前数据结构计划做的事情是写书和录视频。

有关教材的创作,我认为应该从以下几个方面考虑有所创新:

第一:去除语言特性。现在的数据结构书,要么是C语言版的,或者

C++语言描述,或者Java,Python版的数据结构参考教材。一本教材无法

适用所有同学。在一个班级里,不同的同学可能存在不同的语言偏好。有

的同学不喜欢甚至不会C/C++,他只会Java或者Python,这种情况下,选哪本

书都不能照顾所有同学。所以计划新书去除语言特性。一个算法提供多种语言

的参考代码。

第二:讲知识也要讲方法。 现在的教材,只讲知识,并不讲学习方法和学习路径。

由于课程本身具有一定的难度,很多同学没有找到好的学习方法,很难入门。

学习应该包含 预习->学习->复习 这三个阶段。

我认为需要把一些切实可行的学习方法也写在教材里面,供同学们参考。

第三:强调实用和实战。由于数据结构是计算机专业的核心必修课,考研和求职

面试都会用到数据结构知识,所以教材应该直面考研与面试,增加考研与面试题的

讲解。并为后续算法设计课程打下坚实的基础。

第四:介绍最新进展。数据结构课程从1968年诞生到现在已经超过半个世纪的历史了。它不是一门新的学科,和大数据,人工智能AI,区块链等最新技术相比,它不是那么耀眼和光芒四射。但是它依然是非常重要的基础课程,必修课程。可以说,不学数据结构无法成为优秀的软件工程师。数据结构教科书目前的问题在于知识框架基本固定,没什么突破和创新。这个现状跟学科有很大关系,本身数据结构作为一个学科可以说已经非常成熟,成熟代表稳定,也就是少有变化。但是我依然决定去查阅大量的论文和参考书,把最新的研究进展写进去,否则,同学们用到的书和十几年前,甚至二十年前没有太多变化,这是不合理的,学科还在发展,虽然是缓慢不明显,但教材要体现。

现在看到的参考文献中,给得最多的建议是:案例式教学。

非常有必要列举一些具体案例,同时加入考研与面试题。

微课视频:

为了帮助同学们更好第学习《数据结构》

在写书的同时,我同步在做的第2件事情是录制《数据结构微课版视频教程》,

fdteachers的个人空间_哔哩哔哩_Bilibili

帮助同学们在开学之前进行预习。

教程会快速带大家浏览一遍数据结构这门课程的主要内容

更深入详细的讲解还是要看开学以后完整版的教学视频课。

2.《区块链技术》

区块链是备受瞩目的IT前沿新技术。不但企业界广泛关注,各大高校也纷纷成立科研团队和区块链研究机构。有很多高校已经开设了区块链专业。但是没有找到我非常满意的教科书。能作为高校区块链教材的书非常少。有很多都是泛泛而谈地讲区块链能做什么,有哪些应用场景,有点类似科普书。这一类书是不能作为教科书的。而一些封面写着区块链开发实战之类的书,由于区块链本身发展非常快,很多也难让教师和同学上手操作。所以思来想去,还是亲自动手写吧。我的设想是,这本书的学习曲线不能太陡,应该能让师生上手。其次,既要有理论又要有上机实践。不能太厚也不能太薄,有些区块链的书籍内容只有四到五章,这显然是不适合做教材的。纯理论的不行,一定要加上实践部分。初步设想是有十到十二章的篇幅,如下所示:

第1章:区块链简介(概述)

第2章:密码学基础(区块链的基石是密码学。这部分内容作为选学,有密码学基础的读者直接跳

到第3章)

第3章:区块链的起源:比特币原理与实现,区块链来源于比特币,所以也是必讲的内容。

第4章:共识机制介绍:各种共识机制的原理,必须理解什么是共识,否则无法学习区块链。

第5章:以太坊简介(区块链2.0)

第6章:Solidity语言介绍

第7章:  智能合约

第8章:Dapp开发框架

第9章:  超级账本Hyperledger

第10章:区块链研究综述(零知识证明,侧链,闪电网络,跨链等)

第11章:  元宇宙与区块链的未来展望

附录:习题参考答案与考试样卷

[数据结构]《数据结构教程》多语言微课版创作计划相关推荐

  1. 【数据库原理及应用教程(第4版|微课版)陈志泊】【第三章习题】

    文章目录 一.选择题 二.填空题 三.设计题 四.简答题 Reference 一.选择题 1 2 3 4 5 6 7 8 9 10 B A C B C C B D A D 11 12 13 14 15 ...

  2. 计算机网络教程第五版|微课版 - 缩写词+全称+中文

    缩写词+全称+中文 A ACK(ACKnowledgement)确认 ACL(Access Control List)访问控制列表 ADSL(Asymmetric Digital Subscriber ...

  3. 计算机网络教程第五版|微课版 - 第五章 运输层 - 习题【补充】

    第五章.运输层[补充] 本章的习题 在 "滑动窗口" 概念中,"发送窗口" 和 "接受窗口" 的作用是什么?如果接受方的接受能力不断地发生变 ...

  4. 计算机网络教程第五版|微课版 - 第四章 网络层 - 习题【补充】

    第四章.网络层[补充] 本章的习题 请简述网络层的转发和选路两个重要功能的区别和联系 转发:分组在单一的路由器的一条输入链路中,由路由器将该分组移动到合适的输出链路 路由选择:一个网络中,分组从发送方 ...

  5. 计算机网络教程第五版|微课版 - 第七章 网络安全 - 重要概念【补充】

    第七章.网络安全[补充] 本章的重要概念 计算机网络中需要提供的基本安全服务有机密性.报文完整性.不可否认性.实体鉴别.访问控制和可用性等. 密码学是计算机网络安全的基础,是实现机密性.报文完整性.实 ...

  6. Python程序设计与算法基础教程(第二版)微课版第四章上机实践答案

    Python程序设计与算法基础教程(第二版)微课版第四章上机实践答案 2. def generate(L) : #生成杨辉三角的 一行List = [1]for x in range(1,len(L) ...

  7. 《计算机网络教程》(微课版 第五版)第四章 网络层与网络互连

    <计算机网络教程>(微课版 第五版)第四章 网络层与网络互连 课后习题及答案 1.网络层向上提供的服务有哪两种?试比较其优缺点. 解答:面向连接的虚电路服务和无连接的数据报服务. 2.请简 ...

  8. html网页特效微课,网页设计与制作(HTML5+CSS3+JavaScript)(第4版)(微课版)

    网页设计与制作(HTML5+CSS3+JavaScript)(第4版)(微课版) 编辑 锁定 讨论 上传视频 <网页设计与制作(HTML5+CSS3+JavaScript)(第4版)(微课版)& ...

  9. 《Python网络程序设计(微课版)》前2章110页免费阅读

    开学第一课:一定不要这样问老师Python问题 中国大学MOOC"Python程序设计基础"第6次开课时间 董付国老师Python系列教材推荐与选用参考 ============= ...

  10. 董老师又双叒叕送书啦,8本《Python网络程序设计(微课版)》

    推荐教材: <Python网络程序设计(微课版)>,ISBN:978-7-3025-8312-7,董付国,清华大学出版社,2021年8月出版 配套资源: 教学大纲.PPT.91个例题源码. ...

最新文章

  1. 【2012.4.22】北京植物园卧佛寺
  2. 怎样导入python colorama模块_使用git子模块导入python项目
  3. nodejs mysql 创建连接池
  4. 当SAP云平台account的service Marke place里找不到Machine Learning服务该怎么办
  5. 【 .NET Core 3.0 】框架之十 || AOP 切面思想
  6. C#开发笔记之09-如何用C#判断社会信用代码是否合法?
  7. java xml 解析 列表_用Java解析高级XML
  8. 求一批整数中出现最多的个位数字
  9. 将图像转为特征值_用K均值进行图像分割
  10. MVC3 Razor语法
  11. 常见6种视频文件格式的优缺点归纳
  12. 手机搭载ToDesk远程控制技术 功能强大到你无法想象
  13. 群晖Docker的高级操作
  14. 申请注册GMAIL的免费企业邮箱
  15. 吐温20龙沙化工Glycosperse_L-20KFG聚氧乙烯20山梨醇酐单月桂酸酯
  16. 使用fiddler自动化抓取微信公众号文章的点赞与阅读数
  17. ArduPilot之开源代码基础知识Threading概念
  18. [转载]大型Web2.0站点构建技术初探
  19. 源码软件版本Release RC Beta说明
  20. gbase 8d客户端配置文件

热门文章

  1. c52语言网红楼梯流水灯程序,单片机程序-利用C52库函数实现左右流水灯
  2. SPSS之多因素方差分析
  3. (附源码)Springboot通用办事流程管理软件 毕业设计 211819
  4. 【NOIP2012-Day2-T2-换教室】
  5. Windows安装numpy详细教程
  6. 小米Pro搞Android开发,小米9 Pro真实体验到底如何?半个月上手告诉你!
  7. 3ds max批量修改贴图名称脚本(最新版本)
  8. [Excel]Excel函数和用法(10)——数组公式的使用方法与隔列求和
  9. matlab多元函数求导数,MATLAB多元函数导数 - 范文中心
  10. 微信小程序人脸识别方案