0

0

我今天才知道:学习编程和学习编程语言是两码事

PHPz

PHPz

发布时间:2020-09-08 14:08:49

|

4756人浏览过

|

来源于php中文网

原创

大多数程序员、初学者都以为自己正在学习编程,其实并不是,而是在走弯路。

你可能正在学习一门编程语言,而不是编程本身

计算机科学不是学习计算机,很震惊吧。相反,它是关于借助计算机来自动解决问题的一门学问。解决问题才是计算机科学,而不是写代码。这就是许多计算机科学专业的学生,似乎不理解他们为什么学习算法和数学的原因。

如果你以前上过计算机科学的课,那么你不会对此感到惊讶。因为你会注意到编程与编程语言几乎没有关系。思考一下,为什么伪代码在这些课程中如此常见。

但大多数程序员总是会落入陷阱。我们学了十几年编程语言,才意识到自己真正需要学的是编程,而我本身就是受害者。

我花了十多年的时间来学习各种编程语言。我学的编程语言越多,构建简单的东西就越困难,我感觉找不到正确的工具。但问题是,当我不知道如何下手时,我忘记了应该去探索要做什么,而不是寻找正确的工具。

编程语言的奇怪之处在于它们总是在变化。编程语言几乎每天都在变化,跟进非常困难。而且大多数优秀的程序仅用到了编程语言的一小部分。

优先学习编程语言的问题就像在学习木工之前学习如何使用木工锯、锤子和各种切割机。木工需要注意:想法、可行性分析、度量、测试、用户使用习惯,老木匠更关注这些。而不是锤子和钉子这些东西。

在对工作进行科学研究期间,他还将花时间检查钉子、着色剂、木材等的质量。

学习编程和学习编程语言有什么区别?

“编程” 通过给出一条指令来使系统自动运行。我们每天都这样做,我们教我们的孩子、士兵、客户。我们发出或收到指令,要求自由或独立地按照规定的方式进行。你的父母不需要一直跟着你,并指导你生活中的每一步,他们已经在之前生活中的许多方面对你给予过指导(指令)。

大多数学校和教育网站都会教授编程语言的语法。他们还会添加一些设计模式(而你可能恰好忽略了设计模式是什么)、一些数学计算、如何声明变量以及如何使用它们,数据类型以及如何声明和创建它们。

上面说的那些编程语言的知识不会教你编程。当你发现时,你会觉得学习编程实在浪费时间,大把的时间。

我们用编程来解决问题,而编程语言是帮助我们解决问题的工具。

它们就像工具箱,我们称之为框架。它们可以让你的想法更有条理。

如果你正在学习编程,但仍无法设计和编写一个实际的应用程序,这意味着你要花更多的时间去学习编程而不是编程语言。

我们遇到过很多人,他们仍然不知道如何设计一个程序。

对于程序员来说,一个程序是一个需要解决的问题。在涉及任何编程语言之前,需要先认真思考、理解问题。当你无论要解决什么问题时,其实都可以使用任何一种编程语言进行编码(重要的是思考要解决的问题)。

让我们以计算平方为例。计算一个数的平方,对自身进行多次乘法计算。我们可以用多种语言来实现它,例如:

用 C 语言

易语言编程
易语言编程

易语言是一款全中文全可视跨平台的编程工具,由大连大有吴涛易语言软件开发有限公司设计开发的,它的特点是全中文化,入门要求低,几乎只要懂得使用计算机和文字输入的人都可以进行程序设计,而且它的开发语言也是全中文的、生活化,这在今后的学习中我们会深刻体会到它的“易”。让我们一起进入“易”的世界吧!本平台提供易语言编程初级版下载,需要的朋友可以下载看看!

下载
function square(int * x) {
    return x * x;
}

用 PHP

function square ($x){
    return $x * $x;
}

学习推荐:php编程入门视频教程

用 JavaScript

function square(x){
    return x * x
}

学习推荐:javascript视频教程

用 Scheme(一种 Lisp 方言)

(define (square x) (* x x))

你会注意到,语法只决定具体实现,而解决问题的方法是相同的。这就是你几乎可以使用任何你愿意使用的语言,构建任何类型的软件的主要原因之一。

通过编程更容易理解一门语言

人类语言是个问题,因为人类语言充满局限和错误,所以机器无法直接理解。

