app系统设计,App设计

第三方分享代码
hacker 3年前 (2022-07-02) 教育 79 3

介绍:

APP 设计需要注意哪些问题

1.用户界面运作的一致性

保证用户界面运作的一致性,是APP设计中非常非常重要的一环。其体现在色彩搭配和运用、字体的运用、相同的交互效果等。对于列表框来说,如果双击其中的项,使得某些事件发生,那么双击任何其它列表框中的项,都应该有同样的事件发生。所有窗口按钮的位置要一致,标签和讯息的措辞要一致,颜色方案要一致。用户界面的—致性使得在用户对于界面运作建立起精确的心理模型,从而降低培训和支持成本。

2.阐明设计规则

用户要知道怎么使用你为他们开发的软件。软件运作的一致性表明,规则你只需解释一遍。这比一步步详细讲解如何使用应用软件每个特性要容易得多。

可以制定属于你的一些工作方式和设计规范。

3.重视UI界面间切换

重视UI界面间切换其实是提升用户体验,如果从一个屏幕转换到另一屏幕很困难,用户会很快灰心并放弃。当屏幕流程与用户想完成的工作流程相符,此软件对用户才有意义。由于不同用户工作方式不同,应用软件需要有足够的灵活以支持他们不同的方式。在建模阶段,界面流程图可用来模拟屏幕之间的流程。

4.重视界面布局

在西方,人们是自左而右,从上而下阅读,基于人们的习惯,屏幕的组织也应当是自左而右,从上而下。屏幕小部件的布局也应以用户熟悉的方式进行。

5.小部件工具

要了解APP的小部件工具,体现在帮助增强应用软件的一致性,可能使得应用软件很容易构造。学会如何正确使用小部件的唯一途径是阅读和理解你们所采用的用户界面标准及准则。

6.不盲从其它软件

几乎没有两个APP是相同的,只有可能是类似的,而且是用户界面标准和准则都类似才可以。而面对这些类似软件,绝不能认定它做的都是对的。但是,你可以通过了解人家怎么做,从中获得些主意是不错的想法,但在懂得怎样区分用户界面设计的好坏之前,你得留神。太多的开发者错误地模仿其它应用软件的用户界面,而那些界面却设计得很糟,最好将界面设计的美工外包项目请专业的设计外包公司来完成。

7.重视颜色使用和搭配

一款APP的颜色使用和搭配,能够让APP显得赏心悦目,从而提升用户使用体验。但是,问题就在于有些用户可能是色盲一一如果在屏幕上使用了颜色来突出显示某些东西,假若想让色盲的用户注意到,那么需要做些另外的工作来突出它,如在其旁边显示一个符号。颜色的使用也得一致,以使整个应用软件有同样的观感。此外,在不同平台上,色彩的表现不尽人意一一在一个系统上看上去很好,在另一个系统上常常看上去很糟。展示会上我们经常听到展示者这样说: “在我家中的机器上看上去可是很好的呀。”

8.遵循对比原则

打算在应用软件中使用颜色,要确保屏幕的可读性。最好的方法是遵循对比原则:在浅色背景上使用深色文字,在深色背景上使用浅色文字。蓝色文字以白色为背景很容易读,但以红色为背景很难辨认。问题出在蓝色与红色之间没有足够反差,而蓝色与白色之间则反差很大。

9.区域排列

当一款APP需要在屏幕上同时存在多个编辑区域时,要以视觉效果和效率来组织这些区域。

10.数据对齐要适当

对一列列的数据,通常的作法是整浮点数右对齐,字符串左对齐。

11.屏幕不能拥挤

拥挤的屏幕让人难以理解,因而难以使用。实验结果显示屏幕总体盖度不应超过40%,而分组中屏幕盖度不应超过62%。

12.有效组合

逻辑上关联的项目在屏幕上应当加以组合,以显示其关联性。反之,任何相互之间毫不相关的项目应当分隔开。在项目集合间用间隔对其进行分组/或用方框也同样可做到这一点。

13.在操作焦点处打开窗口

当用户双击一个对象显示其编辑/详情屏幕,用户的注意力亦集中于此。因而在此处而不是其它地方打开窗口才有意义。

14.功能来源多样

