如何设计出优美的Web API?
本 系列 前序文章索引: 程序员 为什么必须要懂架构? 架构到底是什么,你知道吗? 架构都有哪些,我该怎么选? 架构师都干什么,你知道吗? 练就哪些技能才胜任架构师? 架构师, 在开展工作的过程中需要对接老板、产品、项目、开发、测试、安全和运营等各种岗位角色,他们都是架构需要关注和服务的内部客户,他们的痛点就是架构工作的驱动因素。架构师就是要用专业技能“搞定”这些角色的需求,输出大家都能接受的解决方案,大家好才是真正的好。为了达成此目的,我们必须知道不同岗位的关注点。 老板产品 老板的主要职责就是定方向、找人、找钱,他对架构设计的要求就是在给定的预算、时间范围内研发出软件系统,推动公司的战略或战术得以实现,也就是说架构方案不能过于理想,不能超出预算和截止时间。自从苹果公司的乔布斯封神之后,现在的互联网公司都崇尚老板担当首席产品官,例如腾讯马化腾、微信张小龙、百度李彦宏等等。产品经理需要思考打造什么样的产品才能达成公司的战略或战术目的,他要综合考虑产品是否满足功能、质量和商业等需求,满足功能需求只能达到及格线,易用性、交互体验、性能、可靠性等质量需求能否满足才是产品达到优秀的关键,以及从商业角度考虑选择什么时机将产品推向市场,有节奏地推动用户和业务的不断增长等。 任何技术都是服务于业务的,架构主要是承上启下的作用,架构设计需要将老板和产品的战略战术规划跟开发实现衔接起来,例如