飯田橋系应该选择使用Flutter的五个理由

谷歌推出的Flutter作为跨平台前端开发工具,受到了涩谷系人群的热切关注,但我认为是飯田桥系1的人们应该使用它。我想要阐述一下其中的原因。

渋谷系を代表する企業であるエヌ次元は、Flutterを採用する理由がたくさんあります。具体的には、「Flutterとは? エヌ次元が企業としてFlutter開発を採用する理由」が参考になります。(典型的な渋谷系企業であり、渋谷にオフィスを構えています)

1. 移动优先的多平台

从2000年代开始,MVC模型就是Web系统的常态。该模型旨在将异步和复杂的Web系统分割成视图和模型(业务逻辑),以提高开发和维护效率。在这方面取得成功的框架包括Struts和Spring。即使目标不仅限于个人电脑,还包括智能手机和平板电脑,我们可以将PC端的Web页面设计为响应式设计,考虑到多窗口情况,以适应不同的屏幕尺寸变化。因此,与原生应用程序形成了不同的生态系统。

从2016年到2010年代初,移动优先的趋势开始出现在Web上。首先设计交互丰富的页面供智能手机使用,并以横向布局的形式创建PC端页面。Web的构建方式也从传统的服务器端渲染转变为以客户端为主的交互式渲染,SPA成为主流,大部分逻辑在客户端UI上执行,与原生应用程序更加兼容。将移动设备视为一种边缘计算而不是屏幕尺寸的多样性。此外,Web后端开发主要采用各种PaaS和微服务架构,轻量化了业务逻辑。然而,随之而来的问题是业务逻辑大量涌入客户端,传统的MVC模型难以应对。

2022年12月28日追記:自2020年左右开始,为了提高SEO优化和用户体验性能,部分开发倾向于回归到服务器端,并且出现了能够在服务器端和客户端端混合开发的框架。然而,Flutter似乎还未迎头赶上。

在这种情况下,台湾明地出现的是MVVM模型,它专注于SPA并通过将视图分解为VM(视图模型)和视图以应对新的复杂性。视图变得复杂,设计师们不再是一个人同时编写HTML/CSS和少量的JavaScript的时代已经过去。MVVM模型使得通过视觉设计师(视图)和开发人员(视图模型)的协作来轻松创建视图成为可能。Angular、Vue和Xamarin等作为实现MVVM的框架已经崭露头角。更进一步应对视图复杂性的是宣称“只关注UI”的React,以及加入视图模型的React/Redux,而React Native将React(/Redux)扩展到了原生应用程度。这些(统称为React)已经成为目前渋谷风格最受欢迎的框架。React的模型被称为反应式模型。

如果不能很好地理解这一领域的讨论,请参考”用一张图解释Flutter的架构”。

Flutter是由Google提供的框架,受到React的启发,采用了响应式模型,是一个能够支持多平台的前端开发框架,从Web到原生应用都可以使用。

2. 对于Java开发者来说,Dart2更容易迁移。

動態定義下,能夠輕鬆編寫的 JavaScript 是渋谷系風格中受歡迎的語言。Angular、Vue、React 都是以 JavaScript 為基礎的框架,並且在渋谷系風潮中廣受歡迎。Node.js 和 Node-RED 的流行也是在這股潮流中興起的。

飯田橋系的人偏好严谨的开发方法,他们非常喜欢Java,并对这些基于JavaScript的框架在商业系统中的使用持有抵触感,而不只是作为实证实验使用。

Dart在Dart1中是一种类似于JavaScript的动态类型定义语言,然而在与Flutter一起推出的Dart2中,它经历了大幅的静态类型定义语言的重大改进。在定位上,它可以被认为是一种”Better Java”(尽管不及Scala那样大的飞跃),通过改善Java中陈旧的部分,提高了开发效率,因此更受到Java开发者的青睐。

3. 令人放心的谷歌品牌

原来,麻布十番系在开源方面一直持保守态度,认为使用没有保证的东西是不合适的文化。尽管如此,随着时代的发展,无法逆转地开始使用开源软件,但受原始文化的影响,强大的企业更倾向于支持可靠的开源软件。在这一点上,Flutter由谷歌强力支持,是完备的选择。

Facebook和React一样强大,都在致力于创新。然而,由于Facebook主要业务是社交网络平台,相对而言,对于长期提供相同的平台技术的动力较弱。实际上,Facebook曾经开源了一款出色的产品Cassandra,但目前似乎并未被广泛使用。另一方面,谷歌以前对于平台技术有点封闭的印象,不向外界展示最新的知识,而现在已经发生了巨大改变,积极与开源社区合作,提供了诸如Kubernetes之类的出色产品。它试图将GCP发展成与AWS和Azure竞争的对手,并寻求在两者之前占据有竞争力的位置,这是谷歌目前采取的策略。

目前,整个社区中React相对来说更为主导,但是由于Google积极地进行着贡献,Flutter具备了丰富的官方Widget和文档。对于自己积极参与社区的渋谷系来说,使用React也没有问题,但对于不那么积极的飯田橋系来说,“官方支持强大”才是最具吸引力的。开源一词可能会导致产生关于“究竟是什么?”这一根本性问题的烦恼,但事实确实如此。

由于错过了React,因此我选择了Flutter。

自2013年诞生以来,React就紧紧抓住了项1所述的潮流,成为了渋谷系的主导力量。因此,在渋谷系中,积累了相当多的React开发者和开发经验。因此,渋谷系没有太大的迁移到Flutter的动力。

然而,与React无关的Iidabashi系有不同的情况。由于之前没有积累,所以不需要在Flutter或React之间犹豫。如果下决心开始进行SPA或原生应用程序的开发,选择就只剩下Flutter了。相反,通过积极使用Flutter,可以期待通过所谓的蛙跳现象(指发展中国家通过最新技术迅速进步的现象),一下子增强前端开发的竞争力。

如果你认为”SPA和本地应用程序是不必要的!一旦进入5G时代,速度将变得更快,延迟将降低,以前的服务器端渲染的Web应用就足够了!Struts/Spring万岁!”那么这是一种幻想,请阅读《LTE→5G不是一个突破》并重新考虑你的想法。

5. 解决年轻技术员的就业问题

飯田橋系所面临的严重问题是如何保持年轻优秀技术人员的就业。年轻优秀的技术人员无论是新入职还是中途加入,都倾向于流向渋谷系。越是技术自信和履历丰富的人,越不愿意从事COBOL的维护开发或者只是名义上的技术人员兼调配角色的项目管理工作。

通过专注于Flutter,可以解决这些问题。毕竟,Flutter比受渋谷系喜爱的React框架更新。通过展示能够在最新的框架下进行高效开发的能力,将吸引到飯田橋系技术人员的聚集。

对于被称为“涩谷系”的代表性创业公司,他们将参与传统企业系统开发的工程师称为“飯田橋系”,以此来比喻某通信公司内部和文化的差异。在上下文中,并没有将原生应用和跨平台应用作为术语进行区分。

初次发布(2019年)时,Web版本仍处于预览版阶段。

虽然存在与静态类型定义相近的派生语言TypeScript,但在这里我们更侧重于框架根本的文化,所以也将其视为JavaScript的一种。

广告
将在 10 秒后关闭
bannerAds