热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

做软件测试学编程的十大误区

有不少朋友抱怨学习编程很难。做了这么多年的测试,我也觉得学习编程确实挺难的。那些能够成为专门写代码的程序员,我觉得这帮人都挺幸运的。在我的测试职业生涯中,我曾经有好几次转后端开发的

有不少朋友抱怨学习编程很难。

做了这么多年的测试,我也觉得学习编程确实挺难的。

那些能够成为专门写代码的程序员,我觉得这帮人都挺幸运的。

在我的测试职业生涯中,我曾经有好几次转后端开发的念头,也有过打鸡血通宵学习代码的光辉岁月。

但是事与愿违,一直都没有成功。

最大的问题在于自己的编码水平,确实没有达到同等工作经验的开发的水平。

其次是做了那么多年测试,养成了一些说不上好坏的“代码洁癖”,我忍受不了写得差的代码,尤其是自己的代码,我害怕自己写过的代码被后人diss,所以我一直不断在重构,但是还是写出了如同裹脚布一样恶臭且难维护的代码,最终失去了信心。

虽然如此,编程这条路还是走了好远,中间踩过很多坑,最近偶然间,看到测试汪大牛的一个B站视频《自学》,我结合自己学习编程的经历,汇总了一些大家(包括自己)学习的一些误区,大家引以为鉴。


误区1:忽略基础,好高骛远

基础是重中之重,大道理每个人都知道。但是真正能潜心修练基础知识的人,又有几多?

到了职场上,基本上没有大块时间去学习,大多数人普遍的学习方式是:查百度。

很多知识都是用到了再去学。

这个没有什么不好的,时间少的情况下,这个方法最高效。

但是这样子的学习方式很容易就会一知半解,比如说:你知道python的生成器的定义,是和函数定义差不多,只不过把return换成yield。

但是你知道生成器的原理不?你知道怎么用生成器不?你知道为什么要用生成器不?你知道生成器的主要用途不?你知道生成器和协程的关系不?

如果你只是对生成器有个模糊的概念,但是不知道关于生成器的其他一些基础的东西,你是搞不定scrapy这个爬虫框架的。

哦,对了,你也不一定能搞定协程。


误区2:学到怀疑自己,从入门到放弃

学习是一个循序渐进的过程,中间难免会碰到各种各样的问题。

没有谁能够刚学编程,就看得懂企业级别的项目代码。

只有不断的多学多练,等学识和经验丰富起来了,一切都会云淡风轻。

如果暂时遇到一些困难,或者有看不懂的代码,要么是自己的知识面还不够,要么就是这段代码写得太烂了,这时可以先选择性跳过困难,把编程基础打劳,方法总比困难多,总会找到解决办法。

编程门槛其实并不高,要不然怎么现在小学生都慢慢开始流行学编程了呢?所以要相信自己,不可能学不会,除非不想学。


误区3:孤军奋战,封闭学习

有的小伙伴学习编程的时候,遇到问题,总是自己在一个人绞尽脑汁的去想凭借一己之力去解决。

有独立思考的能力是好事,但是当你苦思冥想都无法解决的话,还是不要自己闷头苦想了。

一方面,这样效率很低。

另一方面,久而久之,就会产生挫败感,继而对编程失去兴趣。

这时候应该把问题拿出来,和别人交流解决办法,有时候别人的一句话,就把困扰你好几天的问题解决了。


误区4:从众跟风,盲目学习

或者说什么语言流行就学什么,完全不顾及实际情况。

其实编程语言没有好坏之分,只有适合和不适合。

想学什么结合自己的兴趣领域和目标岗位来定就好。

最怕就是动不动就想学全栈,什么HTML/CSS/JS/JAVA/Python/PHP/Go,样样都会——写"helloworld",但是真正拉出去做项目,一行代码却都写不出来。

建议就是选择好某个领域之后,就开始慢慢去深耕。 有经历再学别的语言,工作需要用到再学。


误区5:背代码?还在用记单词的方式学编程?

学习编程和学习英语是两码事,有的人却还认为,学好编程是不是应该先把英语学好。

其实懂英语是有一定好处的,因为很多代码变量都是英文单次来命名,而且因为代码是外国人发明的,很多说明文档都是英文编写的(当然现在有很多已经汉化了)。

