编程学习中的一些常见误解

编程学习中的一些常见误解_第1张图片

自己最近发现了一位宝藏博主,她的名字叫做  “SchelleyYuki”,一个半路转码的北美程序媛,分享的很多知识真的非常不错。

第一个误区:编译型语言?解释型语言?

 解释器工作原理:

编程学习中的一些常见误解_第2张图片

编译器工作原理:

编程学习中的一些常见误解_第3张图片

准确的表达应该是,某个语言的某个特定实现,是编译型或者解释型的。

姐姐举例,一个团队在开发一个新语言时,往往会为它开发一个解释器,用来测试这个语言。

编程学习中的一些常见误解_第4张图片

 

编译型或者解释型,不同语言其实都是可以实现的,如果你不了解其原理,就是死记硬背,那么对于你认识这个概念或者这个知识本身反而增添许多误解。

在我看来这其实是,我们对于一些语言来说,我们哪些方式更为常用的,就比如说,一些语言的使用场景,更适合与一句一句的告诉它,还是我把菜谱都翻译完,我再给你。

按照我浅薄1的理解,可以给大家举一个例子,比如说,Python,它有丰富的类库,并且语言学起来也是比较轻松的,我们时常使用Python去做数据处理,那如果是跑数据,你是希望,我写完一条,你就帮我运算一下,我随时还可以把中间值记录下来,并且不断测试这样我的运算也可以及时调整,不断改进,这样来的好,还是我直接写一大堆,最后就是跑一个没有啥过程的结果?

但是C++/C,比如说它和很多硬件联系紧密,我就是需要一个完整的脚本,要的就是一个结果和反馈,优势性就是更大一些。

不是说,Python不能编译着去运行,也是说C++/C不能解释地去走,只是这些并不是自己的强项,我们实际用的时候都会使用比较擅长这方面的语言来干。

其实这里厨师的例子也让我感觉到了一种什么感觉,就是其实写代码就是在对话,最近一直在阅读号称现代传媒学鼻祖麦克卢汉老师成名作《理解媒介》,就认为这个现代社会的核心其实是沟通和交流,中文对于传媒的更贴切翻译也就应该是交通才对,让我认为,写代码其实就是一个对话的过程,只是跟你对话的这个大叔,他是个外国人,而且他很懒,他不愿意学你的语言,虽然现在我们的话也不断交融,但是大部头呢,还是你需要去学习他的语言,你才能去跟他对话,并且你也可以去把一些很困难的事情交给他去干,因为这些事情在他的眼中都是啥费力的活,但是对于你来说,就要登天了,但是啥呢?他只知道干,他不思考,他擅长当苦工,但是不思考,你必须一步又一步,把设计的思想和理念,方式方法都告诉他,他才能帮你干,但是他真的很卷,而且运算的速度真的飞快,正所谓是各有优势,你们如果想干一些活需要彼此配合。

编程学习中的一些常见误解_第5张图片

第二个误区,面向过程?面向对象?函数式? 

编程学习中的一些常见误解_第6张图片

因为你如果深入写过一些不同语言的代码时,就会发现,比如,我在写java的时候,我完全可以不用面向对象的方式,就是写出一段面向过程的代码,也是完全没有问题的。

学习一门语言,其实应该把这门语言打散成一个个的特性,把每个语言都研究透彻,这样就算是真正学会了这门语言。

java会预先检查java数据类型

编程学习中的一些常见误解_第7张图片

 但是直接检查数据类型的真的也太棒了吧编程学习中的一些常见误解_第8张图片

 

编程学习中的一些常见误解_第9张图片

误区三:???Object-Oriented面向对象 

class根本就不是面向对象的本质特点编程学习中的一些常见误解_第10张图片

 面向对象的本质是封装,继承,多态。其实我当时也觉得它是有问题的。

编程学习中的一些常见误解_第11张图片

看看OO的创始人是怎么说的,他认为面向对象的首要特征是messaging

 编程学习中的一些常见误解_第12张图片

 编程学习中的一些常见误解_第13张图片

 其实在我眼里看来,你学习计算机不把传播学和互联网思维学好,学出来的大神名字应该叫做chatpgpt,很快就会被替代。

学习知识首先要理解它的底层,如果你对它的底层都没有什么清晰的认识,请问你能学好它的上层建筑吗?含有深意的部分你肯定难以触摸。

多态:

 封装:

编程学习中的一些常见误解_第14张图片

 

 

编程学习中的一些常见误解_第15张图片

 误区四:英文原版?中文原版?

(1)尽量减少阅读中文书籍,直接阅读原版读物,这样可以减少我们学习过程中的误解。

经典:

鲁棒性(robust:健壮的;强壮的)编程学习中的一些常见误解_第16张图片

 

编程学习中的一些常见误解_第17张图片 

编程学习中的一些常见误解_第18张图片 编程学习中的一些常见误解_第19张图片

 

编程学习中的一些常见误解_第20张图片

编程学习中的一些常见误解_第21张图片 

 

 

 

你可能感兴趣的:(java,学习)