今天终于把《编程方法》的课程视频看完了,从下载课程到现在,断断续续学习了将近一个月,每一节课都有仔细的看完,用一个字总结的话就是 好!
这门课的课程代号是CS106A,是一门计算机的编程基础课,讲课所用到的语言是java,但课程不局限于一门语言,还讲述了很多计算机底层的知识(比如内存堆栈的管理),还有一些软件工程的思想,最后还带了一下一些搜索和排序,老师非常棒,老师的语速会很快,适应一下就好了,老师很风趣幽默,基本每节课都会有笑点,口头禅是"Yeah,That's the life in the city."然后很注重代码,总之就事非常好的一门课!非常适合只有一点编程基础想要有些提高的同学,完全没有接触过编程的同学如果有兴趣也退建尝试。
课程用到的书籍在网上有下,视频直接去网易公开课的网站下就OK,不过课后作业我没有找到,做一下的话应该挺不错的。
这门课是一些计算机课程的基础课,比如CS106B,还有《iOS开发》,对我这样的菜鸟还是挺必要的。
下面是自己记下的一点东西:
Write programs for people to read,not just only for computers to read.

————The first major software engineering principle.


Think about the generality of the program.Generalize your program in a way so that it's using in same sense,general principles that will apply to any world that meets your specifications.


Each method solving one problem.


Most of your methods will proably be some where between one and fifteen lines long.


The names should describe what the method is actually doing,what problem it's solving.


The important thing to think about in terms of a name is make your name descriptive.


The general rule got to remenber is give variables an intial value when it makes sense.


Most numbers that appear in a program actually have some meaning and you want to have them assigned to constant.


It's generally a bad time to have multiple of breaks inside the loop,because it makes it difficult for programmer to figure out.


stack and heap
local variable/paramater->stack(int,char,double)
static variable->static
danamic variable->heap(new object)

debugging Principal
1.Be systematic.
2.Qustion your assumption.
3.Be criticle of your code.

4.Don't panicl and eventually you get there.


发现老外做事情的一个特点,那就是一定要有趣!有趣才能真正让自己主动去学习,有趣才会有动力,相比于国内....其实中国的学生完全不比外国的学生差,课程里面有一节是学生的项目展示,我觉得当时我和班上另一个同学在《计算结构力学》这门课上编写的程序绝对要好过他们评价最高的那个程序,只不过我们缺少的是一个更好的环境。
接下来就是在8月份把cs106B搞定!
2012-7-24