程序员知识体系探索:点、线、面、体(下)

简介: 程序员知识体系探索:点、线、面、体(下)

程序员的点线面体


image.png


这里先抛一张示意图,点线面体是一种演进。在各阶段还有细分。

点:我们首先定义为解决具体问题,比如实现多文件的上传下载。一个复杂度一般的系统owner,我们都可以暂且纳入到点这个层面。但其实system就需要一些系统化思维。


从系统owner到二级域


image.png


如上图所示,System的  owner,从系统的角度是一个点。但从功能(Func)到System的角度可以是一个面的变化。有平台能力视角、稳定性视角、运维视角。

那么对于研发人员要迈出的一步就是,从完成功能A下载(点)逐步进阶到整体功能覆盖(线)、进而考虑多维视角:平台能力视角、稳定性视角、运维视角...


线:从但系统到产品线(二级域)可以理解为一种点到线的跃迁。之前考虑的是单个系统的职责、质量;现在要考虑一条产品线(N个系统)。


image.png


从二级域到一级域

从产品线(二级域)到一级域,可以理解为由线到面的跃迁。


image.png


在面的视野上,除了平台能力视角、稳定性视角、运维视角,可能又有了业务治理视角、业务运营视角等。


对于业务身份,你写的代码,是别人的噩梦吗? 这篇文章曾提及,使用扩展点的方式。


扩展点的设计是这样的,所有的扩展点(ExtensionPoint)必须通过接口申明,扩展实现(Extension)是通过Annotation的方式标注的,Extension里面使用BizCode和TenantId两个属性用来标识身份。


image.png


业务身份对于业务层的跟踪和治理作用非常大,类似于技术侧traceId的可追溯性。


image.png


从面到体,就技术人员发展而言,我认为有2条途径,比如从一级域的问题终结者到全域架构,视野俯瞰是整个公司的技术架构;也可能是从架构师角色走向管理岗,比如CTO。


由线到面 vs 由面到体


解决的是由线到面的问题,还是由面到体的问题 我认为最大的分解点在于是


1:是否是解决的问题域有足够的扩展,比如从一级域到全域架构

2:是否重新定义问题域、技术输出模式、产品模式或者商业模式


(二者满足其一)


我们可以看一个例子,电商系统发展面临的问题。有系统问题、业务问题、技术支持问题。鉴于问题域是整个电商平台(够广)、问题维度涉及方方面面(有较强复杂度),是达到面这个层次的,但是还不能称之为"体" 这个层次,因为解决的问题域已知比较确定的问题域。


image.png


from 公开演讲资料《蘑菇街每秒订单数25倍提升历程》


对比,聚石塔这个case,就可以看到由面到体的变化。

从输出技术、到输出产品、到解决方案。解决是不同层次的问题。


image.png


from 公开演讲资料《聚石塔电商云容器服务应用和实践》


总结:点、线、面、体在任何专业领域都可以采用的4要素方法论。小到一位贴瓷砖的工人,大到数万人公司的参谋长。4要素方法论对于程序员知识体系,也有不同层的划分,就研发体系、运维体系也有各自的细分。本文所列的观点仅仅代表业务发展到一次规模公司的程序员的发展和自我完善途径。


声明:

2017年12月移动应用APP活跃度排行榜 参考:

http://www.askci.com/news/chanye/20180131/143916117331.shtml

内容启发:智能商业二十讲、产品思维30讲

相关文章
|
7月前
|
前端开发 JavaScript
THREE实战1_代码重构点、线、面
THREE实战1_代码重构点、线、面
43 1
|
7月前
|
前端开发 JavaScript API
前端技术栈方向研究报告
前端技术栈方向研究报告
120 0
|
前端开发 JavaScript API
学不完的框架,🐕舔不完的面,Qwik,你到底想嘎哈?
学不完的框架,🐕舔不完的面,Qwik,你到底想嘎哈?
|
安全 程序员 云计算
程序员知识体系探索:点、线、面、体(上)
程序员知识体系探索:点、线、面、体(上)
388 0
程序员知识体系探索:点、线、面、体(上)
|
前端开发 JavaScript
THREE实战_代码重构点、线、面(酷)
THREE实战_代码重构点、线、面
85 0
THREE实战_代码重构点、线、面(酷)
|
前端开发 定位技术
前端学习笔记202305学习笔记第二十三天-地图单线路线设置
前端学习笔记202305学习笔记第二十三天-地图单线路线设置
70 0
|
XML 架构师 Java
一文把Java反射说的明明白白,清清楚楚,记得点赞关注,距离架构师的小目标又进一步
今天有时间没加班回家来好好写一篇文章,反射是Java里比较高级的概念了,一般在书的后半部分。反射也是写框架的必备技能,反射很重要,现在仍然记得刚毕业的一两年一直没有搞懂反射是什么。今天就讲讲反射,希望这篇文章能帮有同样疑惑的你解开疑团,废话不多说,让我们开始吧。
194 0
一文把Java反射说的明明白白,清清楚楚,记得点赞关注,距离架构师的小目标又进一步
文字处理技术:搞明白了表格是如何参与文字方向的
文字处理技术:搞明白了表格是如何参与文字方向的
110 0
|
机器学习/深度学习 人工智能 程序员
点线面的工作学习方式
  本文主要介绍我个人的一种工作学习方式:点线面的工作学习方式。希望对大家以后的工作和职业发展有所启发和帮助。   7月份的时候,我去京东外面的世界转了转,聊了聊。切身体会到:别人其实并不关心你之前做的具体工作,关心的是你从中得到了什么。当然,如果你是一直深耕一个业务领域的专家,除外,例如一直从事金融风控领域的技术开发。   面试中,我之前在啥啥公司做了啥啥项目,这个项目业务怎么怎么的复杂,功能怎么怎么的牛批,一顿业务功能的输出。   so ?然后呢 ?
157 0
|
设计模式 前端开发 算法
沙洲:换个视角看前端职业发展
从微软到钉钉,开拓新的技术领域,把自己的技术路线走得更宽,阿里高级前端技术专家沙洲与你分享一路走来的心路历程。
沙洲:换个视角看前端职业发展