我觉得哪一天自己不看一下脚本,尤其是在工作日的时候,就觉得日子好像缺了点什么。脚本可以是VS Code里的那些,也可以是Excel VBA,同样也可以是各种的网页源代码,又或者是XML文件。反正就是一些不是给人看的东西,又或者说,不是给人直接看的东西。那些东西经过软件的处理以后,结果是给人看的,但是我看那些东西的时候,却是给机器看的。我还没有神经病到要看二进制代码的地步。
一个没有完美倾向的码农,绝对不是一个好码农。所以当我看到,单位的那个所谓智能系统出来东西每一页都有错的时候,我怎么可能不吐槽。他们测试过了吗?他们真的测试过了吗?他们不只是没有测试过,而且做那个表的人根本没用心,连抄都可以抄错。因为我自己是一个码农,所以我知道那些步骤到底应该是怎样的。我不知道专业的码农日子是怎么过的,反正只要我开始任务。任何时候我脑子里可能都在想,有可能是吃饭的时候,也有可能是跑步的时候,经常发生在我洗澡的时候。
写出来的东西的确能实现一些功能,但是那个东西真的能兼容所有情况吗?如果有一些突发的呢?突发的时候,我们可以手动使用B计划,也就是非智能秒杀计划,但是能不能在秒杀计划里加一些判断分分支适应特殊情况呢?这完全是可以做到的,但是一开始的时候,那并不是核心功能所在,所以没有被考虑进去。到达一定程度以后,我就要把那个功能泛化出来。不仅仅做到一些核心的东西,连一些正常的例外也得考虑进去。之所以这么说,是因为昨天走回宿舍的路上,在洗澡之前,我又想起前天写的两个脚本我还可以加一些条件判断进去,使之适应一些后续增加的例外事件。虽然说那些是例外事件,但是在某些情况下,有可能变成常态。之前我不知道该如何处理,但昨天,写了两个数据透视表的脚本以后,我明白到数据透视表我可以固定用某个表名。如果之前已经存在那样的表名,第一步需要把那个表删掉,然后开始后面的操作。又或者,我并不需要删掉那个东西,我只需要改变数据的引用范围。在我的知识范围内,直接删掉比调整引用范围简单。但实际上调整应用范围也必定是一个可控的东西,所以大概接下来我要了解一下怎么在VBA里改变数据透视表的应用范围。另外一个脚本更简单一些,直接是判断某个单元格那时是不是某个固定的东西,是的话就无需进行插入操作,直接开始排序,不是的话就要先进行插入,然后排序。
如果之前我没有学过python,没有努力地写过各种脚本,大概我会觉得泛化有点麻烦,但是当我经历过那些东西以后,我觉得这一切都理所当然了,我甚至想写一个自定义函数把主流程丢到里面去,那么,核心部分的判断就会非常明了,理论上VBA也肯定能做到。之所能具备了这种思路,我必须得感谢Think Python这本书。这种思路是我大学时学习程序语言的时候所不知道的。虽然那时我通过了计算机二级C语言的考试,但那考试对我来说只是一张纸。是后续我接触到、我自学回来的东西,成就了现在的我。
变得更好的路永无尽头。
本文链接:https://my.lmcjl.com/post/14194.html
4 评论