如果说,一款APP的功能来源确实,主要功能被隐藏,那么用户上手APP就会很难。开发人员最让人灰心的作法是滥用弹出菜单,也称作上下文相关菜单。一种使用鼠标的典型方法,是用来显示一个隐藏的弹出菜单,提供针对当前工作的屏幕区域特定功能的访问。

手机APP软件开发公司天点科技为您们排忧解难,不仅价格优廉,而且质量有保障。我们拥有多年的开发策划经验、精湛的开发技术、优质的全方位服务,致力为客户打造质优价廉的手机软件、手机APP应用。

如何设计app的架构

想要设计App的整体框架,首先要清楚我们做的是什么

一般我们与网络交互数据的方式有两种:主动请求(http),长连接推送

结合网络交互数据的方式来说一下我们开发的App的类型和特点:

数据展示类型的App:特点是页面多,需要频繁调用后端接口进行数据交互,以http请求为主;推送模块,IM类型App的IM核心功能以长连接为主,比较看重电量、流量消耗。

手机助手类App:主要着眼于系统API的调用,达到辅助管理系统的目的,网络调用的方式以http为主。

游戏:一般分为游戏引擎和业务逻辑,业务脚本化编写,网络以长连接为主,http为辅。

一般我们做的App都是类型1,简要来说这类app的主要工作就是

把服务端的数据拉下来给用户展示

把用户在客户端修改的数据上传给服务端处理

所以这类App的网络调用相当频繁,而且需要考虑到网络差,没网络等情况下,App的运行,成熟的商业应用的网络调用一般是如下流程:

UI发起请求 - 检查缓存 - 调用网络模块 - 解析返回JSON / 统一处理异常 - JSON对象映射为Java对象 - 缓存 - UI获取数据并展示

这之中可以看到很明显职责划分,即:数据获取;数据管理;数据展示

确定了职责,就可以进入正题了

1. 传统的Android App架构

Android最原生也是最基础的架构,可以理解为MVC,Controller即是Activity和Fragment,但是这两者掌握了Android系统中绝大多数的资源,并且在内部直接控制View,因此传统的Android App一般是以Activity和Fragment为核心,将网络模块,数据库管理模块,文件管理模块,常用工具类等分离成若干工具类包,供Activity和Fragment使用。

这是比较基础的Android项目架构,市面上大部分App都是这种造型

优点:就是开发简单,以页面为导向;如果构建水平可以,项目就已经基本实现模块化,基于Activity,Fragment这这两个上帝般的存在,很多事情直接就妥了,不用绕。

缺点:维护难,因为是以页面为导向的,有些需要共用的业务逻辑就会很烦,don't repeat your self, 你要不要repeat ?不想repeat就要写模块,慢慢的项目就会多出一堆乱七八糟的小模块。另一方面,测试很困难,因为所有的数据处理都在Activity和Fragment,假如现在想先用假数据显示,就要直接改Activity和Fragment的数据控制逻辑。

还有个最恼火的问题,那就是业务复杂起来后Activity和Fragment的代码量激增,举一个例子,电商App的购物车,如果只是管理一下购物车中的商品,无非就是查、删、改调用,列表管理,300多行代码应该就搞定了,假如现在加了个优惠券提示呢?光优惠券不够,还有满减,还有凑单,要计算运费。还要能领取优惠券…… 噢,忘了一般来说还有一个商品推荐,好了现在有两个列表要管理了,你觉得CartActivity 2000行代码能止住么?

在上面这些缺点的描述中,可以看到一个很大的痛点在于:Activity和Fragment不应该管这么多数据处理逻辑

2. 分层架构

如果仔细看自己的项目,可以发现绝大多数数据处理的代码是不需要使用Activity和Fragment持有的资源的(比如Context),而很多时候我们需要多个页面共用一套数据和请求逻辑,很经典的例子是应用中的User对象,一般来说都是全局单例。

这些全局的数据源写多了,很容易就能想到将数据处理统一抽出来形成一层,向上层提供数据接口,而上层并不关心数据的来源(内存,缓存,网络),因为不用从Activity和Fragment拿资源而且主要工作是数据处理,所以这一层是UI无关的,大幅提升了复用性,我把这一层称为DataManager层。

这是我一个项目的包结构

Activity和Fragment剥离了数据处理的责任后,持有DataManager的引用,负责获取数据并展示,向DataManager传递数据,绝不进行网络请求和缓存读写。

