Rob Pike
对面向对象方法的评论。 其实也没有什么新意,无非说没有让人一劳永逸的东西,一个鞋子不能穿在所有人的脚上云云。不过真理往往隐藏在老生常谈里面,所以也不妨看看他的评论。看得出Rob Pike仍然是老牌Unix hacker,对使用多种工具协同工作,每个工具尽量漂亮地解决一个问题的哲学深信不疑:“It's that last point - different languages for different subproblems - that sometimes seems lost to the OO crowd," Pike said. "In a typical working day I probably use a half dozen languages - C, C++, Java, Python, Awk, Shell - and many more little languages you don't usually even think of as languages - regular expressions, Makefiles, shell wildcards, arithmetic, logic, statistics, calculus - the list goes on.” 呵呵,Unix这种哲学让程序员的世界变得精彩无比。如果世界上只有OO(或者其它什么方法),我们的生活岂不是异常无趣?
话说回来,OO多多少少提供了一个相对清晰高效而且大多数程序员能够理解的抽象机制,使得一个开发队伍能够在不同的人员配备下平稳地进行开发(是的,我会泛函编程,也会逻辑编程,但相信我,能用这些范式写出高质量的人不多。我当助教时就深有体会了。) 没有几个公司指望他们的程序员通晓多个编程范式吧?而且用单一语言也使得公司对程序员的依赖减小。不管怎么说,找Java程序员总比找会Java+C+Python+Awk+Shell的人多吧

?
分享到:
相关推荐
- **核心知识点**:面向对象设计、模块化编程、抽象层次的控制等。 ##### 第4章:界面 - **内容概述**:讲解了用户界面设计的基本原则以及模块间接口的设计方法。重点在于如何构建用户友好且易于维护的系统。 - **...
- **类型和值**:Go 语言中的面向对象更多体现在类型和值上,而不是传统的类和对象。 - **方法**:可以为任何自定义类型定义方法,实现了类似于面向对象的语言特性。 - **接口**:Go 语言通过接口实现了多态性,允许...
Kernighan 和 Rob Pike:虽然不是专门针对C++,但这本书提供了很多优秀的编程实践技巧,对于提高编程技能非常有帮助。 4. **《C++ 思维》** - Bruce Eckel:这是一本经典之作,深入浅出地讲解了C++的核心概念和...
3. **面向对象编程**:尽管Go语言不是一种典型的面向对象语言,但它支持接口和结构体,这使得它能够实现类似面向对象的设计模式。书中会讲解如何定义和使用这些特性来实现封装、继承和多态。 4. **Go的并发模型**:...
Go编程语言,通常简称为Go或Golang,是由Google公司于2009年推出的开源编程语言,由罗伯特·格瑞史莫(Rob Pike)、肯·汤普逊(Ken Thompson)和罗布·派克(Rob Pike)共同设计。它的设计目标是提供一种简单、高效、并发...
Go语言的面向对象编程特性不像传统的面向对象语言那么复杂,它没有类,但提供了结构体(struct)来组合数据,以及结构体方法(method)来实现类似面向对象的封装和行为定义。继承在Go中通过嵌入结构体实现,而接口则...
因此用户不需要在定义类型之间的关系上花费时间,这样感觉起来比典型的面向对象语言更轻量级。Go完全是垃圾回收型的语言,并为并发执行与通信提供了基本的支持。按照其设计,Go打算为多核机器上系统软件的构造提供一...
Go语言,又称Golang,是Google在2009年推出的一种开源编程语言,由Robert Griesemer, Rob Pike及Ken Thompson设计。它的设计目标是提高开发者的生产效率,同时保持程序运行的高性能。Go语言的特点包括简洁的语法、...
Go 语言,又被称为 Golang,是由 Google 的 Robert Griesemer、Rob Pike 及 Ken Thompson 于2007年开发的一种静态类型的编程语言。它旨在提供高效的开发环境,同时保持简洁、清晰的语法,强调代码的可读性和并发编程...
2. **设计原则**:Kernighan和Pike可能会讨论模块化设计、代码复用和面向对象设计等概念,强调良好的代码结构对于程序可读性和可维护性的关键作用。 3. **数据结构与算法**:书中可能会深入讲解各种数据结构(如数...
由图灵奖得主Ken Thompson、Rob Pike和Robert Griesemer等人共同创建,Go语言自2009年正式发布以来,因其高效、简洁和并发特性而受到广泛关注。 **为什么选择Go语言?** Go语言的诞生是为了解决传统语言如Java在大...
- 支持方法但不是传统的面向对象语言 #### 二、资源与状态 ##### 1. 资源 - **官方网站:** http://golang.org/ - **包含内容:** - 参考手册 - 教程 - 库文档 - 安装指南及如何使用文档 - 常见问题解答等 ...
它支持面向对象编程的特性,但并没有采用传统的类继承机制,而是引入了接口的概念,使得Go语言的类型系统更加灵活和简洁。此外,Go语言还内置了并发支持,它通过goroutines提供了一种轻量级的线程,允许开发者以更...
3. **C++ 影响**:Go 语言在设计上受到了 C++ 的影响,但在许多方面进行了简化和优化,比如取消了类和继承的概念,转而使用接口和结构体来实现面向对象编程。 4. **快速启动与低运行时开销**:Go 语言编写的程序可以...
Go语言,也被称为Golang,由Google公司于2009年推出,由Robert Griesemer、Rob Pike及Ken Thompson三位大神设计开发。它的设计目标是提供简洁、高效、并发性良好以及编译快速的编程体验。 Go语言的核心特性包括以下...
它支持接口和类型断言,这为实现面向对象编程提供了灵活的方式。通过阅读标准库中的类型实现,我们可以学习到如何优雅地设计和使用接口。 在Go的源码阅读中,标准库是一个不可忽视的部分。比如`net/http`包,它是Go...