您好我即将开始开发大型前端应用程序,我正在研究什么是客户端生态系统的最佳选择.我是一个有Java背景的人,做了一段时间的Spring应用程序,在我的私人项目中,大多数逻辑部分都驻留在浏览器中.这是一个基于Web的图像处理和图表应用程序,需要大量的图形处理,高级用户交互,如拖放,我希望代码库足够大.我处理过写得不好的大型js代码库.这对我很头疼.然后我的javascript声名狼借.最初我在查看Google Web工具包.但我发现它不适合我的应用程序,因为它是复杂的抽象,因此在GWT中开发的成本非常昂贵.我完成了研究和规划阶段.最近我也换了Ruby来做我的日常工作.
我正在跟踪Dart语言的发展,因为它一开始就非常令人印象深刻.我喜欢类,mixin,库内置方法(对我而言,这是Javasript的巨大优势),Stream/Promise和Web Components等功能.我喜欢它严格的性质.dart语言的可选静态类型可以最大限度地减少应用程序的错误行为,并帮助我编写更有效/优化的代码.重要的是,我可以应用Java世界中使用的熟悉的设计模式和编程技术.现在我决定坚持下去或给予更多积分.
最近,我花了很多时间来发现更高级的Javascript用法.刚读完John Resig的"JavaScript忍者的秘密",让我大开眼界.我可以看到使用RequireJS和Grunt可以管理我的大型代码库.我读到人们说使用Dart的长期风险的论点.关注点是:
对我来说,这些都不足以让人放弃Dart.所以,如果你在Dart和Javascript方面都有一些有趣的观点,请告诉我.
这可能听起来像我很困惑,但这只是我研究的一部分.当然除了特定的编程语言或技术之外,还有应用程序架构/设计和模式等开发的其他部分.