范文健康探索娱乐情感热点
热点动态
科技财经
情感日志
励志美文
娱乐时尚
游戏搞笑
探索旅游
历史星座
健康养生
美丽育儿
范文作文
教案论文

Flutter毁了客户端和Web开发

  转自:英文:Luke Urban,翻译:CSDN
  原文链接:https://itnext.io/flutter-is-no-longer-a-cross-platform-framework-b53c87b14c39
  Google 重磅发布了专为 Web、移动和桌面而构建的 Flutter 2.0!将 Flutter 从移动开发框架扩展成可移植框架,因而开发者无需重写代码即可将应用扩展至桌面或网页。看似为了帮助Web和移动开发者,实际上不然,而本文作者认为,现在不应该再去想创建一个需要部署到所有平台的应用程序,Flutter反而毁了Web和移动开发。
  以下为译文:
  大家好,我是一名软件开发人员,我叫 Luke。
  由于我选择了这个相当大胆的标题,为了避免误会,我要对其进行详细的解释。从技术角度来讲,Flutter 的确是一个跨平台的框架。也不止其,所有跨端技术都是非常糟糕的设计。
  但是,我有点不同的看法。
  从 Flutter 2.0 发布以来,我就察觉到它被炒的有点过了。但不应该再去想创建一个需要部署到所有平台的应用程序,Flutter反而毁了Web和移动开发。
  请不要误会,我并不是要否定它,其实我也是 Flutter 的粉丝,亦将一如既往的拥护它。
  我在日常工作中经常使用 Flutter 来开发 iOS 和 Android 应用程序。由于早前我是用 Kotlin 或者 Swift 来开发原生的应用,支持多种特性,如:扫描 / 页面识别、pin/biometric 应用程序认证、通知、firebase 统计和一些高级的用户流,现在用 Flutter 来开发应用,我对 Flutter 的优缺点的了解更加透彻。  1、六大平台
  通过今年的 Flutter Engage 会议我们可知已经可以使用 Flutter 在 iOS、 Android、 Mac、 Windows、 Linux 和 Web 这六个平台中的任何一个平台上开发应用。这太棒了!但事情远没有这么简单...你的确可以在这 6 个平台上部署你的应用程序,但是说实话,我很少这么做。我很难想象一个人会在不同的平台上部署同一个应用程序,我认为应该根据不同的平台特点使用不同的设计模式。在大型设备上使用底部弹窗、应用程序条、简洁的列表就很别扭。一般来说,适合在移动设备上的组件和设计模式在桌面设备上却不合时宜,反之亦然。
  我的一个非常好的朋友 Filip Hracek 在 Flutter Engage 演讲中提到"神奇的设计开发者"的相关话题,我非常赞同他的看法。我认为需要有更多的开发者真正知道他们正在做的是什么,而且不是盲目地跟从迭代面板。
  *Scrum Sprint* 是一个可重复的固定时间框,在这个时间框内创造一个高价值的产品。-- 维基百科
  强烈推荐大家观看 Filip 在 Youtube 上的相关视频片段https://www.youtube.com/watch?v=MIepaf7ks40。
  接下来,我们重新回到 Flutter 这个话题:  2、不应该再去想创建一个需要部署到所有平台的应用程序
  你更应该去想如何将你要编写的应用程序模块化,以便在未来更好地复用这些模块。给你们举个例子:在我的公司,我们正在开发专注于用户数据的应用程序。
  这就需要创建自定义和高级的调查报告,我们不希望每次添加新问题时都要编写新的窗口小部件。我们的做法是:编写一个包含所有可能的调查逻辑的模块,在许多其他项目中复用它(而不需要每次都重写一遍相似的代码)
  我给你举上面这个例子的目的是提醒你在构建一个应用程序时,你更应该着重思考你要做的应用程序或整个业务的重点是什么。更应该去重点思考,它背后的业务逻辑是什么?
  在计算机软件中,业务逻辑或领域建模也是程序的一部分,它对真实世界的业务规则进行编码,确定如何创建、存储和修改数据。
  当你明确了领域划分,你可以将一个领域封装成独立的模块,你可以将该模块在需要开发的 Flutter 应用程序中复用。
  但 Luke,这有什么好大惊小怪的吗?
  对,这是一个好问题!
  对于相同的业务逻辑,你可以用不同的用户流来创建多个 Flutter 应用。你可以将要开发的 Flutter 应用进行分类(如:移动应用、桌面应用和 Web应用),这将能帮助关注到不同平台的差异,对特定平台进行特定处理最终将获得更好的用户体验。  3、针对不同平台要编写多个应用程序
  虽然 Flutter 还算是一个相对比较新的技术,还主要针对小公司和个人开发者,但这不妨碍它成为一个人人皆可用的伟大工具。
  我参与开发过多个企业级应用程序。根据我的经验,系统的每个部分都需要有一个清晰的工作流程。开发一个系统通常需要前端、后端等。为了节约成本,编写一个应用程序,在不同的平台运行也越发流行。为了实现这个目的,你需要雇一个团队进行专门开发。你敢想象,十几个人的团队开发同一套代码来实现所有平台的特性吗?这简直是管理层的噩梦。很可能出现:一部分开发人员开发的桌面特性与移动团队正在开发的特性相冲突的情况。
  其次,应用程序包也会越来越臃肿,然而很多时候并不是每个平台都需要有一份软件包。现在,正值 Flutter 2.0 发布的时候,由于我并没有将所有的包都进行升级,还不支持 null 安全还需要手动解决依赖冲突的问题。  4、为什么 Flutter 不是一个跨平台的框架
  在读了这篇文章之后,或许你能够理解为什么我会认为 Flutter 不是一个真正的跨平台框架。Flutter 是一个为我们提供了为每个平台构建应用程序所需的功能的工具。我认为,真正实现跨平台不应该只开发一个应用程序,更应该开发一组由相同的业务逻辑驱动的应用程序集合。
  此外,当我们编写 Flutter 应用程序时,我们并没有跨越任何平台。我们这种所谓的跨平台,不过是用 Xamarin 或其他工具将写好的代码翻译成原生元素。
  如果非要把 Flutter 和其他东西进行类比的话,那么与之相似的就是游戏引擎(如 Unity)。我们不需要专门在 Windows 或者 Mac 系统上开发对应平台的游戏。我们可以使用 Unity 编写,然后将其导出到一个特定的平台。使用 Unity 编写一个游戏然后导出到多个平台和真正的跨平台完全也是两码事。
  因为每个项目都有技术债务,你应该停止抱怨,并开始重构。每次开发新功能之前都应该进行小型代码重构。但接入   Flutter   大规模的重构和重写永远不会有好结果。 5、结尾
  全文都在讨论跨平台相关话题  , 以上就是我认为 flutter 毁了 Web 开发的原因。很多人对这一说法很感兴趣,并热切地加入了辩论。如果你认为 flutter 并没有那么糟糕, 或许你会持有不同意见,如果你喜欢本文,欢迎点赞评论和我交流。
  在这里就还分享一份由大佬亲自收录整理的Android学习PDF+架构视频+面试文档+源码笔记,高级架构技术进阶脑图、Android开发面试专题资料,高级进阶架构资料
  这些都是我现在闲暇时还会反复翻阅的精品资料。里面对近几年的大厂面试高频知识点都有详细的讲解。相信可以有效地帮助大家掌握知识、理解原理,帮助大家在未来取得一份不错的答卷。
  当然,你也可以拿去查漏补缺,提升自身的竞争力。
  真心希望可以帮助到大家,Android路漫漫,共勉!
  如果你有需要的话,只需私信我【进阶】即可获取

