- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
复习和课程作.ppt
《程序设计方法学》复习与课程作业 2011/05/10 不同规模的程序设计 小规模编程: 知识:程序设计语言、数据结构、计算机算法 技术:编程、调试 工具:小型编译器 大规模编程: 知识:软件工程 技术:团队管理、计划管理、团队合作 工具:团队级文档管理 中间沟通桥梁 知识:结构化软件设计、面向对象设计、系统分析设计、数据库设计、编程规范 技术:工程组建、模块化设计、面向契约编程、异常处理、设计模式、组件管理(头文件) 工具:版本控制工具、测试工具、文档工具、Daily-Build工具 其他知识:函数库、组件库使用,体系结构,编程环境高级特性使用 第一章 程序设计语言 程序设计语言的分类 程序设计语言的发展史 当前流行语言分析 语言间的对比 第二章 算法与数据结构 算法+数据结构=程序 如何评价算法,程序优化 各种主要的算法思想 不同的数据结构 基本数据结构 为算法而设计的数据结构 容器:同一类型数据的存储方式 数据结构设计 第三章 编写代码之前-1 思想准备 方法论的准备 Don’t Repeat Yourself. (DRY) Kiss It Simple, Stupid. (KISS) 工具的准备 编码规范 语法级编程规范 语义级编程规范 第三章 编写代码之前-2 软件开发过程工具 源代码版本控制系统 Daily-Build及相关工具 Bug管理系统 文档管理系统 程序员交互工具 软件配置管理工具 第三章 编写代码之前-3 重用代码与代码可重用性 重用的原则和方法 可重用代码 不同语言实现可重用性 面向范型的编程 函数模板 类模板 STL 第四章 面向过程的程序设计-1 契约编程 Contract Pre-condition Post-condition Class Invariants 契约编程实践 in C/C++ in Java in other languages 第四章 面向过程的程序设计-2 错误和异常处理 错误的分类和处理内容 从DBC角度看错误和异常的关系 传统的异常处理技术(4种) 结构化异常处理 资源释放问题 两种异常处理机制的讨论 第五章 面向对象的程序设计-1 面向对象方法学 面向对象的发展历史 面向对象方法的四个要点 面向对象的基本概念 面向对象建模 面向对象分析与设计 第五章 面向对象的程序设计-2 设计模式 设计模式的目的和原则 设计模式分类 创建型模式 结构型模式 行为型模式 基于实例的设计模式应用 第六章 大规模C++程序设计-1 软件项目的工程结构 编译依赖 几个技术问题 声明(Declare)与定义(Define) 内部连接和外部连接 头文件的内容 全局名字空间污染 考核方式 出勤情况(10%) 课程作业(40%) 拓展报告(50%) 课程作业,严禁相互抄袭。 课程作业 以下题目选择一道,写出不少于500字的论述或代码实现,严禁抄袭。 讨论契约在软件结果接口中的作用。 如何加强代码可重用性。 说明结构化异常处理方式的优缺点 应用设计模式,设计一个面向对象的游戏系统的主框架。 使用C++,写出两种设计模式的实现代码和应用场景。 拓展报告 针对某种新领域、新技术、新方法进行拓展学习,撰写学习报告。 不能是已经学习过的课程、语言等 建议三个方向,可以任选其一,也可额外拓展 方向一 学习某项语言、技术,撰写学习笔记 字数不少于2000字 说明该语言(技术)特点,与其他关联技术之间的区别与联系 能够以简单程序说明该语言(技术)的使用 语言举例 SmallTalk Effiel,D语言 Perl,Python,Ruby Delphi,Pascal PHP,ASP Javascript Lisp或其后续变种 技术举例 STL库、Boost库 正则表达式 某开源软件的分析 基于契约的编程 单元测试与整体测试技术 敏捷软件开发 代码管理与文档管理 大规模程序设计方法 方向二 阅读某本经典技术书籍,撰写读书笔记 字数不少于3000字 写出其中自己理解的部分关键点,并能够结合实际说明使用方法。 写出真实感受 方向三 了解某新技术、方法或理念,写出评论报告 字数不少于3000字 技术点要新,评论要到位 要结合自己想法 新技术举例 Web2.0相关技术,如Ajax .Net; J2EE 中间件技术 SOA,SaaS 虚拟技术 云计算 基于内容搜索 …… 总的要求 严禁相互抄袭。抄袭与被抄袭者均不得分。 在6.5之前,发送到 Skywind.jlu@ 写明姓名、学号、班级 我会自动回复。注意国内部分邮箱系统可能连通性不好。
文档评论(0)