*如何循序渐进向DotNet架构师发展(转)

微软的DotNet开发绝对是属于那种入门容易提高难的技术。而要能够成为DotNet架构师没有三年或更长时间的编码积累基本上是不可能的。特别是在大型软件项目中,架构师是项目核心成员,承上启下,因此RUP方法论也认同以架构为核心,体现4+1视图在整个软件开发过程中的重要作用。架构人员既要精通技术,又要熟悉业务,而且基本对软件生命周期各阶段的相关技术都需要有相关的积累和知识储备,而这些不经过多年的磨练是很难达到这个高度的。

要成为一个合格的架构师首先必须是一个合格或优秀的编码人员,对于开发来讲编码始终都是最重要的一项技能,在编码过程中只要自己善于去思考和分析问题,就可以多学到很多相关的知识和技术。所以我们在开发过程中一定要注意新知识和新技术的学习,前人经验和成果的学习。编码过程中应该去思考的一些问题有:

1.在编码过程中自己是否做单元测试,是否使用相关工具做单元测试,如果没有的话是什么原因无法把单元测试做起来?
2.自己编码的泄露率情况,编码泄露的BUG的原因分析
3.是否有意识的对代码进行重构,重构过程中是否引入了相关设计模式的思想?
4.是否对C#语言的一些高级特性进行学习,如反射调用,异步处理等。
5.是否对Remoting和WebService两种分布式技术做过研究和对比分析?
6.是否经常研究开源项目和开源代码,如Duwamish,PetShop,NUnit,Enterprise Library,Nant等
7.是否对对象持久化机制和O/R Mapping等相关技术做过相关的研究
8.平时在编码过程中是否注重公用组件和公用类的复用和抽取
9.自己在平时工作和学习中是否经常开发些小工具提高工作效率,巩固学习知识

设计和编码其实是密切而不可分的,对于严格将设计和编码分开的瀑布模型一般也仅仅在大型项目中应用。而及时编码和设计分离,也不是将编码人员不需要思考,编码活动始终是一项创造性的劳动,如果否定这个观点那就代表编码过程完全不需要人员介入而可以完全自动化。因此在这里谈设计主要还是指设计人员的系统化思维能力,设计人员应该比开发人员站高一个层次来分析和思考问题。设计人员最重要的一个技能就是现实->抽象的转换,而这个就需要谈到方法论的问题了,技术人员需要积累面对对象分析和设计或结构化分析知识的积累,需要有较强的数据库分析和设计能力。一个设计能否成为很好的架构师关键就在这种积累的深度和广度上面了。

因此在设计过程中应该考虑的问题有:
1.你现在分析和设计能力能否胜任大中型的应用系统还是只是独立功能分析和设计?
2.设计过程中是否有意识的考虑到组件的复用和相关接口设计准则。是否能够很自然的将分析模式,设计模式的相关内容应用到自己的设计过程中。
3.是否对XP,RUP,面向对象,结构化等方法论都有过较系统化的学习和思考。
4.是否真正理解系统功能需求和非功能需求对系统设计的不同的指导作用。
5.对自己设计的功能是否会根据后期的变更来反思自己的设计为何不能很好的适应变更?
6.是否在设计过程中经常自己开发些原型来对自己的设计思路进行验证?
7.是否专注技术的同时开始专业业务流程的分析,关注业务建模?

如果我们在设计和开发过程中经常关注这些知识和技能的话,成为一个合格的架构师是早晚的事情。平时能够胜任工作开发用到的知识和技能是微不足道的,如果自己不是有意识的去学习这些知识的话,那技能是很难得到进一步提高的。我参加过两次微软的架构师培训,在北京的微软架构峰会上也有机会专门参加了P&P Workshop的学习,培训老师是微软总部SmartClient Architecture and Design Guide一书的作者Edward A.Jezieski,让我感受最深是老外深刻的技术底蕴,对程序开发的执著。

