✅小白如何学习 PmHub(🌟新人必看)
你好,我是二哥,欢迎来到 PmHub 付费教程第一篇,小白如何学习 PmHub。
先给大家说说 PmHub 中的难点以及为何会有 PmHub 这个项目吧,我想明白了这个点,小伙伴们对我们的 P 站又会有不一样的视角。
项目中的难点:
1、如何将流程引擎丝滑的结合到项目管理业务中是一大难点,需要系统的设计,用DDD抽象模型,状态更新、抽象工厂模式设计监听器等都是项目中的难点。
2、当海量请求出发流程流转时,如何解决缓存穿透、缓存和数据库一致性问题也是一个难点。
3、如何利用分布式事务保证任务审批状态一致性。
为什么做这个项目?
从个人角度来说,我觉得现有的项目管理系统无论是禅道还是 TAPD,更多关注的点都是在需求迭代以及缺陷本身,而对项目的资源管控以及流程引擎关注度不够,PmHub 的诞生是希望打造一套智能的项目管理系统,核心是可以对项目资源录入、任务智能流转分配,以及未来还打算增加企业物料管理、供应商管理、采购管理、仓库管理,我们的目标是开源一套完整的 CRM 系统,结合现在的 LLM,未来 PmHub 将有无限可能。
PmHub 是一套完整的企业级项目,相对于一些传统开源项目来说,业务及代码会相对复杂,功能也更多,但这并不妨碍我们学习,所以建议根据自身情况来针对性学习。
- 速成党:想要快速拿 PmHub 去面试,学习个 1-2 周,主要把开篇架构功能、面试系列学习完,并能按照教程快速部署上线即可。
- 实用派:希望掌握 PmHub 精髓,并能很好的在面试中做到有的放矢,建议花费 1 个月左右时间,基础好的话一个月以内,把教程过一遍,能很好的理解业务,按照全套学习路线走下来,并能基于此做一些简单的二次开发,能很好的理解业务。
- 精通者:如果你的目标是希望能吃透 PmHub,并希望完完全全能变成你自己的项目,你可能需要花费更多的时间来深入理解,除了全部的学习路线和教程外,你还需要自己能进行全面二开,并精通相关的技术栈,微服务相关组件以及架构设计等,这往往需要更多时间,但往往也是项目之大成者,你甚至可以给我们提 PR,成为 PmHub 的贡献者。当然如果你希望基于 PmHub 进行企业系统二开,也属于精通者范畴。
针对不同的情况,大家需要选择合适的学习路线,下面我把 PmHub 学习路线罗列一下,你可以根据自身情况选择性学习。

学习路线
PmHub 学习路线整体分五大块:产品设计、技术架构、组件库开发、业务梳理、系统开发。

产品设计
授人以鱼不如授人以渔,我们认为一个好的项目教程不应该一上来就讲技术,当我们想通了这个项目的产品底层逻辑,理解了产品的核心价值,我们才能更好的理解业务,才能用更好的技术去实现业务。
为了大家更好的理解和掌握产品,我们将会从 0-1 带你进行产品设计,包括需求分析、产品原型图的绘制等。
我们相信这只是一个开始,在激烈的竞争中,懂产品的程序员,往往能获得更多的机会。
这部分如果你是目标是「速成党」或者「实战派」,可以根据自己时间自由安排,这只是面试加分项而已,所以根据自身时间安排吧。
在线查看地址:https://lanhuapp.com/link/#/invite?sid=qxZji4oa分享人: 苍何,团队名称: 来个offer的团队相关项目: PmHub


技术架构
技术架构是项目的基础,只有把项目的基础打扎实了,才能更好的实现业务。
我们将会从 0-1 带你进行技术架构的搭建,包括架构方案设计、技术选型等。
温馨提示:
这部分涉及到很多微服务的相关知识,如果这块基础比较薄弱,建议花时间好好学习, 无需再配合其他微服务教程,因为教程中会由浅入深,将技术点讲透彻,并配合 PmHub 实战。
如果时间不充裕或者目标是速成,那这块建议直接可以仅看面试系列的那十几篇文档即可,应付面试问题不大了。

组件库开发
组件库源于对公共功能的封装,避免相同的功能在不同项目之间重复复制。
为了统一各个微服务可能使用到的公共内容,我们在这里规划了常用且通用的功能点,供大家去使用,以提高编码效率,我们统一放在了 pmhub-base 模块下,这将作为一个公共 jar 包供各个微服务和项目使用。
当然如果你有更好的想法,也可以联系我们将其加入到公共包中。
组件库的开发宗旨是汇总资源,更高效地提供业务敏捷开发的能力,后续的迭代也将遵循这一原则。目前,这只是一个起点,是整体规划的一部分,还有许多可以提升的空间。
目前已知的组件如下,可能增加组件更新没及时,实际以 pmhub-base 模块为准。
温馨提示:
这部分内容涉及的主要是内部组件开发,建议学习思路是照着代码来看,每一个组件如何封装,如何使用,如何抽离解耦,这些也是工作中必须会用到的。
建议用好组件的同时,也可以把他转换为自己的工作库,工作以后直接拿来用就可以了。

业务梳理
在 PmHub 中包括系统、认证、项目、代码生成、流程及网关服务。
PmHub 的整体业务其实就是围绕着项目、任务、流程展开,业务并不复杂,但涉及的功能和细节超多(图中罗列部分功能大家也看到了),细节论英雄,故而涉及的技术点也会很多,要想专研透,建议每一个功能自己都去点点,然后看看接口实现逻辑。

系统开发
温馨提示:
这部分对应的是教程汇总的大部分章节,大家针对性的学习即可。
当你把产品、技术架构、组件库开发、业务梳理都搞定了,接下来就可以考虑对这个系统进行从 0-1 的开发。
在进行正式开发之前,你需要对系统用到的技术栈都有一定的基础,不然极有可能达不到理想的学习效果。
另外我们还提供了从 0-1 如何上线部署项目,以及单体如何改造微服务的避坑经验分享。
我们还加入了 AI 辅助编程最佳实践,助力你提效。
大家在学习过程中有任何提问,都可以在知识星球中发表主题或者向我提问,一般都会在24小时内保质保量的回复。
真诚点赞 诚不我欺
回复