﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-andyj2ee-随笔分类-架构师</title><link>http://www.blogjava.net/andyj2ee/category/54411.html</link><description>java tec sky</description><language>zh-cn</language><lastBuildDate>Wed, 18 Jun 2014 15:33:24 GMT</lastBuildDate><pubDate>Wed, 18 Jun 2014 15:33:24 GMT</pubDate><ttl>60</ttl><item><title>如何成为一名软件架构师？</title><link>http://www.blogjava.net/andyj2ee/archive/2014/06/18/414906.html</link><dc:creator>java光环</dc:creator><author>java光环</author><pubDate>Wed, 18 Jun 2014 14:49:00 GMT</pubDate><guid>http://www.blogjava.net/andyj2ee/archive/2014/06/18/414906.html</guid><description><![CDATA[<p>Daniel 
Mohl是一名专业的软件工程师/架构师，他的兴趣包括理解各种复杂的编程语言、企业应用架构以及如何搭建业务与技术，他通晓F#、C#、
CoffeeScript、JavaScript、Erlang、ASP.NET、MVC、WPF、WCF、Sliverlight、SQL 
Server等技术。有着多年的软件开发经验。</p>
<p>他经常会被一些有潜力和有前途的程序员问到：&#8220;我要怎么做才能成为一名架构师？&#8221;说实话，这已经是老生常谈的话题了，答案当然是视情况而定。不过他也根据自己的经验，给大家一些建议，并且提供一些资料，助你快速走上架构师这条道路。</p><p>下面是Daniel Mohl所提出的列表，供大家参考：</p>
<p>首先，你必须不断地寻求改善和提升自己。而提升自己的最好方法是阅读，下面有几本书，对我的软件架构技能的提升很大。推荐给大家：</p>
<ul><li><a href="http://www.amazon.com/Things-Every-Software-Architect-Should/dp/059652269X/ref=sr_1_1?ie=UTF8&amp;qid=1356965829&amp;sr=8-1&amp;keywords=97+things+every+software+architect+should+know" target="_blank">软件架构师应该知道的97件事</a></li><li><a href="http://www.amazon.com/Patterns-Enterprise-Application-Architecture-Martin/dp/0321127420/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356965872&amp;sr=1-1&amp;keywords=patterns+of+enterprise+application+architecture" target="_blank">企业应用架构模式</a></li><li><a href="http://www.amazon.com/Agile-Principles-Patterns-Practices-C/dp/0131857258/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356965896&amp;sr=1-1&amp;keywords=agile+patterns+principles+and+practices" target="_blank">敏捷软件开发，原则，模式和实践</a></li><li><a href="http://www.amazon.com/Enterprise-Integration-Patterns-Designing-Deploying/dp/0321200683/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356965916&amp;sr=1-1&amp;keywords=enterprise+integration+patterns" target="_blank">企业集成模式</a></li><li><a href="http://www.amazon.com/JavaScript-Good-Parts-Douglas-Crockford/dp/0596517742/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356965942&amp;sr=1-1&amp;keywords=javascript+the+good+parts" target="_blank">JavaScript语言精髓</a></li><li><a href="http://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356965962&amp;sr=1-1&amp;keywords=working+effectively+with+legacy+code" target="_blank">利用遗留代码有效地工作</a></li><li><a href="http://www.amazon.com/Domain-Driven-Design-Tackling-Complexity-Software/dp/0321125215/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356965983&amp;sr=1-1&amp;keywords=domain+driven+design" target="_blank">领域驱动设计</a></li><li><a href="http://www.amazon.com/Enterprise-Architecture-Strategy-Foundation-Execution/dp/1591398398/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356966009&amp;sr=1-1&amp;keywords=enterprise+architecture+as+strategy" target="_blank">企业架构策略</a></li><li><a href="http://www.amazon.com/Design-Patterns-Elements-Reusable-Object-Oriented/dp/0201633612/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356966075&amp;sr=1-1&amp;keywords=Design+Patterns+%28Gang+of+Four%29" target="_blank">设计模式（四人帮）</a></li><li><a href="http://www.amazon.com/Goal-Process-Ongoing-Improvement/dp/0884271951/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356966091&amp;sr=1-1&amp;keywords=The+Goal" target="_blank">The Goal</a></li><li><a href="http://www.amazon.com/Design-Patterns-Prentice-Service-Oriented-Computing/dp/0136135161/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356966114&amp;sr=1-1&amp;keywords=SOA+Design+Patterns" target="_blank">SOA设计模式</a></li><li><a href="http://www.amazon.com/SOA-Principles-Service-Design-Thomas/dp/0132344823/ref=sr_1_1?s=books&amp;ie=UTF8&amp;qid=1356966134&amp;sr=1-1&amp;keywords=SOA+Principles+of+Service+Design" target="_blank">SOA Principles of Service Design</a></li></ul>
<p>除了阅读，还有没有其他需要注意的、或者在平时需要关注的东西呢？</p><ul><li>每隔一两年学习一门新语言，F#是个不错的选择。</li><li>选择一个重点领域，但是尽可能对许多技术有个高层次的理解</li><li>对你所关注的重点领域，开通一个博客并且继续拓展该领域的知识面，让自己渐渐成为一名专家。</li><li>与不同的技术、编程语言、设计模式和结构等（甚至是它并没有在日常中给予你直接的帮助）打交道。你永远都不知道这些知识是否会在未来派上用场，但是对你绝对是有益无害。</li><li>根据你的目标受众来谈论&#8220;语言&#8221;。作为一名架构师，你将会与各种各样等级的人打交道，并且他们对技术的理解也会有所不同。所以要学会调整你的讲解方式，做到因人制宜，让他们能够理解。</li><li>阅读博客、观看/参加Twitter或G+、听播客、读杂志、参加用户小组会议和技术会议，并且在这些会议上踊跃发言。这些都会给你带来无穷无尽的知识和乐趣，建立自己的&#8220;品牌&#8221;和提供交流机会。</li><li>纪律是关键。永远做你自己最喜欢的工作，即使它听起来不那么有趣。每天安排时间学习一些新的东西，即使是15分钟也可，千万不要被其他事情占用了这段时间。</li><li>开启博客之旅。我发现，与阅读比起来，把东西写下来会让你有更深入的理解。</li><li>利用好&#8220;闲暇时间&#8221;，这段时间可以拿本杂志读读，或者去听听播客等。</li><li>了解各种可用的开发工具，可以使架构师的工作更好、更有效</li><li>看许多不同项目里的架构</li><li>学习各个项目的管理方法</li><li>学习一些评估技术，对业务可以提供有价值的评估</li></ul>
<p>上面是作者总结出来的列表，虽然看起来有点枯燥无味，但在整个软件开发过程中是乐趣无穷的。如果你还有更好的建议，欢迎与我们分享。</p>
<p>来自：<a href="http://dotnet.dzone.com/articles/how-become-software-architect" target="_blank">How to Become a Software Architect</a></p><img src ="http://www.blogjava.net/andyj2ee/aggbug/414906.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/andyj2ee/" target="_blank">java光环</a> 2014-06-18 22:49 <a href="http://www.blogjava.net/andyj2ee/archive/2014/06/18/414906.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>