1.Java语言特点:
简洁性,面向对象,安全性,平台无关性(动态性,高性能,多线程,分布式)
2.Java虚拟机
虚拟运行Java代码的假想计算机,源程序编译后解释
3.Java程序基本结构
一个包声明package,任意引入import,类和接口声明class或interface
4.数组实例化
5.类
6.继承
7.包
8.多线程
9.流
10.软件的概念和特点
软件=程序+数据+文档
11.软件危机
概念:计算机软件在开发和维护过程中遇到的一系列问题
产生原因:软件本身特点,不正确的开发方法
12.软件工程
定义:应用系统化的学科化的定量的方法,开发运行维护软件,即将工程应用于软件
三要素:方法,工具,过程
应用原因:在给定的时间和预算内,按照用户需求,开发易修改,高效,可靠,可维护、适应力强、可移动、可重用的软件。
13.软件生命周期
软件产品或系统从设计,投入到被淘汰的全过程
14.软件过程
概念:工作产品构建过程中,需要完成的工作活动,动作和任务
模型:瀑布(军工,航天,医疗),原型(客户或开发者对系统不熟悉),增量(进化开发,希望尽快),螺旋(多次迭代,需求变化),喷泉(面向对象),敏捷(变化和不确定,商业竞争)
15.需求分析
概念:确定系统必须有的功能和性能,系统要求的环境,系统发展的前景
需求确认的步骤:需求获取→需求提炼→需求描述→需求验证
需求分析三类建模:功能模型、数据模型、行为模型。
功能模型(用例图)
主要包含参与者(角色),用例(动作),执行关联(前两者的关系)
行为模型——活动图
16.软件设计
系统设计分为概要设计(如何实现)和详细设计(怎样实现)
抽象:忽略具体信息将不同事物看成相同事物
体系结构:软件的整体结构和体系结构为系统提供概念上完整性的方式
设计模式:在给定上下文环境中一类共同问题的共同解决方案
模块化:软件被划分成命名和功能相对独立的多个组件,组件的集成来满足需求
信息隐藏:分解系统软件以到达最佳的模块划分
功能独立:每个模块只负责特定子功能,其他部分看,具有简单接口
精化:逐步求精的过程
重构:不改变功能和行为,简化组件设计(或代码)的一种重组技术
系统设计从体系结构、数据、接口和组件四方面进行设计
面向对象的系统设计,各自包含的设计内容:架构设计(物理模型,子系统,非功能需求),用例设计与类设计
类图
UML顺序图
’
对象:
17.软件质量
概念:明确表示是否符合功能和性能要求,明确的记载开发标准和所有专业开发软件的期望的隐形特点
单元测试(检验程序模块)的内容:模块接口,出错处理,独立路径,边界条件,局部数据结构
集成测试的分类:自顶向下,自底向上,冒烟测试
系统测试的分类:
验收测试的分类:
18.黑白盒
白盒:语句覆盖(每种可能都执行一次),分支覆盖,条件覆盖
项目管理
四要素:人员,产品,项目,过程
软件度量的方法:面向规模的度量,面向功能点的度量