抽象的力量

简介: 虚拟化和抽象化无所不在,计算机科学里有一句老话:所有问题都可以通过增加一个间接层来解决。 操作系统是对硬件的虚拟化; 许多现代语言所用的虚拟机又是对操作系统的抽象; 对象-关系映射层抽象了数据库; 负载均衡和虚拟IP抽象了网络终端; 云计算(infrastructure as service)虚拟化了Infrastructure(基础设施); SOAP(XML)抽象了不同系统之

虚拟化和抽象化无所不在,计算机科学里有一句老话:所有问题都可以通过增加一个间接层来解决。

操作系统是对硬件的虚拟化;

许多现代语言所用的虚拟机又是对操作系统的抽象;

对象-关系映射层抽象了数据库;

负载均衡和虚拟IP抽象了网络终端;

云计算(infrastructure as service)虚拟化了Infrastructure(基础设施);

SOAP(XML)抽象了不同系统之间的通讯协议;

虚拟化数据库,用逻辑数据库(logical host)映射物理数据库(physical host),使得物理数据库的变动对应用透明。

目录
相关文章
|
3月前
|
Java 开发者
在Java面向对象编程的广阔海洋中,多态犹如一股深邃的潜流,它推动着代码从单一走向多元,从僵化迈向灵活。
在Java面向对象编程的广阔海洋中,多态犹如一股深邃的潜流,它推动着代码从单一走向多元,从僵化迈向灵活。
38 7
|
5月前
|
Java 数据安全/隐私保护
Java 封装:打破传统,创新你的编程思维!
【6月更文挑战第16天】Java中的封装是将数据和操作数据的方法封装在类中,隐藏内部细节,通过公共接口交互。这样保证了数据安全,降低了耦合度,便于验证(如`Shape`类中构造函数的类型检查)和控制(如`setType`方法中添加额外操作)。封装使代码更清晰、可维护,鼓励创新编程思维。
41 11
|
5月前
|
存储 数据可视化 测试技术
了解面向对象方法发展历程
【6月更文挑战第26天】本文介绍了几个面向对象发展中出现的典型方法。**Coad/Yourdon方法** **Booch方法** **OMT** **OOSE**。这四种方法都贡献于现代面向对象软件开发的。
116 0
了解面向对象方法发展历程
继承-被透明化的认知
前段时间和领导交流,被问到:java中什么是继承?继承在编译过程的代码体现是什么?继承在运行时的代码体现是什么?
|
SQL 自然语言处理 前端开发
网安研发之初识抽象语法树
抽象语法树(Abstract Syntax Tree,简称AST)是计算机科学中一种用于表示程序源代码结构的树状数据结构。它是源代码经过词法分析和语法分析之后生成的一种中间表示形式。 AST以树的形式表示程序的语法结构,其中每个节点代表源代码中的一个语法元素,如表达式、语句、函数等。节点之间通过父子关系和兄弟关系建立连接,形成一棵层次结构的树。 AST的节点类型通常与编程语言的语法规则相关,每个节点存储了相应语法结构的信息,如标识符、操作符、常量等。通过遍历和分析AST,可以进行语法检查、代码优化、代码生成等编译器和解释器相关的任务。
182 0
|
人工智能 架构师 算法
学习笔记 | 在变化中抽象不变: 技术变局下的架构师升级之想
学习笔记 | 在变化中抽象不变: 技术变局下的架构师升级之想
136 0
|
供应链 数据可视化 BI
【企业架构】描绘未来第 2 部分:定义能力路线图
【企业架构】描绘未来第 2 部分:定义能力路线图
|
Java 关系型数据库
java面向对象设计的五大原则
java面向对象设计的五大原则
|
缓存 算法 NoSQL
公司对不同职级能力抽象要求的具体化
要先把当前级别要求的能力提升到精通,然后尝试做下一级别的事情。
357 0
|
设计模式 资源调度 算法
对软件认知层次的思考
对于软件的认知层次代表着不同的专业程度,也代表着不同层次需要完成的工作的不同。在架构设计过程中需要有效的利用分层的认知,对不同层次的问题进行有针对性的解决确定。
116 0
对软件认知层次的思考