前言
十多年前,iPhone的诞生开启了全新的“移动互联网时代”。经过十余年的发展,移动互联网已超越传统互联网,成为当今互联网的主要发展方向。面对广阔的市场,传统互联网企业纷纷投入移动互联网的怀抱,开发移动互联网产品。
随着移动互联网的快速发展,移动互联网技术变得越来越成熟,而移动应用开发也从如何开发,向如何更高效、更低成本地开发发展。众所周知,传统的原生开发技术虽然成熟,但由于开发效率和成本的限制,已经越来越无法满足移动互联网应用快速迭代的需求,此时移动跨平台技术的开发与应用成为移动互联网行业发展的迫切需求。
近年来,伴随大前端概念的提出和兴起,移动端和前端的技术边界变得越来越模糊,而使用前端技术来开发移动应用成为很多中小公司的首选。在移动跨平台技术演变的过程中,不管是早期的PhoneGap、ionic等Hybird混合开发技术,还是近年来令人耳熟能详的React Native、Weex和Flutter等移动跨平台技术,无不体现着移动应用开发的前端化。
目前,移动跨平台技术方案主要分为3类:第一类是使用原生内置浏览器加载HTML5的Hybrid技术方案,采用此类方案的主要有Cordova、ionic和微信小程序;第二类是使用JavaScript进行开发,然后使用原生组件进行渲染的方案,采用此类方案的主要有React Native、Weex和快应用;第三类是使用自带的渲染引擎和自带的原生组件来实现跨平台的方案,采用此类方案的主要是Flutter。
作为目前最流行的跨平台技术方案之一,Flutter在移动跨平台开发方面无疑是非常优秀的。多年以前,当我们讨论移动跨平台开发时,总会有人提出跨平台应用速度慢的“刻板”问题。现在,使用Flutter自带的渲染引擎完全可以带来媲美原生应用的用户体验,代码可同时运行在iOS、Android等多个平台,也带来了应用开发效率的提升。
当然,不可否认的是Flutter目前仍处在发展阶段,被主流公司全线应用并毫无顾虑地接入还需要一定时日。并且Flutter也不是没有缺点,比较明显的缺点就是Flutter不是一个彻底的跨平台技术框架,如果应用开发中涉及混合开发,还需要开发者具备原生开发知识。另外,复杂的UI组件和全新的Dart语法也在无形中增加了学习成本。不过应该看到,Flutter虽然学习起来比较复杂,但是其优秀的性能和全新的跨平台思想是每位立志改变移动开发现状的开发者无法拒绝的,相信不久的将来,Flutter势必成为移动跨平台技术的“领跑者”。
本书特色
1. 侧重基础,循序渐进
本书涵盖Flutter跨平台开发所需的各方面知识,并且对知识和技术要点由浅入深地进行讲解,非常适合初学者。
2. 大量项目实例,内容翔实
本书在讲解Flutter的各个知识点时,运用了大量的实例并配有运行效果图。读者在自行练习时可以先编写代码,而后查看实际运行效果。
3. 实例贴近实际开发场景
本书采用的实例大多贴近实际开发场景,通俗易懂的文字描述也有助于读者理解。
适合人群
本书是一本Flutter入门与实战类型的书籍,基于Flutter 1.17.0进行编写,非常适合前端开发者和移动Android/iOS开发者。因此,不管是一线App开发工程师,还是有志于从事App开发的前端开发者,都可以通过对本书的学习来获得移动跨平台开发的技能。