7.10实习培训日志-Maven 敏捷编程
总结
今天早上主要学习了Maven和Idea的Docker插件,遇到了一些坑,对于Idea的Docker插件,不能下载,然后我去访问Idea插件官网,发现被墙了,只要开个VPN就好。下午主要是张总经理给我们介绍了部门的项目,主要是猪齿鱼项目,对于这个项目主要是继承K8s容器,整合DevOps的平台。然后是软件工程开发的方法,介绍了敏捷编程和极限编程,主要讲了敏捷开发原则,尽早持续交付项目和沟通和合作等,敏捷编程的角色,Product Owner,Scrum Master,Scrum Team三大角色,敏捷编程的过程,冲刺规划会,Scrum站立会等内容,还推荐了Scrum敏捷软件开发,凤凰项目,看板实践,DevOps hand book等几本书籍。
Maven与SpingBootDocker化
Maven
- 统一Java工程目录结构
- 统一管理har包
- 保证本地与线上环境一致
Maven Setting文件
localRepository #本地仓库的路径
servers #配置服务端(私库账号密码)
mirrors #下载镜像列表
profiles #覆盖任何其它定义在POM中或者profile.xml中的带有相同id的profile
Maven pom.xml文件
Idea Docker
mysql volumes配置
/var/lib/mysql:数据
/etc/mysql/conf.d:mysql配置文件
kafka
docker integration插件下载
Idea Docker插件无法下载
用vpn,Idea中的http proxy设置代理端口,成功下载
idea docker配置
idea Docker 部署image
invalid volume specification: 'C:\\Users\\DYQ\\tranning\\vagrant\\data\\mysql\\db:/var/lib/mysql:rw'"
报诸如此类的错误
把映射改成
/D/docker/data/mysql/db(不要用D:/之类的)
docker-toolbox-windows-invalid-volume-specification
Idea Docker使用
如果已经配置过Docker了,使用教程
- 新建项目
- view->tools windows->docker->使用
平台及开发方式
平台
技术平台要求:
DevOps:形成共同责任,激励,工具,过程,文化。
持续交付,微服务,容器(开发运维一体化)
容器方面k8s已经很成熟了,软件焦点转到应用级,例如Service Mesh(Istio)。
敏捷开发
传统瀑布式:需求不清晰;需求在变化;项目时间长;没有时间测试
敏捷项目,结构化项目,混乱项目
martin fowler
敏捷宣言:
- 个体和互动 高于 流程和工具
- 工作的软件 高于 详尽的文档
- 客户合作 高于 合同谈判
- 响应变化 高于 遵循计划
尽管右项右价值,但更重视左边价值
敏捷原则:
尽早持续交付项目
沟通和合作
Scrum:自组织和集体承诺
三要素:角色(Product Owner,Scrum Master,Scrum Team),形式,产出
产品所有者:
- 定义特性
- 特性优先级排序
- 挑选发布日期
- 提供反馈
- 管理利益相关者
- 接受和拒绝产出结果
开发团队:
- 定义任务
- 预估工作量
- 开发产品
- 确保质量
- 演化流程
Scrum Master:
- 服务型领导
- 团队保护者
- 障碍解决者
- Scrum指导
产品Backlog,细项是用户故事(作为一个[用户],想要什么[功能],有什么[好处])
sprint(冲刺)backlog
冲刺规划会1
- 面对面沟通
- 从用户观点出发
- 优先级排列,选择特性
- 讨论验收标准
0.5-1小时/冲刺/周
冲刺规划会2
- 估算冲刺backlog条目
- 使用以往速率
0.5-1小时/冲刺/周
Scrum站立会(每天举行15分钟以内)
- 昨天做了什么?
- 今天准备做什么?
- 有无障碍?
注意事项:
- 只有团队成员讲话
- 不是向Scrum Master汇报
- 不解决问题
- 站着开会
sprint burndown(冲刺燃尽图)
冲刺评审会
- 不需要ppt
- 可以邀请感兴趣的人
1-2小时/冲刺/周
冲刺回顾会
- 开始做什么
- 停止做什么
- 继续做什么
敏捷缺点
- 不断修改代码
- 不断引入新bug
- 代码库脆弱
- 软件不稳定
极限编程(XP)
1周一迭代
结对编程
持续集成,测试
测试驱动开发(TDD)
代码异味
- 拒绝继承
- 过度使用字面值
- 超长超短标志符
技术债
代码重构
持续集成(CI):尽早发现合并错误,(每天提交2-3代码)
持续部署(CD):自动化部署
DevOps:开发运维一体化
Scrum关注项目管理,极限编程关注软件开发
- Scrum敏捷软件开发
- 凤凰项目
- 看板实践
- 精益IT(Lean IT)
7.10实习培训日志-Maven 敏捷编程的更多相关文章
- 7.10实习培训日志-markdown Git
父模块github地址 一. markdown 1. markdown列表 html是一种发布的格式,markdown是一种书写的格式 区块引用 列表 图片 表格 html 标题 记笔记 写博客 2. ...
- 7.24实习培训日志-Docker-Compose
Docker-Compose 对于昨天的考试,需要 项目根目录下需要docker/mysql/Dockerfile 文件用于构建mysql镜像 项目根目录下需要docker/java/Dockerfi ...
- 7.27实习培训日志-Oracle SQL(三)
Oracle SQL(三) 视图 特性 简单视图 复杂视图 关联的表数量 1个 1个或多个 查询中包含函数 否 是 查询中包含分组数据 否 是 允许对视图进行DML操作 是 否 CREATE [OR ...
- 7.21实习培训日志-JDBC JSP Servlet
JDBC JSP Servlet 总结 今天早上的考试主要考Java的网络,HttpClient的get,post方法,Socket的文件传输和Xml和Json文件的解析,对于HttpCLient很简 ...
- 7.20实习培训日志-Java基础程序设计结构
Java基础程序设计结构 在 Math 类中,为了达到最快的性能,所有的方法都使用计算机浮点单元中的例程,如果得到一个完全可预测的结果比运行速度更重要的话,那么就应该使用StrictMath类,它使用 ...
- 7.19实习培训日志- java进阶
java进阶 java集合 Collection List ArrayList jdk1.2,异步处理,性能高,线程不安全 Vector jdk1.0,同步处理,性能低,线程安全 Set HashSe ...
- 7.17实习培训日志-java基础
总结 今天主要是学习了java基础,java面向对象方面的知识,然后下午老师讲了软件的设计模式,今天看了一部分,印象深刻的是单例模式,用枚举实现单例模式.晚上主要讲了maven的一些基础知识和idea ...
- 7.30实习培训日志-SQL优化
总结 今天早上考试,下午主要是老师引导我们学习SQL优化,晚上主要是同学的技术分享,杨松柏同学主要给我们分享了java的io的一些东西,c10k问题,bio(同步阻塞IO),NIO(同步非阻塞IO), ...
- 7.29实习培训日志-Oracle题目
总结 这周主要学习了SQL,oracle中的SQL基础,以前学习的是SQLserver的SQL,和oracle的还是有略微不同,所以重新去学习了一段时间,然后对于oracle中的各种函数有了初步了解, ...
随机推荐
- S2S4H整合注意问题
整合过程中出现问题记录: 1.The import javax.servlet.http.HttpServletRequest cannot be resolved 解决办法:在tomcat的lib目 ...
- 九度OJ 1178:复数集合 (插入排序)
时间限制:1 秒 内存限制:32 兆 特殊判题:否 提交:8393 解决:1551 题目描述: 一个复数(x+iy)集合,两种操作作用在该集合上: 1.Pop 表示读出集合中复数模值最大的那个复数,如 ...
- dom 显示 与否 的对 ecmascript 变量的 监听
dom 显示 与否 的对 ecmascript 变量的 监听
- bmdiff snappy lzw gzip
https://github.com/google/snappy Introduction [速度第一,压缩比适宜] [favors speed over compression ratio] Sna ...
- 【题解】P3162CQOI2012组装
[题解][CQOI2012]组装 考虑化为代数的形式,序列\(\left[a_i \right]\)表示选取的\(i\)种类仓库的坐标. \(ans=\Sigma(a_i-x)^2,(*)\),展开: ...
- Wix Burn运行64位dism.exe的问题
主要的问题是Burn是一个32位程序,在64位机器上它启动的进程都会被重定向到wow64目录下,也就是说它运行的dism.exe最终会是32位的.解决的方法就是用wix提供的QtExec64CmdLi ...
- 认识影片版本(CAM、TS、TC、DVD、HD、BD、TVRIP等)
许多朋友在下载电影的时候, 往往会被各种各样的版本标识弄糊涂,今天把各种版本的缩写收集在一起,希望对大家有所帮助 . 引用: 1.CAM(枪版) CAM 通常是用数码摄像机从电影院盗录.有时会使 ...
- 【C语言天天练(十)】结构体
引言:数据常常以成组的形式存在.在C中,使用结构能够把不同类型的值存放在一起. 结构的声明有两种 1.struct SIMPLE{ int a; char b; float c; };然后用标签SIM ...
- 如何修改硬盘挂载的名字LABEL
➜ ~ df -h Filesystem Size Used Avail Use% Mounted on/dev/sda2 114G 97G 12G 90% /media/brian/4ef34b75 ...
- Swift 烧脑体操(一) - Optional 的嵌套
前言 Swift 其实比 Objective-C 复杂很多,相对于出生于上世纪 80 年代的 Objective-C 来说,Swift 融入了大量新特性.这也使得我们学习掌握这门语言变得相对来说更加困 ...