程序员新手如何选择自动化工具?新手必看!!
发表时间:2023-09-23 14:01:13
文章来源:炫佑科技
浏览次数:131
菏泽炫佑科技
程序员新手如何选择自动化工具?新手必看!!
如果你是一个程序员新手,更推荐阅读。 从某种角度来说,它会让你走上老将之路。
概述
对于一般使用自动化的团队来说,这个工具是必不可少的。 有很多使用方法。 我之前也尝试过使用其他多种自动化工具,比如-/-/ CI。 我觉得能与之抗衡的应该是——,其他的可以更专业、更有针对性。
使用场景
自动化能力都是常用的,比如*常见的IT方式,比如开发、构建、测试、运维等等,基本上感觉这个东西几乎是无所不能的。 包括自己生活中一些关键的事情,比如自动电脑清理,定期发布某些文档,然后定期备份一些文档资料,定期同步网盘更新,日常学习任务的提醒等等,这些东西可以成为一组东西。
我的总体感觉是我自己的生活也变得自动化了。 下面结合您的日常使用情况,从几个角度进行讲解:
通过所有流程自动化能力,你会发现项目管理中光是开发人员就可以做很多事情,比如测试、运维、管理、运维、提醒等各种能力。
流程说明
目前我们需要考虑时间成本、学习成本、管理成本。 对于开发者来说,这些都很容易做到。
生活和学习中为什么要选择自动化工具?
为什么要选择自动化工具? 对我来说,节约成本不是给公司带来成本,而是给自己带来成本,让自己提升到更高的思维层次。
什么是更高层次的思维? 比如我不会再在一些重复性的工作上来回奔波,不再在以前的一些工具上来回奔波,不再在自己以前的手稿或者代码上来回奔波。 反转。 那么剩下的时间你会做什么呢? 主要是对架构设计的思考,对新技术的思考,优化思路。 从传统软件模型的角度来看,这些过程都是成本。 那么我们使用自动化工具来做什么呢? 我们经常使用的函数如下:
许多编程任务需要大量工作。 这些过程可以自动化,然后自动执行。 您可以调用任何想到的内容。 例如,更改服务器密码一开始并不频繁。 后来变成自动化了,每月定期改一次,然后就自动了。 重启服务,然后自动将新的密钥发送到邮箱,然后钉钉会告诉我这就完成了。
这些为我节省了大量的时间和成本,我不想在这上面浪费太多时间。 整个过程下来你会发现学习和生活方便了很多。
当然,一开始你可能会想怎么可能做这么多事情。 一开始你可能也会这么想。 这与学习 Vim 工具类似。 一开始使用起来也很困难,但是克服之后,你会发现这个工具非常高效。 ,类似于用来写文档,速度会比Word快很多。 目前,它*常与 Vim+ 结合使用。 你会发现写文字将会是另一种享受,所以该工具的使用在前期只是有点困难,但是一旦上手了一个Demo示例之后,整个过程就会顺畅很多。
对于新开发人员来说,学习使用自动化工具会让你更加方便。 同时,你会感受到一些莫名的心理安慰。 例如,你会发现许多开发人员仍然使用手动方法。 你可以这样想,“一切都是手动完成的”。 都2023年了,为什么还是这么手动,效率低下?” 就在心里默默的想一想吧。 但对于新手来说,这确实提高了你的效率很多。
使用改进的操作流程自动化
注意,以下环境搭建均基于内网环境。 请小心不要将其暴露到公共网络。 我在这里买了一个主机,单独放置。
我们先看一个简单的数据。 自动化数据是过去几年积累的,目前有点统计:
以上自动化任务只是管理我的学习环境,并促进我自己生活中的一些自动化能力,这远远超出了我自己的想象。
从选择性上来说,说实话,市面上功能强大、稳定的免费自动化工具(肯定免费是首选)相对较少。 我们的流程需要高度定制,并且将与许多第三方工具和插件兼容。 我比较喜欢这个,但是我发现本地化和定制能力比较强。 尽管如此,本地化对于保护我们的隐私还是很方便的,而且没有任何限制。
那么这些过程是如何完成的,我们如何才能在自己的生活和学习中实现自动化呢?
准备脚本仓库。 这里的脚本是使用 Git 管理的。 这里还有更多选择。 然后每个脚本都会定期更新到Git。 只需分配目录,或者分配每个 Git 基线的权限和职责。 这个应该是比较容易做到的。 一开始有点乱没关系,以后可以标准化。
您可以在流程方便或者有灵感时随时提交您的记录,以方便后期管理。 这个基线库稍后会为你形成一个通用的脚本库。 一开始我没想到会有很多自动化软件开发,但是经过几年的积累,我已经有上百个剧本了。 这些都是早期学习和过程中积累的坑。 通过这些脚本库,就好像我拥有了一套比较完整的软件开发工具。 有了自动化的能力,处理一般的项目和管理都没有什么大问题。
比如自动化软件的安装,我把它作为软件库放在网盘上(网盘是备份,我用七牛下载)。 经过多年的积累,已有数十种软件,并且全部经过研究和验证。 的:
再比如容器封装方面,日常生活中内置了很多容器(这些只是过程中的验证,这些都积累到了脚本中)。 这些都是使用过程中的坑,也是一点一滴积累的优化。 非常完美,有完整的修复和优化记录。 你可以完全检查痕迹。 以下只是目录。 目录下有多个版本,包括服务器环境等。
如果你平时积累一些自己积累的学习脚本和练习脚本的话,大概两三年的时间,你就基本上有了一套完整的了。 这些规模可能远远大于你*初的想象。
所以我基本上都是把这些自动化脚本整理成一套脚本,放到Git管理中。 同时,我不断优化和改进它们,然后自动执行操作。 就整个任务而言,到目前为止,自动化任务已经超过300个。 ,这些只是我在此过程中的自动化任务。
集成脚本管理之后,各类时序管理,比如集中的话可能需要调用的一些第三方接口,都是用脚本或者Java脚本写在这里。 编写一些简单的脚本并不难,只需简单的调用,然后集成自动化的发布和版本更新管理,就可以在任务中调用这些脚本了。
这样的场景不多,我也考虑过做成插件,但感觉没有必要。 这个插件的维护成本不低,而且还存在兼容性问题。
有了脚本库和时序方案,目前任务布局的方法就是安排任务。 这个方法会好很多。 至少从包装上来说,它几乎可以达到一种无所不能的感觉(目前,你也可以理解为一个执行器),但是综合起来的效果却非常强大。
然而,目前工作流程的执行情况却很不理想。 目前的排列方式仍然是硬编码的形式,没有可视化的拖放。 多个任务形成原子性,但基本可以达到效果。 简单的流程还好,很多复杂的流程完成起来就有点困难了,但是一起使用整体效果还是不错的。
多年来,这些任务已经发展出自动化能力程序员新手如何选择自动化工具?新手必看!!,基本覆盖日常编码和学习场景,为我节省了大量的时间和场景。 同时,我也在不断优化和寻找更好的解决方案来提高自己的学习环境的表现。 目前采用的方法是有现成的脚本案例参考和调优模式,然后不断优化,寻找更好的解决方案。 我尝试过使用其他自动化工具,但是仍然缺乏很多功能和稳定性。
对于开发者,尤其是新人来说,这些将节省大量的时间、成本和学习经验。 无论是在后期的工作还是管理中,自动化能力都是很常见的,比如对于中小型公司来说。 ,这样整体效率基本上会提高很多。 对于个人来说,积累的东西在一定程度上也是经验的积累。 在某些工作岗位上,积累远远超过了工龄的年月。 修改一下就可以了。 使用它会解决很多问题。
总结
自动化能力是IT领域常见的能力。 工具的使用、场景的覆盖、效率的提升,对个人来说是比较有帮助的。 我见过很多人使用自动化功能。 在很多场景下,是可以同时进行优化和提高效率的。
以上是我自己使用自动化作业的一些场景和经验积累,提供参考。