一般设计一个app的ui需要多少钱?

设计一个app的ui需要多少钱

如今,不少企业都想拥有属于自己企业或产品的手机APP,但其中最困扰企业主的问题就是:开发一款手机APP到底需要多少钱?

简单点来说,要视手机APP的需求及质量而言,价位一般在几千到十几万左右,更高端的价格更高。

今天,我们就来详细分析一下这个问题,请继续往下看吧。 

一、APP开发款式分为固定款和定制款,两者的价格均不相同

固定款:是指直接套用已有的、现成的APP固定模板,报价是固定的,所需要的功能也是固定的,缺点就是客户拿不到源代码,也不能根据企业需求进行定制,由于源代码是封装的,如果企业以后想进行功能升级或系统维护的话,也不能够实现,只能重新开发一个新的软件。

固定款的APP开发时间短,约2~3日的时间即可完成,费用大约在几千到几万之间。

定制款:定制款是指APP的功能全部重新开发,过程比较繁琐,需要美工、策划、APP开发(前台/客户端/手机端)、后台程序员等工种协同完成,大型的、功能复杂的APP甚至需要数十人的团队。

由于APP的功能和设计都是定制的,因此价格会高些。定制款的开发时间与开发价格是成正比的,开发时间长,大约在两三个月甚至不定的周期里才能完成,而费用大概在几万甚至十几万左右。

因此,想要知道开发一款手机APP需要花费多少钱,企业主首先必须把APP的详细需求和功能告知APP开发公司,开发公司才能报出一个合理的价格。

二、手机APP平台不同,制作成本也不一样

现在市面上流行的手机APP制作平台主要有两种一般包括两种系统:安卓系统(Android)和苹果系统(IOS)。

一般来说,制作苹果系统的手机APP软件费用要比安卓平台的贵一些,因为苹果公司对苹果平台的封闭性和手机APP开发语言Objective-C的难度,都让APP开发者加大了苹果系统手机APP开发的难度。

三、APP制作成本包含参与人员的工资

通常情况下,开发一款APP需要产品经理、客户端工程师、后端工程师和UI设计师各一名,这已经是制作手机APP应用软件比较精简的配置了,所以这些参与人员的工资也是包含在APP制作成本当中的。这些工作人员的月薪加起来可能都会超过4、5万元。

四、APP开发公司的所在地

需要注意的是,同样实力的APP开发公司,在不同的城市也会导致APP的成本费用高一些

app设计思路怎么写范文

一、明确APP的发展战略

要做一款app,首先要明确几个问题:

1.app的用户是谁?

2.用户使用app能够获得什么?

3.公司推出app是为了获得什么?

以上问题,这里不做回答,只是一个粗狂的问题,对于APP的设计并无实际指导意义,只是暂且明确了一个产品的方向。

二、产品的核心功能有哪些?

不同的产品其核心功能大相径庭,这里以电商APP为例,从前端和后台两个方面具体说明电商APP的核心功能需求有哪些?

用户端APP(Android、ios版本),这里只是主要功能,在主要功能的基础之上可以增加一些完善体验的东西。

主要功能:浏览商品(列表页、详细页)、分类查看商品、加入收藏、加入购物车、直接购买、提交订单、支付订单、支付,订单列表页、订单详情页,订单可进行 的操作(取消、支付、确认收货、评价、申请退换货、删除)查看商品物流信息,还有个人信息(昵称、头像、收货信息、订单、余额、积分等等),以及关于 APP端的版本查看,意见反馈,清除缓存,关于我们,用户注册、登陆和用书使用协议等。

APP需要的后台系统搭建,根据不同的电商模式,其后台架构也不同,垂直电商和电商平台有很大的差别,主要看商家端是全部自己来进行管理还是开发加盟的方 式,如淘宝的后台架构和唯品会的后台架构就是两种不同的后台架构。主要架构:账户架构(用户、商家、运营、财务、仓储物流),功能架构,用户的前端展示的 功能需要后台给出相应字段,数据接口。商家端需要发布商品、接单、操作发货、填写物流信息,处理退换货,这些信息同步到用户前端,用户可以随时查看订单的 状态。需要给运营相应的操作权限,商品的排序,BANNER广告,专题页链接,在后台的上传方式和前端的展示位置等等,还有数据分析,不同的商品的销售统 计,订单发生的时间、地点、用户数据等参数进行统计,财务进行相关订单的财务结算,按照商家、用户、订单进行结算,如果能够把控整个数据库安全的情况下也 可以自动结算,仓储物流信息的上传和同步,如果是1小时送这种O2O模式,还要有配送人员的接单、取货等数据同步。

