Basic的设计并不出彩,推荐几个自己玩过的编程语言

【本文来自《我是高三文科生,如何跳出文科思维,拥有理性科学的思维?》评论区,标题为小编添加】

    洒水车

    当初自学basic语言,惊艳逻辑的美

说难听点basic的设计并不出彩…

推荐几个自己玩过(不一定深入)的编程语言:

深入计算机体系本身,去看C语言(不是C++),掌握指针,内存管理与基本算法的实现,有条件去玩玩linux编程。C语言的设计原则重要的我认为有两点:信任程序员(所以把内存管理接口全部暴露出来,他认为你知道在写什么)与kiss原则。

学比较纯粹的函数式编程,去看haskell或者lisp,去理解什么叫一切皆函数,重新思考一些基本的编程元素如循环,分支的实现,这些思考极大影响了大数据分析与现代编程语言。如果要更深入,去学习与图灵机同样重要的lambda演算。

学面向对象,java与c#选一个,然后通读设计模式与一些框架的实现。如果有可能,自己做一个小游戏,试试看面向对象是如何对具体业务与现实世界抽象的。另一个是垃圾回收(gc)的玩法,去同C/C++做比较看看这些解决了什么坑。这些语言可能写起来又臭又长,但是不可否认的是现实世界大多数服务端工程代码都建立在面向对象语言上。

学习原型语言,深入javascript,理解什么叫一切皆对象(是的,java与c#都没做到一切皆对象),理解原型链,感受其近似逮虾户的灵活性,以及因为灵活性造成的优点与坑。去看看nodejs以及从callback到promise再到async怎么处理并发问题的。

如果只是想干点小事情,去学一学python,首先从语法层面感受什么叫强迫症,再去理解什么叫pythonic编程风格。看一看python分别从面向对象与函数式编程里拿了什么东西,再去拿python解决一些类似excel处理的问题,让你的生活自动化。如果有兴趣,可以去玩玩机器学习。

站务

全部专栏