但是英文好和代码写得好没有太多必然的联系。

学习代码也没必要去背。

程序员最重要的能力就是要学会掌握规律,看代码也是一样,要看得懂作者的思路,理解为什么要这么去写代码,而不是一味的抄和背。

人的记忆是有限的,别说是别人的代码了,你能很好的记住你一个月之前写的代码逻辑么?


误区6:搜集海量资料却不看

学习编程的路上,有很多伸手党,他们都有共同的爱好,就是喜欢收集海量的编程资料,喜欢先mark住等有空了再看。

每当有公众号程序员一凡发福利时,他们总会第一时间排队,收集到一手资料,把这些资料精心的存入网盘里面,还为这些乱码的电子书标题精心的命个名排个序,方便查阅。

然后呢?

然后就没有然后了,这些资料就在网盘里面躺着了。

这个跟等我有空了就学吉他一样,他总是没有空。

以前我就是这种人,现在其实也还是,但是这个是不太好的陋习。

其实很多资料都大同小异的,如果你真想学的话,不如把自己已经有的资料先看个几遍学透。

东西进不到自己脑子里,就是没有学到。

所以如果你还有资料的话,请联系我,我帮你收集。

如果对软件测试、接口、自动化、性能测试、测试开发、面试经验交流。感兴趣可以1079636098,群内会有不定期的发放免费的资料链接,这些资料都是从各个技术网站搜集、整理出来的,如果你有好的学习资料可以私聊发我,我会注明出处之后分享给大家。


误区7:搞不清楚学编程的具体用途

为什么教科书里,学习一门编程语言,总会介绍这门编程语言的历史?是闲得蛋疼么?

非也!

你如果不明白学这门编程语言的发展历程,你就很难知道他的市场定位,你也会不理解他为什么是这么定位的。

如果你拿C语言去做前端开发,也不是说不可以,但是现在已经2020年了,应该没有人会这么干了的吧?

所以,每种编程语言都有自己的适用范围,你只有知道用途之后,再去针对性学习,才对得起这门语言。


误区8:学习代码门槛太高?

说实话,真的不高。

小学生都开始学了,能高到哪去?

就算是非科班出身的,又如何呢?现在市面上,非科班的程序员还是占很大比重的。

只要掌握了学习方法,并且对编程乐此不疲的学习,不说能不能找到工作吧,但是学会肯定是必然的。


误区9:过分的重复造轮子

重复造轮子也不都是坏事,假如你对一个框架比较熟悉了,想要更深入的去了解,你可以尝试的去模仿这个框架的设计理念,自己去开发一套框架。(JavaGuide常干这事)

这种是聪明人的造轮子,其实一些大厂,也会经常重复造轮子,阿里爸爸很喜欢干这事。

比如什么Nginx已经很流行了,淘宝非得自己也搞一个Tengine,但是说实话,做出来还是真香的,毕竟人家是站在巨人的肩膀上,更上一层楼,把代码写得更好。

但是不建议啥都不懂的盲目重复造轮子。

比如你不知道Python发起http请求可以用requests库,你非得从底层自己去绞尽脑汁的想去开发一个发送http的库,从计算机网络开始学起,整个一年半年的去做这个事,当你快做 出来了,才知道requests这个库就能解决你的问题,然后懊恼不已,才明白自己就像脱裤子放屁,多此一举,这个就很没有必要。


误区10:把某某书某某视频看完,就能进大厂

说真的,没有人能够保证。

醒醒,有策略的去学习,一步一个脚印,把基础学扎实,把面试题刷好,把自己封装好,总有一天你会被大厂调用。



 



 


做软件测试学编程的十大误区



