javafx窗体程序
“真实世界的应用程序”系列中的一个新条目。 这次是SkedPal ,这是一个用于智能管理忙人生活的应用程序。 我一直在咨询SkedPal团队有关JavaFX的事务,并且在他们决定开始使用我的CalendarFX框架来满足他们的日历要求时,我也在咨询他们。 在下面,您可以看到此有吸引力的应用程序的几个屏幕截图。 如果您想自己尝试一下,则只需在SkedPal网站上注册并下载桌面客户端(它们也有移动客户端)。
我已经请SkedPal的首席执行官Saied ArBabian回答了几个有关其产品,开发以及(当然)他们对JavaFX的使用和想法的问题。
一般的问题
您的产品/项目的名称是什么?
SkedPal
您的用户/客户是谁?
SkedPal是可公开下载的应用程序,适用于需要安排工作以更好地管理自己的时间的忙碌的专业人员。
您的软件的目的是什么? 有什么好处?
SkedPal的主要目标是通过智能地安排所有工作来协助忙碌的专业人员按时交付项目。 它是基于SOA云的应用程序,其中包括云中的Narrow AI调度引擎,用于桌面的JavaFX客户端和iOS配套应用程序。
该应用程序可以运行吗? 如果是的话,从什么时候开始。 如果不是,您打算什么时候上线?
自2014年以来,我们一直处于公开Beta版。我们正进入第3个关键点,并且越来越接近用户的最佳位置。
发展历程
您是如何将必要的JavaFX专有技术带入您的团队的? (顾问,内部/外部培训课程)?
团队熟悉Swing,并且很快就可以使用JavaFX来交付第一个版本。 培训过程是内部的。
您是从哪个版本的JavaFX开始的? 一二八
从版本2开始。
您何时开始开发该应用程序,它花了多长时间?
到目前为止,我们已经发布了两个版本,而我们处于第三个版本的中间。 我们从2013年底开始,并于2014年10月发布了第一个版本。第二个版本于2015年6月发布。
有多少开发人员从事此工作? 总体上和在用户界面上。
共有5个开发人员。 2只在用户界面上。
应用程序有多大? 代码行,类数。
代码行数:132,000,分类号:860
JavaFX客户端有多大? 代码行,类数。
码数:76,000,分类号:548
您为什么选择JavaFX作为前端技术? 非常重要的一点:为什么不选择HTML / Web?
我们团队的经验主要是在Java中,因此为了立即开始交付前端应用程序,选择JavaFX是一个自然的决定。 事后看来,一个强大HTML / Web开发人员社区可能会提供巨大帮助。
说服决策者同意JavaFX难吗?
不,与在企业环境中相比,在初创企业中做出决策的速度更快,更容易。
您在JavaFX部分面临的最大挑战/问题/问题/错误是什么,您如何解决它们?
JavaFX的高内存消耗对我们尤其是一个麻烦领域。 解决该问题的唯一方法是在下一个迭代设计中考虑性能约束,并将设计限制在可行范围内。
您使用了哪些第三方产品/框架/工具(开源和商业),为什么选择它们?
最初,我们使用基于Swing代码的MiG Java日历,然后由于其更好的UI设计和JavaFX而不是Swing的使用而切换到CalendarFX 。 我们开发了自己的MVVM框架来支持面向服务的体系结构。 事实证明,这是一个庞大的项目,我们可能会在某个时候将其开源,从而为JavaFX开发人员社区做出贡献。
您是否混合了JavaFX和Swing代码?
当我们使用MiG Java日历时,最初是。
外表
您会在下一个项目中再次使用JavaFX吗? 请详细说明原因或原因。
您对其他公司/项目的JavaFX有哪些建议?
从团队多年的经验以及开发复杂的MVVM框架的角度来看,我们已经对JavaFX技术进行了重大投资。 这是使用JavaFX的强烈理由。 另一方面,我们真的很羡慕网络应用程序中强大的开发人员社区,我们可以看到一旦您访问具有大量开源代码组合的此类社区,开发将变得多么Swift。
此外,当我们的用户不选择将其客户端更新为最新版本时,我们还将面临严重的问题。 与基于Web的应用程序相比,为Internet用户分发JavaFX应用程序更具挑战性。
您希望将哪些功能添加到JavaFX?
我们希望看到更好的性能(速度和内存)。
您打算提供应用程序的移动版本还是移动附件?
我们已经有一个本机(目标C)iOS应用程序集成到我们的SOA架构中。 在我们的MVVM框架中,移动应用程序和JavaFX桌面应用程序可以很好地协同工作。
翻译自: https://www.javacodegeeks.com/2016/07/javafx-real-world-apps-skedpal.html
javafx窗体程序