购买
下载掌阅APP,畅读海量书库
立即打开
畅读海量书库
扫码下载掌阅APP

前言

这是一本关于使用Ionic混合App开发框架来实现移动互联网创新点子的书。

在互联网+的大背景下,不论是企业还是创业者在实施移动应用时都面临着巨大的机遇和挑战。如何精益地实现创新的互联网+的点子是提高项目成功率的关键。同时,如何有效地培养能将点子转化为生产型App的开发者也是不可或缺的成功因素。

笔者认为ionic框架是实现App精益开发的有效工具,而本书不仅仅介绍了如何用ionic框架构建移动应用;更为重要的是展示了有效学习、转化为生产力的一种方法:

目标读者

互联网创业者、企业互联网+业务的决策者、移动应用开发者、企业应用开发者、Web前沿技术爱好者等。

· 面向创业者和管理决策者:主题是精益创新Lean Innovation

· 面向技术决策者:主题是Ionic技术的比较优势(生产力和效能),辅助技术选型。

· 面向开发者和爱好者:主线是Learning by Crafting,而且是由浅入深、每个例子程序是迭代开发、渐进完善。我们不堆砌代码,而是引导和辅助(co-learning and assist),很多时候学习需要通过google、stackoverflow,ionic各论坛博客等各种方式找解决方法。

阅读导引

如果您是创业者或管理决策者

准备开展移动互联网业务,在考虑如下问题:

怎样构建App才能够比较精益?

是自建App开发团队还是外包App开发?

作为业务所有者,对于高频试错的创业型需求,如何做才能让业务驱动技术?

什么是优秀的App交互体验?如何做到设计驱动?

该招募什么背景的团队?好的全栈产品经理、全栈工程师具备哪些素质?

那么推荐阅读如下章节:

前言;第一章;第五章的概要与小结;第六章里每个小节的概述以及任务小结;第七章的概要与小结;第八章的原型设计与设计驱动;

如果您是技术决策者

在考虑如下问题:

App技术路线和构架选择?

原生还是混合?

培养Ionic全栈工程师的投入产出比?

Ionic应用的后台服务以及BaaS的选择?

Ionic应用的技术和设计如何有效协作?

App如何不仅仅依赖于App Store,做到SEO或者社交引流?

那么推荐阅读如下章节:

前言;第一章;第二章;第三章;第四章的概要与小结;第五章的概要与小结;第六章里每个小节的概述以及任务小结;第七章的概要与小结;第八章的原型设计与设计驱动;

如果您是Web爱好者及开发者

希望掌握混合App开发的A-Z,如果你没有javascript基础,有兴趣step by step学习Ionic相关,可以在 http://appcamp.io/ 上开始;而后进入我们的任务,推荐全部章节。

如果您没有javascript基础,但有其他编程语言的经验,可以跳过appcamp.io,从从第一章ionic的介绍熟悉起来,而后进入我们的任务。我们一共有5个彼此独立的App例子,您可以根据空余时间动手完成其中至少3个。

如果你有一定的javascript基础,那么可以快速浏览前三章后直接进入我们的任务(第四章到第八章),learning by crafting。您可以根据空余时间动手完成其中至少3个。

完成所有任务的总学习时数预估:75小时

学习的方法

以实现点子为目标,自顶而下地解决问题(Problem-Oriented,in top-down way)。

面向“学”而非“教”,在实践中学习(Learning by Crafting,solving problems in bottom-up way)。

开篇强调学习的方法的主要原因是:

1. 希望读者能够最有效能得掌握工具(effective learning)、为解决实际问题服务。莫要成为学习工具的专家。要记住一点:任何 学习 在没有形成生产力之前,都是在支出宝贵的时间( 成本 );而只有当所学能解决问题、为他人 服务 时才能产生价值( 收入 )。

2. 自顶而下的学习方式适用于各类解决问题的场合。把问题拆分、逐个解决的过程中,学习自然是从面到点、逐步深入的过程。具体到某个点上,你会发现很多都已经有前人解决掉了(或者有现成框架、或者github上有现成的库、或者Web上别的团队;或者已有很酷的前端设计模板), 切忌 重复造轮子。如果哪个问题没有人解决过或解决得不好,那么恭喜,这可能就是一个改变世界的机会。

