标书里事这么评价语言的,看的我都笑了

1.1. 先进的设计语言及模式

系统以面向对象为设计思想,以UML为建模语言,采用C++,, JAVA等高级设计语言实现上层功能,通过C语言实现底层核心驱动,并运用单例模式、抽象工厂模式、原型模式、适配器模式、桥接模式、观察者模式、访问者模式等成熟的设计模式,实现系统功能。

系统服务器和控制台通过JAVA语言提供用户交互界面以及对客户端的管控,能够跨平台,利于扩展;系统客户端通过C语言实现核心驱动,完成涉密信息的透明加解密以及安全稳定的访问控制,能够保证运行的效率以及平台的移植;通过C++实现客户端与服务器的交互以及客户端的安全控制,能够保证系统的扩展性和高效性。系统采用主流的面向对象的程序设计思想,借助于UML进行建模,采用了多种成熟的设计模式,具有很强的封装性、重用性、扩展性、移植性。

(1)面对对象的设计

使用面向对象思想进行开发有以下优点: 1)易维护  采用面向对象思想设计的结构,可读性高,由于继承的存在,即使改变需求,那么维护也只是在局部模块,所以维护起来是非常方便和较低成本的。 2)质量高 在设计时,可重用现有的,在以前的项目的领域中已被测试过的类使系统满足业务需求并具有较高的质量。 3)效率高  在软件开发时,根据设计的需要对现实世界的事物进行抽象,产生类。使用这样的方法解决问题,接近于日常生活和自然的思考方式,势必提高软件开发的效率和质量。 4)易扩展  由于继承、封装、多态的特性,自然设计出高内聚、低耦合的系统结构,使得系统更灵活、更容易扩展,而且成本较低。

(2)建模语言

以UML建模,具有以下优点:1)统一标准 UML不仅统一了Booch,OMT和OOSE等方法中的基本概念,还吸取了面向对象技术领域中其它流派的长处,其中也包括非OO方法的影响。UML使用的符号表示考虑了各种方法的图形表示,删掉了大量易引起混乱的,多余的和极少使用的符号,也添加了一些新符号,提供了标准的面向对象的模型元素的定义和表示法。2)面向对象 UML建模优点中第二个就是面向对象。UML支持面向对象技术的主要概念,它提供了一批基本的表示模型元素的图形和方法,能简洁明了地表达面向对象的各种概念和模型元素。3)表达能力强大,可视化 UML是一种图形化语言,用UML的模型图形能清晰地表示系统的逻辑模型或实现模型。它不只是一堆图形符号,在每一个图形表示符号后面,都有良好定义的语义;UML还提供了语言的扩展机制,用户可以根据需要增加定义自己的构造型,标记值和约束等,它的强大表达能力使它可以用于各种复杂类型的软件系统的建模。

(3)程序语言

作为底层驱动的开发语言,C语言具有以下优势:1)简洁、紧凑,使用方便、灵活。2)具备高级语言和低级语言的特征。3)结构化语言,具有结构化的控制语句。4)具有各种各样的数据类型。5)具有强大的图形功能,支持多种显示器和驱动器;而且计算功能、逻辑判断功能也比较强大,可实现决策目的。6)适用范围大,可移植性好。7)生成目标代码质量高,程序执行效率高。

C++作为客户端的可开发语言,具有以下优势:既保留了C语言的有效性、灵活性、便于移植等全部精华和特点,又添加了面向对象编程的支持,具有强大的编程功能,可方便地构造出模拟现实问题的实体和操作;编写出的程序具有结构清晰、易于扩充等优良特性,适合于各种应用软件、系统软件的程序设计。用C++编写的程序可读性好,生成的代码质量高,运行效率仅比汇编语言慢10%~20%。

JAVA作为系统服务器和控制台的开发语言,具有以下优点:1)简单,具有垃圾回收机制。2)面向对象。3)跨平台,能够运行在不同的操作系统和硬件上。4)解释型。5)内置多线程的支持。6)安全,防止病毒感染。7)动态。

(4)设计模式

使用设计模式能够保证可重用代码、让代码更容易被他人理解、保证代码可靠性。面向对象具有以下原则:开闭原则(Open Closed Principle,OCP)、里氏代换原则(Liskov Substitution Principle,LSP)、依赖倒转原则(Dependency Inversion Principle,DIP)、接口隔离原则(Interface Segregation Principle,ISP)、合成/聚合复用原则(Composite/Aggregate Reuse Principle,CARP)、最小知识原则(Principle of Least Knowledge,PLK,也叫迪米特法则)。设计模式就是实现了这些原则,从而达到了代码复用、增加可维护性的目的。

通过先进的设计语言和成熟的设计模式,保证系统的稳定性、安全性、可扩展性及可移植性。本系统易于扩展,易于移植,在为企业涉密信息提供稳定、健全的商密保护的前提下,能够根据用户的定制需求进行灵活的扩展,为用户直接提供个性化功能以及二次开发功能。

posted on   lydstory  阅读(197)  评论(0编辑  收藏  举报

编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
历史上的今天:
2020-04-01 sqlite3 linux加密版
2019-04-01 hook api实现
2019-04-01 \\Device\\PhysicalMemory
2019-04-01 error C4996: 'GetVersionExW': 被声明为已否决
2019-04-01 获取操作系统版本
2019-04-01 L与_T
2019-04-01 windows driver

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

统计

点击右上角即可分享
微信分享提示