我开始对Sencha Architect进行试用,我越用它就会出现更多问题,因为它在开发环境中的实际可行性使用,我遇到的一个更大的问题是
在您无法编辑不同编辑器中的单个文件的环境中,多人如何协作开发网站的不同部分,例如
app/models|components|views/Model1.js <- In charge of developer one
app/models|components|views/Model2.js <- In charge of developer two.
在常规环境中,您可以使用git来分发每个文件,但在架构师中,您不需要手动编辑文件(这很糟糕,因为像配置文件这样的功能不会在架构师中公开)。如果您手动编辑它们,它将导致问题,或者它可能会将代码覆盖回项目文件中的任何数据,因此我想知道Sencha的正确或预期的协作工作流程是什么。
答案 0 :(得分:21)
阅读上述帖子后,我仍然无法相信保持Sencha 代码存储库中的元数据文件以及从元数据生成所有JavaScript都适用于大型项目。
Sencha Architect的想法是将代码保留在javascript文件中,但是在JSON元数据中,并且无论何时需要编辑JavaScript代码,都必须使用IDE并编辑元数据。 Phil Strong说:“我们要求你继续使用Architect作为你的编辑,使用Git或SVN对20名工程师这样做非常安全。”当然,这个工作流程对于Sencha非常有利,它迫使20个人使用许可的Sencha Architect,因为要改变一行JavaScript代码,开发人员必须使用Sencha Architect。
当两个人编辑同一个文件时,IDE会更新元数据。然后他们将文件签入到代码存储库中,其中一个必须解决冲突,因此开发人员必须合并两个元数据文件,而不是JavaScript文件。
除非他们使用Sencha Architect,否则不让开发人员编辑JavaScript的整个想法是适得其反的,因为同一个人可以使用他最喜欢的IDE进行Java和JavaScript开发,或Python和JavaScript。在同一个IDE中进行客户端和服务器编程比在两个IDE之间切换要快。一个大项目的实际情况是,您在全球拥有多个团队,他们使用不同的IDE,您也可能有一个由承包商实施的短期项目,该承包商也有他最喜欢的IDE。
ExtJS是一个设计良好的框架,您不需要SenchaArchitect来修改单行JavaScript代码。
在JavaScript中编码时,我会保存我的JavaScript文件并刷新浏览器,并立即查看更改。 Sencha Archtect增加了额外的步骤,它要求你发布 javascript(从元数据生成JavaScript),项目越大,延迟就越长。我经常需要在生产中修改JavaScript文件,有时更改单行修复问题,同样,我必须使用Sencha Architect从元数据重新生成这一行。
我只使用Sencha Architect进行快速原型设计,然后将生成的文件签入代码存储库并继续手动编辑JavaScript。通过这种方法,我可以使用版本控制系统来查看JavaScript的历史。如果我签入了JSON元数据 一个VCS,然后我没有JavaScript的历史,我会有JSON元数据的历史,这是违反直觉的。
我认为使用GUI格式的元数据是可以的,但MVC控制器级别也必须从元数据生成的限制是不行的。
答案 1 :(得分:10)
虽然我非常感谢Sencha在创建有用且功能齐全的开发环境方面的努力,但我不认为Sencha Architect已经为相对较大的项目和开发团队做好了准备。
我原创的Architect软件对于快速原型设计和设计复杂的UI结构非常有用,但是在你弄清楚你的UI元素在JS文件中存放的方式之后 - 通常复制粘贴现有的JS代码更容易,更快。
我认为这不是你要找的答案,我只想分享我的想法。
答案 2 :(得分:4)
当我搜索同一主题时,我发现它是metadata/
目录,它是项目的重要组成部分,并且所有组件都被分离到自己的元数据文件中。这与根级项目文件一起,可能是版本控制的重要部分。 app/
会在保存时重新生成,并且可能会从版本控制中排除。
主xds项目文件容器包含更多通用引用,并且可能比元数据组件更改频率更低。但是,在创建新组件或修改项目/应用程序级别设置时,它会发生变化。
理想情况下,如果您只是检查根文件和元数据文件夹,它应该可以正常工作。
答案 3 :(得分:3)
使用Sencha Architect,在源/版本控制的团队中工作非常容易。 Architect项目全部包含在项目目录中。里面它由n个部分组成
项目文件 - 由Architect用于打开和维护项目的少量数据组成。这是您可以双击打开它的单个文件
元数据目录 - 由描述项目所有部分的文件组成。每个类(控制器,视图,模型,存储,资源)都将其信息存储在自己的文件中。
app目录 - 由您创建的项目的src组成。每个类的javascript文件。
其他根文件 - app.html和app.js,它是应用程序的启动板,以及在预览应用程序时运行的内容。这也是你的packager.json,app.json会去的地方。
我要点描述这一切是为了向您展示Architect所生成的文件与您在自己喜欢的编辑器中手动创建的文件非常相似。唯一的附加信息是元数据和项目文件。元数据都是JSON。
现在! 我们要求您继续使用Architect作为编辑,并且使用Git或SVN对20名工程师这样做非常安全。当开发人员进行更改时,它会更改这些文件的元数据和应用程序。
答案 4 :(得分:2)
我在私信中向Sencha的Aaron提出了同样的问题。他建议检查整个项目结构,包括应用程序和元数据。 它有效,我们在团队中完成了一个流程。