在开发单页面应用程序时,我总是质疑自己,这是设计我的项目的最佳方式。我应该解耦客户端和后端吗?我的客户端应用程序应该与我的后端代码位于同一台服务器上吗?我应该投资于客户端和服务器的多个托管计划吗?所以我问,这是组织和开发单页面应用程序的最佳方法吗?什么是开发SPA的最佳方法?
回答
当我第一次开始时,这是我的一个问题,很难在网上找到完整的答案。一般来说,虽然这只是过分简单化,但企业如何在这个过程中发挥作用。
Monolith:后端代码和前端代码存在于同一个项目中的应用程序。
这是什么意思:代码库很容易维护,因为它就在那里。开始时不太复杂,而且生产时间少得多,因为它更容易“出门”。您没有复杂性,例如“系统”的不同部分如何相互交谈等。所有初创企业都从这里开始。
这里的缺点是,最终代码库变得非常难以维护,因为开发人员将新功能和创意填入其中。此外,您的API没有公开,所以它只能用于这个应用程序(下面更多)。
前端& API:前端代码和API分别位于不同代码库中的应用程序。 API仅提供数据,通常采用JSON格式,前端代码使用并显示此数据。
这意味着什么:现在您已经分解了API和前端代码库,您可以使用API为任何需要它的前端应用程序提供数据。例如,思考网络与移动。他们都可以使用相同的API。对于一个更大的应用程序,这变得更加可维护,现在您可以围绕后端和前端流程构建团队。随着项目的发展,您现在可以实现更好的规模和效率。
的利弊这里,你现在有两个独立的代码库来维持,向上保持,使更新过,确认是同步的,等
FEBE &微服务:一个应用程序,所有部分“系统”生活在非常孤立的代码库,架构等中。FEBE是一个“前端,后端”,微服务是一种服务(可以是API),它服务于一个非常特定的功能业务逻辑。这个世界的前端可能需要消费几种微服务才能实现其目标。
这是什么意思:这是成功的,大公司最终土地,如果他们做到了。再次,简单化,但所有主要公司都在这个领域运行基础设施。这种架构对于团队来说比编码或开发要多得多。拥有数百名工程师的公司可以给他们每个系统的一部分拥有和维护,使他们能够按照自己的步伐发布产品等。
这里的缺点是系统现在被分成几百个没有人力就难以维持。同样,公司这样做的原因是因为它允许团队非常有效地独立运作。
所有公司作为起动一般迁移此列表,首先是整体,因为他们生存下去,把收入变成盈利,雇佣更多的人,等
我给你的建议是:与使用的Node.js(快递)后端整料和任一种或React.js角前端开始。
我这样说是因为Node.js的是未来,是很容易学习,要么反应或角在框架方面的良好开端的地方。
当你转移到阶段2(前端和API)时,坚持使用Node.js,并且可能在那一刻作出反应,或者如果是我,我会在Handlebars中使用我的API数据并完成它(根本不使用前端框架)。
希望这会有所帮助。我回答道,因为我知道,多年前我在寻找答案时,这是多么令人沮丧。
这是一个完整的答案,FEBE方法对我来说是全新的。感谢您的指导。我会考虑这个作为强有力的答案候选人。 – user1659653
很高兴能帮到你! – sidewalksalsa
- 1. Swf文件:开发swf文件的最佳方法是什么?
- 2. 什么是数据库开发的最佳方法Android
- 3. 什么是学习iPhone应用开发的最佳方法?
- 4. 分享点的最佳分布式开发方法是什么
- 5. 什么是开源的最佳方式?
- 6. 开始学习Android开发的最佳方式是什么?
- 7. 开始开发大型网站的最佳方式是什么?
- 8. 构建SPA应用程序的最佳做法是什么?
- 9. 从Node.js公开方法的最佳方式是什么?
- 10. 什么是开发大型连接/断开应用程序的最佳方法
- 11. ANTLR4的最佳方法是什么?
- 12. 评论的最佳方法是什么?
- 13. 在Emacs中进行Java开发的最佳方式是什么?
- 14. 限制访问开发网站的最佳方式是什么?
- 15. 组织android开发代码的最佳方式是什么?
- 16. 什么是为Sitecore设置开发环境的最佳方式
- 17. 使用vim进行Cocoa开发的最佳方式是什么?
- 18. 为敏捷开发设置TFS的最佳做法是什么?
- 19. 什么是最佳搜索方法?
- 20. 处理“打开文件过多”的最佳方法是什么?
- 21. 注册过程开始时间的最佳方法是什么?
- 22. 解决反射开销的最佳方法是什么?
- 23. 模拟复杂的生产Web开发环境的最佳方法是什么?
- 24. 执行多个并发任务的最佳方法是什么?
- 25. 避免SpamCop触发ASP.NET网页的最佳方法是什么?
- 26. 用NSRect信息发布NSNotification的最佳方法是什么?
- 27. 用asp.net mvc开发网上预约系统的最佳方法是什么?
- 28. 在开发机器上测试sendgrid解析API的最佳方法是什么?
- 29. 什么是开发人员在Sharepoint 2010中创建列表的最佳方法?
- 30. 为Win32和WinCE开发非托管C++ DLL的最佳方法是什么?
为什么会在客户端和服务器代码都住在不同的服务器?你看过任何处理这个问题的框架吗? – epascarello
因为有很多教程,显示如何使用ROR创建一个单页的应用程序,.net等,他们总是嵌入母版页或.erb文件的应用程序,我问这个。还有其他一些资源显示应用程序的开发使用纯html5为了消耗运行在其他服务器上的api。 – user1659653