网站架构师的工作内容(“构架师”想呼唤一下,让架构师复活吧!)

优采云 发布时间: 2022-04-15 04:22

  网站架构师的工作内容(“构架师”想呼唤一下,让架构师复活吧!)

  2021-10-10

  在csdn上看到朋友的一篇文章文章,标题是《架构师已死》,结合最近的工作,想打个电话,让架构师起死回生!

  0. 序列

  我不方便说我工作的公司就是那个公司,但是后面提到的公司就是我工作的公司。下面提到的项目只谈一些与本文相关的内容,不会谈具体内容。

  我作为一个网站开发人员来到这家公司,我的工作是做一些网站系统,我的第一个项目是一个用于内部共享图像的图像管理系统。与这个项目相关的是一个内容管理系统cms,该系统之前已经完成。图片管理系统需要使用cms用户的数据登录,然后需要根据这些数据进行授权。另外,还有一个与本项目无关的系统,就是公司内部的考勤统计系统。我正在做的这个项目与考勤系统没有直接关系。

  在我与负责的产品经理讨论需求后,一位领导告诉我如何与 cms 系统交互。想不到,我需要直接连接cms的数据库,才能完成图片管理系统的用户登录。特征。显然这是不正确的。用户登录的过程可能会做很多事情,可能需要记录登录日志,可能需要更新用户登录次数等等。这样我连接对方的数据库,重写登录逻辑是很不合适的,所以问下是否可以通过cms系统提供登录Web服务,可以通过图片调用管理系统在这里,可惜领导和我没太注意这个问题。领导说,这种功能封装,后面容易讲。由于我是新人,不方便争辩,因为如果我争辩,肯定会给cms的团队带来一定的工作量。图片管理系统的另一点还涉及到权限的管理,这也是cms中已有的功能,而且由于图片管理系统新增了几个角色,所以需要在这个系统中实现。显然,这也是不合适的。两次也属于同一个逻辑实现。另外,由于考勤统计系统也有公司所有员工的用户信息,下面是现有系统的侧面*敏*感*词*。不方便争辩,因为如果我争辩,肯定会给从事cms的团队带来一定的工作量。图片管理系统的另一点还涉及到权限的管理,这也是cms中已有的功能,而且由于图片管理系统新增了几个角色,所以需要在这个系统中实现。显然,这也是不合适的。两次也属于同一个逻辑实现。另外,由于考勤统计系统也有公司所有员工的用户信息,下面是现有系统的侧面*敏*感*词*。不方便争辩,因为如果我争辩,肯定会给从事cms的团队带来一定的工作量。图片管理系统的另一点还涉及到权限的管理,这也是cms中已有的功能,而且由于图片管理系统新增了几个角色,所以需要在这个系统中实现。显然,这也是不合适的。两次也属于同一个逻辑实现。另外,由于考勤统计系统也有公司所有员工的用户信息,下面是现有系统的侧面*敏*感*词*。这也是cms中已有的功能,由于图片管理系统新增了几个角色,需要在本系统中实现。显然,这也是不合适的。两次也属于同一个逻辑实现。另外,由于考勤统计系统也有公司所有员工的用户信息,下面是现有系统的侧面*敏*感*词*。这也是cms中已有的功能,由于图片管理系统新增了几个角色,需要在本系统中实现。显然,这也是不合适的。两次也属于同一个逻辑实现。另外,由于考勤统计系统也有公司所有员工的用户信息,下面是现有系统的侧面*敏*感*词*。

  

  这种结构导致一些重复的逻辑和数据,以及各个系统之间的病态耦合关系,给维护带来很大的困难,也会给后期开发的系统加分不少。工作量大。

  上面的图片管理系统只是我做的一个小东西,很快迎来了第二个项目,也就是网站的一个频道,就像新浪有宽带、新闻等等,我做的就是这些这。我们公司业务很多,所以模块很多。我所做的将参考许多其他模块。如何引用其他模块成为一个问题。这里(我公司)采用了几种方法1)直接读取对方的数据库2)直接引用对方的dll,3)调用数据库中的存储过程。有很多方法,但没有一个是美丽的。代码可以很美,整个系统的架构也可以很美!所以我哭了:起死回生,建筑师!

  1. 架构师应该做什么

  带着上面的问题,我忍不住想叫系统架构师现身。在《架构师已死》一文中,一位正在接受采访的朋友曾经提到架构师的工作是选择一个项目是使用structs还是spring结构来开发。结果博主证明了选择这个问题比编码容易,所以这不是架构师的工作。建筑师的工作应该是比较艰巨的工作。架构师要熟悉公司的所有项目,并能在一定程度上预见未来的系统,从而调整各个系统之间的关系,使各个子系统形成一个完美的架构体,可以影响各个系统。其他稳定或独立运行;在软件工程方面,

  我们还与传统的*敏*感*词*进行了类比。系统架构师的工作不是某个建筑设计师的工作,而是整个城市布局的设计师。建筑师必须了解每栋建筑、每一个菜市场、每家医院的结构和功能以及它们之间的关系,以及一些外部因素,然后才能决定如何建设一个美丽、健康、宜人的城市。

  2. 拥有架构师能给我们带来什么好处

  做架构师的工作可以让我们的程序更加稳定,因为程序子系统之间的结构是稳定的。它可以减少我们维护的工作量。一个好的架构师永远不会让重复的逻辑和数据出现在系统中,这势必会减少系统的开发工作;架构师还可以让构建新系统的工作变得更轻松,因为架构师会为我们抽象出底层模块,并在各个程序之间共享。

  本文第一个案例由架构师设计如下:

  

  架构师设计了一个用户管理系统模块,为其他三个模块提供用户管理服务。涉及用户的操作统一在用户管理系统中,包括用户注册和权限管理。这样,当开发一个新系统时,就不需要做系统登录和用户授权模块了。这种结构更好吗?

  3. 建筑师需要什么能力

  架构师首先要懂编码,这是设计的前提;那么他们还需要懂设计,能够设计出完美的系统;那么他们还需要有看大局的能力;具有出色的协调能力,可以看出架构师的工作包括可能涉及多个项目,这需要多个项目团队甚至客户之间的协调。

  文中给出的例子都比较简单,但真正的架构师不能只处理这么简单的问题,必须考虑很多因素。

  随附的:

  csdn“建筑师死了”

  分类:

  技术要点:

  相关文章:

0 个评论

要回复文章请先登录注册


官方客服QQ群

微信人工客服

QQ人工客服


线