本文假定读者是想经过本身的学习和努力,从0到1去制做本身的一款APP产品。javascript
我将从独立开发者的角度,尽量描述一条可行的路径。css
不懂开发的人可能以为软件产品就只是程序员埋头吭哧吭哧搞出来的,但编码其实只是其中一个环节,并非所有。你能够把产品原型理解为房子的设计图,简单的房子可能不须要设计,但稍微复杂一点的,都是离不开图纸的。html
有些程序员想本身作个东西,也不须要和别人协做,以为这个麻烦,就跳过这一步了。但我建议最好仍是先作出原型来,它不只能够帮助你把头脑中的想发快速呈现出来,更重要的是,在你设计原型的时候,你已经把产品在脑海中作了一遍了,这样对你在后面进行软件的模块设计的时候是有极大的好处的。前端
这里推荐几个作 App 产品原型的软件:墨刀 、Axure。若是不是特别清楚原型是什么东西的话,能够到墨刀的讨论区去看看,有一些分享的做品。vue
这年头颜值愈来愈重要了,对于大部分开发者来讲,可能作不到设计惊艳,可是要作到简洁大方并非一件很难的事情。java
秘诀就是要统一,统一好颜色、字体的使用场景,这样出来的视觉效果通常不会不好。react
这里有篇文章介绍了设计规范的内容,你能够去参考一下:APP界面设计规范编写指南。jquery
还有一个就是图标的问题,阿里巴巴图标库有很是多图标,通常App都够用了。android
通常来讲,若是是我本身开发的应用,不多去动手设计页面,都是直接用一套成熟的设计规范,而后对着产品原型来动手编码了。好比 App 的就可使用谷歌出品的 Material Design,后面提到的 Flutter 就已经内置了 Material Design 的 UI 组件了。git
若是你要本身动手设计页面的话,在 mac 上面我推荐使用 sketch 。
接下来就能够考虑开始动手干了。首先咱们要先定一套技术方案,通常来讲,咱们作一个普通的App,须要搞定的东西有除了手机App,还有相关的API服务接口。
首先咱们看一下App端,目前手机平台有两大阵营,一个是 Google 开源的 Android 系统,一个是苹果的 iOS 系统,它们使用的开发语言和开发工具都是不同的。其中 Android 可使用Java 或者 Kotlin 语言来原生开发,iOS可使用 Objective-C 或者 Swift 语言。
若是你要两个平台都各作一个,那开发成本将会很是高。我建议你考虑直接采用跨平台的技术,好比Google 的 Flutter (Dart语言)或者 Facebook 的 Reactive Native (JavaScript语言)技术。
固然你要先调研一下你要作的产品在相关平台下实现有没有可行性,这方面能够咨询一下相关的技术专家。也能够按照经验原则,你在别的App看到的功能,通常都能实现。
不管你使用什么技术,通常来讲在 App 端须要作的事情通常不外乎编写页面,编写交互逻辑和数据通讯,通常采用HTTP协议。
这里涉及到的技术点比较多,个人经验是直接经过一个完整的Demo源码来边学边作是比较高效的学习方法,这个Demo最好足够简单,可是有完整的逻辑交互和通讯过程,好比登陆和数据列表。找Demo能够经过搜索引擎、GitHub、开源中国等平台。
还有一个值得分享的经验是要以官方文档做为主要参考和学习材料,资料够准确,你也会慢慢就能快速索引到相关知识点。遇到一些不懂的知识点要善于Google 或者百度,一门相对成熟的技术,网上都有不少资料的。
若是说App是能够看得见,摸得着的前端,那 API 就是看不到的后端了。这一块的技术就更复杂了,你的App用户是1000人,1W人,100W人,后面系统的设计复杂度是彻底不同的。固然,这里不去讨论负载均衡、分布式设计这些复杂的东西,当前咱们能搭建一个简单的web服务就行了。
虽然我本身用 Java 比较多,但若是你是刚开始接触后端开发,你能够试一下 expressjs,上手很快,对于简单的接口开发是足够啦,语言是 JavaScript,恰好你能够结合一下使用 Reactive Native 来开发App,下降了很多学习和开发成本。
这个是用来方便你后面运营App用的,好比要录入一些资料,管理用户等。要完成这个,在懂得写接口的基础上,你还要学习怎么编写网页。
若是你前面的事情都能搞定,那 HTML 和 CSS 这些对你来讲就是小菜一碟了。若是你还有精力的话,你能够顺便把 vuejs 也看一下,这里推荐一个后台模块:vue-element-admin。
若是实在学不动了,也能够用 boostrap + jquery 来搭建一套视觉还不错的后台系统。
到此,你的 App 就算是完成了,测试和上架那些就不提了。推广和运营又是另一个话题了,有机会再聊。
本文由 Agile Studio 工做室原创,转载请附上下面连接:blog.nowait.xin/Learn-To-Bu…
关于咱们:
咱们是一支由资深独立开发者和设计师组成的团队,成员均有扎实的技术实力和多年的产品设计开发经验,提供软件定制服务。