为了简要介绍我是一名主要从事后端系统工作的C ++程序员,但现在必须开发一个前端gui(主要是一个包含大量图表和比较等的交互式仪表板)以及后端金融系统。
几年前,我参与了一个类似的项目,并使用Flex开发了一个仪表板。但是在网上搜索,似乎Flex不再受到很好的支持(没有人在上面投钱)并且很快就会过时(我是对的???)。所以我继续搜索,弹出的名字是ExtJS(几年前流行)和AngularJS(现在第一次听到它)。花了一些时间搜索两者似乎都很好。那么仪表板开发人员可以帮助回答以下问题(以及提供我现在可能忽略的重要信息):
答案 0 :(得分:4)
在我看来,我会选择Flex,因为:
你已经知道了
Flex是解决您问题的“紧凑”解决方案。 Web框架意味着您需要学习很多新东西。 AngularJS当然很酷,但是每个web tek都要求你掌握JS,CSS(我讨厌它),HTML,FireBug,PhoneGap,...... Web teks是一团糟(恕我直言!!!)
来自C ++,使用Flex比web tek更舒服。依赖注入很酷,但它是世界的新视野。 JS非常强大但是(也)是一种功能性语言,你需要得到一个“lambda mind”。
两年前,我决定尝试使用ExtJS为医院制作仪表板。几天后,当我发现在我的简单应用程序中找到并解决一个简单的bug时,我放弃了整整一天! [我忘记了一个括号。页面没有打开,什么也没说。
我现在正在努力学习Flex,因为我需要为智能手机制作一个简单的应用程序(我是新手)应该在一个月内准备就绪并且使用Flex我觉得我比成功更容易任何网络技术框架。我知道Flex的未来是模糊不清的,但我认为即使Google的压力很大,也很难被杀死;)
答案 1 :(得分:2)
似乎没有人热衷于回答这个问题 - 我想因为这肯定会成为一个基于意见的答案。我会试一试......
回答你的第一个问题 - 如果没有出现Flex,至少在低温下是这样。 Adobe Flash Builder 4.7(主要的Flex工具IDE)已经有一年多的时间没有更新,我看不到任何更新。 现在拥有代码库的Apache在更新方面做得很好,但进展缓慢。 一个可能的亮区是FlexJS,一个输出Javascript和HTML的编译器。目前它仍然是阿尔法,但它可能是一种选择。
我从未在ExtJS中开发过,但它似乎已经过去了 - 它仍然被使用,但它肯定被Angular和其他框架(如Knockout)所取代。
对不起这里的偏见,但我无法帮助!!
希望这篇文章对你有所帮助。祝好运。
答案 2 :(得分:2)
AngularJS是复杂Web应用程序(桌面和移动设备)的理想选择。
有一个项目使用AngularJS实现Dashboard / Widgets功能。
GitHub源代码https://github.com/DataTorrent/malhar-angular-dashboard
现场演示http://datatorrent.github.io/malhar-angular-dashboard/#/
更高级的演示(图表等)http://datatorrent.github.io/malhar-dashboard-webapp/#/
它目前针对桌面浏览器,但具有很多功能:
添加/删除小部件
小部件动态实例化(来自相应的指令或模板)
小部件拖放(使用jQuery UI可排序)
水平和垂直小部件调整大小
流体布局(小部件可以具有基于百分比的宽度,或者在任何其他单位中设置宽度)
任何指令或模板都可以是小部件
将小部件连接到实时数据(WebSocket,REST等)
动态更改小部件数据源(来自小部件选项)
将窗口小部件状态保存到本地存储
多个仪表板布局