对于DotNet架构经常用到的知识和技能储备有
1.RUP方法论,4+1视图。用例驱动业务建模->分析模型->设计模型
2.用例模式->分析模式->设计模式
3.常用的分布式技术
4.对安全,异常,日志,性能等非功能性需求的关注
5.对应用系统整体业务的关注

转载于:https://www.cnblogs.com/dwjaissk/archive/2007/06/08/776164.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/476754.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何利用python整合excel_使用 Python 合并多个格式一致的 Excel 文件(推荐)

一 问题描述 最近朋友在工作中遇到这样一个问题,她每天都要处理如下一批 Excel 表格:每个表格的都只有一个 sheet,表格的前两行为表格标题及表头,表格的最后一行是相关人员签字。最终目标是将每个表格的内容合并到一个 Excel 表格…

程序员面试金典 - 面试题 17.07. 婴儿名字(并查集)

1. 题目 每年,政府都会公布一万个最常见的婴儿名字和它们出现的频率,也就是同名婴儿的数量。 有些名字有多种拼法,例如,John 和 Jon 本质上是相同的名字,但被当成了两个名字公布出来。 给定两个列表,一个…

神经网络的简单偏好

文 | 许志钦知乎(已授权)源 | 天天机器学习作者注记我是2017年11月开始接触深度学习,至今刚好五年。2019年10月入职上海交大,至今三年,刚好第一阶段考核。2022年8月19号,我在第一届中国机器学习与科学应用大…

电影的音乐

