https://avatars.githubusercontent.com/u/36830265

谈谈Go与面向对象

本文面向已经会 Go 的基础语法并基本掌握一门面向对象语言的读者。

先抛个问题:Go 是不是面向对象语言?

官方的回答是:「Yes and no」。

Go 语言可以做到绝大多数面向对象语言的特性,但它不是一门「标准」的面向对象语言,它没有「type hierarchy」。

一开始,我觉得它以自己的奇怪甚至近乎「妖魔」的方式与面向对象打了个擦边球; 后来,我反而觉得完美面向对象就应该是这样灵活的,现在的所谓的「标准面向对象」,反而是一种不完美的实现。

细窥Golang类型系统

本文是一篇翻译,源于与好友的一次关于 Golang 底层类型判定的讨论。

找到了这篇好文,奈何中文翻译欠佳(内容缺失、词不达意),就看了原版。

看完就忍不住翻译下来,逐字斟酌,并补充了许多内容,标示「译者注」。可以看两遍,第一遍忽略译者注,第二遍结合补充内容阅读,体验更佳。 ——by 爱飞的鸟

厚脸皮:从入门到实践

本文是我克服社交恐惧的一些个人经验,希望能给读这篇文章的你带来些帮助。

我所指的厚脸皮是在真诚与尊重他人的基础上,能勇敢地做自己,拥有被讨厌的勇气。让别人感到不舒服的行为,不叫厚脸皮,叫冒犯。

心法一:别人没有那么在意你

又名:每个人的中心都是自己

我与阿德勒

很早就想写写关于「阿德勒」的一些东西了,前些天交了心理作业,所谓的契机就这么来了。我是从《被讨厌的勇气》一书知晓阿德勒的,对话体,作者是「岸见一郎」与「古贺史健」。可以说,是阿德勒赋予了我新生。

代码重构实战(一)课表查询

你永远想象不到代码能被重构成什么样子,重构之路充满了惊喜。——我自己

如果不信,请直接跳转到文末。

这本是我交给社团新人的一个重构任务,但后面自己手痒,在他的基础上,又重构了几版。个人自大一波,认为从本次重构中领悟了很多东西,希望也能给读者带来些帮助。本文是基于 Go 语言的,但是在解释思想时,绝大部分内容不涉及特定语法,适合所有开发者阅读。在此感谢 Atom 、Eson 与我进行的讨论、提供的建议,给我带来了非常大的帮助与启发(尤其是代码直观性方面的保持,不要为了重构而重构)。也感谢 Dolt 的初次重构。

面向对象思想入门

一、形象解释什么是面向对象

1.1 小例子

先来个例子,简单了解一下面向过程和面向对象的区别。

有一天你想吃鱼香肉丝了,怎么办呢?你有两个选择:
1、自己买材料,肉,鱼香肉丝调料,蒜苔,胡萝卜等等然后切菜切肉,开炒,盛到盘子里。
2、去饭店,张开嘴:老板!来一份鱼香肉丝!
看出来区别了吗?1是面向过程,2是面向对象。