CS106A 编程方法学(二)

最近看了几集斯坦福大学的《编程方法学》公开课,感谢斯坦福,感谢网易,感谢人人字幕组

个人感觉这个课程比较适合编程入门,但是我看了之后也觉得挺有收获。

第二课

在上一课的最后和这一节课之中,见到了 Karel 机器人,这个应该是斯坦福为了编程教学专门开发的一个 Java

教学程序,非常适合用来入门教学。

我没有找到 Karel 机器人单独下载的页面,但是在课程主页上,有包括 Karel 机器人在内的 Stanford Eclipse 下载,还有使用说明

如果使用 Google 搜索的话可以发现更多的关于 Karel 机器人的内容,不过大部分是英文的,主要适用于 Java 的教学。如果早发现这个的话,也许我会喜欢上 Java。

我还发现了 .Net 平台下的 Karel Robot

不知道还有多少人听说过 Visual J#,比较神奇的是在 Visual J#(Visual Studio 2005) 中有一个 Jblmp.exe 命令,可以将 Java 的 .jar 文件,编译成 .Net 平台下的 DLL 文件。后来可能因为授权的问题,没有再出后续的版本(Visual J# 则销声匿迹了)。

在课程中,Mehran Sahami(课程讲师)提了一个问题:

What is the downfall of the modern college student?

揣度良久,后来给出的答案是:SNOOZE!

如果一定要翻译成中文的话,我觉得应该是“拖延症”。早上起床的闹钟,交作业前夜的通宵,考期之前的刻苦……

“算法 Algorithm——其实就是菜谱 recipe”,已经不是一位老师这么说了。不过我做饭的时候,基本上不看菜谱啊,就好像写程序的时候不顾及算法一样。

The program is something that is valid syntactically according to the rules of the language.

其实我觉得语言之间本质上的差别不大,只要了解语法规则的差异,很快就能从一种语言转换到另一种语言。编程本身也没有什么太神奇的地方。

Write programs for people to read, not just for computers to read.

The important thing to realize in programming is programing is not just about writing a program that the computer understands. Programming is about writing programs that people understand.

程序是写给别人看的,这个我倒是明白,不过也是最近几年才明白过来的。

posted on 2012-03-11 15:59  zhaorui  阅读(1005)  评论(0编辑  收藏  举报

导航