App产品设计『技术篇』主流技术基础概念

这是《App产品设计指南》系列文章的第5篇内容,更多精彩可以点击下方链接查看。

《App产品设计指南》专栏目录

在本文中我会介绍一些和客户端开发的技术知识点,大家有选择的学习一下即可。

产品经理要不要懂技术

这个问题困扰了无数产品经理,到目前也没有一个定论。我个人的看法是产品经理要懂得技术,适度就好;只要能做到和开发小哥哥正常的沟通就没有问题了。

懂技术的好处:

能和技术流畅地沟通,知道大致的实现原理。比如说技术说接口,Redis,时间戳不至于一脸懵逼;比如说app里面的活动详情适合用H5而不是原生,即便技术说H5效果不是很好也坚持用H5实现,因为H5只是效果和原生相比略差,但是如果用原生了出现问题必须发包才能解决问题,老板分分钟教你怎么做人。

懂技术的坏处:

过多的考虑实现方式和难易程度,纠结在和技术讨论沟通里面,而忽略了从产品本身的合理性,是否能解决用户场景这些地方深入思考。

不懂技术的好处:

跳出技术实现,更多地考虑体验、场景、流程这些东西,不懂技术就不需要过多地为技术考虑。因为怎么实现那是技术的事情,即便有难度,缺资源,那不应该是PM考虑的事情。只要需求是合理的,那么就应该被实现,而且多半会有比较成熟的解决方案。

不懂技术的坏处:

肯定是容易被骗,明明很简单的任务大笔一挥就随便报工时,或者还说实现不了。我就见过2个场景几乎一样的功能,直接报了4*2=8小时的例子=_=也见过一个简单的前端样式,和我说.net可以实现,PHP不能实现的例子。

平台对比

目前主流的手机操作系统有Google Android和苹果的iOS,其他系统因为份额比较小,这里就不做介绍了。下面挑选一些关键点将这两个系统进行对比。

内存机制

Android是真正的多任务系统,系统不会主动把后台程序结束,除非你手动结束一个任务。

iOS则是伪多任务,在内存不足的情况下,不会提示你就直接把后台程序结束了,保证当前的程序运行正常。原来的应用不占用cpu和内存,只保留退出时的界面状态。另外极少数系统级的应用可以后台运行,比如音乐播放。

所以在使用起来iOS才会让人感觉流畅许多。最新的安卓手机硬件配置不断提高,软件也在逐步优化,两者的差异在慢慢变小。

消息推送

 Android系统的推送属于各自为政,每个应用独立的向客户端推送消息。一堆应用频繁地推送带来的只能是体验的降低。

iOS系统的推送则是全局的,这个服务依赖于苹果官方的支持。应用按照一定的规则给苹果服务器发送通知,官方再推送给客户端,由用户自行选择是否查看消息。

开发语言

Android的开发语言是Java,底层少量用到C/C++;iOS则是Objective-C,苹果新推出了基于脚本的编程语言 Swift。Swift 有类似 Python 的易用性,又有较强的运行效率,目前也有比较广泛的应用。

应用发布

Android的测试发布非常简单,生成APK文件后传送到设备上就可以安装。正式版的发布需要提交到不同的应用市场,一般审核都很快,大概几天的时间,用户就可以下载安装使用了,也可以在应用官方网站上下载使用。

iOS的测试发布相对复杂一点,以fir.im分发服务平台为例,需要进行相关配置,并添加移动设备的udid,用户使用苹果设备扫描二维码或者访问链接来下载测试应用。正式版应用需要提交到App Store,审核周期相对较长,用户只能在应用商店中下载安装应用。

主流开发方式

原生开发

使用原生系统内核开发,直接在系统上操作。它的优点是性能稳定,交互体验比较好,能访问本地资源(比如相机,通讯录等),操作速度快等;缺点是开发周期相对较长且需要应用商店审核,如果发现有问题需要重新发包才能解决,用户机器上可能会存在不同的版本。像抖音,饿了么这些APP中的大多数页面都属于原生开发。

H5开发

H5是HTML5的简称,不需要下载安装,有网络即可使用。它的优点是迭代速度快,开发成本低,能够跨多个平台和终端等;缺点是页面响应时间相对较长,且交互效果要比原生实现差一点,无法满足个性化场景。微信和浏览器中的页面都属于H5开发。

混合开发