三、详细进行竞品分析

确定了以上的核心功能和需要打磨的细节之外,接下来就是进行细致的竞品分析,这里仍然以电商为例进行竞品分析,竞品分析的工作如何开展呢,这里叙述一下自己的观点。

找到直接或者间接的竞品,大概找5款app左右,下载安卓和IOS端分别使用,使用脑图软件列出核心功能和提高体验的功能,使用axure等原型工具对其产品截图进行纵向和横向分析,包括UI风格、色彩和图标、文字、按钮的颜色、大小、位置等等。

从网上调研相关数据分析竞品为什么这样设计,这样设计的好与不好的地方分别说明;

根据以上数据列出表格,进行筛选,提炼精华部分,去除糟粕部分,给自己的产品设计提供必要的参考。

提出自己的产品差异化功能和特色,电商产品必须结合运营部门进行品类的分析,货源、价格、物流服务等进行分析,单个从APP产品进行优化体验,就算做出花来也没用,因为用户需要的不是产品,而是商品。

从前端展示分析出来其后台架构和相关功能的布局,这个需要观察细节,注重思维能力。比如,你去操作一个款产品,购买数量填写10万个,看下是否有提示库存不足就知道其后台有没有对库存进行把控。

四、真正地开始制作APP开发需求文档

app开发需求文档的标准写法:

1.app开发目的,阐明开发本软件的目的;

2.代开发的app名称

3.参考资料(可有可无)列举app开发需求规格说明时所参考的资料,包括项目经核准的计划任务书、合同、引用的标准和规范、项目开发计划、需求规格说明、使用实例文档,以及相关产品的软件需求规格说明。 在这里应该给出详细的信息,包括标题、作者、版本号、发表日期、出版单位或资料来源。

4.app开发的功能需求。

5.app的运行环境,包括硬件平台、硬件要求、操作系统和版本,以及其他的软件或与其共存的应用程序等。

6.条件与限制,给出影响开发人员在设计app时的约束条款,例如:必须使用或避免使用的特定技术、工具、编程语言和数据库。

7.app功能划分,列举出所开发的软件能实现的全部功能,可采用文字、图表或数学公式等多种方法进行描述。

8.功能描述,对各个功能进行详细的描述。

9.外部接口需求。

10.用户界面,对用户希望该软件所具有的界面特征进行描述。

11.性能需求,包括数据精确度、响应时间、数据转换与传输时间、运行时间等。

12.其他需求,如果不需要增加其他需求,可省略这一部分。

五、交付设计和文案

确定好以上的需求之后,面对设计和研发的需求文档已经告一段落,接下来就要在UI做设计、交互设计师做交互的时候,找相关部门人员完善文案需求,和项目经理一起对工作进行细分,确认时间节点,最后由交互设计师输出一套高保证原型。

六、交付研发

这样子做出来的高保证原型,在各个细节都已经做到了完善,设计、交互、研发、运营等等对工作也已经胸有成竹,那么大家就可以坐下来好好开个简短的会议,确认每个人的具体工作,给出相应的时间节点,然后随时跟进开发需求就可以了。

相关推荐

网友评论

  • (*)

最新评论

  • 访客 2022-07-03 10:11:31 回复

    的用户界面标准及准则。6.不盲从其它软件几乎没有两个APP是相同的,只有可能是类似的,而且是用户界面标准和准则都类似才可以。而面对这些类似软件,绝不能认定它做的都是对的

    1
  • 访客 2022-07-03 07:33:31 回复

    P(Android、ios版本),这里只是主要功能,在主要功能的基础之上可以增加一些完善体验的东西。主要功能:浏览商品(列表页、详细页)、分类查看商品、加入收藏、加入购物车、直接

    2
  • 访客 2022-07-02 23:47:20 回复

    直接改Activity和Fragment的数据控制逻辑。还有个最恼火的问题,那就是业务复杂起来后Activity和Fragment的代码量激增,举一个例子,电商App的购物车,如果只是管理一下

    3