Yann Tiersen,法国代表作:《天使爱美丽》《再见,列宁》 对于大家来说,一提到扬蒂尔森(Yann Tiersen)想到的便是《天使爱美丽》。的确《天使爱美丽》使这位法国音乐人一夜成为世界注目的艺术家。在我看来《天使爱美丽》的导演让皮埃尔热内(Jea…

python 列表写入csv_Python将字典数据写入CSV文件

# -*- coding: utf-8 -*- import os import time import csv class WriteCSV(): """定义成员变量""" def __init__(self): pass def init(self, info_list, info_dict_list): self.info_list info_list self.info_dict_list info_dict_list de…

数据结构--并查集(Disjoint-Set)

文章目录1. 并查集2. 操作2.1 初始化2.2 查询2.3 合并2.4 孤立3. 完整代码4. 相关题目5. 参考1. 并查集 并查集是一种树型的数据结构用于处理一些不相交集合(Disjoint Sets)的合并及查询问题 2. 操作 2.1 初始化 把每个点所在集合初始化为其自身&…

推特裁员大反转!马斯克哭求被裁员工回来

编 | Aeneas 好困源 | 新智元马斯克裁完一半员工后,发现推特运转不了了,现在正哭求一些人回来,堪称爽文情节了。打脸大戏来了!马斯克在上周五「灭掉」一半员工后,就后悔了。现在公司正在紧急联系数十名被裁的员工&…

Visual Studio 2008 Shell(翻译)

如果你现在在创建软件开发工具,你现在可以选择基于Visual Studio 2008 Shell。一个流行的Visual Studio 开发环境,Visual Studio Shell提供了一些核心功能,使你能够创建独一无二的应用程序,弹性的自定义能力帮助你推出更加特别的产…

word删除分节符后之前的格式乱了_办公室高级技能之Word邮件合并拆分

当我们需要批量生成名片,合同,成绩单等有相同内容的文件时,使用word邮件合并功能非常方便。如果你还需要把word文件发给不同的人就需要再拆分一下,用复制粘贴的方法拆分word,数量一多不仅效率低,还会因为文…

程序员面试金典 - 面试题 16.24. 数对和(双指针/哈希map)

文章目录1. 题目2. 解题2.1 排序双指针2.2 哈希map1. 题目 设计一个算法,找出数组中两数之和为指定值的所有整数对。一个数只能属于一个数对。 示例 1: 输入: nums [5,6,5], target 11 输出: [[5,6]]示例 2: 输入: nums [5,6,5,6], target 11 输出: [[5,6],[5…

ICLR 2023 最高分论文被锤抄袭??

文 | 智商掉了一地究竟是Git Clone还是Git Re-Basin?被评论区长文石锤!如上图所示,ICLR 2023 官方近期正式宣布评审工作已结束,评分最高的 Git Re-Basin 这项神经网络启发性新研究探索了在深度学习中,SGD算法在高维非凸…

新浪的图片新闻效果

<html><head><title>新浪的图片新闻效果</title><meta http-equiv"Content-Type"content"text/html; charsetgb2312"></head><body bgcolor"#FFFFFF"text"#000000"><p> </p>&l…

机器学习方法_机器学习模型应用方法综述

文章发布于公号【数智物语】 &#xff08;ID&#xff1a;decision_engine&#xff09;&#xff0c;关注公号不错过每一篇干货。来源 | 数据派THU&#xff08;id&#xff1a;DatapiTHU&#xff09;作者&#xff1a;Julien Kervizic翻译&#xff1a;陈之炎 校对&#xff1a;李海明…

程序员面试金典 - 面试题 16.21. 交换和(哈希set)

1. 题目 给定两个整数数组&#xff0c;请交换一对数值&#xff08;每个数组中取一个数值&#xff09;&#xff0c;使得两个数组所有元素的和相等。 返回一个数组&#xff0c;第一个元素是第一个数组中要交换的元素&#xff0c;第二个元素是第二个数组中要交换的元素。 若有多…

来,教你成为科研卷王

作为曾经熬通宵肝论文的过来人&#xff0c;小编要吐槽&#xff0c;论文写久了真的会头秃&#xff0c;尤其是确定选题和创新点的时候&#xff0c;是薅头发事件的高发阶段。对于那些导师放养、在自己的摸索中磕磕绊绊前行的科研新手们&#xff0c;焦虑总是瞅准时机就扑面而来——…

DEBUG主要命令(转)

1、如何调用DEBUG程序语法格式&#xff1a;DEBUG &#xff3b;驱动器名&#xff1a;&#xff3d;&#xff3b;路径&#xff3d;&#xff3b;文件名&#xff3d;如有文件名&#xff0c;则将指定的文件调入内存。如命令中没有指定文件名&#xff0c;则DEBUG可以与正在内存中的内…

python手机编译器可以干什么_Python是什么?Python学习用哪些编译器?

Python是什么&#xff1f;Python是一个非常好用的程序语言&#xff0c;开发的速度非常快。Python的设计哲学是优雅、明确、简单。因此&#xff0c;Perl语言中总是有多种方法来做同一件事的理念在Python开发者中通常是难以忍受的。 Python开发者的哲学是用一种方法&#xff0c;最…

程序员面试金典 - 面试题 16.16. 部分排序(排序/不排序)

文章目录1. 题目2. 解题2.1 排序2.2 不排序1. 题目 给定一个整数数组&#xff0c;编写一个函数&#xff0c;找出索引 m 和 n &#xff0c;只要将索引区间 [m,n] 的元素排好序&#xff0c;整个数组就是有序的。 注意&#xff1a;n-m 尽量最小&#xff0c;也就是说&#xff0c;找…

福州公交车与拖拉机相撞1人死亡

2007年7月3日下午17时许&#xff0c;福州地区大学新校区学园路路段发生一起交通事故。郑久忠(男&#xff0c;35岁&#xff0c;鼓楼区八一七中路734号弄一号)驾驶41路公交车沿学园路由北往南行驶&#xff0c;途经厚庭路和学园路交叉路口&#xff0c;与林亮(男&#xff0c;34岁&a…

综述|视觉Transformer在CV中的现状、趋势和未来方向

文 | 汽车人源 | 自动驾驶之心摘要Transformer&#xff0c;一种基于注意力的编码器-解码器模型&#xff0c;已经彻底改变了自然语言处理&#xff08;NLP&#xff09;领域。受这些重大成就的启发&#xff0c;最近在计算机视觉&#xff08;CV&#xff09;领域采用类似Transformer…