找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 114000|回复: 0

十年程序员总结:学习编程不同于学习编程语言,带你快速搞懂它! ...

[复制链接]

该用户从未签到

发表于 2021-2-8 05:02:47 | 显示全部楼层 |阅读模式

您需要 登录 才可以下载或查看,没有账号?立即注册

×
我们都是程序员,我们都是学习者。令人惊讶的是,有多少人(学习者)以为正在学习编程而把头撞墙。
你可能正在学习一种编程语言,而不是自己编程

知道计算机科学不学习计算机,不要感到惊讶。相反,它是使用计算机来自动解决问题的研究。解决问题是计算机科学,而不是编程。这就是为什么许多计算机科学专业的学生似乎不理解为什么他们学习算法或数学的原因。
如果你以前去过计算机科学课,那么我在这里所说的话不会让你感到惊讶。因为你会注意到编程与编程语言几乎没有关系。问问自己,为什么伪代码在这些类中如此常见。
但是,大多数有思想的程序员总是会陷入陷阱。我们学习编程语言已有数十年的时间,然后才意识到自己真正需要做的事情:编程。我本人就是受害者。
我花了十多年的时间来学习各种编程语言。我学得越多,构建简单的东西就越困难。我有种找不到合适工具的感觉。但是,问题是,当我什至不知道要做什么时,我忘记了寻找合适的工作来代替合适的工具。
编程语言的奇怪之处在于它们总是在发展。编程语言几乎每天都在变化。跟进非常困难。而且大多数好的程序仅使用编程语言的一小部分。
首先学习编程语言的问题就像在学习木工之前学习如何使用木工锯,锤子和各种切割机。木工需要注意:想法,可行性分析,度量,测试,客户行为。
老板木匠会比锤子和钉子更感兴趣。在对工作进行科学研究期间,他还将花费时间检查指甲,着色剂,木材等的质量。
学习编程和学习编程语言有什么区别?
“编程”通过仅给出一次指令来使系统自由运行。我们每天都要这样做。我们教我们的孩子,我们的士兵,我们的客户。

我们给他们或我们收到指示,要求他们自由/独立地生活在给定的方式中。你的父母不需要跟随你并指导你生活中的每一步。他们已经在生活的许多方面为你编程。
大多数学校和教育网站都会教授编程语言的语法。他们可以添加一些设计模式(而你忽略了确切的设计),一些算术计算,如何声明变量以及如何使用它们,数据类型以及如何声明/创建它们。
这不会教你推理。使用这种方法,你将发现推理方法,但是稍后。这会让你感到浪费,或者花费大量时间学习编程。
我们用编程来解决问题,而编程语言是帮助我们做到这一点的工具。
它们就像工具箱。我们称它们为框架。他们可以帮助你整理想法。
如果你正在学习编程,但仍无法计划和编写实际的应用程序,则意味着你要比编程学习更多有关编程语言的知识。
我们会见多少人(学习者),他们仍然想知道如何创建程序。对于程序员来说,程序是一个需要解决的问题。在涉及任何编程语言之前,他都通过批判性分析解决了这一问题。
解决任何问题时,都可以使用任何编程语言进行编码。让我们以正方形为例。为了平方某物,我们自己对其进行计时。我们可以用多种语言来实现它,例如:
在C中
functionsquare(int * x){returnx * x;}
在PHP中
functionsquare($x){return$x*$x;}
用JavaScript
functionsquare(x){returnx * x}
计划中(Lisp方言)
(define(squarex)(*x x))
你会注意到,只有语法在实现中很重要。解决方法是相同的。这就是为什么你几乎可以使用任何你更愿意构建任何类型的软件的编程语言的主要原因之一。

通过编程发现一种语言更容易
问题通常是人类语言。人类语言充满局限和错误。因为机器感觉不到,所以无法用来指导机器。
在学习编程时,你将学习新的术语和新工具,以计算机或其他程序员可以理解并达成共识的方式帮助你编写逻辑。
通常,你将从一个简单的类似于人类语言的符号伪代码开始。它是从人类语言到计算机编程语言的很好的过渡工具。通常这样做是为了防止你在语言上浪费时间。
这样,你就可以完全专注于推理。通过这些,你将发现构成良好编程工具(语言)的核心部分。你了解确切需要什么。
你了解编程语言的核心目标。这样一来,你就可以学习它,而无需知道自己何时完成。
回复

使用道具 举报

网站地图|页面地图|文字地图|Archiver|手机版|小黑屋|找资源 |网站地图

GMT+8, 2024-11-1 22:32

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表