游走的豚鼠君 2020-11-10
本文转载自公众号“读芯术”(ID:AI_Discovery)
当听到JavaScript这个词的时候,“web开发”会一下子出现在我们的脑海中,因为JavaScript在很长一段时间里一直是web应用开发最广泛使用的语言,Angular、React和Vue等框架目前也很有名。
尽管JavaScript主导着web开发领域,但是在移动和桌面应用开发领域,它不得不屈居于Java、C#和C++之下。然而,很多人可能没注意到JavaScript对移动和桌面应用开发也产生了影响。
本文就将讨论一些主要的JavaScript框架,以及它们在移动和桌面应用开发领域的优缺点。
1.Electron
Electron是2013年推出的桌面应用开发框架。Electron允许开发者使用HTML、CSS和JavaScript开发应用,这与web开发栈很相似。此外,Electron是Node.js和Chromium的结合,这项结合使你能够使用Electron运行任何web应用和Node应用。
图源:https://2019.stateofjs.com/mobile-desktop/electron/
Electron的优点:
Electron的缺点:
2.React Native
React Native是目前最常用的移动开发平台之一。React native于2015年推出,很快在JavaScript开发者中流行开来,因为以前他们必须学习像Java这样的语言来开发移动应用。这种使用JavaScript开发移动应用的能力也吸引了许多web开发者使用React native开始了他们的移动开发之旅。
图源:https://2019.stateofjs.com/mobile-desktop/reactnative/
JavaScript和JSX是ReactNative的主要组件,能够在Android和IOS平台上使用大部分代码是其大规模推广背后的主要原因。React Native有许多优点,我列出的几个重要优点如下:
React Native的缺点有:
3.Ionic
Ionic是另一个基于Javascript的开源移动开发框架,它与Angular密切相关。Ionic于2013年推出,它的黄金时代随着Angular的崛起而到来。
与Electron相似,Ionic也包含HTML 5 SDK,能够使用HTML、CSS和JavaScript开发本机应用。Ionic的重点是构建具有创新性和对用户友好的应用,以满足应用需求。但可悲的是,随着React Native的大量推广,Ionic的用户数量正在减少。
图源:https://2019.stateofjs.com/mobile-desktop/ionic/
Ionic的优点有:
Ionic的缺点有:
除了上面提到的那些框架,还有很多其他的,如原生应用、Cordova和Expo,它们也可以用于开发移动和桌面应用。下图显示2019年State of JavaScript调查的统计数据。
图源:https://2019.stateofjs.com/mobile-desktop/
可以清晰地看到,Electron和React Native都在顶端,而Ionic远远低于原生应用和Expo。但是相比之下会选择Ionic的原因是它基于Angular,如果你对Angular比较熟悉,Ionic学起来就会比较简单。