编程杂谈

阅读此文章前我希望大家对编程有最基础的概念,它是什么,它可以做什么。

编程语言

计算机语言有太多太多种,我们常见的有十多种:C、C++、C#、java、VB、PHP、JavaScript、SQL、MATLAB 等等。
各种语言往往没有可比性,我们无法学习每一种语言然后去选择一个最好的,每一种语言都有其独特的作用与应用场景,我们只能按照一个特定的流程来选择我们该学习哪门语言。这个流程是:确定问题 -> 理清解法 -> 选择语言。不同领域的问题可能要用不同的语言与技术背景去解决,我们去学习可以解决问题的那种编程语言就好。
dbaea485d1974f738f1e3fc681b94303_image.png

初学编程,你不用很懂上面那段话的含义,你只需从经典的入门语言中选择一个来学习,我推荐:C 与 Python 。C 是一门很基础的语言,Python 是一门很易用的语言。无论你选择什么,我更建议你都学习一边,以构建完整的编程思想。

学习语言,学习顺序、循环、判断的基础语法,学习递归、学习函数的基础逻辑。开始你可以会迷惘为什么程序员要从 0 开始计数,可能会困惑各种运算符的运算顺序。但这只是小问题,希望你可以尽快过渡。

编程思想

编程是一门艺术,它和画家作画没有什么差别,只是我们的工具不同罢了。作画前,画家会大致构思好画作的结构;编程也一样,我们要构思程序的展示形式。作画时,画家将一笔一笔把他脑海中的画作表达出来;编程时,我们需要将每个函数的逻辑清晰的写出来。画家收尾时会修改自己不满意的地方;我们也同样修改代码逻辑上的失误。

编程就是用计算机语言解决问题,这和我们生活中处理问题逻辑有着相似的情况。所以,生而为人,便可入门编程,这技术无特异之处。深入只需多加学习。

敢去解决问题

没有多余的话,我只讲自己一个例子:我曾帮别人改过一个比较重要的代码,那是一个安卓程序,他想在自己的程序中添加人脸识别以及识别后控制小车停止的功能。说实话,我没有什么安卓基础,只是安卓程序是用 Java 编写的罢了;人脸识别我也只是用 Python 来实现过,并没有用 Java 做过;而且我也没有做过硬件控制这些。但是我和实验室学硬件的同学合计后还是接下了这个项目,他也只是会硬件和 Python 的人脸识别。
我们原计划用 Python 写出人脸识别的代码,然后通过 Java 调用识别结果,最后通过指令控制小车运动。只是后来我们发现安卓有原生的人脸识别库,这个方法可以缩短我们的代码量。结果很成功,两个并没有做过相关内容的人,通过资料的查询,按照解决问题的思路,用另一种方式解决了问题。

工资待遇

我并不是很想谈这个话题,社会中 程序员工资多的这个想法是一个公认的观念,但每一个个体却是独立的,我们造就了这个平均值,但平均值无法保证我们的未来。我希望未来的各位都可以帮社会提高这个平均值,但生活总是残酷的,有人超前,就有人垫底,这是这个物质匮乏星球的法则,短期无法解决,甚至永远都无法解决无尽的欲望。

学习的途径

网上有很多很多资源,一般你可以找到。我只推荐几个你不容易知晓的途径:

  • GitHub:开源代码社区,很多厉害的项目都在这个网站上托管
  • 百度开发者中心:它只是一个例子,有很多公司开放了这样的开发者中心来供技术人员接触新技术,帮助他们发挥技术更多价值。例如我演示过的 AR 技术Vuforia
  • StackOverflow
  • 可能你需要一些科学上网的技术来在 Google 等地方获得更好的解决方案

说来抱歉,本来有千万句话要说,可是到了嘴边又不敢讲,小心翼翼的讲那些完全正确的话,以免你们被我这个时期偏激的观点扰乱。我也还需要多多努力,大家加油。

论坛长期招募运营成员

详见打赏区

2 打赏
打赏 1 积分后可见