3. 在“把你教会”和“你能学得比我更好”之间,我们选择后者。因为实际问题千面万方,我们能做得是分享和指引,而你才是解决问题的人。这也相当于造房子,不动手是造不出房子的,作为学徒你要能设计、搭框架、做沙盘、出样板。然而,学成之后你很可能、也应该比前辈造得好,因为通过互联网你可以获得不少顶级的师傅。

4. 当下在线技术教学内容非常的丰富,ionic相关的技术在udemy, coursera, udacity以及一些专业论坛和博客上都有,我们不可能样样精通,而且在这个众创的时代、我们也无需样样精通。只是走过一些时日、分享我们在学习与项目中的体会;期待和强大的你一起解决移动互联网创业路上遇到的问题。

本书中你能得到什么?

1. 以精益的方式,从点子到App;From idea toAPP, in a lean way;

2. 与作者一起共学、众创;Co-learning with authors, to crowd-innovation;

3. 使用Ionic技术框架,仅用一套代码开发原生体验的跨平台移动应用、以及原生体验的WebAPP;

4. 实践Ionic与各种后台的集成方式,包括WordPress、Parse Server等;

5. 使用各类原生组件,如摄像头、手机相册、分享等等;

6. 客户端App使用本地存储;

7. 使用angularjs及ionic专属事件来实现跨页面、跨控制器通信;

8. 以组件方式自定义directive及使用第三方directive;

9. 使用Sass自定义风格和主题,设置区块和元素的CSS属性;

10. 调用外部服务,如新闻源、在线地图、天气预报等;

11. 基于AngularJS,为Ionic移动应用集成不同的后台服务(Backend-as-a-Services);用户鉴权(注册,登录,找回密码)、文件图片存储等;

12. 预览、测试及调试Ionic应用;

13. 构建Ionic应用并发布,或作为Web应用部署至云主机。

还有一些Ionic的同好,加入QQ群:302915811(名称:Start with Ionic)

实例预览:从点子到App

本书包括四个点子:一个简单的App,一个天气App,一个新闻App,以及一个图片社交App。每一个点子都从一个想法开始,渐进式地完善点子、增加功能,完成多个迭代后成为一个MVP(Most Viable Product)可预览的版本。以下是App的预览:

简单App

Ionic View ID:9f52eec1

天气App

Ionic View ID: 3c307410

新闻App

Ionic View Id:fb741a1a

社交App

Ionic View Id: f3c520d2

你可以现在就通过Ionic View来预览这些App,在手机上体验这些跨iOS/Android/Windows设备的混合APP。用Ionic View预览App(包含原生功能)而无需App Store发布,也是Ionic重要特色之一,这个特色在原型(prototyping)的迭代改进与跨团队沟通时很有用。 点此 了解Ionic View的用法。

小贴士:3指向下滑屏可退出当前预览的App。

或者你也可以打开如下网址,体验WebAPP。

天气App

https://ionweather.herokuapp.com

社交App

https://ionsocial.herokuapp.com

注意:初次打开herokuapp会比较慢,主要原因是heroku的免费云服务器默认是休眠状态。一旦加载完成、再次打开会很快。另外,手机原生功能在Web端不可用。

获取实例源代码

本书中的App实例均附源代码,方便读者练习与参考。第四章至第八章,每章的本章概要中有对应git下载链接。

版权声明与致谢

作者简介

李永强

coolwp.com 博主

bund.io 数字码头,架构师

拥有十三年的IT从业经验,包括五年的研究院工作经历,知名 WordPress 开发者, WooCommerce 官方简体中文维护人。现正走在创业的路上,主要提供在线教育和电商解决方案。

刘挺

swotin.com,合伙人

bund.io 数字码头,架构师

全球互联网技术大会(GITC),专家顾问

领英会 Female Achiever Union,CTO

超过十五年信息行业咨询和解决方案开发的经验,包括七年跨国公司工作经历,曾就职于SAP研究院等企业,五年创业公司经历及五年以上跨国项目管理经验。现正走在创业的路上。

详见: https://www.linkedin.com/in/timliuting/

版权声明

本书版权归作者所有,他人不得以任何方式或任何载体未经授权地进行复制传播。书中无马赛克处理的头像为作者本人照片,未经作者授权不得使用。

本书转载或引用外部数据源的截图中的数据归该数据源所有。

本书示例中的个人信息为演示用的虚拟信息,如有雷同,纯属巧合。 ma5tYydgxDNmQgZjIqMVLaA7MD/DvPRMT4kqZp4NqeW0rXeTKqxNRYg2V/G5sIwb

点击中间区域
呼出菜单
上一章
目录
下一章
×