APP开发-基本架构解析

◆APP不仅仅是一个APP,在我们手机中很多的app不仅仅是呈现出的几个页面、几个按钮、几个图片那么简单。比如知乎 :首先他是由 服务端 和 客户端 构成,简单来说客户端就是我们手机里的一个app ,而服务端就是将多个相同app连接在一起的大型软件。

APP开发-基本架构解析

补充一张我们平时用的组件图(Component Diagram):

这个图主要是给内部开发人员看的,怎么去做代码的组织和构建。其用途有:

* 描述了系统由哪些组件/服务组成

* 理清了组件之间的关系和依赖

* 为软件开发如何分解交付提供了框 架

◆客户端可以分为手机端和PC端,而手机端分为苹果(IOS)/安卓(android)/平板(pad), PC端分为Windows/mac os/linux

APP开发-基本架构解析
(简单的所属关系)

◆服务器端相对少一点,只有Windows和linux,大部分公司都只会选择其中一个平台,但是千万不要以为服务端的工作就会比较少,因为在业务中很大一部分逻辑都是要在服务端去进行的,并且服务端要考虑的也更多,如安全性能、拓展性等等,其中又以安全性能最为重要,因为服务器大多都是暴露在外网的,从而会引来黑客或者友商攻击。攻击的后果可能是软件瘫痪,这样造成的损失是很大的。然后是性能方面,性能就是要用尽可能少的服务器资源去做更多的事情,毕竟服务器的资源还是蛮贵的。 而拓展就是说以后想加业务了,你的服务端要能支撑的住。

APP开发-基本架构解析

(对于大型(APP/网站),实行分而治之,把整个网站的业务分为不同的模块,比如大型的交易购物完整可以分为首页、店铺、订单、买家等,分别交给不同的业务团队来负责

同时我们根据模块划分拆分成多个应用,每个应用进行单独的部署和维护,应用之间通过超链接建立关系(指向不同的应用地址),最后通过相同的数据存储系统来构成一个互相关联的完整系统)

◆那微信小程序呢?对于客户端,虽然我是做服务端开发的,但也对客户端略知一二,足够聊聊(忽悠)。 首先好多人都会觉得开发一个微信小程序要简单一些,毕竟是小程序嘛~ 其实从开发难度上来讲都是一样的,他也有自己的语言规则,都是需要时间去开发的,而小程序的优点是即用即走,也可以说其实现了跨平台。

◆你觉得安卓(android)和苹果(IOS),哪个开发更难一些? 个人感觉是安卓,因为安卓的手机厂商-机型太多,比苹果需要做更多的适配工作,而苹果(IOS)这一点呢则要好一些,但不是说开发容易,毕竟如果真的那么容易,程序员的工资也没必要那么高了, 这里呢我就不去说什么算法人工智能机器学习了,这样的投入更是无止境的。

◆开发一个APP并不简单 正如前面所说,一个APP是由很多个端去构成的,无论是服务端的框架构建,数据规划,逻辑实现,还是客户端让人眼前一亮的UI跟交互逻辑设计,都是需要专业人士去做的,而这些人包括:产品/美工/前端/后端/web/测试/运维 。

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/312326.html

(0)
上一篇 2024年3月25日
下一篇 2024年3月25日

发表回复

登录后才能评论