Dcloud课程1 APP的架构有哪些

一、总结

一句话总结:B/S架构和C/S构架

1、APP的分类?

主流的四大APP系统:
1、苹果ios系统版本,开发语言是Objective-C;
2、微软Windows phone系统版本,开发语言是
C#;
3、安卓Android系统版本,开发语言是Java;
4、塞班symbian系统版本,开发语言是C++。

2、B/S架构和C/S构架区别?

B/S架构的全称为Browser/Server,即浏览
器/服务器结构。Browser指的是Web浏览器,极
少数事务逻辑在前端实现,但主要事务逻辑在服务
器端实现,Browser客户端,WebApp服务器端和
DB端构成所谓的三层架构。B/S架构的系统无须特
别安装,只有Web浏览器即可。
B/S架构中,显示逻辑交给了Web浏览器,
事务处理逻辑在放在了WebApp上,这样就避免了
庞大的胖客户端,减少了客户端的压力。因为客户
端包含的逻辑很少,因此也被成为瘦客户端。

3、B/S架构执行流程?

4、B/S架构优缺点?

优点:
1)客户端无需安装,有Web浏览器即可。
2)BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的
目的,交互性较强。
3)BS架构无需升级多个客户端,升级服务器即可。
缺点:
1)在跨浏览器上,BS架构不尽如人意。
2)表现要达到CS程序的程度需要花费不少精力。
3)在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题
4)客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是
客户乐意看到的。(在Ajax风行后此问题得到了一定程度的缓解)

5、C/S架构简介

C/S 架构是一种典型的两层架构,其全程是
Client/Server,即客户端服务器端架构,其客户端包含一个或
多个在用户的电脑上运行的程序,而服务器端有两种,一种是
数据库服务器端,客户端通过数据库连接访问服务器端的数据;
另一种是Socket服务器端,服务器端的程序通过Socket与客户
端的程序通信。
C/S 架构也可以看做是胖客户端架构。因为客户端需要
实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户
端的部分需要承受很大的压力,因为显示逻辑和事务处理都包
含在其中,通过与数据库的交互(通常是SQL或存储过程的实
现)来达到持久化数据,以此满足实际项目的需要。

6、C/S架构执行流程

7、C/S架构优缺点

优点:
1 C/S架构的界面和操作可以很丰富。
2 安全性能可以很容易保证,实现多层认证也不难。
3 由于只有一层交互,因此响应速度较快。
缺点:
4 适用面窄,通常用于局域网中。
5 用户群固定。由于程序需要安装才可使用,因此不适合面向
一些不可知的用户。
6 维护成本高,发生一次升级,则所有客户端的程序都需要改
变。

8、APP开发的难点?

1、APP开发周期长,成本高。
2、APP开发同时需要兼容主流的手机操作系统。
3、页面的兼容性,不同屏幕大小的处理

二、APP的架构有哪些

什么是APP?

APP(Application)理解为应用程序,通常是
移动设备(手机和平板的操作系统)的应用程序。
它是程序的统称,各种功能的软件都可以叫app,
比如游戏app包括“神庙逃亡”,办公app包括手
机office。由此又有了app软件的叫法。

APP的分类?

主流的四大APP系统:
1、苹果ios系统版本,开发语言是Objective-C;
2、微软Windows phone系统版本,开发语言是
C#;
3、安卓Android系统版本,开发语言是Java;
4、塞班symbian系统版本,开发语言是C++。

B/S架构和C/S构架区别?

B/S架构的全称为Browser/Server,即浏览
器/服务器结构。Browser指的是Web浏览器,极
少数事务逻辑在前端实现,但主要事务逻辑在服务
器端实现,Browser客户端,WebApp服务器端和
DB端构成所谓的三层架构。B/S架构的系统无须特
别安装,只有Web浏览器即可。
B/S架构中,显示逻辑交给了Web浏览器,
事务处理逻辑在放在了WebApp上,这样就避免了
庞大的胖客户端,减少了客户端的压力。因为客户
端包含的逻辑很少,因此也被成为瘦客户端。

B/S架构执行流程?

B/S架构优缺点?

优点:
1)客户端无需安装,有Web浏览器即可。
2)BS架构可以直接放在广域网上,通过一定的权限控制实现多客户访问的
目的,交互性较强。
3)BS架构无需升级多个客户端,升级服务器即可。
缺点:
1)在跨浏览器上,BS架构不尽如人意。
2)表现要达到CS程序的程度需要花费不少精力。
3)在速度和安全性上需要花费巨大的设计成本,这是BS架构的最大问题
4)客户端服务器端的交互是请求-响应模式,通常需要刷新页面,这并不是
客户乐意看到的。(在Ajax风行后此问题得到了一定程度的缓解)

C/S架构简介

C/S 架构是一种典型的两层架构,其全程是
Client/Server,即客户端服务器端架构,其客户端包含一个或
多个在用户的电脑上运行的程序,而服务器端有两种,一种是
数据库服务器端,客户端通过数据库连接访问服务器端的数据;
另一种是Socket服务器端,服务器端的程序通过Socket与客户
端的程序通信。
C/S 架构也可以看做是胖客户端架构。因为客户端需要
实现绝大多数的业务逻辑和界面展示。这种架构中,作为客户
端的部分需要承受很大的压力,因为显示逻辑和事务处理都包
含在其中,通过与数据库的交互(通常是SQL或存储过程的实
现)来达到持久化数据,以此满足实际项目的需要。

C/S架构执行流程

C/S架构优缺点

