转载自:http://blog.csdn.net/seanbv/archive/2010/04/05/5451705.aspx
软件架构师应该知道的97件事:
客户需求重于个人简历
(
Nitin Borwankar
)
客户需求至上。沽名钓誉,事与愿违。
简化根本复杂性
,消除偶发复杂性
(
Neal
Ford
)
分析问题好比拨云见月、水落石出。
关键问题可能不是出在技术上
(
Mark
Ramm
)
团队同心,其利断金。
以沟通为中心,坚持简明清晰的表达方式和开明的领导风格
(
Mark Richards
)
沟通应当言简意赅、详略得当,别拖泥
带水。
架构决定性能
(
Randy
Stafford
)
种瓜得瓜,种豆得豆,架构设计也是一
样道理。
分析客户需求背后的意义
( Einar Landre
)
抽丝剥茧,洞见症结。不要被表面需求
迷惑。
起立发言
(
Udi Dahan
)
起立发言效果更好。
故障终究会发生
(
Michael
Nygard
)
应该提前设计预防措施,限制故障。
我们常常忽略了自己在谈判
(
Michael
Nygard
)
工程师应该适时转换角色,学习谈判的
技巧。
量化需求
(
Keith Braithwaite
)
没有规矩,不成方圆。
一行代码比五百行架构说明更有价值
(
Allison Randal
)
可工作的代码才是目标,设计只是达成
目标手段。
不存在放之四海皆准的解决方案
(
Randy
Stafford
)
软件世界没有万能*钥匙。
提前关注性能问题
(
Rebecca Parsons
)
尽早展开性能测试。
架构设计要平衡兼顾多方需求
(
Randy
Stafford
)
平衡兼顾项目的技术需求和相关各方的业务需求。
草率提交任务是不负责任的行为
(
Niclas
Nilsson
)
要设法杜绝开发人员草率提交任务的念头。
不要在一棵树上吊死
(
Keith Braithwaite
)
为客户提供多样化的解决方案。
业务目标至上
( Dave Muirhead
)
技术决策不能脱离业务目标和现实条件的约束。
先确保解决方案简单可用,再考虑通用性和复用性
(
Kevlin Henney
)
架构师应该亲历亲为
( John Davies
)
身先士卒才能赢得同事的信任。
持续集成
( David Bartlett
)
避免进度调整失误
( Norman Carnovale
)
不惜一切代价拒绝调整项目进度的要求。
取舍的艺术
(
Mark Richards
)
架构不可能满足所有需求。
打造数据库堡垒
(
Dan Chak
)
一开始就要定义好数据模型。
重视不确定性
(
Kevlin Henney
)
推迟决策,建设性地利用不确定性。
不要轻易放过不起眼的问题
( Dave Quick
)
别忘了温水煮青蛙的故事。
让大家学会复用
(
Jeremy Meyer
)
重复利用已有资源,首先要改变大家的观念。
架构里没有大写的“I
”
( Dave Quick
)
变让自己变成自大狂。
使用“
一千英尺高”
的视图
(
Erik
Doernenburg
)
选择合适的架构视图。
先尝试后决策
(
Erik
Doernenburg
)
掌握业务领域知识
(
Mark Richards
)
程序设计是一种设计
( Einar Landre
)
软件开发也分成设计和生产两个阶段。
让开发人员自己做主
( Philip Nelson
)
时间改变一切
( Philip Nelson
)
选择值得投入精力的工作,别跟以前的工作过不去。
设立软件架构专业为时尚早
( Barry Hawkins
)
控制项目规模
( Dave Quick
)
架构师不是演员,是管家
( Barry Hawkins
)
别忘了你的工作责任。
软件架构的道德责任
(
Michael
Nygard
)
架构师的决定会影响许多人,务必慎重。
摩天大厦不可伸缩
(
Michael
Nygard
)
但软件可以。
混合开发的时代已经来临
(
Edward Garson
)
性能至上
(Craig Russell
)
留意架构图里的空白区域
(
Michael
Nygard
)
空白区域“充满”了各种软件和“硬件”。
学习软件专业的行话
(
Mark Richards
)
同行之间讲行话方便交流。
具体情境决定一切
(
Edward Garson
)
侏儒、精灵、巫师和国王
(
Evan Cofsky
)
开发团队不应该同质化。
向建筑师学习
(
Keith Braithwaite
)
借鉴建筑行业的经验。
避免重复
(
Niclas Nilsson
)
欢迎来到现实世界
(
Gregor
Hohpe
)
现实世界比软件世界复杂。
仔细观察,别试图控制一切
(
Gregor
Hohpe
)
架构师好比两面神
( David Bartlett
)
架构师应该像两面神一样,眼观六路、耳听八方。
架构师应关注边界和接口
( Einar Landre
)
寻找自然的边界,分而治之。
助力开发团队
(
Timothy High
)
优秀团队是成功的保障,要尽量助力开发团队。
记录决策理由
(
Timothy High
)
记录架构决策背后的理由,具有极高的投资回报价值。
挑战假设,
尤其是你自己的
(
Timothy
High
)
臆断是事情搞砸的主要根源。务必要确保软件基石坚实可靠。
分享知识和经验
(
Paul
W. Homer
)
帮助周围的人不断改善,他们也会帮助我们发挥出全部的潜力。
模式病
( Chad La Vigne
)
不要让一展设计模式功力的欲望,遮蔽了务实的真知。
不要滥用架构隐喻
( David Ing
)
不要耽溺于系统隐喻之中,反让它拖了后腿。
关注应用程序的支持和维护
( Mncedisi Kasper
)
应用程序的支持和维护,永远都不应该是事后才考虑的事情。
有舍才有得
(
Bill de hÓra
)
珍惜需要权衡的时机,远胜毫无约束和限制。
原则、公理和类比胜于个人意见和口味
(
Michael Harmer
)
从“
可行走骨架”
开始开发应用 (
Clint Shank
)
从“ 可行走骨架” 开始,增量培育系统成长
。
数据是核心(
Paul W. Homer
)
从“数据是核心”这个角度去认识系统,能大大降低理解复杂度
。
确保简单问题有简单的解
(Chad La Vigne
)
架构师首先是开发人员
(Mike Brown
)
碰到麻烦时,架构师可不能只会干吹烟圈却束手无策。
根据投资回报率(ROI
)进行决策(
George Malamidis
)
一切软件系统都是遗留系统(
Dave Anderson
)
软件很快便会过时,修改维护无可避免。
起码要有两个可选解决方案(
Timothy
High
)
理解变化的影响 (
Doug Crawford
)
清楚认识变化类型及其影响。
你不能不了解硬件(
Kamal
Wickramanayake
)
硬件容量规划,是和软件架构同等重要的事情。
现在走捷径,将来需付息(
Scot Mcphee
)
及时还清技术债务。
不要追求“完美”,“足够好”就行(
Greg Nyberg
)
避免过度设计。
小心“好主意” (
Greg Nyberg
)
内容为王
(
Zubin Wadia
)
对商业方,架构师要避免愤世嫉俗(
Chad La Vigne
)
拉伸关键维度,发现设计中的不足(
Stephen Jones
)
架构师要以自己的编程能力为依托(
Mike Brown
)
命名要恰如其分(
Sam Gardiner
)
弄清楚要做的究竟是什么。
稳定的问题可以获得高质量的解决方案(
Sam Gardiner
)
天道酬勤(
Brian Hart
)
真正做好那些看似简单的任务,坚守承诺。
对决策负责(
Yi Zhou
)
弃聪明,求质朴(
Eben
Hewitt
)
精心选择有效技术,绝不轻易抛弃(
Chad La Vigne
)
客户的客户才是你的客户!(
Eben Hewitt
)
事物发展总会出人意料 (
Peter Gillard-Moss
)
设计是在不断变化的世界中持续进行探索试验的过程。
选择彼此间能和谐共处的框架
(
Eric Hawthorne
)
当心“无所不能”型的框架。
着重强调项目的商业价值(
Yi Zhou
)
不仅仅只控制代码,也要控制数据
(
Chad La Vigne
)
偿还技术债务 (
Burkhardt Hufnagel
)
在速度和架构间进行权衡,保持平衡。
不要急于求解(
Eben
Hewitt
)
首先看看是否可以改变问题。
打造称手的系统(
Keith Braithwaite
)
找到并留住富有激情的问题解决者
(
Chad La Vigne
)
软件并非真实的存在 (
Chad La Vigne
)
虚拟世界中的软件是柔韧可变的。
学习新语言 (
Burkhardt Hufnagel
)
防止沟通不畅和误解
。
分享到:
相关推荐
内容概要:本文档详细介绍了 DeepSeek 这一高效、经济的人工智能解决方案,旨在为企业端、产品端以及开发者提供深度技术支持。对于企业而言,DeepSeek 带来了显著的成本效益和生产效率提升;而对于具体的产品和服务,它增强了用户体验的质量。特别是针对开发者,文档深入浅出地讲解了如何利用 DeepSeek 实现自动化代码生成、改写等辅助开发功能,并且提供了具体的步骤指导以满足不同环境下的部署需求,包括直接通过官方API接入、本地私有化部署或借助云平台进行托管的方式。 适合人群:希望降低开发门槛,提高工作效率的软件工程师和技术团队。 使用场景及目标:开发者可以根据自身条件选择最适合自己的部署方案来整合 DeepSeek 技术,进而达到优化编码过程、减少人为错误的目的。 其他说明:文中还包括了许多实际操作的例子,如通过代码改写的实例来展示如何改进现有程序段落,还有详细的API使用指南帮助初学者快速上手DeepSeek。此外,还提供了大量外部参考资料链接以便进一步扩展知识和技能范围。
lusted_3cd_01_0318
Cherry Studio是一款支持多模型服务的 Windows/macOS GPT 客户端。通过与Ollama搭配,搭建个人本地AI大模型
chromedriver-win64-136.0.7058.0.zip
matlab程序代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
mellitz_3cd_01_1116
基于MATLAB的牛顿迭代法实现
steenman_01_0908
AB PLC例程代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
stone_3ck_01a_0518
AB PLC例程代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
lusted_3cd_01_1117
管理层情感语调,或称为管理层语调,是一个在财务与会计领域中常用的概念,特别是在分析上市公司信息披露质量时。它主要指的是管理层在上市公司文字信息披露过程中,用词所体现出的情感倾向和可理解性。 本数据复刻了《财经研究》《中南财经政法大学学报》等顶级期刊的核心解释变量的做法。情感语调对企业未来盈余和未来绩效具有较强解释力、降低会计信息误定价、为分析师预测提供增量信息,而投资者也会对管理层情感语调做出积极反应。 情感语调1=(正面词汇数量-负面词汇数量)/词汇总量;数值越大,情感倾向越偏向正面积极。 情感语调2=(正面词汇数量-负面词汇数量)/(正面词汇数量+负面词汇数量);数值越大,情感倾向越偏向正面积极。 指标 证券代码、企业代码、年份、证券简称、行业代码、行业名称、正面词汇数量、负面词汇数量、词汇总量、句子数量、文字数量、情感语调1、情感语调2。
mellitz_3cd_02_0318
moore_01_0909
lusted_3ck_02a_0119
pimpinella_3cd_01_0916
AB PLC例程代码项目案例 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,不仅适用于小白学习入门进阶。也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载!欢迎交流学习!不清楚的可以私信问我!
li_3ck_03_0919
ofelt_3cd_01_0716