推荐阅读
  • 本文介绍了lua语言中闭包的特性及其在模式匹配、日期处理、编译和模块化等方面的应用。lua中的闭包是严格遵循词法定界的第一类值,函数可以作为变量自由传递,也可以作为参数传递给其他函数。这些特性使得lua语言具有极大的灵活性,为程序开发带来了便利。 ... [详细]
  • 本文介绍了使用Java实现大数乘法的分治算法,包括输入数据的处理、普通大数乘法的结果和Karatsuba大数乘法的结果。通过改变long类型可以适应不同范围的大数乘法计算。 ... [详细]
  • 本文介绍了指针的概念以及在函数调用时使用指针作为参数的情况。指针存放的是变量的地址,通过指针可以修改指针所指的变量的值。然而,如果想要修改指针的指向,就需要使用指针的引用。文章还通过一个简单的示例代码解释了指针的引用的使用方法,并思考了在修改指针的指向后,取指针的输出结果。 ... [详细]
  • 本文内容为asp.net微信公众平台开发的目录汇总,包括数据库设计、多层架构框架搭建和入口实现、微信消息封装及反射赋值、关注事件、用户记录、回复文本消息、图文消息、服务搭建(接入)、自定义菜单等。同时提供了示例代码和相关的后台管理功能。内容涵盖了多个方面,适合综合运用。 ... [详细]
  • 基于layUI的图片上传前预览功能的2种实现方式
    本文介绍了基于layUI的图片上传前预览功能的两种实现方式:一种是使用blob+FileReader,另一种是使用layUI自带的参数。通过选择文件后点击文件名,在页面中间弹窗内预览图片。其中,layUI自带的参数实现了图片预览功能。该功能依赖于layUI的上传模块,并使用了blob和FileReader来读取本地文件并获取图像的base64编码。点击文件名时会执行See()函数。摘要长度为169字。 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • 知识图谱——机器大脑中的知识库
    本文介绍了知识图谱在机器大脑中的应用,以及搜索引擎在知识图谱方面的发展。以谷歌知识图谱为例,说明了知识图谱的智能化特点。通过搜索引擎用户可以获取更加智能化的答案,如搜索关键词"Marie Curie",会得到居里夫人的详细信息以及与之相关的历史人物。知识图谱的出现引起了搜索引擎行业的变革,不仅美国的微软必应,中国的百度、搜狗等搜索引擎公司也纷纷推出了自己的知识图谱。 ... [详细]
  • 本文讲述了作者通过点火测试男友的性格和承受能力,以考验婚姻问题。作者故意不安慰男友并再次点火,观察他的反应。这个行为是善意的玩人,旨在了解男友的性格和避免婚姻问题。 ... [详细]
  • 本文详细介绍了Linux中进程控制块PCBtask_struct结构体的结构和作用,包括进程状态、进程号、待处理信号、进程地址空间、调度标志、锁深度、基本时间片、调度策略以及内存管理信息等方面的内容。阅读本文可以更加深入地了解Linux进程管理的原理和机制。 ... [详细]
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • 《数据结构》学习笔记3——串匹配算法性能评估
    本文主要讨论串匹配算法的性能评估,包括模式匹配、字符种类数量、算法复杂度等内容。通过借助C++中的头文件和库,可以实现对串的匹配操作。其中蛮力算法的复杂度为O(m*n),通过随机取出长度为m的子串作为模式P,在文本T中进行匹配,统计平均复杂度。对于成功和失败的匹配分别进行测试,分析其平均复杂度。详情请参考相关学习资源。 ... [详细]
  • 本文介绍了通过ABAP开发往外网发邮件的需求,并提供了配置和代码整理的资料。其中包括了配置SAP邮件服务器的步骤和ABAP写发送邮件代码的过程。通过RZ10配置参数和icm/server_port_1的设定,可以实现向Sap User和外部邮件发送邮件的功能。希望对需要的开发人员有帮助。摘要长度:184字。 ... [详细]
  • 动态规划算法的基本步骤及最长递增子序列问题详解
    本文详细介绍了动态规划算法的基本步骤,包括划分阶段、选择状态、决策和状态转移方程,并以最长递增子序列问题为例进行了详细解析。动态规划算法的有效性依赖于问题本身所具有的最优子结构性质和子问题重叠性质。通过将子问题的解保存在一个表中,在以后尽可能多地利用这些子问题的解,从而提高算法的效率。 ... [详细]
  • Java验证码——kaptcha的使用配置及样式
    本文介绍了如何使用kaptcha库来实现Java验证码的配置和样式设置,包括pom.xml的依赖配置和web.xml中servlet的配置。 ... [详细]
  • 高质量SQL书写的30条建议
    本文提供了30条关于优化SQL的建议,包括避免使用select *,使用具体字段,以及使用limit 1等。这些建议是基于实际开发经验总结出来的,旨在帮助读者优化SQL查询。 ... [详细]
author-avatar
少爷lianglian_414
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有