热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

跨平台开发最终选择了Flutter

篇首语:本文由编程笔记#小编为大家整理,主要介绍了跨平台开发最终选择了Flutter相关的知识,希望对你有一定的参考价值。

篇首语:本文由编程笔记#小编为大家整理,主要介绍了跨平台开发最终选择了Flutter相关的知识,希望对你有一定的参考价值。






  一直以来都希望自己具备多端开发能力,最终选择了flutter。下面简单说说作为一个ios从业者选择flutter的心路历程。


Hybrid混合开发

  这个是最早接触,也是了解程度最深的一个技术,主要用框架有Cordova(前身PhoneGap),JSWebBridge这些。对于这些框架的原理也有深刻的认识,但是这样的跨平台开发,仍然受限于webView,而且作为只具备单端开发能力的人员来讲,仍然需要很大程度关注其他端的技术,优势是可以将之前web的内容平滑的迁移。对于之前web应用来说很是友好。性能受限于webView的性能。


React Native 与 Weex

  团队中的项目有一些使用了React Native,自己也写过一些RN的交互插件,但是自己并不是太想对RN有深入的了解,由于Vue学习已经有了一定的深度,作为非前端人员,不太想了解太多js框架,一个就可以了。记得当年Weex横空出世的时候,自己充满了期待,后续结果相比大家也知道,只是Vue已经学了,放弃这个多少有点不舍。性能的话由于需要把js转换为原生代码,仍然比原生有一定差距。


Flutter

  这个个人认为才是真正意义上的跨平台开发,Dart语言自己看了下和swift很多地方很像,另外flutter的响应式编程,这一块自己在从事原生开发时也在主推。flutter的布局方式等之前也有了解过。基本上一个星期把书看完,又花了一个星期就写出来了一个工具类小应用。最大的感触就是很大程度上降低了另一端开发的门槛。谷歌对开发者的友好程度,是苹果比不了的。也可能是要抢开发者(😀,感觉谷歌的野心很大)。另外flutter学习的过程中,UI的布局,绘制,以及布局算法,绘制算法。大家感兴趣的也可以看看。性能方面flutter非运行时编译的话,由于是自己研发的引擎,性能已经非常的接近原生了。


Flutter学习资料

《Flutter实战·第二版》,这本电子书强烈建议大家看下,技能和原理讲的都很详细,另外看完记得给作者打个赏(😀)
《从零开始学Flutter开发》这本书也挺不错的,里面关于单元测试,flutter和原生通信这一块,以及flutter发包写的挺不错的,两本书完善起来基本上就能具备独立的flutter开发能力了。
Flutter Widget仓库 这里面有各种各样的widget。学习的过程中也发现了一个现象,flutter相关书籍的作者基本上都是之前从事安卓开发,书中以及相关的博客里对于iOS这一块描述较少。
《Dart语言官方文档》
我这边创建了一个QQ交流群,欢迎有志于进行flutter学习的小伙伴进群交流学习。







推荐阅读
  • 解决PHP与MySQL连接时出现500错误的方法
    本文详细探讨了当使用PHP连接MySQL数据库时遇到500内部服务器错误的多种解决方案,提供了详尽的操作步骤和专业建议。无论是初学者还是有经验的开发者,都能从中受益。 ... [详细]
  • 本文总结了2018年的关键成就,包括职业变动、购车、考取驾照等重要事件,并分享了读书、工作、家庭和朋友方面的感悟。同时,展望2019年,制定了健康、软实力提升和技术学习的具体目标。 ... [详细]
  • 本章将深入探讨移动 UI 设计的核心原则,帮助开发者构建简洁、高效且用户友好的界面。通过学习设计规则和用户体验优化技巧,您将能够创建出既美观又实用的移动应用。 ... [详细]
  • 本文介绍如何解决在 IIS 环境下 PHP 页面无法找到的问题。主要步骤包括配置 Internet 信息服务管理器中的 ISAPI 扩展和 Active Server Pages 设置,确保 PHP 脚本能够正常运行。 ... [详细]
  • CSS 布局:液态三栏混合宽度布局
    本文介绍了如何使用 CSS 实现液态的三栏布局,其中各栏具有不同的宽度设置。通过调整容器和内容区域的属性,可以实现灵活且响应式的网页设计。 ... [详细]
  • 本文详细介绍了如何在Linux系统上安装和配置Smokeping,以实现对网络链路质量的实时监控。通过详细的步骤和必要的依赖包安装,确保用户能够顺利完成部署并优化其网络性能监控。 ... [详细]
  • C++实现经典排序算法
    本文详细介绍了七种经典的排序算法及其性能分析。每种算法的平均、最坏和最好情况的时间复杂度、辅助空间需求以及稳定性都被列出,帮助读者全面了解这些排序方法的特点。 ... [详细]
  • 深入理解 SQL 视图、存储过程与事务
    本文详细介绍了SQL中的视图、存储过程和事务的概念及应用。视图为用户提供了一种灵活的数据查询方式,存储过程则封装了复杂的SQL逻辑,而事务确保了数据库操作的完整性和一致性。 ... [详细]
  • 数据库内核开发入门 | 搭建研发环境的初步指南
    本课程将带你从零开始,逐步掌握数据库内核开发的基础知识和实践技能,重点介绍如何搭建OceanBase的开发环境。 ... [详细]
  • 二维码的实现与应用
    本文介绍了二维码的基本概念、分类及其优缺点,并详细描述了如何使用Java编程语言结合第三方库(如ZXing和qrcode.jar)来实现二维码的生成与解析。 ... [详细]
  • 本文将介绍如何在混合开发(Hybrid)应用中实现Native与HTML5的交互,包括基本概念、学习目标以及具体的实现步骤。 ... [详细]
  • 使用Maven JAR插件将单个或多个文件及其依赖项合并为一个可引用的JAR包
    本文介绍了如何利用Maven中的maven-assembly-plugin插件将单个或多个Java文件及其依赖项打包成一个可引用的JAR文件。首先,需要创建一个新的Maven项目,并将待打包的Java文件复制到该项目中。通过配置maven-assembly-plugin,可以实现将所有文件及其依赖项合并为一个独立的JAR包,方便在其他项目中引用和使用。此外,该方法还支持自定义装配描述符,以满足不同场景下的需求。 ... [详细]
  • 本文详细介绍了 Dockerfile 的编写方法及其在网络配置中的应用,涵盖基础指令、镜像构建与发布流程,并深入探讨了 Docker 的默认网络、容器互联及自定义网络的实现。 ... [详细]
  • c# – UWP:BrightnessOverride StartOverride逻辑 ... [详细]
  • 解决Linux系统中pygraphviz安装问题
    本文探讨了在Linux环境下安装pygraphviz时遇到的常见问题,并提供了详细的解决方案和最佳实践。 ... [详细]
author-avatar
娜丷衣阵风丶
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有