作为一名架构师,我们应该掌握哪些技术呢?

作为一名架构师,我们应该掌握哪些技术呢?

  1. 面向对象OOP的理解,我是说理解,我不希望你告诉我百度里的概念!
  2. 常用的数据结构,对于常见的数据结构,算法,应该知道一些!
  3. WEB服务,对于分布式,大一点的项目都会遇到,你可以用WS,WCF,Remoting去实现它,它们的原理是你应该知道的,因为你是一名架构师,兄弟们都指着你呢,呵呵!
  4. 全文检索:lucene.net,当然lucene只是实现全文检索的一种方式,你可以使用其它文件索引来干这事
  5. NOSQL:你可以选用不同的开源项目,redis,memcached你会用一种就行了,呵呵
  6. 缓存:cache,每个项目都会有自己的缓存机制,作为架构师的你,必须为你的企业开发一个统一的,健壮的,易扩展的组件,这是必须的,也是我们的责任!
  7. 负载均衡:Nginx,对于访问量大的WEB服务器,做负载是必须要走的路,没有一台服务器可以满足无穷大的访问量,去多架几台WEB服务器吧,呵呵
  8. 文件存储:FastDFS,无论是京东,淘宝,稍微有规模的企业都会有自己的文件存储机制,对于文件上传,下载,管理是很有必要的,我们将数据库,WEB服务,WWW服务,文件服务器分开吧,呵呵!
  9. 面向服务的体系结构(service-oriented architecture,SOA)组件,统一,公用,规范,当然你的项目有这些东西时,你应该去理解一个SOA了,它会将系统公用的模块,组件统一起来,为外部提供一个统一的接口,在各个领域中,统一去调用,还是那句话:我不要DRY,呵呵!
  10. 面向切面(方面)的编程: Aspect Oriented Programming(AOP),面向切面编程, 它是对面向对象OOP的补充,它让程序开发变得更加完美,将一个系统在横向上进行切割,把可以提出现的东西提出来,并使用动态插拔(动态代理)机制实现组件在各个领域系统中的插拔,微软的orchard是个不错的例子,呵呵!

你可能感兴趣的:(软件管理,摘要)