优点:
1 C/S架构的界面和操作可以很丰富。
2 安全性能可以很容易保证,实现多层认证也不难。
3 由于只有一层交互,因此响应速度较快。
缺点:
4 适用面窄,通常用于局域网中。
5 用户群固定。由于程序需要安装才可使用,因此不适合面向
一些不可知的用户。
6 维护成本高,发生一次升级,则所有客户端的程序都需要改
变。

APP开发的难点?

1、APP开发周期长,成本高。
2、APP开发同时需要兼容主流的手机操作系统。
3、页面的兼容性,不同屏幕大小的处理

 

Dcloud课程1 APP的架构有哪些的更多相关文章

  1. Dcloud课程4 如何进行APP接口开发

    Dcloud课程4 如何进行APP接口开发 一.总结 一句话总结:通过json或者xml. 1.APP如何进行通信? 通过在地址上接参数指明传递的数据的类型.而数据传递的类型一般是XML和json. ...

  2. Dcloud课程2 什么是Dcloud

    Dcloud课程2  什么是Dcloud 一.总结 一句话总结:DCloud提供了一套快速开发应用的跨平台技术方案. 1.DCloud的产品架构? MUI+(H5+)+HBuilder 2.什么是MU ...

  3. Dcloud课程8 开心一刻应用如何实现

    Dcloud课程8 开心一刻应用如何实现 一.总结 一句话总结:app就是远程调用接口获得数据,我们在后台要做的,就是写一个个让页面获得接口的数据.这里用的是公共笑话接口. 1.ajax返回给页面的h ...

  4. Dcloud课程5 php如何实现文件缓存技术(静态数据缓存)

    Dcloud课程5 php如何实现文件缓存技术(静态数据缓存) 一.总结 一句话总结:保存在磁盘上的静态文件,用PHP生成数据到静态文件中.其实cookie和session使用的就是这样的技术,所以c ...

  5. Dcloud课程3 什么是HBuilder和MUI

    Dcloud课程3  什么是HBuilder和MUI 一.总结 一句话总结:DCloud(数字天堂)推出一款支持HTML5的Web开发IDE.最大的特点是快.MUI是高性能App的框架,也是目前最接近 ...

  6. [转]Android App整体架构设计的思考

    1. 架构设计的目的 对程序进行架构设计的原因,归根到底是为了提高生产力.通过设计使程序模块化,做到模块内部的高聚合和模块之间的低耦合.这样做的好处是使得程序在开发的过程中,开发人员只需要专注于一点, ...

  7. Android App的架构设计:从VM、MVC、MVP到MVVM

    随着Android应用开发规模的扩大,客户端业务逻辑也越来越复杂,已然不是简单的数据展示了.如同后端开发遇到瓶颈时采用的组件拆分思想,客户端也需要进行架构设计,拆分视图和数据,解除模块之间的耦合,提高 ...

  8. 转: Android 后台任务型App多进程架构演化

    评注:android 后台分进程保活方式的实践 Android 后台任务型App多进程架构演化 字数1621 阅读2790 评论8 喜欢35 什么是后台任务型app 类似音乐.录音机,需要用户长时间在 ...

  9. 第三百七十五节,Django+Xadmin打造上线标准的在线教育平台—创建课程机构app,在models.py文件生成3张表,城市表、课程机构表、讲师表

    第三百七十五节,Django+Xadmin打造上线标准的在线教育平台—创建课程机构app,在models.py文件生成3张表,城市表.课程机构表.讲师表 创建名称为app_organization的课 ...

随机推荐

  1. 【Henu ACM Round #13 E】Spy Syndrome 2

    [链接] 我是链接,点我呀:) [题意] 在这里输入题意 [题解] 对m个串建立一棵字典树. 然后对主串. 尝试从第一个位置开始.在字典树中尝试匹配 如果匹配到了位置i 就再从位置i+1开始尝试匹配 ...

  2. 父类与子类的virtual

    父类加了virtual,子类不需要加virtual,多余.加了也不会报错. 父类中不是virtual,子类是virtual,那么父类中的不是虚函数,子类及子子类的派生类中该函数才是虚函数

  3. Spring MVC原理及实例基础扫盲篇

    近期 项目中刚接触了SpringMVC,就把这几天看的跟实践的东西写出来吧. 一.首先,先来了解一下SpringMVC究竟是个什么样的框架? Spring Web MVC是一种基于Java的实现了We ...

  4. findFocus-获得拥有焦点的控件

    所有的view控件有一个findFocus方法,这个方法如下 /** * Find the view in the hierarchy rooted at this view that current ...

  5. .Net 自动属性结合手动属性

    Model using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace ...

  6. 如何解决Linux下的软件包依赖问题

    650) this.width=650;" border="0" alt="" src="http://img1.51cto.com/att ...

  7. Kinect 开发 —— 手势识别(下)

    基本手势追踪 手部追踪在技术上和手势识别不同,但是它和手势识别中用到的一些基本方法是一样的.在开发一个具体的手势控件之前,我们先建立一个可重用的追踪手部运动的类库以方便我们后续开发.这个手部追踪类库包 ...

  8. css3--根据数据加载显示的一个动画

    css: .circle { width: 200px; height: 200px; position: absolute; border-radius: 50%; background: #0cc ...

  9. 【Django】MEDIA的配置及用法

    如果需要在数据库中存储图片或视频类的数据,我们可以配置MEDIA. 下面的示例将以上传一张图片的形式来说明MEDIA的配置及用法. 第一步 settings.py # media配置 MEDIA_UR ...

  10. 使用maven的tomcat:run进行web项目热部署

    近期又又一次看了一下maven的东西,事实上主要是由于去了解Jenkins,后期或许会补充jenkins的博文. 怎么在eclipse里面创建maven webproject,这边就不介绍了,參见:h ...