关于软件的设计原则有很多,对于设计原则的掌握.理解.实践及升华是架构师的一项极为之必要的修炼. 记得在12年前第一次阅读<敏捷开发>时,五大基本设计原则就深深地植入到我的脑海中一直影响至今,我也由此获益良多.设计原则当然不止只有五种,最主要的面向对象的设计原则有以下这些:   单一职责原则 (SRP) - 就一个类而言,应该仅有一个引起它变化的原因 开-闭原则 (OCP)- 软件实体(类,模块,函数等)应该是可以扩展的,但是不可以修改 里氏替换原则 (LSP)- 子类必须能够替换它们的基类型…
如果你对项目管理.系统架构有兴趣,请加微信订阅号"softjg",加入这个PM.架构师的大家庭 在讲解系统架构设计之前,有必要补充一下架构相关的概念,因此本博文主要讲述架构.架构师和架构设计等相关的概念以及关系.这是系统架构设计的基础,只有具备了此方面的知识之后,我们才能进一步了解架构师在软件开发过程中扮演的角色,架构师如何编写架构文档来满足不同利益相关者的需求等相关内容. 现在我们通过定义的概念来了解架构设计中的一些相关术语. 架构:架构是体现在它的组件中的一个系统的基本组织.它们彼…
公司的CMS(综合赋码管理系统)是WINFORM的CS架构.这套系统的架构师换了3届,到现在已经几年没有架构师了.本来入职时,岗位目标就是这个“自动化架构师”. 后来和领导达成共识先争取成为储备架构师,因为架构首先是为业务服务的,而工控行业有许多特别的地方,不是普通的软件技术堆叠就能做出优秀的工控软件的.原来以为已经有十多年经验了,CS没有啥搞头了.实际上最近近半年的学习,发现真的是需要活到老学到老:不要轻易以为小领域就容易成为专家,其实是经常遇到瓶颈的.拿自己来说十几年做了无数项目,未必每次技…
作为前端架构师,你经常需要制定,或至少能够掌握以上所列的每一项内容.流程中的任何一个环节出现问题,都会迅速演变为开发人员的痛苦,或者导致网站无法持续满足用户要求,甚至崩溃.  前端架构师的用户是开发人员.我们选择的工具.编写的代码.创建的流程,都是为了让开发人员能够建出最高效的.不出错的.可扩展的和可持续优化的系统. 摘自<前端架构设计>-micah godbolt…
讲师:Issam Elbaytam,葡萄城集团全球首席架构师(Chief Software Architect of GrapeCity Global).曾任 Data Dynamics.Inc 创始人兼资深产品经理,个人研究方向主要为 MS.NET语言及平台.动态化系统构建,以及高性能大型分布式Web系统架构,主导了葡萄城多款畅销控件产品的系统架构与性能优化.   “25年来每天只休息4小时,除了日常作息时间,Issam不是在研究技术和产品,就是在去研究技术发展趋势的路上”这就是葡萄城同事对他…
上星期:应老东家的要求,帮其面试.NET架构师. 于是:老东家进行了一星期的简历收集: 终于:在一堆简历里,精挑细选了四个: 约了:周末上午下午各两个. 面试者年龄:在30-35岁左右,差不多10年.NET经验. 毕竟收人钱财替人消灾,所以我特意在面试前的晚上稍为准备了一下: 想看看网上有什么可参考的, 于是:网上搜搜:.NET 架构师面试题 发现:这块内容几乎一片空白,悲哀啊〜〜〜 偶尔有一两条链接,里面的题都是.NET面试题,套上了架构的名头,坑谁啊. 看来只能自己设计了,考虑到: 时间:大…
本文作者叫 Srinath,是一位科学家,软件架构师,也是一名在分布式系统上工作的程序员. 他是 Apache Axis2 项目的联合创始人,也是 Apache Software 基金会的成员. 他是WSO2流处理器(wso2.com/analytics)的联席架构师. Srinath 撰写了两本关于 MapReduce 和许多技术文章的书. 他获得了博士学位. 来自美国印第安纳大学. Srinath 通过不懈的努力最终总结出了30条架构原则,他主张架构师的角色应该由开发团队本身去扮演,而不是专…
一 : 架构与程序 软件架构是一种思维方式,而程序只是实现思维方式的一种手段,代码固然重要,但是若没有整体的思维架构,一切程序都如水中浮萍. 二 : 框架如何设计 暂时抛开Android Framework框架不谈,我们回想一下JavaWeb的核心思想mvc架构.what?这又是什么东西?好吧,不知道mvc架构的百度一下,只能帮你这些了....... mvc主要是模型.视图.控制器.模型层以Entity,视图层jsp,控制层Action为主的三层架构模型,实现业务分离,以及代码解耦.外层通过Ap…
文章大纲 一.架构师定义二.架构师分类与具备能力三.研发人员发展的技术路线四.架构师知识体系五.参考文章   一.架构师定义   什么是架构师,这个聊架构话题时永恒的问题.每个公司对架构师的定位也有所不同,因为不同公司所处的阶段,业务模式,应用场景也都不一样.对架构的要求也不一样.  在初创公司的野蛮生长阶段:业务场景和需求边界很难把握,有时候根本不需要架构师,产品需要快速迭代和变现,需求频繁更新,这个时候需要的是快速实现.当然如果公司成长以后,这个阶段就是欠下很多技术债,埋下很多坑,如果人员流…
作者:小傅哥 博客:https://bugstack.cn 沉淀.分享.成长,让自己和他人都能有所收获! 一.前言 你在通往架构师的路上吗? 程序员这个行业就像是在不断的打怪升级,突破每一阶段的瓶颈期. 从毕业前想通过实习拿到offer.毕业后想通过试用期到转正留下.转正后程序员想做到高级开发.从高级该开发想做到架构师.从架构师想做到更高的总监或者CTO.往后的路越来越不容易,既需要需要个人不断的沉淀学习,也需要一定的机遇机会. 在这条路线上架构师是一个瓶颈期的重要转折点,因为这个阶段远不止个人…