Dcloud课程1 APP的架构有哪些
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的架构有哪些的更多相关文章
- Dcloud课程4 如何进行APP接口开发
Dcloud课程4 如何进行APP接口开发 一.总结 一句话总结:通过json或者xml. 1.APP如何进行通信? 通过在地址上接参数指明传递的数据的类型.而数据传递的类型一般是XML和json. ...
- Dcloud课程2 什么是Dcloud
Dcloud课程2 什么是Dcloud 一.总结 一句话总结:DCloud提供了一套快速开发应用的跨平台技术方案. 1.DCloud的产品架构? MUI+(H5+)+HBuilder 2.什么是MU ...
- Dcloud课程8 开心一刻应用如何实现
Dcloud课程8 开心一刻应用如何实现 一.总结 一句话总结:app就是远程调用接口获得数据,我们在后台要做的,就是写一个个让页面获得接口的数据.这里用的是公共笑话接口. 1.ajax返回给页面的h ...
- Dcloud课程5 php如何实现文件缓存技术(静态数据缓存)
Dcloud课程5 php如何实现文件缓存技术(静态数据缓存) 一.总结 一句话总结:保存在磁盘上的静态文件,用PHP生成数据到静态文件中.其实cookie和session使用的就是这样的技术,所以c ...
- Dcloud课程3 什么是HBuilder和MUI
Dcloud课程3 什么是HBuilder和MUI 一.总结 一句话总结:DCloud(数字天堂)推出一款支持HTML5的Web开发IDE.最大的特点是快.MUI是高性能App的框架,也是目前最接近 ...
- [转]Android App整体架构设计的思考
1. 架构设计的目的 对程序进行架构设计的原因,归根到底是为了提高生产力.通过设计使程序模块化,做到模块内部的高聚合和模块之间的低耦合.这样做的好处是使得程序在开发的过程中,开发人员只需要专注于一点, ...
- Android App的架构设计:从VM、MVC、MVP到MVVM
随着Android应用开发规模的扩大,客户端业务逻辑也越来越复杂,已然不是简单的数据展示了.如同后端开发遇到瓶颈时采用的组件拆分思想,客户端也需要进行架构设计,拆分视图和数据,解除模块之间的耦合,提高 ...
- 转: Android 后台任务型App多进程架构演化
评注:android 后台分进程保活方式的实践 Android 后台任务型App多进程架构演化 字数1621 阅读2790 评论8 喜欢35 什么是后台任务型app 类似音乐.录音机,需要用户长时间在 ...
- 第三百七十五节,Django+Xadmin打造上线标准的在线教育平台—创建课程机构app,在models.py文件生成3张表,城市表、课程机构表、讲师表
第三百七十五节,Django+Xadmin打造上线标准的在线教育平台—创建课程机构app,在models.py文件生成3张表,城市表.课程机构表.讲师表 创建名称为app_organization的课 ...
随机推荐
- paste---合并文件的列。
Linux paste命令用于合并文件的列. paste指令会把每个文件以列对列的方式,一列列地加以合并. 语法 paste [-s][-d <间隔字符>][--help][--versi ...
- 父类与子类的virtual
父类加了virtual,子类不需要加virtual,多余.加了也不会报错. 父类中不是virtual,子类是virtual,那么父类中的不是虚函数,子类及子子类的派生类中该函数才是虚函数
- leetCode 85.Maximal Rectangle (最大矩阵) 解题思路和方法
Given a 2D binary matrix filled with 0's and 1's, find the largest rectangle containing all ones and ...
- 前端js中this指向及改变this指向的方法
js中this指向是一个难点,花了很长时间来整理和学习相关的知识点. 一. this this是JS中的关键字, 它始终指向了一个对象, this是一个指针; 参考博文: JavaScript函数中的 ...
- nslookup---域名查询
nslookup命令是常用域名查询工具,就是查DNS信息用的命令. nslookup4有两种工作模式,即“交互模式”和“非交互模式”. 在“交互模式”下,用户可以向域名服务器查询各类主机.域名的信息, ...
- 【OC学习-8】存取器方法?getter和setter?事实上就是赋值和返回值的两种函数
我们在声明类的时候,有实例变量+方法(函数),这些实例变量假设默认的话都是protected类型,一般无法直接訪问.更别提赋值和调用了,所以就产生了两种函数,getter函数就是可以返回实例变量的值, ...
- 【MySQL】常见错误与经常使用命令的集锦
[背景介绍] 在使用SQL Server数据库期间,想必大家一定都有过解决各种问题的经历了.非常多时候,都会在大家的博客中看到问题与解决方式. 如今开发使用的是MySQL数据库.如今来看,发现 ...
- scrollBarStyle- listview滑动条调整
今天在解决问题的时候,需要设置listview滚动条,使listview的内容不能被滚动条覆盖 后来发现网上提到一个 ScrollView 属性.ScrollView中ScrollBar的style ...
- Funui-overlay 如何添加theme 的 overlay
昨天更改theme主题的时候,发现所有仓库下的theme都是共用的.也就是说,如果你更改了52平台下的theme,那么你提交了代码以后,82下也会发生相应的更改.但是,昨天修改的theme属性,只在3 ...
- jqXHR对象
//$.ajax()返回的对象就是jqXHR对象 var jqXHR = $.ajax({ type:'post', url:'test.php', data:$('form').serialize( ...