Reuse Is About People and Education, Not Just Architecture

本文探讨了软件复用的本质并非仅限于优秀的架构设计,更重要的是让团队成员了解并掌握现有资源的使用方法。文章强调了为提高复用率,组织内部需要采取措施确保开发者知晓可用的设计模式、框架及代码片段,并通过培训等方式帮助他们理解和运用这些资源。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Reuse Is About People and Education, Not Just Architecture

Jeremy Meyer

you MigHT AdopT THE AppRoACH that a framework that is well designed, or an architecture that is carefully considered and cleverly implemented, will lend itself to reuse within your organization. The truth is that even the most beautiful, elegant, and reusable architecture, framework, or system will only be reused by people who:
Know it’s There
Within your organization, developers or designers need to know that a design, framework, library, or fragment of code exists, and where they can find all the critical information about these elements (e.g., documentation, versions, and compatibility) in order to reuse them. It is a simple, logical truth that people won’t look for things that they don’t believe exist. You are more likely to suc- ceed with reusable elements if the information about them is “pushed.”
There are any number of methods for pushing information about reusable elements in an organization. These range from wiki pages with an RSS feed providing update information, useful in very large teams, to email announcing version updates in the source repository. In a tiny team, the designer or lead developer can inform his colleagues in personal conversations or by shouting it across the office. Ultimately, whatever your process for communicating about reusable elements, make sure you have one—don’t leave it up to chance.
Know How to use it
Understanding how to reuse an element depends on skills and training. Of course there are those people who (to use Donald Knuth’s terminology) “reso- nate” with coding and design. We have all worked with them, the gifted devel- opers and architects whose speed and depth of understanding is impressive,
52 97 Things Every Software Architect Should Know

even scary. But these people are rare. The rest of your team might be made up of good, solid, intelligent developers and designers. They need to be taught.
Developers and designers might not know of the particular design pattern used in a design, or fully understand the inheritance model that the frame- work designer intended them to use. They need to be given easy access to that information in the form of up-to-date documentation, or even better, training. A little training goes a long way toward ensuring that everyone is on the same page when it comes to reuse.
Are Convinced That it’s Better Than doing it Themselves
People, and particularly developers, tend to prefer to solve problems themselves rather than ask for help. Asking how something works is a sign of weakness, or even an indication of ignorance. This has a lot to do with the maturity and personality type of your individual team members; “better than doing it them- selves” means different things to different people. The “young guns” on your team will always want to write things themselves because it appeases their egos, whereas your more experienced people are more likely to accept that someone else has given thought to the problem domain and has something to offer in terms of a solution.
If your team doesn’t know where to find reusable artifacts or how to reuse them, they will default to the natural, human position: they will build it them- selves. And you will pay for it.
Jeremy Meyer has been designing and developing software for nearly 20 years, as well as teaching its mastery. He is currently a principal consultant for Borland Software in its modeling and design space.

转载于:https://www.cnblogs.com/yutingliuyl/p/7044570.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值