采用增程式动力系统,百公里油耗0。7L,天际ME5实力强吗?自从理想ONE的问世,可谓是打开了我们自主品牌增程式汽车的大门,越来越多的品牌开始在这一领域埋头苦干,并且也打造出了其他的增程式汽车,而来自天际汽车旗下的天际ME5就是其中之一,并苹果秋季发布会档期曝光!除了iPhone14,这几个新品也值得期待今年的节奏真的很快,前有14没出直接爆料15的,现在又来WWDC还没开就已经要畅想秋季发布会,我看是没有那么必要。目前据iDropNews消息,苹果秋季发布会已经敲定在9月13日。iPhone14发布会定档,799美元起9月13日见,目前有哪些爆料?不期待,毕竟Pro和ProMax这两大升级的家伙,我是买不起的!!!从2017年iPhoneX发布之后苹果已经鲜有创新,无论是外观(刘海屏)还是体验,每年的iPhone旗舰必然都是iPhone关机仍可被攻击引热议,苹果安卓用户一整个无语住了金磊发自凹非寺量子位公众号QbitAI关机的iPhone,它就安全了吗?最近一项来自德国达姆施塔特工业大学的研究,便直接回答了这个问题恶意软件,仍然可以正常运行。研究的名字也是非常李彦宏数字经济发展要找到新动能,以更大魄力变革机制障碍澎湃新闻记者邵冰燕5月17日,全国政协举办推动数字经济持续健康发展专题协商会,近百位全国政协委员参加会议。全国政协委员百度创始人董事长兼CEO李彦宏等大型民营科技企业负责人也受邀参如果这些操作系统没有消失,会不会干翻iOS摘要在智能机刚涌现的10年前,手机操作系统还没有三足鼎立,一些系统短暂的出现,成为那时候百家齐鸣的见证人。在智能机刚涌现的10年前,手机操作系统还没有三足鼎立,一些系统短暂的出现,微观中国从长江存储闪存芯片突破看中国制造转型近日,国产存储芯片大厂长江存储已经向客户交付了自主研发的192层的3DNAND闪存,并且预计在今年底将会大规模交付的消息被外媒披露。再结合前段时间的消息,就是长江存储推出了UFS3Linux系统中Shell脚本编写的一点心得作为一个软件测试人员,经常会跟开发打交道,产品开发阶段,他们经常会提供一些python,shell等脚本作为bug的临时解决方案以方便测试继续进行。最近接触的shell脚本比较频繁英伟达GTX1630入门显卡规格曝光512CUDA核心,64bit显存IT之家5月19日消息,今天,Videocardz曝光了英伟达即将推出的GTX1630入门显卡的规格信息。据报道,这是英伟达首款第一款GTXx30型号,之前30级显卡只能称为GT。中国信通院余晓晖十四五新型基础设施市场规模有望超10万亿元算力设施将迎来巨大发展21世纪经济报道记者缴翼飞北京报道在5月17日举行的2022世界电信和信息社会日大会主论坛上,中国信息通信研究院院长余晓晖表示,数字经济发展需要新型基础设施建设的支撑,新型基础设施创新,让科学轻量化呈现(新语)科普视频降低了公众获取和理解知识的门槛,拓展了知识生产和传播的边界,有助于营造全民科普的良好氛围二氧化碳怎么变成淀粉?黑土地为何被称为耕地中的大熊猫?一元二次方程与规范场论究竟有何
他拒绝了慈禧,散尽千金,陪伴孙中山走完人生最后的路1875年,江南小镇南浔迎来了一位新的生命,谁也未曾想到,这个小生命在未来的人生历程之中,极大地影响了中国的历史命运。他就是庞青城。他生在南浔富商庞家。庞家的财富位列南浔四象八牛之剑与远征,像极了你我平凡的人生剑与远征每一位少年心中都有这样的英雄梦执剑的英雄少年,率领众将,披荆斩棘,勇斗狂魔,走向荣耀与巅峰,留下不朽传奇。在小时候凭着小聪明就能取得不错的成绩,得到肯定的掌声。随着年龄的增手机拍照又糊了?VIVOX60手机微云台黑科技加持无惧手抖最近天气更加的冷了,拿手机拍照的时候,朋友们手抖的更加厉害了吧,拍出的照片又糊了吧?那么手机拍照哪家效果最好?大家可能会想到Iphone。我们来先看一下最新款Iphone12Pro谷歌关闭游戏开发部门,专注平台服务,云游戏将强势崛起谷歌宣布关闭旗下Stadia游戏研发部门。此前谷歌花费巨资建设了多家内部游戏工作室,意图从微软(XBOX)索尼(PS)任天堂(SWITCH)等巨头手中争夺游戏平台与游戏制作的主导权996打工人拒绝畸形加班,炫技实况足球手游助我再燃激情第二春打工人,打工人,一入社会996便成狗!想当初,我也是一名英姿飒爽,在绿茵场飞奔的健将。奔跑如风,带球过人,逆天奔袭,直捣黄龙我知道这些形容词已不能够描述我的帅气逼人,唯有绿茵场边清未来战争将会是什么样?赛博朋克2077给我们带来的启示战争的形态随着科技的进步不断的演变,从冷兵器时代的战场拼死,到火药兵器的机械化钢铁洪流,再到海陆空一体化的精确打击,未来战争将会以什么样的形态出现在世人面前,人们都对此充满了各种预蔡司镜头加持,手机也能拍出专业影像大片视频加载中2021年的第一束光日出是这个世界平常却充满活力的瞬间,每一次都昭示着全新的开始,不寻常的2020已经带着故事落山,崭新的2021正徐徐升起,拥抱每一寸土地,将温暖和希望交易专家分享这是一份最实用的终极交易计划指南没有指派你干活的老板没有难伺候的客户没有官僚文化没有派系斗争只有你和市场随时随地可休假没有地域上的限制,交易真的那么自由吗?不管你是什么类型的交易者,要想持续盈利最关键所在把交易当学前班第19课外汇交易时段纽约时段当欧洲交易者午休回到交易桌后,纽约市场刚刚开始,美国的交易员开始陆陆续续进入办公室。纽约交易时段可能是外汇交易的第二个最佳时段。纽约交易时段的波动性也非常大,尤其是在开盘时,因为这公告ACYSecurities中文名称更名为ACY证券1990年代初,在金融行业蓬勃发展的英国伦敦,一种新的金融衍生品CFD差价合约,跃入投资机构的视野当中。由于CFD的独特规则,许多英国企业都将其作为控制风险敞口的工具。直到2000顶级华人交易员分享5种有效的价格行为图表形态RaynerTeo是独立交易员,曾经是一名自营交易员。他交易历史也有12年左右了。如今他自己的交易博客相当受欢迎。他主要跟随趋势进行交易。他认为,除了交易技巧和策略之外,交易者能否