我通常将应用程序结构设置如下:
+----my_awesome_nodejs_app
| +----app
| | +----app.js
| | +----node_modules
| | +----tomatoes
| | | +----tomatoes.controller.js
| | | +----tomatoes.helper.js
| | | +----tomatoes.model.js
| | | +----tomatoes.route.js
| | +----views
| | | +----tomatoes.pug
| +----public
| | +----tomatoes
| | | +----tomatoes.css
| | | +----tomatoes.js
| +----spec
| | +----tomatoes.spec.js
我赞成使用命名约定来匹配前端的命名约定(例如example.com/tomatoes)-因为我认为这样可以更轻松地支持长期支持(尽管可能有更好的方法可以做到这一点)
也就是说-如果说,我决定将
tomatoes
更改为sausages
-我需要相应地更新所有测试,目录名,文件名和注释(更不用说特定于页面的CSS或JS)了。在执行此类操作时,我只是需要接受并考虑这一点吗?还是存在另一种(更好)的方式来做到这一点以提供更大的灵活性?
最佳答案
无需过度设计解决方案,就很难摆脱对所有相关文件进行更改的麻烦。
可以帮忙的是将组件/模块/零件的所有相关文件放在同一文件夹中,请参见Relational Structure in this blog post for more information。
我认为,关系结构使大型项目也更易于处理,因为您可以在同一位置找到所有相关资源,而不必搜索分散在项目周围的文件来进行更改。
关于javascript - Node JS-MVC-命名约定,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37587148/