本文内容来自图书:《软件架构师应该知道的97件事》 译者为:SeanBV
1. 客户需求重于个人简历 ( Nitin Borwankar )
2. 简化根本复杂性 ,消除偶发复杂性 ( Neal Ford )
3. 关键问题可能不是出在技术上 ( Mark Ramm )
4. 以沟通为中心,坚持简明清晰的表达方式和开明的领导风格 ( Mark Richards )
5. 架构决定性能 ( Randy Stafford )
6. **分析客户需求背后的意义 **( Einar Landre )
7. 起立发言 ( Udi Dahan )
8. 故障终究会发生 ( Michael Nygard )
9. 我们常常忽略了自己在谈判 ( Michael Nygard )
10. 量化需求 ( Keith Braithwaite )
11. 一行代码比五百行架构说明更有价值 ( Allison Randal )
12. 不存在放之四海皆准的解决方案 ( Randy Stafford )
13. 提前关注性能问题 ( Rebecca Parsons )
14. 架构设计要平衡兼顾多方需求 ( Randy Stafford )
15. 草率提交任务是不负责任的行为 ( Niclas Nilsson )
16. 不要在一棵树上吊死 ( Keith Braithwaite )
17. **业务目标至上 **( Dave Muirhead )
18. 先确保解决方案简单可用,再考虑通用性和复用性 ( Kevlin Henney )
19. **架构师应该亲历亲为 **( John Davies )
20. **持续集成 **( David Bartlett )
21. **避免进度调整失误 **( Norman Carnovale )
22. 取舍的艺术 ( Mark Richards )
23. 打造数据库堡垒 ( Dan Chak ****)
24. 重视不确定性 ( Kevlin Henney )
25. **不要轻易放过不起眼的问题 **( Dave Quick )
26. 让大家学会复用 ( Jeremy Meyer )
27. **架构里没有大写的“I ” **( Dave Quick )
28. 使用“ 一千英尺高” 的视图 ( Erik Doernenburg )
29. 先尝试后决策 ( Erik Doernenburg )
30. 掌握业务领域知识 ( Mark Richards )
31. **程序设计是一种设计 **( Einar Landre )
32. **让开发人员自己做主 **( Philip Nelson )
33. **时间改变一切 **( Philip Nelson )
34. **设立软件架构专业为时尚早 **( Barry Hawkins )
35. **控制项目规模 **( Dave Quick )
36. **架构师不是演员,是管家 **( Barry Hawkins )
37. 软件架构的道德责任 ( Michael Nygard )
38. 摩天大厦不可伸缩 ( Michael Nygard )
39. 混合开发的时代已经来临 ( Edward Garson )
40. **性能至上 **(Craig Russell )
41. 留意架构图里的空白区域 ( Michael Nygard )
42. 学习软件专业的行话 ( Mark Richards )
43. 具体情境决定一切 ( Edward Garson )
44. 侏儒、精灵、巫师和国王 ( Evan Cofsky )
45. 向建筑师学习 ( Keith Braithwaite )
46. 避免重复 ( Niclas Nilsson )
47. 欢迎来到现实世界 ( Gregor Hohpe )
48. 仔细观察,别试图控制一切 ( Gregor Hohpe )
49. **架构师好比两面神 **( David Bartlett )
50. **架构师应关注边界和接口 **( Einar Landre )
51. 助力开发团队 ( Timothy High )
52. 记录决策理由 ( Timothy High )
53. 挑战假设, 尤其是你自己的 ( Timothy High )
54. 分享知识和经验 ( Paul W. Homer )
55. **模式病 **( Chad La Vigne )
56. **不要滥用架构隐喻 **( David Ing )
57. **关注应用程序的支持和维护 **( Mncedisi Kasper )
58. 有舍才有得 ( Bill de hÓra ****)
59. 原则、公理和类比胜于个人意见和口味 ( Michael Harmer ****)
60. 从“ 可行走骨架” 开始开发应用 ( Clint Shank ********)
61. 数据是核心( Paul W. Homer ****)
62. **确保简单问题有简单的解 **(Chad La Vigne )
63. **架构师首先是开发人员 **(Mike Brown )
64. 根据投资回报率(ROI )进行决策( George Malamidis ********)
65. 一切软件系统都是遗留系统( Dave Anderson ****)
66. 起码要有两个可选解决方案( Timothy High ****)
67. 理解变化的影响 ( Doug Crawford ****)
68. 你不能不了解硬件( Kamal Wickramanayake ********)
69. 现在走捷径,将来需付息( Scot Mcphee ********)
70. 不要追求“完美”,“足够好”就行( Greg Nyberg ****)
71. 小心“好主意” ( Greg Nyberg ****)
72. **内容为王 ( Zubin Wadia ****)
73. **对商业方,架构师要避免愤世嫉俗( Chad La Vigne ****)
74. **拉伸关键维度,发现设计中的不足( Stephen Jones ****)
75. **架构师要以自己的编程能力为依托( **Mike Brown )
76. **命名要恰如其分( **Sam Gardiner )
77. **稳定的问题可以获得高质量的解决方案( *Sam Gardiner)
78. 天道酬勤( Brian Hart ****)
79. 对决策负责( Yi Zhou ****)
80. 弃聪明,求质朴( Eben Hewitt ********)
81. **精心选择有效技术,绝不轻易抛弃
82. 客户的客户才是你的客户!( Eben Hewitt ********)
83. 事物发展总会出人意料 ( Peter Gillard-Moss ********)
84. 选择彼此间能和谐共处的框架 ( Eric Hawthorne ****)
85. 着重强调项目的商业价值( Yi Zhou ****)
86. **不仅仅只控制代码,也要控制数据 ( **Chad La Vigne )
87. 偿还技术债务 ( Burkhardt Hufnagel ****)
88. 不要急于求解( Eben Hewitt ********)
89. **打造称手的系统( Keith Braithwaite **
90. 找到并留住富有激情的问题解决者 ( Chad La Vigne ****)
91. 软件并非真实的存在 ( Chad La Vigne ****)
92. 学习新语言 ( Burkhardt Hufnagel ****)
93. 没有永不过时的解决方案( Richard Monson-Haefel ****)
94. 用户接受度问题( Norman Carnovale ****)
95. 清汤的重要启示 ( Eben Hewitt ********)
96. 对最终用户而言,界面就是系统 ( Vinayak Hegde ********)
97. 优秀软件不是构建出来的,而是培育起来的( Bill de hÓra ********)