混合开发是指出集合原生开发和H5开发两种模式,比如说平台常见的运营活动一般都是混合开发。原生模式定义好页面头部功能,H5实现页面的主体内容。

服务器

服务器可以指硬件,也可以指软件,我们这里是特指软件。Web服务器一般指网站服务器,是指驻留于因特网上某种类型计算机的程序,可以向浏览器等Web客户端提供文档,也可以放置网站文件,让全世界浏览;可以放置数据文件,让全世界下载。

目前主流的Web服务器主要有Apache、Nginx、 IIS等。Tomcat、Tengine也是性能比较好的Web服务器。产品经理在自己电脑上部署服务器软件,把生成的html原型文件放到里面,其他人就能通过浏览器直接访问和使用。快速部署的话可以考虑直接使用phpstudy,一键部署php+mysql+apche环境。

数据库

数据库是以一定方式储存在一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合,可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新、删除等操作。

数据库分为关系型数据库和非关系型数据库。其中关系型数据库更符合我们所熟知的逻辑世界(比如说用户信息包括头像,昵称,生日;文章信息包括标题和正文;某一个用户发表了一篇文章,这个概念很容易被理解),能够非常方便的使用和维护;但数据量一旦多起来,关系型数据库性能就会变差,效率不高。

非关系型数据库主要是基于“非关系模型”的数据库,非关系型数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。它的缺点是不提供SQL支持,没有事务处理。

目前主流的关系型数据库主要有MySQL、Oracle、SQL Server、PostgreSQL等;非关系型数据库主要有MongodDB、Redis、Hbase、Neo4j等。

缓存

缓存就是临时存储的文件,至于是把文字、图片还是视频放到缓存,需要根据业务来判断。缓存主要分为以下几个类型:

一级缓存,也叫做内存缓存速度是最快的,程序退出数据就消失,不能一直保留;

二级缓存,也叫做硬盘缓存,容量可以更大,速度要慢一些,程序下次启动时候,依然可以使用;

三级缓存,又叫做网络缓存,不优先加载,速度慢,浪费流量。

API

API(Application Programming Interface,应用程序编程接口)是一些预先定义的函数,目的是提供应用程序与开发人员基于某软件或硬件得以访问一组例程的能力,而又无需访问源码,或理解内部工作机制的细节。

通俗来说就是其他人只要按照一定的参数就能调用你开发的功能而不需要关心具体细节。

一般接口包含以下几个内容:

1.接口地址

服务器上接口的地址,如下所示:

https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=APPID&secret=APPSECRET

2.请求方法

http请求方式有两种,一种是get方式,请求参数会用“?”作为分隔符跟在请求资源后面;另一种是post方式,请求参数放在了最后面的位置。简单地说,get一般用于获取/查询资源信息,而post一般用于更新资源信息。

3.请求参数

想要获得数据或者进行操作发给对方的参数,算是投石问路吧。

4.返回内容

返回内容一般会以json或是XML的形式返回,当然现在json格式相对使用的多点。

至于什么是json和XML,好学的同学肯定有办法知道的。

5.错误代码

错误时返回的信息,正常固然好,但是不可避免的会出现各种异常,错误代码就是告诉你这些的。

在写作过程中,如果有意见或者想法,欢迎有兴趣的读者添加我的微信一起交流探索,共同进步。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,163评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,301评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,089评论 0 352
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,093评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,110评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,079评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,005评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,840评论 0 273
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,278评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,497评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,667评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,394评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,980评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,628评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,796评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,649评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,548评论 2 352

推荐阅读更多精彩内容

  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,096评论 1 32
  • 妹妹因为来科大参加研究生的夏令营,我们才得以有机会一起好好吃个饭,然而,因为着装风格,被一个晚上的轮番轰炸,后来,...
    君山红叶阅读 482评论 0 0
  • 一早上从弗赖堡出发,准备在进入瑞士之前换些瑞郎再买高速通行票,瑞士境内的高速公路是按年收费,虽然我们临时来玩也要在...
    包哥_9f29阅读 225评论 0 0
  • 1 根据人民网报道“不满一岁的宝宝在高铁上哭闹”,一男乘客好几次回头,最后忍不住说了句:“能不能安静点,我们都很累...
    潇湘雨妃阅读 388评论 0 1
  • 上次分享了第一章的内容,今天跟大家分享一下,第二章内容的读书笔记。 相比技能,思考才能让你走得更远。不知道你们有没...
    田沐北玲阅读 284评论 0 1