当前位置:网站首页>自定义View必备知识,Android研发岗必问30+道高级面试题
自定义View必备知识,Android研发岗必问30+道高级面试题
2022-07-07 15:36:00 【InfoQ】
前言
在此之前,先划分三类人,如果不认清自己是什么角色就去玩NDK,你会很糟心:
usercreatordesigner6. Flutter技术优势

- 高效率:采用dart语言编写代码,虽然刚开始上手需要点时间,但熟练后效率比较高。一套代码适用多个平台(Android、iOS、Web),以及高效的Hot Reload能快速辅助调试;
- 动态化:2017年3月苹果下发警告邮件,禁止JSPatch等 iOS App热更新方案,从此iOS动态化成为一个不宜公开讨论的话题。同样地,Flutter引擎在某一个官方版本对动态化做过一些尝试,但后续基于风险考虑移除,当然并没有阻碍大家对技术的探索,这里不方便展开讨论;
- 高一致性:实现UI像素级的控制,Flutter渲染引擎依靠跨平台Skia图形库来实现,仅依赖系统图形绘制相关的接口,比如未来Android会支持vulkan,iOS会支持metal,这些都是通过skia封装调用。可最大程度上保证不同平台的体验一致性,见下图所示。

- 高性能:渲染性能优于现有的各种跨平台框架,可媲美原生性能的跨平台技术方案,Dart代码执行效率比JS高,通过AOT编译成平台原生代码,渲染采用自渲染skia方案,既不需要JS Bridge桥接,也不需要Art虚拟机参与。再从渲染原理来看看Flutter的高性能的底气在哪里。

- Android原生框架,通过调用Java Framework层,再调用到skia来渲染界面;
- 其他跨平台方案(如RN),通过JSBridge中间层来将JS写的APP转换成相应的原生渲染逻辑,可见比Native代码增加了更多逻辑,性能逊色差于原生框架;
- Flutter框架,APP通过调用Dart Framework层,再直接调用到skia来渲染界面,并没有经过原生Framework过程,可见其渲染性能并不会弱于Native技术,这是一个性能上限很高的跨平台技术。
7. 业界发展近况


8. Flutter未来趋势

边栏推荐
猜你喜欢

字节跳动高工面试,轻松入门flutter

Pycharm IDE下载

水平垂直居中 方法 和兼容

Advanced C language -- function pointer

如何选择合适的自动化测试工具?

Skimage learning (3) -- gamma and log contrast adjustment, histogram equalization, coloring gray images

How to add aplayer music player in blog

【MySql进阶】索引详解(一):索引数据页结构

node:504报错

Test case management tool recommendation
随机推荐
科普达人丨一文弄懂什么是云计算?
C语言进阶——函数指针
邮件服务器被列入黑名单,如何快速解封?
LeetCode 1986. 完成任务的最少工作时间段 每日一题
Arduino 控制的双足机器人
Sqlserver2014+: create indexes while creating tables
字节跳动高工面试,轻松入门flutter
字节跳动Android面试,知识点总结+面试题解析
Blue Bridge Cup final XOR conversion 100 points
skimage学习(1)
Reflections on "product managers must read: five classic innovative thinking models"
null == undefined
浅浅理解.net core的路由
Number of exchanges in the 9th Blue Bridge Cup finals
谈谈 SAP 系统的权限管控和事务记录功能的实现
[Seaborn] combination chart: facetgrid, jointgrid, pairgrid
typescript ts基础知识之tsconfig.json配置选项
time标准库
LeetCode 300. Daily question of the longest increasing subsequence
作为Android开发程序员,android高级面试