我眼中的面向服务编程
在进入大学不久便接触了编程,从面向过程到面向对象,再到面向组件(面向接口),以为编程方法应该到此为止,而在偶然的一个时间从一位学长口中得知了还有面向服务这个概念,为此通过查找资料以及自身思考,认为面向服务应该是这样的一个东西。
首先它是一个方法,编程的方法,一个为了解决面向对象以及面向组件带来的缺陷的编程方案。而它的基本单位便是服务,相对于面向对象方法的基本单位是对象一样。
其次它的基本单位——服务,应该是把众多组件组合后封装起来的形成的一个能独立完成某一项功能(也就是服务,比如说洗衣服)的块,这个块具有自我管理,自我修复,提供安全的客户通信以及不断完善和扩展自己等功能。
再者就是我本人对于它的结构组成的看法:
它应该有四个基本部分:客户端、服务器端(主要处理客户请求)、组件数据库以及基本数据库。
(1)客户端:最简单的一个部件,只需要有发送请求和提供服务两个基本功能就足够了,发送请求部分不必细讲,提供服务部分就应该具有一个能对视觉、听觉等人类需要的服务展示的平台,确保服务被客户享用到。
(2)服务器端:也是比较简单的一个部件,主要是接收客户的请求以及将请求处理成指令发送给组件数据库,并拿到返回的组件,将返回的组件数据还原成服务回送给客户,可以理解为类似于操作系统的东西。
(3)组件数据库:是比较复杂的一个部件,存放标准的组件,根据被需要的组件向基本数据库发送指令获取被需要的数据,接收来自服务器端的指令,根据指令来搜索需要的组件并组装成相应的服务还回给服务器端。
(4)基本数据库:是最复杂的一个部件,用于存放组件的数据,接收来自组件数据库的指令,根据指令获取并处理相应的数据,生成相应的组件返回给组件数据库。由于需要存放大量标准组件的基本数据,而且需要对来自组件数据库的指令做相应的操作,所以该部件需要强大的计算能力、储存能力、读取能力以及组装组件的能力,至少在时间上有严格要求,所以主要设备(计算和储存)都应该在这个部件上。
最后谈谈关于实现它的效率基础,本人认为一下几个方面都是必须的:
1.高速的网络
2.稳定的硬件
3.具备概念发展中的云计算能力或超算能力
4.高度发达的物联网技术
缺少某一个环节都将会造成服务的中断,所以本人认为缺一不可。
分享到:
相关推荐
面向接口编程是一种编程范式,它是面向对象编程(OOP)的一个重要组成部分,而非独立的编程思想。在面向接口编程中,我们关注的是定义清晰、明确的行为规范,而不是具体的实现细节。接口作为一种契约,规定了类必须...
面向接口编程是一种编程范式,它是面向对象编程(OOP)的一个重要组成部分,而非与之并行的独立编程思想。接口在OOP中扮演着关键角色,它定义了一组规则,规定了实现该接口的类必须遵循的行为。通过面向接口编程,...
面向接口编程是面向对象编程的重要组成部分,它强化了软件设计的灵活性、可扩展性和可维护性。接口在编程中扮演着规范和契约的角色,定义了一组必须被实现的方法,为类提供了一种标准的交互方式。 接口的本质在于它...
浅谈Java面向接口编程 面向接口编程是Java编程中的一种重要思想,它与面向对象编程紧密相关。在本文中,我们将探讨面向接口编程的概念、接口的本质、面向接口编程的思想内涵、面向接口编程的好处等方面。 一、面向...
2. **代码封装**:封装是面向对象编程的核心原则之一,它可以将复杂问题分解为独立、可复用的部分。编写可重用的函数并添加注释,能够帮助其他开发者理解代码功能,降低代码的理解难度。 3. **使用断言调试**:在...
1. **C++基础知识**:C++是一种静态类型的、编译式的、通用的、大小写敏感的、不仅支持过程化编程,也支持面向对象编程的程序设计语言。理解基本的数据类型、控制结构、函数、指针等是学习C++的第一步。 2. **MFC...
尽管它在初学者眼中可能显得相对复杂,但理解JavaScript的面向对象编程(OOP)概念对于成为一个熟练的开发者至关重要。在本文中,我们将深入探讨JavaScript中的面向对象支持、类型系统以及`undefined`的特殊性。 ...
其复杂性部分来源于它试图成为一个多范式的语言,支持面向对象编程、泛型编程以及过程式编程等多种编程风格。 #### C++与Objective-C的对比 C++和Objective-C在很多方面都有相似之处,但也存在显著的不同: - **...
总的来说,“我眼中的五子棋源码”不仅是一份实现五子棋游戏的Java程序,更是学习Java编程、游戏逻辑和AI设计的宝贵资源。通过阅读和理解这份源码,开发者不仅可以提升自己的编程技能,还能体会到将理论知识应用于...
C++是一种静态类型的、编译式的、通用的、大小写敏感的、不仅支持过程化编程,也支持面向对象编程的程序设计语言。在VC6中,C++的强大功能得以充分发挥,包括类、模板、异常处理、命名空间等特性。VC6提供了集成的...
不过,随后 Perl 就开始风行,于是它就成了可以操作文件系统,进程管理,数据库管理,进行 C/S 编程和安全编程,web 信息管理,甚至可以进行面向对象和面向功能的编程的语言。而且这些功能并非只是在 Perl 这边,每...
在部分内容中提到了函数式编程(Functional Programming)与面向对象编程(Object-Oriented Programming)的概念。这两种编程范式各有特点: - **函数式编程**强调数据流和变换,将计算过程视为一系列函数调用。它鼓励...
这些面向对象编程的概念对于提升代码的可读性和可维护性至关重要。 最后,源码中可能会包含错误处理和调试机制,这对于学习如何调试和优化代码非常有帮助。同时,注释也是源码中重要的一部分,好的注释能解释代码的...
《我眼中的面向对象方法和结构化方法 - CSAI_cn软件工程.mht》和《再探索结构化与面向对象的设计方法.txt》等文件,作者分享了个人视角下对这两种方法的理解,探讨了它们的结合可能性。实际上,很多现代软件开发实践...
在初学者眼中,任何新的编程语言都会显得复杂且难以理解,Java也不例外。然而,随着时间的推移,通过不断的实践和深入学习,我们可以逐渐掌握其核心概念。 在学习Java的过程中,首先要了解的是基础语法,包括数据...
- **概述**:这本书主要面向已经具备一定编程经验但想要转向Linux平台的开发者,提供了一系列实用的技巧和指南。 - **特色**:通过对比其他平台与Linux平台的差异性,帮助开发者更顺利地过渡。 - **适用人群**:适合...
Java是一种广泛使用的编程语言,它具有面向对象、简单易学、跨平台性、网络编程支持、多线程支持和健壮性等特点。下面详细解释这些概念和知识点: 1. 编程概念:编程是使用程序设计语言编写的代码,让计算机执行...
C++是一种强大的、面向对象的编程语言,广泛用于系统软件、应用软件、游戏开发等领域。贪吃蛇是一款经典的电子游戏,通常用简单的图形界面来呈现,它要求程序员具备良好的算法设计和实时响应处理能力。 在描述中...