
与Alfresco展示层一起工作可能会很麻烦。 桌子上有很多可供选择的选择,这些天经常弹出更多选项。 但是你走哪条路? 优缺点都有什么? 这篇文章总结了我针对Alfresco的基于Web的技术选择的2c。
Alfresco分享
鉴于针对台式机的要求,Alfresco Share是首先要考虑的事情。 Share是一种可扩展的,经过反复考验的协作工具,它涵盖了很多功能。 这绝对很棒,这使Alfresco在Nuxeo等竞争对手中脱颖而出。 您将得到一个应用程序(!),您可以立即(!)扔给人们并使他们前进。 较小的自定义通常可以轻松实现(=几行扩展代码)—无需使用框架从头开始构建应用程序或滚动自己的堆栈。 这就是我一直在做的事情,我很高兴有这个机会。
多年来,共享一直在缓慢发展,Alfresco一直在努力保持向后兼容,节省投资并防止第三方代码被破坏。 不利的一面是,我们在Share中看到了跨学科(即,表单,模板,资源)的各种方法(不推荐使用和最先进的方法)。
- 我们在chrome网站商店中有一位编辑的首选应用程序。 但是故事只是从现在开始。
- 直到最近我不是一个早起的人
- Google日历指南:90多个提高生产力的技巧,第1章
- 成为更好作家的10种简单方法
- 摆脱编程低迷
爱考和冲浪
如今,Alfresco Share的大部分内容都是基于Aikau构建的,Aikau是旨在与Alfresco配合使用的(元)框架。 Aikau本身依赖于Dojo和Alfresco Surf框架,后者又依赖于Spring MVC。 在Alfresco以外的地区,Surf似乎并没有得到应有的使用,而且Dojo似乎也不很受欢迎。 不幸的是,但是不管提供的功能如何,这都会阻碍采用。 人们提到Surf和Aikau提供了独特的功能。 老实说,我不确定他们在说什么。 基于Alfresco存储库的功能? 是否可以自由选择自己喜欢的JavaScript库或框架? 一旦您由于功能重叠(即资源聚合和组件生命周期)而开始遇到冲突,选择自己喜欢的库的自由可能就没有那么重要了。 Angular(至少是版本1)是一个效果不好的示例。
与Surf和Aikau进行开发需要时间来适应。 如今,后者的文档记录非常不错,而前者的记录不多。 幸运的是,正在采取新的努力(感谢Bindu等人)来解决此问题。 但是,我不认为工作Aikau是一种乐趣。 我完成了所有工作,但是我在IDE体验方面遇到了问题(本例中为Intellij)。 浏览代码感到很麻烦-我一直被迫使用全文搜索。 我可能做错了,希望有人演示如何流畅地工作。 除此之外,我觉得有些问题可能永远无法解决。 [ACE-2566]改进Share的开发功能的问题可以作为切入点。
附带说明:就我个人而言,我希望看到对“大规模”扩展模块用法(如依赖项管理和发现)的支持得到改善。 我这样做可能完全错了,但我发现处理托管50多个(细粒度)模块扩展的Share实例非常困难。 如果有机会将其纳入核心发行版,我将竭尽全力。
最后,我认为在使用JavaScript时,基于Maven的工作流程会很麻烦-无论您如何操作以及是否调用基于外部Node.js的工具。
更多选择
Alfresco最近宣布,他们将在Angular 2上进行大量投资,为下一代Alfresco应用构建一个(另一个)框架以及工具。 此举肯定会引起更广泛的开发社区的共鸣。 但是,这也使人们对过去努力的命运产生怀疑。
其他人(包括我在内)正在使用React。
选择是好的,对吗?
开发人员疲劳或选择麻痹,有人吗?
老实说,我认为那里已经太多了。 不仅对我们有好处。 也许是时候收拾房子了。
参考文献
- 建立新的应用程序开发人员经验
- 编写“下一代” Surf Client
- Aikau 1.0.66 — Angular 2集成
- 爱考教育参考