敏捷开发模式
敏捷开发模式是一种从1990年代开始逐渐引起广泛关注的一些新型软件开发方法,是一种应对快速变化的需求的一种软件开发能力。它们的具体名称、理念、过程、术语都不尽相同,相对于"非敏捷",更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重做为软件开发中人的作用。
中文名
敏捷开发模式
外文名
Agile software development
简介
如果要实行一个很好的scrum,通常要满足两点:一、团队有三名或以上的研发工程师;二、团队内有一名合适的Scrum Master。当团队内无法找到合适的Scrum Master时,不要轻易推行敏捷。如果你的团队是由新人组成,或者即使有资深员工但是他并不了解或认同敏捷开发的话,那么你需要等待合适的Scrum Master出现。
当你真正实行敏捷开发时,要注意量化衡量团队的执行力的指标:完成度、评估准确度、计划合理度。这是评定整个进度的很重要的指标,也是让迭代更好的进行下去的准则。
词源
敏捷一词来源于2001年初美国犹他州雪鸟滑雪胜地的一次敏捷方法发起者和实践者(他们发起组成了敏捷联盟)的聚会。
适用性
在敏捷方法其独特之处以外,他和其他的方法也有很多共同之处,比如迭代开发,关注互动沟通,减少中介过程的无谓资源消耗。通常可以在以下方面衡量敏捷方法的适用性:从产品角度看,敏捷方法适用于需求萌动并且快速改变的情况,如系统有比较高的关键性、可靠性、安全性方面的要求,则可能不完全适合;从组织结构的角度看,组织结构的文化、人员、沟通则决定了敏捷方法是否适用。跟这些相关联的关键成功因素有:
组织文化必须支持谈判人员彼此信任,人少但是精干,开发人员所作决定得到认可,环境设施满足成员间快速沟通之需要。最重要的因素恐怕是项目的规模。规模增长,面对面的沟通就愈加困难,因此敏捷方法更适用于较小的队伍,20、40人或者更少。大规模的敏捷软件开发尚处于积极研究的阶段。
另外的问题是项目初期的大量设想或快速的需求收集可能导致项目走入误区,特别是客户对其自身需要毫无概念的情况下。与之类似,人之天性很容易造成某个人成为主导并将项目目标和设计引入错误方向的境况。开发者经常会把不恰当的方案授予客户,而直到最后出问题前都能获得客户认同。虽然理论上快速交互的过程可以限制这些错误的发生,但前提是有效的负反馈,否则错误会迅速膨胀。
对比其它方法
1.瀑布模型
瀑布模型是由W.W.Royce在1970年最初提出的软件开发模型, 瀑布式开发是一种老旧的计算机软件开发方法。
瀑布模型式是最典型的预见性的方法,严格遵循预先计划的需求分析、设计、编码、集成、测试、维护的步骤顺序进行。
步骤成果作为衡量进度的方法,例如需求规格,设计文档,测试计划和代码审阅等等。
瀑布式的主要的问题是它的严格分级导致的自由度降低,项目早期即作出承诺导致对后期需求的变化难以调整,
代价高昂。瀑布式方法在需求不明并且在项目进行过程中可能变化的情况下基本是不可行的。
2.迭代式开发
迭代式开发也被称作迭代增量式开发或迭代进化式开发,是一种与传统的瀑布式开发相反的软件开发过程,它弥补了传统开发方式中的一些弱点,具有更高的成功率和生产率。
什么是迭代式开发?
每次只设计和实现这个产品的一部分,
逐步逐步完成的方法叫迭代开发,
每次设计和实现一个阶段叫做一个迭代.
在迭代式开发方法中,整个开发工作被组织为一系列的短小的、
固定长度(如3周)的小项目,被称为一系列的迭代。
每一次迭代都包括了需求分析、设计、实现与测试。
采用这种方法,开发工作可以在需求被完整地确定之前启动,
并在一次迭代中完成系统的一部分功能或业务逻辑的开发工作。
再通过客户的反馈来细化需求,并开始新一轮的迭代。
迭代式开发的优点:
1、降低风险
2、得到早期用户反馈
3、持续的测试和集成
4、使用变更
5、提高复用性
3.螺旋开发
螺旋开发,1988年,巴利·玻姆(Barry Boehm)正式发表了软件系统开发的“螺旋模型”,它将瀑布模型和快速原型模型结合起来,强调了其他模型所忽视的风险分析,特别适合于大型复杂的系统。
“螺旋模型”刚开始规模很小,当项目被定义得更好、更稳定时,逐渐展开。
“螺旋模型”的核心就在于您不需要在刚开始的时候就把所有事情都定义的清清楚楚。您轻松上阵,定义最重要的功能,实现它,然后听取客户的意见,之后再进入到下一个阶段。如此不断轮回重复,直到得到您满意的最终产品。
(1)制定计划:确定软件目标,选定实施方案,弄清项目开发的限制条件;
(2)风险分析:分析评估所选方案,考虑如何识别和消除风险;
(3)实施工程:实施软件开发和验证;
(4)客户评估:评价开发工作,提出修正建议,制定下一步计划。
螺旋模型很大程度上是一种风险驱动的方法体系,因为在每个阶段之前及经常发生的循环之前,都必须首先进行风险评估。
4.敏捷开发
敏捷软件开发又称敏捷开发,是一种从1990年代开始逐渐引起广泛关注的一些新型软件开发方法,是一种应对快速变化的需求的一种软件开发能力。它们的具体名称、理念、过程、术语都不尽相同,相对于“非敏捷”,更强调程序员团队与业务专家之间的紧密协作、面对面的沟通(认为比书面的文档更有效)、频繁交付新的软件版本、紧凑而自我组织型的团队、能够很好地适应需求变化的代码编写和团队组织方法,也更注重软件开发中人的作用。
· 人和交互重于过程和工具。
· 可以工作的软件重于求全而完备的文档。
· 客户协作重于合同谈判。
· 随时应对变化重于循规蹈矩。
其中位于右边的内容虽然也有其价值,但是左边的内容最为重要。
人员彼此信任 人少但是精干 可以面对面的沟通
项目的敏捷开发:
敏捷开发小组主要的工作方式可以归纳为:作为一个整体工作; 按短迭代周期工作; 每次迭代交付一些成果;
关注业务优先级; 检查与调整。
最重要的因素恐怕是项目的规模。规模增长,面对面的沟通就愈加困难,
因此敏捷方法更适用于较小的队伍,40、30、20、10人或者更少。
大规模的敏捷软件开发尚处于积极研究的领域。
5.四者对比区别:
传统的瀑布式开发,也就是从需求到设计,从设计到编码,从编码到测试,从测试到提交大概这样的流程,要求每一个开发阶段都要做到最好。
特别是前期阶段,设计的越完美,提交后的成本损失就越少。
迭代式开发,不要求每一个阶段的任务做的都是最完美的,而是明明知道还有很多不足的地方,却偏偏不去完善它,而是把主要功能先搭建起来为目的,以最短的时间,
最少的损失先完成一个“不完美的成果物”直至提交。然后再通过客户或用户的反馈信息,在这个“不完美的成果物”上逐步进行完善。
螺旋开发,很大程度上是一种风险驱动的方法体系,因为在每个阶段之前及经常发生的循环之前,都必须首先进行风险评估。
敏捷开发,相比迭代式开发两者都强调在较短的开发周期提交软件,但是,敏捷开发的周期可能更短,并且更加强调队伍中的高度协作。
敏捷方法有时候被误认为是无计划性和纪律性的方法,实际上更确切的说法是敏捷方法强调适应性而非预见性。
适应性的方法集中在快速适应现实的变化。当项目的需求起了变化,团队应该迅速适应。这个团队可能很难确切描述未来将会如何变化.
🌈 个人主页:十二月的猫-CSDN博客
🔥 系列专栏: 🏀各种软件安装与配置_十二月的猫的博客-CSDN博客💪🏻 十二月的寒冬阻挡不了春天的脚步,十二点的黑夜遮蔽不住黎明的曙光
目录
CLion是一款开发环境IDE(集成开发工具,关键在于集成),它本身依赖其他的编译环境,所以需要安装C/C++的编译环境。
1. 前言
之前使用的一直是Visual Studio code来编辑运行C++代码,但是一直感觉Visual Studio code使用的非常难受,整体风格过于纷繁复杂。最重要的是配置需要编辑配置文件而不是傻瓜式可视化配置。
也许有的程序员会喜欢Visual Studio code的配置方式,因为手动编辑配置文件来配置能够大大提高配置的自由程度。但是这对新手程序员非常不友好,并且和猫猫追求整洁、便捷的原则相冲突。
于是,在一个夜黑风高的夜晚,猫猫决定卸载Visual Studio code来转投CLion!!!!!
由于CLion和Idea是同个公司的,所以两者使用起来差不多~~~~
(嘻嘻,正好java开发都是Idea,猫猫还是比较熟悉的)
2. CLion是什么
CLion是可以编写C/CPP的IDE(集成开发环境)
集成开发环境(IDE,Integrated Development Environment)是为程序员提供的一种软件应用程序,旨在帮助开发者更高效地进行软件开发。它将多个开发工具集成在一个界面中,提供了一个综合的工作平台,通常包括以下功能:
1. 代码编辑器
这是开发环境的核心部分,用于编写源代码。现代的代码编辑器通常具有语法高亮、代码自动补全、代码折叠等功能,能够提高编码效率和准确性。
2. 编译器/解释器
IDE 通常内置编译器(对于编译型语言如 C/C++、Java)或解释器(对于脚本语言如 Python、Ruby),可以直接在环境中编译或运行代码。它使得开发者能够在同一个环境中编写和执行代码,减少了开发过程中的切换。
3. 调试器
调试器是 IDE 中非常重要的功能,用于查找并修复代码中的错误。开发者可以设置断点、单步执行代码、查看变量值、跟踪程序执行流程等,从而快速定位和解决问题。
4. 构建工具
构建工具帮助开发者自动化编译和构建流程。对于复杂的项目,IDE 可能集成了构建系统(如 Makefile、CMake、Maven、Gradle 等),能够自动化项目的编译、链接、打包等任务。
5. 版本控制集成
很多 IDE 集成了版本控制系统(如 Git),使得开发者能够直接在 IDE 中进行代码版本管理,如提交代码、拉取更新、查看历史版本、解决冲突等。
6. 图形化界面设计工具
对于桌面应用程序、移动应用程序或网页应用程序的开发,IDE 有时还会提供图形化的界面设计工具,允许开发者拖拽控件、设计界面并生成相应的代码。
7. 插件和扩展
大多数 IDE 提供了插件系统,可以通过安装第三方插件扩展其功能。这些插件可以提供额外的支持,如新的语言支持、额外的调试工具、数据库管理工具等。
8. 项目管理
IDE 通常集成了项目管理功能,帮助开发者组织和管理项目中的源代码文件、库文件、资源文件等。这使得开发者能够清晰地了解项目的结构,轻松地管理和访问各个模块。
9. 自动化测试
许多 IDE 支持单元测试框架,可以帮助开发者自动化测试过程,确保代码的正确性和稳定性。IDE 中通常会集成测试工具,帮助开发者在开发过程中更快地发现潜在的问题。
10. 代码重构
现代的 IDE 提供了智能的代码重构功能,可以帮助开发者对代码进行结构上的优化或修改,而不破坏现有功能。例如,IDE 可以自动重命名变量、函数、类,并确保这些更改在整个代码库中被一致地应用。
CLion的优点多多,尤其是CLion对小白非常友好。
- 配置简单:只需要点几下鼠标就可以完成编译器配置。
- 语法查错:很多语法错误可以在编译之前就报错并标注出来。
- 潜在问题警告:如可能出现的死循环,野指针,数组越界,全局变量和局部变量同名等。
- 调试方便:可以查看变量情况,内存情况,对应汇编指令。
- 更加智能的自动补全
- 统一代码风格:设置代码风格后,会自动标注并纠正,有助于小白养成良好习惯
总结:
1、没有Visual Studio的配置自由度,但是可视化配置。
2、可视化配置,对小白非常友好。
3、比起DevC++等编辑器,功能更丰富。
4、调试、自动补全等该有的功能都有。
3. CLion的安装
1.下载后双击安装,一直点击next即可:
2. 可自行选择其他安装路径(建议选择D盘去安装):
3. 根据系统版本选择,建议直接全部勾选
Update PATH Variable:加入到系统环境变量中,建议勾选。
Create Associations:关联默认应用,勾选后,对应的文件后缀将默认用CLion打开。Create Desktop Shortcut:创建桌面快捷方式
Update Context Menu:更新Window系统软件菜单
4. 选择系统软件菜单所在的文件夹(JetBrains公司的放在一起吧~~~)
5. 等待安装
成功安装后,无须打开CLion,直接进行破解。
破解的方式,因为版权原因,评论区留言,我私发给大家,希望能帮助到大家~~~~
如果可以,评论一下、给个免费的赞和收藏就可以啦。
4. CLion配置
打开软件,如果出现import setting如下:
选择 Do not import settings~~~~(默认大家都是第一次配置,之前没有settings文件)
4.1 软件汉化
点击Plugins插件——>输入中文
,搜索到Chinese(simplified)
,点击install安装
安装完中文翻译插件后,立即重启就可以看到已经翻译的汉化界面了。
4.2 配置C/C++的编译环境(关键)
CLion是一款开发环境IDE(集成开发工具,关键在于集成),它本身依赖其他的编译环境,所以需要安装C/C++的编译环境。
五种编译环境:
-
minGW:(不推荐)
它是一个可自由使用和自由发布的Windows特定头文件和使用GNU工具集导入库的集合,允许你在GNU/Linux和Windows平台生成本地的Windows程序而不需要第三方C运行时(C Runtime)库。
下载地址:MinGW
-
Cygwin:(相对Visual Studio环境比较轻量,但我在使用时经常环境错误,读者在使用抉择时,要慎重)
Cygwin是一个在windows平台上运行的类UNIX模拟环境。它对于学习UNIX/Linux操作环境,或者从UNIX到Windows的应用程序移植,或者进行某些特殊的开发工作,尤其是使用GNU工具集在Windows上进行嵌入式系统开发,非常有用。随着嵌入式系统开发在国内日渐流行,越来越多的开发者对Cygwin产生了兴趣。Cygwin主要由Red Hat及其下属社区负责维护。
下载地址:Cygwin Installation
-
Visual Studio:(看名字就没错了)
大名鼎鼎的微软官方的C/C++编译环境。
-
另外两种,WSL和远程主机,不常使用,属于远程,不在本地编译,个人几乎开发使用不到,此处就不站看介绍了。
每种编译环境本质上都是可以使用的,但是和CLion的版本需要相对应,否则可能出现环境冲突。
4.2.1 添加VS2022编译器
打开CLion并进入设置:
选择自定义-所有设置,即可打开设置页面
新增工具链:
选择 构建、执行、部署 - 工具链 ,点左上角的加号新增编译器,选择Visual studio,然后指定电脑内安装的路径(2022社区版要选到...Microsoft Visual Studio2022Community),其他选项默认即可,点击应用
注意点:
1、如果是先安装VisualStudio再安装CLion,Step2会自动检测
2、自动检测同时要求是默认路径安装,不能修改路径~~~
3、这边建议直接默认C盘安装,别修改到D盘了,会很麻烦的
4.2.2 添加VS2022调试环境
添加配置文件:
在前面的界面下,点击左侧CMake,点击左上角加号添加配置文件,添加后默认会显示为Release,手动重命名并将构建类型更换为Debug,将工具链修改为Visual Studio(也可以将下面MinGW也重命名一下便于辨认),再修改生成器类型为:Visual Studio(对应版本)然后点击确定即可。
具体配置信息:
这里ToolChain决定的是编译环境,Generator决定的是输出的构建系统类型
这里我们的编译环境是:Visual Studio
输出的构建系统类型为:Visual Studio 2022
两者要彼此对应!!!
4.3 新建工程测试
新建一个c++可执行文件,指定存放位置后点击创建
打开工程后,可以看到左侧工程列表内多了一个配置文件,并且可以手动在右上角切换Debug配置文件,这里默认设置为VS2022为默认配置,点右上角的运行按钮即可编译运行工程
5. 一些小问题
5.1 编译失败
问题解决:
网络上有许多可能出现这问题的原因,例如:
- 文件路径有中文
- 电脑系统时区不是国内时区
- 文件放入D盘等路径过于深了(建过多文件夹)(算是一个bug)
全部尝试后发现,猫猫都没有这些问题。啊啊啊啊啊
在长达一个小时的修正后,猫猫发现问题就出在前面的Generator生成器上面
具体来说,前面的生成器,我并没有具体指定用Visual Studio,这就导致使用了ninja
但是编译用Visual Studio,生成用ninja,这肯定会出现问题~~~
修改后,成功运行
5.2 编译信息乱码
常见的乱码出现区域包括:
- 代码文件
- 控制台输出
- 编译构建中的message
代码文件的乱码:
控制台输出乱码:
最最最重要的来了,构建过程信息乱码要怎么办呢?
构建信息乱码表现为:
1.比如这句是中文 → 1.显示所有成◇??? ←这种错误
2.编译器错误error C2018: 鏈煡瀛楃鈥�0xb8鈥�
3.error C2065: “wk”: 未声明的标识符 这种无厘头的错误 本质上应该是看到某一行是中文然后乱码了 然后编译器给卡住了 没有往下继续编译
总之,是编译过程中出现乱码,和输出以及代码文件乱码无关
具体要如何解决呢?
大家可以去看看另一篇文章:
<存在风险>[更新]CLion 中文乱码 debug 控制台乱码 可能是最终解决办法带图版_clion 报错 乱码-CSDN博客
这个方法有一定风险,但是我目前还没有遇到。
5. 总结
本文到这里就结束了, 如果觉得对你有帮助,辛苦友友点个赞,收个藏呀~~~
评论记录:
回复评论: