编程|测试人员对编程天生“恐惧”么?

编程|测试人员对编程天生“恐惧”么?

软件测试人员掌握一门或者多门编程语言是必不可少的 , 许多测试人员对编程天生“恐惧” , 其实编程并不是你想象中那样触不可及 。
许多测试人员为了提升 , 抱着一本书“死啃” , 效果肯定是有 , 但不是最高效的 , 我并不推荐 。 在平时繁忙的工作中 , 抽出大量的时间来学习 , 不大现实 , 有时候会因为紧张的工作不得不停下来 , 投入到工作中 , 待空闲时再继续学习编程 , 你又会发现许多之前看的内容又忘记了 。 其实编程语言就是这样的 。 你不用它 , 就会很快忘记 。 那么如何利用碎片化的时间高效的学习呢?后面我会一一为大家解惑 , 并提供我自己的见解与学习方法 。
软件测试人员掌握的编程水平不能与专业的程序员相比 , 其中有两块区别 , 一是熟练度 , 二是思想经验 , 熟练度的差距会比较大一些 , 而思想家境界上我们可以无限的接近甚至超越程序员 , 就好比许多人玩LOL游戏 , 有人是大神 , 有些人是普通的玩家 , 对于同一个角色英雄 , 发挥出来的水平是不一样的 , 你与大神的区别 , 一在熟练度上 , 二在思想境界上 , 为什么会说熟练度差距大 , 程序员每天使用一编程语言 , 熟能生巧 , 编码敲击速度要快很多 , 这需要长时间的锻炼才能实现 , 软件测试人员天生没有这样的条件 , 熟练度差距自然很大 , 在思想境界上【所谓思想境界指的是对某类问题的解决方法】我们可以与程序员很容易的接近 , 程序员解决这类问题 , 方法是这样的 , 你告诉我 , 我懂了 , 那么这类问题以后我也能解决了 , 无非就是编码速度 , 代码规范的差距 , 结果都是一样的 , 程序员不可能每天都在解决没有遇到过的问题 , 大部分时间都是将已知问题的实现方式(方法、经验、思想)编码实现出来 , 若我们将一些常见的问题的思想罗列出来 , 通过交流或者分享的方式 , 让你一一体会了解 , 是不是要相对容易些 , 懂了就是懂了【不纠结深层次的问题】 , 你懂了才能成为你自己的 。 程序员与程序员之间的能力差距 , 其中一点主要体现在思想境界上 。
那么到了这里又会产生另外一个问题 , 别人在讲解或者分享某些问题的解决方法时 , 我们能够理解么?就好比你在参加一个别人的分享会 , 你能完全的吸收别人的思想么?请想一想!这需要一定的基础 。 就好比一个物理学家在分享一个问题的解决方法时 , 你能够听懂么【不排除一些牛人】?若有另外一个物理学家 , 也遇到该问题时 , 听完分享后 , 茅塞顿开 , 最终成功解决问题 。 因为他们在那一层次上有一定的基础 。
若要吸收别人在编程上遇到问题的解决思想 , 你需要一定的基础 , 这些基础我将其归纳为固定的知识 , 理解掌握别人的思想需要固定的知识点来作为支撑 。
哪些是属于固定的知识?如:基本数据类型、字符串、常用操作、数组常用操作、正则、文件目录操作、常见容器对象、日期、多进程、多线程等等这些基础知识属于固定的知识点 。 很容易理解 , 例如获取字符串的长度 , 就一个len方法 , 参数为字符串 , 返回字符串的长度 , 没有歧义 。
若要使用一种编程语言的话 , 需要熟记这些基础知识么?没有必要 , 一种编程语言的固定基础知识点就好比一种编程语言的编程手册 , 这类数据属于字典类数据 , 你说过有人会去背诵一本字典么?你所需要做到的就是会用这本“字典”即可 。 技术组也在逐渐完善这类的公共的代码库 , 并根据经验整理出合适的字典 , 我这边称之为公共代码库 , 当然你也可以自己收集与整理固定只是点的体系【建议后期大家统一在公共代码库进行维护】 。