App 服务端和客户端设计架构问题

2015-01-19 20:26:07 +08:00
 Jelen
本人刚开始接触app的开发,有一些问题希望能得到大家的指点:

现在要开发的是app的服务端和客户端,想知道这方面的设计框架是如何实现的
比如说app和服务器的通信,是tcp长连接来保持吗?
app中是否还需要存储数据,还是每次都是从服务器端读取数据过来,如果是读取的话,每次都需要读是不是2g网络扛不住?

我想了解一些这方面的架构的知识,希望大家多多指教。
8334 次点击
所在节点    程序员
12 条回复
xiaoyaoking
2015-01-19 20:46:29 +08:00
首先声明以下纯属瞎说,大牛别喷,我啥都不懂。

之前做过两个app 都是 后端php json处理后的数据进行交互。
GeekGao
2015-01-19 22:04:01 +08:00
只要你深入思考而不是倒听途说你就能想明白,我问你啥是TCP长连接?
2G网络有哪几种无线网络接入方式,传输速率有多大?
Comdex
2015-01-19 22:10:06 +08:00
我觉得都是json交换数据吧?
skylooker
2015-01-19 22:14:24 +08:00
同意 @GeekGao 的回复
建议楼主先了解下基础知识,你的问题自然会迎刃而解。
pi1ot
2015-01-19 22:33:55 +08:00
http://www.weibo.com/2002536511/C0bKdmQnO

A: iOS 开发只需要两步,一,发一个 HTTP 请求渲染一个 UITableView。二,再发一个请求渲染一个 UIView 。

B: PHP开发只需要两步,一、接收一个HTTP请求存到数据库。二,从数据库取出一些数据输出到页面。
lujiajing1126
2015-01-19 22:59:37 +08:00
看你想做成什么样的应用了
如果你只想做一款三流软件,那你就每次从服务器取数据就好,目前主流应该是json吧
如果你想做一流的软件,那就得考虑非常多的问题
不知道你说的app是个什么东西。起码是个ios上面的还是android的。不说清楚也不知道具体状况
还是先看个什么getting start之类的教程吧
至于tcp长连接。你还没学会走就想跑。。这不科学
Jelen
2015-01-19 23:06:04 +08:00
@GeekGao 很对,我一直的想法是我的app需要一直保持跟服务器的通信才能随时获取到服务器上的数据,所以才会想到长连接上去,后来想想,只要在操作的时候发送请求就可以了,但是如果是定位的话,是需要一直保持连接的吧?
Jelen
2015-01-19 23:07:28 +08:00
@lujiajing1126 嗯,其实不管是ios还是Android,其实架构方面都是类似的嘛,我只是想了解框架
lujiajing1126
2015-01-19 23:13:42 +08:00
@Jelen 你如果是说通讯的话那应该是一样的
那你后端想用什么语言呢。。。囧
GeekGao
2015-01-20 09:21:54 +08:00
@Jelen 看场景,首先你要了解使用长连接要付出什么代价
momowei
2015-01-20 09:55:43 +08:00
除非做推送不需要长连接,就算有推送我也推荐使用现在第三方提供好的api可以节省很多问题,在手机网络里管理长连接是个很麻烦的事情。
app和服务端通信其实和web差不太多,不同的是web是渲染好页面返回给浏览器。而app要的只是服务端提供的json数据,走http请求就好了。
本地存储其实就是缓存吧,这个看app具体情况,但像图片什么的肯定要缓存。
Stony
2015-01-20 22:38:36 +08:00
一般不需要长链接。

常见的做法是
请求,显示

复杂的做法就是
请求 缓存 显示
当然正确的顺序是
检查缓存 显示 请求 合并缓存 刷新显示

再复杂点就是
配置 交互 请求 缓存 显示

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/163590

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX