深刻理解对于甲方来说,一个APP价值不菲,这个产品往严重了说可能就是身家性命,所以对于首次制作的用户来说,考虑的细一点无可厚非,但对于技术公司来说就是无数项目中的一个。我会站在甲方立场、技术思维来解答这个问题。
(双方参与。甲方提出大致需求,乙方负责细化整理,最终转换成供后期开发使用的需求文档,也是项目最终的验收文档)
(乙方实施,根据上一步的《需求文档》设计出软件的运行流程,然后甲方确认,得到一个流程图文件)
(根据前两部的《需求文档》和《流程图》制作,界面上要包含这个界面该有的所有的元素和字段,但是这一步是没有具体排版的和颜色渲染的)
根据上一步的原型图,来具体的排版,渲染颜色。最终产物是一套用户界面设计图
就是具体的代码编写
乙方负责,根据需求和后来制作的设计图来一步步检测功能是否有bug
正规公司会把我上面说到的所有东西都提供给甲方
现在国家做只是产权保护,所有的APP要上架必须具备《软件著作权》。有一些三方的代理公司协助办理。
互联网公司一般是三期款项,334的模式支付。首付款30%、设计阶段结束支付30%,项目实施完甲方验收完毕40%。
一定要作为合同的附件,这个是到时候交付的标准。这个文档那个越细越好
a) 软件著作权的申请费(只是产权保护,现在APP上架必须需要的文件,相当于软甲你的专利。一般不加急3个月拿到,700元左右)
b) 服务器的费用
c) 短信的费用(用来发验证码的一般一条6分钱,一万条=600元)
d) 支付权限申请的费用(微信是年费300.支付宝免费,但是这两项后期交易流水都存在手续费)
e) 是否使用了付费的数据库(MySQL免费,Orcale是收费的)
f) 是否使用了付费的第三方SDK(就是开发用到的一些快速集成工具,但是有些是收费的,按年收费一般是。比如要开发直播或者及时通讯)
一些常见的技术公司套路,其实就一个中心思想,价格低的离谱的肯定有问题,便宜的东西除了便宜好哪都不好。一般的甲方思维先找市场上的公司问一圈,然后整理看看哪个公司感觉说的专业,然后再在专业的俩面筛选几个报价不高的反复比较。互联网的坑太深了,方法大致没错,但是你得问清楚技术公司给你的这个报价是基于什么标准?
这里给大家提供一个新名词,随着行业的不断衍生和发展,技术公司也有了自己降低成本的方式,这个新产物叫“SaaS”这里我先不说SaaS不好,因为针对不同人群,SaaS确实也解决了很多人的问题。为了方便大家理解我专门做了个表,你说的那种几千的肯定是SaaS不用怀疑,定制是不可能那个成本把控出一个项目的。
SaaS一般是按年付费的。优劣势我都有列出来大家自己选择。
这里给大家提一个大的方向性问题,国家在抓知识产权保护,就是现在所有的软件上架应用市场都需要《软件著作权》,可以理解为软件的专利,这是硬性指标,也就是说软件开发所用的代码,理论上要保证原创性和独有性,才具备上架资格。实际上目前没有那么严格......不要求全部定制,还是可以复用部分以前的代码的,因为申请软著只需要4000行代码,就是说除了这4000行以外是可以复用的。
并不是有了案例就像大家想的那么简单,随便套套几天就出来一个了。还有一个因素导致软件没法短期内迅速套出来,就是应用商店本身也会有限制,如果两个应用的相似度太高,上架肯定是失败的。一个软件的开发至少要保证4000行的原创代码,以及设计方面的独特,让软件无论是从外面和里面看起来都是定制的才有上架的可能性。
咨询过一些技术公司的人听过这两个名词,却没得本质。因为本身负责跟你沟通的销售本身他自己应该也不怎么清楚.....毕竟是专业性较强的东西,却被很多公司用来偷换概念,欺骗客户。
原生APP就是用官方语言来编写打APP,安卓是用Java写的,用Java来写APP就叫原生,苹果是用OC(Object-C)或者Swift写的,用OC和Swift来编写苹果APP就是原生。这里有两个概念,第一原生的APP苹果和安卓使用不同语言编写的也就是说要写两套代码,但是体验却是最优秀的,因为原生的APP很多资源文件,比如图片、文字等是可以放在手机本地的,一个APP加载东西直接从手机加载当然快。
普及个基本概念:国内目前的操作系统只有安卓和苹果两种,Android系统是google公司开发的开源系统,通俗的讲就是免费的,所以各大手机厂商都用Android系统,苹果用的是不开源的iOS系统,只有他自己能用。至于大家一般听到的”华为“、”三星“、”ViVo“等都是安卓系统。当然国内还有”锤子系统“,基本死了不做描述......
接下来说点专业性强的东西,不感兴趣的可以跳过。
安卓系统和苹果系统从技术角度的分析:
安卓系统的底层是C和C++然后再经过JAVA转译编译从而体现到用户界面。苹果的底层是C,可以直接编译。发现问题没?安卓系统比苹果系统多了一道编译的过程,所以就系统本身而言肯定是苹果的iOS较为优秀的,这就是为什么苹果手机体验要好于安卓的本质原因之一。
还有个原因,安卓使用java写的,java有个垃圾回收机制,这个是最操蛋的,这个机制的初始想法是方便程序员,在用java编写的时候不用管内存的问题,因为机制本身会判断哪些内存该回收了就自动回收,而苹果的OC语言内存是需要程序员专门写方法来回收的。其实呢?
java的垃圾回收机制就是SB,非常不智能,会导致安卓手机的内存得不到妥善的管理,经常有很多已经无效的内存占用手机的存储空间以及手机运行内存,从而导致安卓手机的运行内存永远不沟用,安卓手机的升级方法就是加内存,最早的运行内存1G到现在的32G.....听起来就凶残,但是系统本质的缺点得不到改善,只能从硬件升级配置。苹果呢?
苹果手机的内存一般是1G、2G就这样了,但是处理速度却远快于安卓,系统本身的差距。乔帮主技术出身系统确实优秀,我们可以寄希望华为的”鸿蒙系统“能否得到质变,技术出身的我不做太多期待,面市的时候我估计就是安卓系统的阉割版.....却非要说自己研发的专利系统,就好比当时的锤子系统,不就是个安卓吗?你装啥呢?
套壳应用是指H5编写的:
H5是干啥的呢?它是一种写网页的代码,由于安卓和苹果都做了对网页的适应,所以H5应用只用做一套两边系统都可以用,但是体验比较差,因为网页的所有资源都需要放在云端的服务器,原生从本地手机拿资源,H5需要从遥远的云端做网络请求才能拉下来资源能不慢吗?
神奇的中间产物RN(React Native)
RN之所以说是中间产物是因为他同事具备了原生和H5的双向特点。
第一:RN的部分资源是可以放在本地的,因此加载速度也比较快。
第二:RN也可以只做一套,就适配安卓和苹果两套系统。
是否觉得发现了终极解决方案呢?其实不然,RN还是有一些缺点的。
1.RN本身还不够完善,技术在持续的发展中
2.掌握RN的技术人才非常少,因为比较难学,实用性又较少,学习RN需要同时懂得原生以及H5的js才能够学会,导致RN的人才招聘成本非常高。
上架限制
技术发展到今天,苹果和谷歌本身也出现了,针对RN和H5的政策,这种所谓的套壳应用已经不让上架了,套壳应用对于苹果和谷歌本身是存在风险的,套壳应用的本质是APP端其实不用写什么代码,只需要加载一个网页就行。
一些不法分子就会利用这个漏洞,举例在上架的时候,他的域名绑定的是一个正规的商城,那么在上架成功之后,他会把域名的指向改成一个赌博平台,他的非法赌博平台就成功上架了。所以苹果和谷歌发现这种问题之后,就把h5的应用一棒子打死。从17年的一月开始,该类应用均不让上架。换个角度想问题,google和苹果都是技术公司,你要用我的操作系统,还要用我的应用市场,但是却不用我提供的官方语言开发,你想想这两个巨头能不弄你嘛?
对你有帮助的话,只要一个赞。