C114门户论坛百科APPEN| 举报 切换到宽版

亚星游戏官网

 找回密码
 注册

只需一步,快速开始

短信验证,便捷登录

搜索
查看: 2619|回复: 0

App架构师之路 [复制链接]

军衔等级:

亚星游戏官网-yaxin222  下士

注册:2007-11-10
发表于 2007-12-3 22:07:00 |显示全部楼层
   很多人问过我这个问题, 很惭愧, 我也没有真正领悟这个问题.就像有人问你登上泰山的能看到什么,而你现在还在半山腰.
   我试图去回到这个问题, 看了一些书并结合自己的体会来写一写,不一定正确, 请各位路过的XDJM指正切磋.
   App的开发过程按照面向模式的开发过程来看在系统分析设计过程要设立两个角色一个叫做架构设计师一个叫做业务分析师. 但通常大家App开发是由一个人兼任的,但是如果App系统大了,大到上千万行代码的系统, 一个人就不行了. 一定要分. 大家今天提到到的App架构师就是这个角色, 首先要在概念上区分出来.
   正常的App开发过程,首先是需求分析, 然后进行架构设计与设计规格. 因此架构设计之前要进行需求分析, 需求分析的结果作为架构设计的一些物理输入, 对于做出良好的架构设计,这些是远远不够的, 还要架构设计师的一些常识经验.
   因此我想从做好一个架构来看架构设计师应该具备哪些常识与能力. 我看过很多人给出一个能力模型但是我认为不具体,难以操作.
   大家知道, 需求分析是问题域的分析, 而设计是机器域的问题. 最终是用机器域来解决问题域的问题. 这就如同解大家的一个算术提, 有个很好的思路很重要, 但是这些思路哪里来, 只有靠平时多做题练习, 架构设计也是如此.
   做架构设计大家首先澄清一个观点, 那就是如何衡量一个架构是不是好的问题. 我的哲学是没有最好只有符合, 超过了需求的设计是过渡设计,否则就是设计不足.因此架构设计师必须是一个很好的权衡能手.
   大家开始上路: 首先架构师要能识别关键需求, 因此要求架构师要有很强的需求理解能力, 如果一个对于问题域都不能理解的设计师肯定不是好的设计师, 只能是一个无头苍蝇.
   其次非常熟悉机器域, 机器域大家分几个层面, 一个是硬件层面, 要了解常规的机器的体现结构,至少要熟悉最流行的两至三种(x86, SPARC等),第二个层面是操作系统层面, 要熟练掌握window, unix 操作系统的各种特点. 第三层面要掌握数据库系统, 建议要深入分析对比MSSql , Oracle. 第四个层面是应用系统层面. 要熟悉几类App的B/s, C/S 特点. 第五个层面:熟悉主流的开法框架或者中间件,比如MFC , ACE , J2EE 等等. 第六个层面:语言层面, 至少熟悉C++,Java 另外对于动态语言比如Python 等至少也能有些了解.
   机器域中的常识我列举的很多,但是只有这些还是不够的,还要熟悉常规的一些架构模式, 比如分层的架构模式, 比如MVC 等等. 这些对于考虑问题有一些帮助.
   只有这些还是不够的,更重要的是要有3-5个系统的设计经验,建议每做一个系统的架构设计要深入的分析与思考一下,如果有条件可以做一些分析比较.
   做到了这些, 你离一个合格的架构设计师已经不远了. 在保持一个平静与充满激情的心,很重要.


亚星游戏官网-yaxin222

举报本楼

您需要登录后才可以回帖 登录 | 注册 |

手机版|C114 ( 沪ICP备12002291号-1 )|联系大家 |网站地图  

GMT+8, 2024-11-18 08:11 , Processed in 0.115067 second(s), 15 queries , Gzip On.

Copyright © 1999-2023 C114 All Rights Reserved

Discuz Licensed

回顶部
XML 地图 | Sitemap 地图