`
小明哥
  • 浏览: 89360 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

斯坦福大学开放课程: 《编程方法》课程介绍

阅读更多

斯坦福大学开放课程: 《编程方法》

 

课程介绍:
本课程是最大的编程入门课程,也是斯坦福大学主要课程之一。介绍了当代程序设计基本思想:面向对象,模块化,封装,抽象化与测试。
《编程方法》将良好的编程思想连同广泛应用的Java语言一同讲授。着重教授良好的编程风格和Java语言的特色。这门同样课适合文科,主修社会科学的同学和编程爱好者学习观看。其实每年都有很多非工程系同学选修这门课。


基本要求:本课程不要求具备编程基础,但要求多下功夫!

 

主讲人自述:

Mehran Sahami
我刚加入斯坦福大学计算机系时任副教授,本科教育附主任和教务处主任三职。2001年至2006年,任斯坦福大学计算机系讲师。2002至2007年,任谷歌公司的高级研究员,目前依然是研究团队的顾问。我的研究方向主要有计算机科学教育,机器学习和网络信息挖掘。
在此之前,我是Epiphany公司的高级工程经理。去Epiphany工作前,我在斯坦福大学的计算机系拿到了博士学位。我曾今也是斯坦福大学的本科生,一直深爱着这方土地,至今不愿离去。
工作之余,我喜欢跟家人团聚,喜欢弹吉他,喜欢户外旅行,还喜欢睡觉(虽然最近睡的越来越少)

 

课程简介:

第一课:课程简介
欢迎来到CS106A,授课人员,为什么称之为编程方法?,你真的适合学习这门课程吗?,课程常规,作业与评分,课外拓展,期中期末考试,成绩评定细则,行为准则,为何要从Karel学起?

第二课:欢迎来到Karel的世界
讲义相关,注册讨论小组,Karel基本命令,算法与程序孰轻孰重,Karel程序语法,运行一个Karel程序,创建函数的方法,超级Karel,For循环,While循环,Karel条件语句,If条件语句,综述

第三课:Karel与Java
Karel 与Java,常见的错误,注释,前提条件和后续条件,分解,例程序DoubleBeeper,养成良好编程习惯重要性,正确的分解,例程序CleanUpKarel

第四课:计算科学发展史
计 算机科学与程序设计的千丝万缕,电脑懂什么,编译过程,Java-面向对象的程序设计语言,继承,类,acm.program层次结构,第一个Java程 序,例程序ConsoleProgram,图形化界面,例程序Sending-Messages-to-a-GLabel

第五课:变量
变量的数据类型,调用变量相关语法,类的类型,对象变量,调用类成员函数的方法,图形坐标,对类GObject以及其子类的操作,描画几何对象,例程序FunGraphics,表达式与操作符

第六课:操作符
readInt() 和 readDouble()函数,整形与浮点数的除法运算操作符,操作符优先级,类型转换,常量,布尔数据类型,值的比较,布尔表达式,短路求值,语句块,变量的作用域,if套嵌,switch语句,for循环语句,while循环语句

第七课:循环与“一半”问题
For循环与While循环的对比,例程序CheckerBoad,在Java中创建函数,创建函数举例,FactorialExample程序,用函数返回对象

第八课:信息隐藏
Void函数类型,在函数间传递参数,函数的缺陷,类的使用,整体变量与局部变量,例程序RandomGenerator,例程序RollDice,setseed()函数

第九课:字符串
写一个类,公有和私有的区别,构造函数,this关键词,类的使用,对象的调用需要使用引用方式,将类作为变量,Javadoc技术,例程序Student

第十课:私有变量的重要性
扩展Student类,函数重写,acm.graphics程序包,GCanvas,GObjects中的常用函数,其中的接口与函数,BouncingBall例程序,GLable类中的几何学,GArc类

第十一课:Gimage类
GPolygon类,GCompound类,事件驱动程序,例程序ClickForFace,响应鼠标操作,响应键盘操作,例程序UFO

第十二课:枚举
字符,Unicode标准下的ASCII码,字符的读取,字符中的数学,基本类型char,字符对象,字符串及其操作

第十三课:对字符串的处理
编译器,加密

第十四课:内存
存放不同变量的内存区块,内存分配机制,对指针的看法,指针趣味小视频

第十五课:指针要点回顾
为什么要通过引用方式调用类,将封装类作为基本数据类型,文件,打开、读取、关闭文件的函数,异常状况,文件写操作函数

第十六课:数组
创建数组,++操作符,数组的真实长度与有效长度,将数组作为参数,初始化数组,数组列表

第十七课:多维数组
类模版,ArrayList类中的函数,使用ArrayList类的例程序,Glable数组列表例程序,例程序GrayImage

第十八课:多维数组收尾
数组列表方式,数组列表与数组的优劣分析,调试,程序调试的方法,Eclipse中的调试器

第十九课:接口
如何使用接口,映射,HashMap类,HashMap中的函数,中继器,HashMap例程序

第二十课:图形用户界面
Java程序中的Interactor,Swing Interactor层次结构,窗口区域,创建Interactor,例程序,探索更多Interactor,例程序InteractorDrawFace

第二十一课:Interactor与Listener回顾
例程序,例程序中应用的两种方法——使用getSouce或getActionCommand函数,例程序TextField,布局设计,温度换算例程序,例程序TextAndGraphics

第二十二课:NameSurfer概述
组件与容器,容器的监听器,设计可扩展程序,ComponentListener接口,例程序MusicShop,例程序MusicShopDisplay

第二十三课:搜索,排序与算法效率分析
课程材料介绍——搜索,排序及其算法效率分析,搜索,线性搜索,线性搜索的效率分析,二分法搜索,二分法搜索的效率分析,排序,选择排序算法,选择排序效率分析,基数排序算法

第二十四课:管理大型数据中的良好软件工程原理
设计思想,数据搜集层次结构,数据搜集实用函数,例程序:在线音乐商店FlyTunes,定义歌曲类,定义专辑类,鉴证程序运行,对所需数据结构的思考,数据的重复利用,浅拷贝与深拷贝

第二十五课:设计实用社交网络
思考程序所需功能,分离现象的六种程度,并行性,一个线程,运行接口,创建一个线程,例程序,在线程间共享数据

第二十六课:介绍Java标准库
JAR文件介绍,创建JAR文件,创建applet小程序,脱离ACM运行库创建标准Java程序,其他——深入学习Java

第二十七课:CS106A后续课程介绍
计算机专业简介,其他专业出路

第二十八课:宣布图形比赛结果
期末复习,例题1,例题2,课程总结

分享到:
评论

相关推荐

    《斯坦福大学开放课程:编程方法》讲义

    《斯坦福大学开放课程:编程方法》是一门深入浅出的计算机科学入门课程,旨在教授学生基础的编程技能和概念。这门课程的讲义涵盖了多个关键知识点,适合初学者和有经验的程序员来巩固基础。 首先,"编程方法"...

    斯坦福大学公开课:编程方法学(28集)

    资源名称:斯坦福大学公开课:编程方法学(28集)资源目录:【】1.课程简介【】10.私有变量的重要性【】11.Gimage类【】12.枚举【】13.对字符串的处理【】14.内存【】15.指针要点回顾【】16.数组【】17.多维数组【】...

    《斯坦福大学开放课程:编程方法》讲义集

    《斯坦福大学开放课程:编程方法》是一门深入探讨编程技术与算法的精品课程,旨在帮助学生掌握高效、清晰的编程技巧。这门课程的讲义集包含了丰富的教学材料,覆盖了从基础到高级的编程概念,对于学习者来说极具价值...

    斯坦福大学开放课程:编程方法

    ### 斯坦福大学开放课程:编程方法 #### 一、课程概述 ##### 1.1 课程背景与意义 斯坦福大学作为全球顶尖的高等教育机构之一,在计算机科学领域拥有极高的声誉。为了让更多人能够接触到高质量的教育资源,斯坦福...

    《斯坦福大学开放课程:编程方法》讲义 #5

    《斯坦福大学开放课程:编程方法》讲义 #5如何下载Eclipse开发环境,很好的配套讲义.

    《斯坦福大学开放课程: 编程方法》(Open Stanford Course : Programming Methodology)[01-47]

    《斯坦福大学开放课程: 编程方法》是面向初学者的一门经典计算机科学课程,旨在教授编程的基础概念和最佳实践。这门课程涵盖了广泛的知识点,从基本的编程语法到高级的设计原则,帮助学生建立坚实的编程基础。下面将...

    斯坦福大学开放课程:编程方法+英文

    在斯坦福大学的开放课程中,"编程方法"可能涵盖了从基本编程语法到高级编程技巧的广泛内容,旨在帮助学生建立坚实的编程基础,并提升他们的逻辑思维和问题解决能力。 【编程】是指用特定的编程语言(如Python、Java...

    【YYeTs人人影视】《斯坦福大学开放课程:编程方法》讲义#6-使用Eclipse编写卡雷尔.pdf

    【YYeTs人人影视】《斯坦福大学开放课程:编程方法》讲义#6-使用Eclipse编写卡雷尔.pdf

    斯坦福大学公开课:编程范式视频课程(27集含笔记)

    资源名称:斯坦福大学公开课:编程范式视频课程(27集含笔记)资源目录:【】斯坦福大学公开课编程范式笔记【】编程范式1【】编程范式10【】编程范式11【】编程范式12【】编程范式13【】编程范式14【】编程范式15...

    斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 13)

    ### 斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 13) #### 一、课程背景与概述 斯坦福大学提供的这门开放课程《iOS开发教程》2010年秋季版第13讲,主要讲解了iOS应用开发中的一个关键概念——**Blocks(代码...

    斯坦福大学公开课讲义集

    《斯坦福大学开放课程:编程方法》是一门深入探讨编程技术与实践的公开课,由知名教育家麦兰·萨哈米教授主讲。这门课程不仅涵盖了基础的编程概念,还包括了编程实践中的一些重要原则和技巧,旨在帮助学生建立起扎实...

    斯坦福大学公开课:ios7应用开发第五讲Attributor源码

    总之,"斯坦福大学公开课:ios7应用开发第五讲Attributor源码"是一个深入了解iOS7文本特性和编程实践的好资源。通过这个课程,开发者不仅能学习到最新的iOS开发技术,还能提升解决实际问题的能力,从而在移动应用开发...

    斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 1)

    ### 斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 1)——深入解析 #### 一、课程概览与结构 **标题与描述:**本课程由斯坦福大学提供,旨在教授iOS应用开发的核心技能,特别针对2010年秋季学期。课程覆盖了从...

    斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 11)

    ### 斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 11) #### 课程概述 斯坦福大学的开放课程《iOS开发教程》2010年秋季版第11讲主要围绕iOS应用开发的核心概念和技术进行深入讲解。本课程通过实际示例介绍了...

    斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 2-Assignment_1)

    ### 斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 2-Assignment_1) #### 关键知识点解析 ##### 背景介绍 本篇内容源自斯坦福大学的一门开放课程——iOS应用开发教程。该课程旨在为学生提供iOS应用开发的基础...

    斯坦福公开课:编程方法(全部资料)

    【编程方法】是一门深入探讨计算机编程思想和技术的课程,源自世界知名学府斯坦福大学。这门公开课旨在教授学生如何高效地设计、理解和实现软件系统。通过学习,学生能够掌握编程的基础概念,以及如何利用这些概念...

    斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 4)

    ### 斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 4) 在本节课程中,我们深入探讨了iOS开发中的几个核心概念和技术,特别是针对Foundation框架内的几个关键类进行了详细的讲解。这包括`NSArray`、`...

    斯坦福大学开放课程:iOS开发教程2010年秋(Lecture 5)

    斯坦福大学开放课程《iOS开发教程》2010年秋季第五讲,深入探讨了iOS应用开发中的核心概念和技术要点,特别聚焦于Objective-C中的协议(Protocols)使用,以及如何利用它们定义、实现和使用数据源(Data Sources)与...

    斯坦福大学公开课:iOS 7应用开发 中英文字幕)1 18全

    【标题】"斯坦福大学公开课:iOS 7应用开发 中英文字幕)1 18全"涵盖了iOS应用开发的基础知识,特别强调了是针对iOS 7系统的学习资源,这表明课程内容可能包括该版本引入的新特性、设计原则以及开发工具的使用。...

Global site tag (gtag.js) - Google Analytics