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

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

程序员的点线面体


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讲

相关文章
|
小程序 测试技术 uml
电商小程序01需求分析
电商小程序01需求分析
|
3月前
|
架构师 Java 程序员
程序员的出路:30岁,我们聊聊那些真实的选择
30岁程序员的迷茫与出路:技术焦虑、薪资倒挂、能力单一困扰着许多人。本文基于真实观察,梳理五条可行路径——深耕技术、理性转管理、务实搞副业、跨界融合、提前布局B计划,并总结三条铁律与自测问题,帮助你在变局中找到方向。出路不在远方,而在你写下的每一行“值钱”的代码里。(238字)
667 117
|
3月前
|
存储 Java 物联网
基于SpringBoot的番茄种植全流程管理系统
本研究构建基于物联网与大数据的番茄水肥一体化智能管理系统,通过B/S架构、MySQL数据库与Java技术实现精准灌溉与智能决策,提升资源利用率,推动农业智能化转型。
|
人工智能 架构师 决策智能
agentUniverse X 浙大太乙平台,开源共建招募令来啦,3万奖金等你拿!
agentUniverse 首期开源共建活动正式上线啦!3万奖金池等大家贡献瓜分~
|
8月前
|
Java API 微服务
2025 年 Java 校招面试全攻略:从面试心得看 Java 岗位求职技巧
《2025年Java校招最新技术要点与实操指南》 本文梳理了2025年Java校招的核心技术栈,并提供了可直接运行的代码实例。重点技术包括: Java 17+新特性(Record类、Sealed类等) Spring Boot 3+WebFlux响应式编程 微服务架构与Spring Cloud组件 Docker容器化部署 Redis缓存集成 OpenAI API调用 通过实际代码演示了如何应用这些技术,如Java 17的Record类简化POJO、WebFlux构建响应式API、Docker容器化部署。
427 5
|
11月前
|
机器学习/深度学习 并行计算 算法
量子计算如何改变优化问题?带你入门量子优化!
量子计算如何改变优化问题?带你入门量子优化!
380 7
|
存储 XML 编解码
PyMuPDF 1.24.4 中文文档(三)(1)
PyMuPDF 1.24.4 中文文档(三)
580 0
|
存储 消息中间件 物联网
数据治理:数据集成
数据治理:数据集成
432 11
|
人工智能 算法 新能源
AI在能源管理中的应用:提升能源效率与可持续性
【9月更文挑战第24天】AI技术在能源管理中的应用,正以其独特的优势与潜力,引领着能源行业向更加智能化、高效化和可持续化的方向发展。随着技术的不断进步、政策的持续支持以及应用场景的不断拓展,AI技术将在能源管理中发挥更加重要的作用,为实现全球能源转型与可持续发展贡献更大力量。我们有理由相信,在AI技术的助力下,未来的能源管理将更加高效、智能和可持续。
1540 6
|
数据采集 API 调度
Flutter笔记:关于SchedulerBinding
Flutter笔记:关于SchedulerBinding
401 1