• 软件开发基础知识


    一:关于软件开发模型

    1. 什么是软件开发模型

             软件开发模型(Software Development Model)是指软件开发全部过程、活动和任务的结构框架

    2.有哪些类型        

             2.1. 边做边改模型(Build-and-Fix Model) 缺点:需求不明,开发难;缺少规划和设计以及文档,维护难

             2.2. 瀑布模型(Waterfall Model)是一个项目开发架构,开发过程是通过设计一系列阶段顺序展开的(从一个阶段“流动”到下一个阶段);  缺点:文档驱动 系统可能不满足客户的需求。

             2.3. 快速原型模型(Rapid Prototype Model): 迅速建造一个可以运行的软件原型      缺点:关注满足客户需求 可能导致系统设计差、效率低,难于维护

             2.4. 增量模型(Incremental Model):把待开发的软件系统模块化,将每个模块作为一个增量组件,从而分批次地分析、设计、编码和测试这些增量组件   缺点:待开发的软件系统需要能被模块化。

             2.5.螺旋模型(Spiral Model):采用一种周期性的方法来进行系统开发,强调风险分析;特别适用于庞大、复杂并具有高风险的系统   缺点:风险驱动 风险分析人员需要有经验且经过充分训练

             2.6.演化模型(evolution model):属于迭代开发方法;实际上就是从初始的原型逐步演化成最终软件产品的过程,特别适用于对软件需求缺乏准确认识的情况。

             2.7.喷泉模型(fountain model):是一种以用户需求为动力,以对象为驱动的模型,主要用于描述面向对象的软件开发过程。缺点:在开发过程中需要大量的开发人员,不利于项目的管理。

             2.8.智能模型(四代技术(4GL)):也称为“基于知识的软件开发模型”,它把瀑布模型和专家系统结合在一起,利用专家系统来帮助软件开发人员的工作。

             2.9.混合模型(hybrid model):把几种不同模型组合成一种混合模型

             2.10.RAD(快速应用开发)模型:是一个增量型的软件开发过程模型。强调极短的开发周期。

     二:面向对象

        1. OOA: Object Oriented Analyzing, 面向对象分析

        2. OOD: Object Oriented Design  面向对象设计

        3. OOP: Object Oriented Programming  面向对象编程

              三者之间的联系: http://www.jianshu.com/p/224d8fc4d0f0

    三:面向对象设计(OOA)的基本原则,以及常用的数据结构与算法

        1. 面向对象设计的基本原则         

                (1) 单一职责原则(SRP):一个类,最好只做一件事,只有一个引起它变化的原因(低耦合、高内聚)
                (2)
    开放封闭原则(OCP):原则的核心;对扩展开放,对修改封闭的;实现开放封闭原则的核心思想就是对抽象编程,而不对具体编程
                (3)
    里氏替换原则(LSP):子类可以替换父类并且出现在父类能够出现的任何地方;实现的方法是面向接口编程
                (4)
    依赖倒置原则(DIP):其核心思想是:依赖于抽象;具体而言就是高层模块不依赖于底层模块,二者都同依赖于抽象;抽象不依赖于具体,具体依赖于抽象
                (5)
    接口隔离原则(ISP):使用多个小的专门的接口,而不要使用一个大的总接口。分离的手段主要有以下两种:委托分离/多重继承分离(较好)

         2.数据结构          

               a.什么是数据结构

                            数据结构具体指同一类数据元素中,各元素之间的相互关系,

                   b. 组成

                            数据的逻辑结构:包括集合结构,线性结构,树形结构,图形结构

                            数据的存储(物理)结构: (又称映像),包括 顺序、链接、索引、散列

                            数据的运算结构:包括检索、插入、删除、更新和排序

                   c.常用结构

                            线性表( 数组,链表),栈,队列,树,图,堆,散列表

               参考:http://blog.jobbole.com/110835/       http://www.jianshu.com/p/230e6fde9c75

     

         

  • 相关阅读:
    常用工具
    域名解析过程
    生成免费SSL通配证书
    Windows10环境下loadrunner11 安装
    Jenkins邮件扩展(Email Extension插件 Windows环境)
    Jenkins配置HTML报告(Windows环境)
    jenkins 构建一个maven项目
    jmeter+maven 的简单使用 记录(Windows环境)
    Jenkins 邮件发送设置(jenkins自带邮件设置)
    jmeter建立JDBC连接池时遇到“A Test is currently running,stop or shutdown test to execute this command”
  • 原文地址:https://www.cnblogs.com/Cyan-zoey/p/7148914.html
Copyright © 2020-2023  润新知