cs-self-learning/docs/编程入门/CS3110.md
2023-08-15 18:45:49 +08:00

34 lines
2.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# CS3110OCaml Programming Correct + Efficient + Beautiful
## 课程简介
- 所属大学Cornell
- 先修要求了解一门命令式编程语言类C语言
- 编程语言OCaml
- 课程难度:🌟🌟🌟
- 预计学时40 小时
### 课程评价: modern SICP
如果说编程入门的最好的课程是SICP。在其之后就是CS3110。
如果你不知道什么叫函数式编程语言,或者只是听过这个名词,那么这门课程,正如它的名字,会让你体会到什么叫正确,高效和美。
CS3110不仅局限于函数式编程更是将理论和实用充分结合。课程内容更进一步涵盖了OCaml语言基础数据结构和算法测试开发形式证明语言特性实现等诸多内容。而且内容之间并不割裂而是递进和互补非常值得学习。
主讲老师Michael Ryan Clarkson浸淫编程多年用词简单表述清晰内容环环相扣和剖析一针见血。课程视频甚至用来练听力听不懂开英文字幕理解起来毫不费力。
### 课程简史,摘自课程教材
CS3110是康奈尔大学打磨20余年的课程。最初发源于MIT6.001 SICP在其基础上增加更严格方法和材料涵盖函数式编程环境模型数据结构算法和语言实现。2008年正式名称改为CS3110改用OCaml语言。2018年秋季开始编写[课程教材](https://cs3110.github.io/textbook)。现任课程的主讲老师于2021年在youtube上公布了[课程视频](https://www.youtube.com/playlist?list=PLre5AT9JnKShBOPeuiD9b-I4XROIJhkIU)。
## 课程资源
- 课程视频油管: <https://www.youtube.com/playlist?list=PLre5AT9JnKShBOPeuiD9b-I4XROIJhkIU>
- 课程视频B站: <https://www.bilibili.com/video/BV1dv4y127Ui/>
- 课程教材:<https://cs3110.github.io/textbook>
- 课程作业课程教材中exercises自选难度1至4星注意3星至4星的难度跨越很大。
## 资源汇总
@featherwit001 在学习这门课中用到的所有资源和作业实现都汇总在 [featherwit001/CS3110_OCaml_Programming - GitHub](https://github.com/featherwit001/CS3110_OCaml_Programming) 中。