您的位置:首页 > 数据库 > MySQL

Mysql之索引与优化

2014-08-15 20:00 141 查看
很多程序员都以架构师作为未来的一个发展[/u]方向,但架构师是怎么炼成的呢,应该具备什么样的能力呢?

1)需要具有很好的逻辑能力,对于软件开发[/u]工程师来说,由于大多从事编程[/u]工作,所以很容易以为自己的逻辑思维没有问题,足以满足软件架构师一职所需。实则不然!就我的观察,不少工作近十年的工程师仍存在思维不清的问题。主要表现在和他讨论问题时,你问他A,他回你B,且很容易跑题和抓不住重点。软件架构师在工作中需要“咬文嚼字”地理解文字和沟通,此时清晰的思维就是关键。

2)需要很强的概括能力,软件架构师在很多情形下是管理层与工程师之间的桥梁,除了掌握技术细节,还要对技术细节进行一定的抽象概括使管理层理解问题所在,以便管理层恰当地参与决策。此外,软件架构师在日常工作中也会面临各种各样的技术问题,良好的概念能力有助于把握住问题的本质,从而有效率和效果地解决问题。

3)需要熟练应用工具(uML),软件架构师由于需要从事大量文字描述性的技术工作,不可避免地需要借助图,而UML就是一种较通用和接受程度较高的图形化建模语言。软件架构师对于UML的掌握,不能只局限于明白各种图型的意义,还得能熟练地查阅UML规范,以便精准地了解各种术语和图型的含义,从而实现对模型[/u]的精确表达。记住,“好图胜过千言万语”,图要好就得追求表达的精确性,这就离不开对UML的精准掌握,用来达到百闻不如一见的效果

4)需要很强的业务能力,需要对行业的业务规范,对公司的组织结构,对客户关系清晰的认识,对研发流程深刻的理解

5)较强的组织能力,软件架构师在不少情形下是技术层面的决策者,他必须敢于“拍板”,这就要求他承担起相应的责任。当然,责任的承担不能“人有多大胆,地有多大产”那样,而应建立在自己的职业素养和能力之上。软件架构师如果不勇于承担责任,那就容易造成开发工作开展不下去的局面

6)敢于承担责任和面对挑战的勇气,其实,这一点对于每一个职场人士都很重要,但对于软件架构师尤为重要。与软件开发工程师相比,软件架构师所面临问题的复杂度更高,既会有技术因素,也会有人为因素。解决这些问题有时是很大的挑战,也让人觉得痛苦。有挑战就意味着其中一定蕴涵着其中存在可收获的内容,每克服一次我们的能力就获得了提高。在面对挑战时,我喜欢对自己说“没有痛苦就没有成长”;也会设想自己在面对挑战的环境中工作了一年、几年后将会有多大的收获啊!这种设想会给我们的职业发展带来更大的想象空间,使得自己面对挑战时更具耐心、信心和勇气
本文出自 “phper之家” 博客,请务必保留此出处http://phperjia.blog.51cto.com/3292694/912600
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: