谁告诉你 Flutter 会凉了的?
又是谁告诉你flutter不值得你去学的?
现阶段搞app原生开发确实日薄西山Q,毫无前途
目前来说,flutter还是有很大潜力,至少我身边不少人再用flutter开发的。
我从flutter一发布就开始做futter开发,到现在已经做了四年,这四年做了不少项目,也接触了不少flutter开发者,从我接触到的人看,纯前端背景转做flutter的,在我眼里没有一个合格的!
这是因为futter毕竟属于是一个客户端·开发,而不是前端,无论是安卓还是iOS,这些都是原生客户端开发,这些门槛比前端要高。
你做flutter开发,至少要懂一点原生开发,而且代码也不能按照s那种脚本语言“风格来写。纯前端写出来的futter项目,大部分都是垃圾代码,后续几平无法维护。如果写过几年Java代码,那你写的flutter代码只,起码有点规矩,起码融入了一些面向对象编程设计思想
有人质疑我没有例子无的放矢,那我就举个常见的例子。
前端写flutter,似乎根本不知道什么叫依赖倒置原则只,一切都耦合到一起。他就不知道弄个抽象接口层来隔离。譬如对数据库的操作,直接合用hive库写死。
一开始hive数据库勉强够用,后面数据越来越多,hive%就完全不行,这时候想切换到sglite%就异常痛苦。你要想改造,就得在他一坨屎一样的代码里理清头绪,用sgflite重写。如果他知道什么叫依赖倒置,完全可以把上层需要对数据操作的接口抽象出来,底层直接实现这些接口方法切换到sglite就行了
我也面试过一些flutter求职者,我一般从这几个方面提问,具体来说,是Flutter开发者应该掌握的几个方面:
- Dart代码编写的设计思想与规范:了解Dart语言的基本特性以及编写高质量代码的规范,有助于提高开发效率和代码质量。
- Dart异步模型与Flutter事件循环原理:掌握Dart的异步编程模型和Flutter的事件循环机制,有助于更好地理解和处理异步任务。
- Flutter性能优化:了解如何优化Flutter应用的性能,包括布局性能、渲染性能、内存占用等方面的优化方法。
- Flutter状态管理与组件化开发:掌握状态管理方案和组件化设计原则,有助于提高应用的可维护性和扩展性。
- Flutter与原生结合部分的知识:包括插件、与原生通信、Android和iOS基本常识等。深入了解这些内容有助于更好地与原生应用进行融合。
面试求职者时,这些问题可以作为考察其Flutter开发能力的依据。但目前市场上很多Flutter开发者在这些方面的素质尚未达到要求。因此,想要从事Flutter开发的前端开发者,可以从这些方面入手,提高自己的综合素质。
所以不是Flutter 凉了,而是很多滥竽充数的人把这个环境搞臭了。
关于 Flutter 真正的定位
最后聊聊 flutter 的定位,flutter 作为跨平台 UI 框架,很众多跨平台框架一样,它是和原生相辅相成的存在,跨平台解决的问题是:
1、开发成本
直接学 Java/Kotlin 、Object-C/Swift 、JavaScript/CSS 去写各平台的代码可以吗?
当然可以,这样的性能肯定最有保证,但是跨平台的主要优势在于代码逻辑的复用,减少各平台同一逻辑,因人而异的开发成本。对于企业而言,一套业务逻辑可以在多处使用是最理想也是最保险的。
2、学习机会
一般情况下,各平台开发者容易局限在自己的领域开发,而作为应用开发者,跨平台是接触另一平台或领域的过渡机会。
3、团队结构
一般而言做跨平台的团队还是会有 Android 和 iOS 的原生开发,甚至于在大中型项目中人数都不会变少,但是用跨平台会让所有人都参与都一个开发进度中,而不是 iOS 和 Android 各做各的,最后再扯谁的实现有问题。
你要真正懂这些,就不会觉得Flutter 凉了。
每次出现新的技术框架都有猛吹的,也有抗拒的,
为什么有抗拒的?因为人是懒的,也是容易自傲的,当有新东西出来,还比自己现在用的好,心灵深处就会有一个声音
不断的暗示你(你的技术已经过时了),让你会觉得烦躁,你就会觉得焦虑,让你难以面对。
但是像腾讯、百度、阿里、京东、美团、字节、快手等大厂都在招聘Flutter相关的岗位,从做引擎架构到做应用开发的都有。
不只是大厂,很多创业公司也开始选择Flutter作为app开发技术栈,反正现在招android/iOS开发越来越难了,与其每边各招一个人,何不选择Flutter把一个人当两个使?以前很多创业公司是用React Native的,现在有了性能更好的Flutter也开始慢慢迁移技术栈了。
综上,我们可以知道Flutter目前在业界的影响力已经不小了,而且还在慢慢扩大。
所以对技术有追求的移动端开发,也可以尽早开始学习Flutter。无论几年后Flutter发展成什么样,只要现在大厂还有加大对Flutter投入的趋势,你入坑Flutter就会更有竞争力和机会。假如Flutter今后大火了,那早入局的你就能吃到先行者的红利;即使Flutter几年后凉了(概率很小),学习Flutter的各种知识你也不亏(Flutter组件化开发、声明式语法、Widget - Element - Render Object 三棵树和渲染管线都是很值得学习和研究的理念),跟随大厂的节奏也会让你走在业界的前沿。
《Flutter Dart 语言编程入门到精通》
- 第一章 Dart语言基础
- 第二章 Dart 异步编程
- 第三章 异步之 Stream 详解
- 第四章 Dart标准输入输出流
- 第五章 Dart 网络编程
- 第六章 Flutter 爬虫与服务端
- 第七章 Dart 的服务端开发
- 第八章 Dart 调用C语言混合编程
- 第九章 LuaDardo中Dart与Lua的相互调用
《Flutter实战:第二版》
- 第一章:起步
- 第二章:第一个Flutter应用
- 第三章:基础组件
- 第四章:布局类组件
- 第五章:容器类组件
- 第六章:可滚动组件
- 第七章:功能型组件
- 第八章:事件处理与通知
- 第九章:动画
- 第十章:自定义组件
- 第十一章:文件操作与网络请求
- 第十二章:Flutter扩展
- 第十三章:国际化
- 第十四章:Flutter核心原理
- 第十五章:一个完整的Flutter应用
标签:会凉,Flutter,Dart,跨平台,开发,告诉,组件,flutter From: https://blog.51cto.com/u_16163452/7343500