在学习编程时,你将学习新的术语和新的工具来编写逻辑,这样计算机或其他程序员也可以理解并达成共识。

通常,你将从一个简单的、类似人类语言,被称作伪代码的语言开始。它是从人类语言到计算机编程语言的很好的过渡工具,这样做是为了防止你在编程语言上浪费时间。

如此,你就可以完全专注于问题的本身和解决的逻辑。通过这一过程,你将发现一个好的编程工具(语言)的核心部分,你就知道那些是重要的、你所需要的(如果你需要用锤子砸东西,就先学砸东西,钉钉子暂时用不到就先不学)。

这样一来,你就会在不知不觉间就学会一门编程语言(完全掌握锤子的用法)

翻译原文:Learning programming is different from learning a programming language: https://phpocean.com/blog/article/learning-programming-is-different-from-learning-a-programming-language/80

【相关文章】

相关专题

更多
php文件怎么打开
php文件怎么打开

打开php文件步骤:1、选择文本编辑器;2、在选择的文本编辑器中,创建一个新的文件,并将其保存为.php文件;3、在创建的PHP文件中,编写PHP代码;4、要在本地计算机上运行PHP文件,需要设置一个服务器环境;5、安装服务器环境后,需要将PHP文件放入服务器目录中;6、一旦将PHP文件放入服务器目录中,就可以通过浏览器来运行它。

2534

2023.09.01

php怎么取出数组的前几个元素
php怎么取出数组的前几个元素

取出php数组的前几个元素的方法有使用array_slice()函数、使用array_splice()函数、使用循环遍历、使用array_slice()函数和array_values()函数等。本专题为大家提供php数组相关的文章、下载、课程内容,供大家免费下载体验。

1605

2023.10.11

php反序列化失败怎么办
php反序列化失败怎么办

php反序列化失败的解决办法检查序列化数据。检查类定义、检查错误日志、更新PHP版本和应用安全措施等。本专题为大家提供php反序列化相关的文章、下载、课程内容,供大家免费下载体验。

1498

2023.10.11

php怎么连接mssql数据库
php怎么连接mssql数据库

连接方法:1、通过mssql_系列函数;2、通过sqlsrv_系列函数;3、通过odbc方式连接;4、通过PDO方式;5、通过COM方式连接。想了解php怎么连接mssql数据库的详细内容,可以访问下面的文章。

952

2023.10.23

php连接mssql数据库的方法
php连接mssql数据库的方法

php连接mssql数据库的方法有使用PHP的MSSQL扩展、使用PDO等。想了解更多php连接mssql数据库相关内容,可以阅读本专题下面的文章。

1416

2023.10.23

html怎么上传
html怎么上传

html通过使用HTML表单、JavaScript和PHP上传。更多关于html的问题详细请看本专题下面的文章。php中文网欢迎大家前来学习。

1234

2023.11.03

PHP出现乱码怎么解决
PHP出现乱码怎么解决

PHP出现乱码可以通过修改PHP文件头部的字符编码设置、检查PHP文件的编码格式、检查数据库连接设置和检查HTML页面的字符编码设置来解决。更多关于php乱码的问题详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1445

2023.11.09

php文件怎么在手机上打开
php文件怎么在手机上打开

php文件在手机上打开需要在手机上搭建一个能够运行php的服务器环境,并将php文件上传到服务器上。再在手机上的浏览器中输入服务器的IP地址或域名,加上php文件的路径,即可打开php文件并查看其内容。更多关于php相关问题,详情请看本专题下面的文章。php中文网欢迎大家前来学习。

1306

2023.11.13

Golang gRPC 服务开发与Protobuf实战
Golang gRPC 服务开发与Protobuf实战

本专题系统讲解 Golang 在 gRPC 服务开发中的完整实践,涵盖 Protobuf 定义与代码生成、gRPC 服务端与客户端实现、流式 RPC(Unary/Server/Client/Bidirectional)、错误处理、拦截器、中间件以及与 HTTP/REST 的对接方案。通过实际案例,帮助学习者掌握 使用 Go 构建高性能、强类型、可扩展的 RPC 服务体系,适用于微服务与内部系统通信场景。

6

2026.01.15

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 0.7万人学习

Node.js 教程
Node.js 教程

共57课时 | 8.6万人学习

CSS3 教程
CSS3 教程

共18课时 | 4.6万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号