嗯,说过了硬件就该是软件了
这篇是这个系列的重中之重
首先我们来说说什么是软件,统一一下概念
所谓软件通俗地说就是一套计算机程序
实现了某些功能的计算机程序
在很早很早以前,一台计算机的软件是不分层次结构的
一台计算机只有一个系统,这个系统既是操作系统又是应用软件,与硬件紧密绑定
后来经过许多年的发展发展发展
人们把一些与硬件紧密相连的又经常用到必不可少的功能做到一套程序中去
这一套程序就被人们称做操作系统
另外一些可有可无的,不同工作适应不同环境的功能封装到另外一套程序中去
而这一系列程序被人们称作应用软件
如下图:
-------------------------------------------
|应用软件:falshgat/IE/realplayer/winamp..|
-------------------------------------------
|操作系统:UNIX/Windows/Linux/Solaris... |
-------------------------------------------
前一篇我们知道,硬件分为服务器工作站与pc
其实无论哪种硬件的软件,都有操作系统与应用软件
ok,那下面我们来谈应用软件
在现在企业级应用中,我们的应用软件一般分为三层
三层分别是表示层,业务逻辑层,数据持久层
------------------------------
|表示层|业务逻辑层|数据持久层|
------------------------------
我们来说说三层中的代表软件
表示层
这一层一般在客户端pc机上,最常见的是IE浏览器,这就是表示层的软件
表示层是直接与使用者交互的软件
业务逻辑层
这一层一般在服务器端,顾名思义,所有业务逻辑处理都在这一层完成
最典型的是appserver,比如IBM的websphere,BEA的weblogic还有tomcat/jboss等
这一层也是三层中的重点,我们要说的大部分内容都是关于这一层的,这个等会再说
这一层就叫做中间层
数据持久层
这一层典型的就是数据库,一般也在服务器端
但该服务器一般与装业务逻辑层软件的服务器分开
当然你也可以用IO输入输出流往硬盘上写东西
但没人会建议你这么做,因为这样做你的数据缺乏管理,不管怎样
这一层要做的就是保存数据,业务逻辑层软件一般不负责保留数据
或者说业务逻辑层只负责暂时储存数据,一关机,业务逻辑层数据全部over了
那么数据的持久化(也就是储存数据)就必须要在这一层完成
下面放着这些概念不谈,我们来说说将来的趋势
趋势一:
瘦客户端,很早很早以前,当时C/S模式也就是client/server
客户端软件大行其道的年代,一个pc用户,是采用一个傻终端连接到服务器上
然后进行相应的操作,最典型的就是我们上bbs经常用的c-term
这就是那个时代的产物,同样还有我国现行的定座用的e-term
后来呢,浏览器变得非常流行,人们发现,浏览器也能传递一些数据
虽然这些数据并不像那些终端那样准确,但应付大多数日常需求足够了
于是人们就提出一个瘦客户端概念,也就是说,将来表示层所有的其他软件疾挥?
我们唯一需要的就是一个网页浏览器,然后通过浏览器输入ip地址连接到服务器
然后进行相关的操作,由于网页浏览器一般每个操作系统都有自带一个
这样做就达到了给我们客户端瘦身的目的(不需要安装额外软件)
这样模式被称作B/S模式,也就是browser/server模式
但需要指出的是,虽然瘦客户端是趋势,但并不代表胖客户端没有市场
尤其是一些复杂的业务操作,还是浏览器这种简单软件无法胜任的
趋势二:
傻数据库,ok,首先,我承认,这个名词是我发明的,但我实在无法找到一个更好的表达
什么是傻数据库,如果谁对数据库有所了解的话,就知道,以前的数据库
有自己的一套管理体系,甚至有自己的客户端,比如oracle,mysql,sqlserver都有
在某个管理工具上写什么sql语句查询数据库是我们以前常做的事
那么将来我们提倡的是:将所有的业务逻辑封装到业务逻辑层去
管理的事情由软件来做,由业务逻辑层的软件来做
所谓傻数据库就是说,将来的数据库什么事都不用做
只用把数据给我保存好就行了,那些复杂的业务逻辑什么外键什么关联
都没数据库什么事了,都交给业务逻辑层软件来做
这样做的好处就是:我们就不需要这些该死难懂又复杂的数据库系列管理工具了
而且这些工具每个数据库都有自己的工具,完全不一样,乱七八糟,没有人喜欢面对他们
除了数据库维护人员,也就是DBA,我们是软件工程师,维护的事让他们去做
而且严禁数据库维护人员改动数据库的数据,他们只做备份,必要时候恢复一下就是了
了解了这两个趋势之后,是不是有种砍头去尾保中间的感觉?
没错,未来的趋势就是中间件时代,中间件工程师将是未来计算机应用的主流
那再次统一一下概念,什么是中间件?
记得我上学的时候,看ibm的教材,看了半天中间件定义,就看懂记住一句话
中间件是做别人不愿意去做的事情,现在想想,狗屁定义,呵呵
什么是中间件,中间件是业务逻辑层的应用软件
是处理业务数据与客户端之间业务逻辑的一种应用软件
一种提供网络服务的服务器端应用软件
举个非常简单的例子,网上银行,某个人想用IE进入工行的账户,然后转帐
在这个例子中,客户端表示层显然是IE,数据持久层显然是银行的核心数据库
那么中间件是什么?中间件就是提供这种服务的系统
这三层的划分如下
------------------------------
|表示层 | 业务逻辑层 | 数据持久层 |
------------------------------
| IE | 网上银行 | 数据库 |
------------------------------
分享到:
相关推荐
Java企业级应用开发是软件开发领域的一个重要方向,它涵盖了构建大规模、高性能、可扩展的分布式应用程序的技术和框架。这份详细的课件集是为初学者准备的,旨在帮助他们掌握Java在企业环境中的核心概念和实践技能。...
《Java EE企业级应用开发教程(Spring Spring MVC MyBatis)》是一本专注于Java企业级应用开发的专业教程,由黑马程序员编著。本书的核心在于深入浅出地介绍如何使用Java EE技术栈,特别是Spring、Spring MVC和...
《Java EE企业级应用开发教程》第二版,结合Spring、Spring MVC和MyBatis三大框架,为读者提供了全面深入的Java后端开发学习路径。这本书的源码资源旨在帮助开发者通过实践来理解并掌握企业级应用开发的核心技术。 ...
它具有丰富的类库,广泛应用于企业级应用、移动开发(尤其是Android)、大数据处理、云计算等多个领域。对于初学者而言,理解并掌握Java的基础知识是至关重要的。下面我们将详细探讨Java初学者在220个实例中可能会...
《Java EE企业级应用开发教程(Spring Spring MVC MyBatis)》是一本专注于Java后端开发的实战型教材,特别适合于对Java EE感兴趣并希望深入学习的企业级开发者。本书结合了Spring框架、Spring MVC以及MyBatis这三大...
Java是一种广泛使用的高级编程语言,自1995年由Sun Microsystems公司发布以来,因其跨平台性和安全性等特点,迅速成为了企业级应用开发的重要工具之一。本文旨在为Java初学者提供一份实用的学习指南,帮助大家更好地...
- **企业级应用**:由于其健壮性和安全性,Java广泛应用于企业级应用的开发,如服务器端应用和服务端处理。 - **移动应用开发**:尽管Android开发主要使用Kotlin,Java仍然是一个重要的选择。 - **大数据处理**:...
Java 编程语言是当前最流行的编程语言之一,对于初学者来说,选择合适的书籍学习是非常重要的。在这里,我们推荐了多本 Java 编程书籍,涵盖了入门、进阶、J2EE 等多个方面。 入门 * 《Head First Java, 2nd ...
- **Java EE概述**:Java Platform, Enterprise Edition,针对企业级应用的Java平台。 - **Servlet与JSP**:Servlet用于处理HTTP请求,JSP则负责生成动态网页。 - **MVC模式**:Model-View-Controller设计模式,用于...
Java企业级开发是一个涵盖广泛的领域,它涉及到使用Java语言构建大型、可扩展、高可用性的应用程序,这些应用程序通常...无论是初学者还是有经验的开发者,都能从中获益,进一步提升对Java企业级开发的理解和实践水平。
《Java EE企业级应用开发教程Spring+Spring MVC+MyBatis》是一本深入探讨Java企业级应用程序开发的书籍,主要围绕Spring、Spring MVC和MyBatis这三个核心框架展开。这三者是Java EE领域中最流行的开源框架,广泛应用...
首先,Spring框架是Java企业级应用开发的基石,它提供了全面的编程和配置模型,使得开发者能够更专注于应用程序,而不是基础设施。Spring的核心特性包括依赖注入(DI)和面向切面编程(AOP),这两个特性极大地简化了...
- 企业级应用:Java在Web服务、电子商务系统、内容管理系统、金融系统等方面广泛应用,如Spring、Hibernate等框架大大简化了企业级应用的开发。 - 嵌入式和移动应用:Java Micro Edition (Java ME) 用于开发嵌入式...
2. **企业级应用**:Java因其安全性高、可移植性强的特点,在企业级应用开发中占据主导地位。许多大型企业使用Java来构建服务器端应用程序,如Web服务、数据库管理系统等。 3. **服务器端开发**:Java非常适合于...
Java编程语言是目前全球最流行的编程语言之一,尤其在企业级应用开发中占据主导地位。这份"非常好的java笔记"无疑是初学者踏入这个领域的宝贵资源。笔记由培训班的专业老师编写,内容详细且全面,旨在帮助初学者系统...
- **企业级应用**:Java Enterprise Edition(Java EE)提供了开发分布式企业级应用的框架,如Java服务器端应用程序和数据库连接。 - **移动应用**:Android操作系统使用Java语言作为主要的开发工具。 - **大数据...
- **企业级应用开发**:Java在构建大型企业级应用时表现优异,特别是在B/S架构的Web应用开发中。 - **移动应用开发**:尽管Android开发现在更多使用Kotlin,但Java仍然是重要的开发语言之一。 - **大数据处理**:...
在开发企业级应用程序时,Java 企业版(J2EE,现称为Java EE)和统一建模语言(UML)是两个至关重要的工具。本文将深入探讨如何利用这两个技术进行高效且规范的软件开发。 首先,Java EE是Oracle公司推出的用于构建...