项目实战 众筹网
项目定位
主要从单一的架构到分布式架构阶段的过渡。后台管理员系统使用的是单一架构开发。前台会员系统使用的是分布式架构开发。
主要是帮助创业者发布创业项目,然后向大众筹集启动资金的一个融资平台。
项目功能
-
众筹项目展示
-
众筹项目细节展示
-
支持项目
- 个人中心
- 发起众筹
- 管理员登录
- 管理员维护
- 角色维护
- 菜单维护
- 权限管理
项目整体架构
后台系统使用ssm框架整合,前台系统使用SpringBoot+SpringCloud框架整合。
项目主要技术使用:
spring
SpringMVC
Mybatis
Maven
完成项目的方法与心得
心态转变
完成项目与学习具体技术不一样,正所谓养兵千日,用兵一时,
完成项目主要是去思考如何实现业务功能需求。
带兵出征
点:具体技术点
线:每一个请求的处理过程是一条线,对应Tomcat的线程池中的一个线程
面:多个请求组织在一起完成一个特定模块的功能
体:多个模块组合在一起构成一个完整的项目
我们可以把项目看作为一个立体图形,它是由多个面构成就是多个模块,
而每个模块又是多线构成的,而每一条线又是每个技术点一点一点串联起来的。
攻城拔寨
一个项目有很多模块,而一个模块由很多请求完成,一个请求由很多技术完成,
所以我们要先明确一个目标,然后针对目标去构建思路,有了思路就可以写代码了。
目标:聚焦当前要完成的任务。目标明确后才能分析实现的思路。甚至有的时候需要对大目标进行拆解,把多个小目标各个击破。
思路:针对目标的达成进行分析。具体到项目功能的实际开发中,体现为流程图。
代码:参照思路分析时绘制的流程图,把步骤翻译成写代码时的注释,再对照注释具体编写代码。
当我们去看很多事情的时候也需要透过现象去看本质,不能只看代码层次,
需要从代码层次去看他人的思路是什么,他想完成的目标是什么。
项目开发模式
瀑布模型
瀑布模型:是把软件产品看成一个工业化的标准品,以工厂生产产品的流水线思路来进行开发的。
敏捷开发
敏捷开发:是把一个软件产品看成是一个生物,每一个小功能的细微的迭代就好像是生物逐渐的进化一样。
技术角度
可以更快的根据需求开发出来能直接运行的代码。
商业角度
加速了用户体验新功能的这个过程。“小步快跑”,让每一个功能都做尽小量的修改,但是加大更新的频率。