难道谷歌的Go语言解决“为什么弧,没有特别的面向对象的”保罗·格雷厄姆的职位的问题呢?
题
请问谷歌的 Golang 与语言在保罗·格雷厄姆的帖子“的为什么电弧没有特别面向对象'?
解决方案
我对这个最初的感觉是“这是为时过早”
<强> 1)强>面向对象的编程是令人兴奋的,如果你有一个 静态类型语言,而不 词法关闭或宏。对于一些 度,它提供了绕过这些办法 限制。 (见Greenspun的第十届 规则。)
转到支持功能文字(见文档)其中,如果我读这个正确允许你将函数作为参数,可以不论别处定义或创建的自组织。
<强> 2)强>面向对象的编程是在大公司的流行,因为它 适合他们编写软件的方式。在 大公司,软件往往是 由大写到(而且经常 平庸的变化)的团队 程序员。面向对象 规划规定了一门学科 这些程序员,以防止任何 从做太多的其中之一 损伤。价格是, 最终的代码臃肿 协议和全面备份的。 这不是一个大的价格太高了 公司,因为他们的软件是 可能会是臃肿和全 复制的反正。
这点是远主观回答。
第3)强>面向对象的编程产生大量的什么样子 工作。早在折叠式的日子, 有一个类型的程序员谁 只放5条或10线 代码的网页上,×20开头 精心格式化的行 评论。面向对象编程 就像破解这些人:它 可让您将所有这一切 脚手架到您的权利来源 码。一些Lisp的黑客 可以通过按下一个符号到处理 列表变成一个类的整个文件 和方法。所以这是一个很好的工具,如果 要说服自己,或 别人的,你是做了很多 的工作。
由于走的是不是一个真正的面向对象的语言,你也许可以解决您习惯使用任何fashon问题。
<强> 4)如果一个语言本身是一个面向对象的程序,也可以是 通过用户扩展。也许会。要么 也许你可以做的甚至更好 提供的子概念 面向对象的编程一拉 点菜。过载,例如,是 没有本质绑类。 我们将拭目以待。
围棋似乎有一个有趣的方法的对象,在这里你不需要担心/开发大型对象树。它看起来像工具出现在语言结构,面向对象的方式你的数据不锁定你到一个纯面向对象的环境。
<强> 5)强>面向对象的抽象整齐映射到的特定域 特定种类的程序,如 仿真和CAD系统。
...
其他提示
保罗有一些有趣的点,一般来说,我看过他的很多思索的。在这个问题上,我们不同意。他是一个口齿不清螺母和一个蹩脚的节目螺母。他似乎典当掉很难理解方案,作为伟大的程序员的工作。是的,我意识到这是比这更微妙的,但它确实可以归结到这一点。在一天结束的时候,无论你的代码是很容易的工作,或者它不是。还有一些程序员,保罗可能会认为优秀的程序员,将能够忍受比别人多废话,仍然能够使代码打算什么正面或反面。这是一个技巧,但最稳妥不是唯一的一个优秀的程序员的需求。
弧来说,它很烂,除非我错了,即使人在Lisp的社区这么认为 - 我在这里的点是,即使是聪明人犯错误
再次Paul是一个聪明的人,但他在这个特定的片整个方法是关闭似乎标记。
等待了,不过,就是去真正面向对象的?这似乎在这一方面完全无关。您可以在随时随地使用OOP或FP或命令式编程。我的意思是,序言式的“节目”将是一个延伸,但在其他方面...
在事实上,我认为,围棋类似于斯卡拉在这方面:有一些对象范式躺在身边,然而,也有lambda表达式和typecasing躺在附近