zoukankan      html  css  js  c++  java
  • 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.

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

  • 相关阅读:
    【带着canvas去流浪(14)】Three.js中凹浮雕模型的生成方式
    Stanford公开课《编译原理》学习笔记(1~4课)
    Vue源码中compiler部分逻辑梳理(内有彩蛋)
    Vue+ElementUI项目使用webpack输出MPA
    Vue-Router中History模式
    Vue中拆分视图层代码的5点建议
    如何正确使用Java泛型
    ZooKeeper的三种典型应用场景
    Tomcat多实例部署
    Tomcat常用的过滤器
  • 原文地址:https://www.cnblogs.com/zhaorui/p/2390235.html
Copyright © 2011-2022 走看看