Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added chinese version #63

Open
wants to merge 50 commits into
base: master
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
50 commits
Select commit Hold shift + click to select a range
0ef5a37
en translate into cn for thing 1.
wy471x Jan 5, 2024
caf5adf
translation is finished for thing 2.
wy471x Jan 5, 2024
f600956
translation is finished for thing 2.
wy471x Jan 5, 2024
e94be74
translation is finished for thing 3.
wy471x Jan 5, 2024
9947699
translation is finished for thing 4.
wy471x Jan 6, 2024
881bee9
translation is finished for thing 5.
wy471x Jan 6, 2024
b253f11
translation is finished for thing 5.
wy471x Jan 6, 2024
a39d640
translation is finished for thing 6.
wy471x Jan 6, 2024
a4e45bf
fix md format issue for thing 6.
wy471x Jan 6, 2024
6d3bd37
thing 7 is finished.
wy471x Jan 6, 2024
e6c3ebc
thing 8 is finished.
wy471x Jan 6, 2024
0f5f4d8
thing 9 is finished.
wy471x Jan 6, 2024
59619c3
thing 10 is finished.
wy471x Jan 6, 2024
b0b5a7a
add summary & readme doc.
wy471x Jan 6, 2024
d2a832a
thing 11 is finished.
wy471x Jan 7, 2024
f76a253
added thing 12.
wy471x Jan 7, 2024
a5fc4c8
update summary.
wy471x Jan 7, 2024
d4545c7
added thing 13.
wy471x Jan 7, 2024
5e1ed7e
update summary for thing 13.
wy471x Jan 7, 2024
eade5a7
added thing 14 & updated summary.
wy471x Jan 7, 2024
dda5f1d
added thing 15 and summary.
wy471x Jan 7, 2024
6045a6d
added thing 16 and update summary.
wy471x Jan 7, 2024
937ef3f
added thing 17 and summary.
wy471x Jan 7, 2024
4318bda
added thing 18 and summary.
wy471x Jan 7, 2024
9a78a14
added thing 19.
wy471x Jan 7, 2024
9e84292
added thing 20 and summary.
wy471x Jan 7, 2024
4b277fe
added thing 21.
wy471x Jan 7, 2024
ffa105c
added thing 22 and update summary.
wy471x Jan 7, 2024
58e8f06
added thing 23 and update summary.
wy471x Jan 8, 2024
2054810
added thing 24 and update summary.
wy471x Jan 8, 2024
4ca334d
added thing 25 and update summary.
wy471x Jan 8, 2024
4e5c8a2
added thing 26 and update summary.
wy471x Jan 8, 2024
42d1612
update summary.
wy471x Jan 8, 2024
9d444f8
added thing 27 and update summary.
wy471x Jan 9, 2024
bad10ed
added thing 28 and update summary.
wy471x Jan 9, 2024
b48c982
added thing 29.
wy471x Jan 10, 2024
2ff5cfe
added thing 30 and update summary.
wy471x Jan 10, 2024
ab0247f
added thing 31.
wy471x Jan 10, 2024
5a896e4
added thing 32 and update summary.
wy471x Jan 10, 2024
7a429e4
update langs.
wy471x Jan 10, 2024
a8adfe6
added thing 33 and update summary.
wy471x Jan 11, 2024
532b43f
added thing 34 and update summary.
wy471x Jan 11, 2024
0e7f728
added thing 35 and update summary.
wy471x Jan 12, 2024
a753826
added thing 36 and update summary.
wy471x Jan 13, 2024
dad725b
added thing 37 and update summary.
wy471x Jan 13, 2024
9866a2e
added thing 38 and update summary.
wy471x Jan 13, 2024
6ad58e8
added thing 39 and update summary.
wy471x Jan 14, 2024
d3eab2f
added thing 40 and update summary.
wy471x Jan 14, 2024
fbab4d1
added thing 41 and update summary.
wy471x Jan 14, 2024
59a5a13
added thing 42 and update summary.
wy471x Jan 14, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
added thing 27 and update summary.
wy471x committed Jan 9, 2024
commit 9d444f8bc224761b9fcc870d60befb70fbf99c61
2 changes: 1 addition & 1 deletion cn/SUMMARY.md
Original file line number Diff line number Diff line change
@@ -28,7 +28,7 @@
24. [不要害怕打破事物](thing_24/README.md)
25. [不要在测试数据中搞怪](thing_25/README.md)
26. [不要忽略那个错误!](thing_26/README.md)
27. [Don't Just Learn the Language, Understand its Culture](thing_27/README.md)
27. [不仅学习语言,还要理解其文化](thing_27/README.md)
28. [Don't Nail Your Program into the Upright Position](thing_28/README.md)
29. [Don't Rely on "Magic Happens Here"](thing_29/README.md)
30. [Don't Repeat Yourself](thing_30/README.md)
13 changes: 13 additions & 0 deletions cn/thing_27/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
# 不仅学习语言,还要理解其文化

在高中时,我必须学习一门外语。当时我认为自己擅长英语,所以选择在三年的法语课上睡觉。几年后,我去突尼斯度假。阿拉伯语是那里的官方语言,作为法国的前殖民地,法语也被广泛使用。英语只在旅游区域使用。由于我对语言的无知,我发现自己局限在泳池边阅读詹姆斯·乔伊斯的《芬尼根的守灵夜》。乔伊斯对四十多种语言的巧妙融合让我感到惊讶,尽管这是一种令人筋疲力尽的体验。意识到外来词和短语如何交织在一起给作家带来了新的表达方式,这是我在编程生涯中一直保持的体验。

在他们的开创性著作《实用程序员》中,安迪·亨特和戴夫·托马斯鼓励我们每年学习一门新的编程语言。我一直尝试按照他们的建议生活,并在这些年里有过在许多语言中编程的经历。我从这些多语言冒险中得到的最重要的教训是,要学会一门语言,不仅需要掌握其语法,还需要理解其文化。你可以用任何语言编写Fortran,但要真正学会一门语言,你必须拥抱这门语言。如果你的C#代码是一个很长的Main方法,大部分是静态辅助方法,不要找借口,而是学习为什么类是有意义的。如果你很难理解函数式语言中使用的lambda表达式,不要回避,而是强迫自己使用它们。

一旦你掌握了一门新语言的基本知识,你会惊讶地发现自己开始以新的方式使用你已经掌握的语言。我从编写Ruby程序中有效地使用委托,发现了.NET泛型的全部潜力,这给我提供了一些想法,我可以如何使Java泛型更有用,而LINQ则让我轻松自学了Scala。

通过在不同的语言之间切换,你还将更好地理解设计模式。C程序员发现C#和Java已经使迭代器模式变得普遍。在Ruby和其他动态语言中,你可能仍然使用访问者模式,但你的实现看起来不像《设计模式》一书中的例子。

有人可能会认为《芬尼根的守灵夜》是难以理解的,而其他人则因其风格的美感而赞赏。为了让这本书更易读,提供了单语种翻译。具有讽刺意味的是,第一本单语种翻译是法语。代码在很多方面也是类似的。如果你用一点Python、一些Java和一丝Erlang编写"Wakese"代码,你的项目将一团糟。相反,如果你探索新的语言来扩展你的思维,并获得如何以不同方式解决问题的新想法,你会发现你在信任的旧语言中编写的代码因为你学过的每一门新语言而变得更加优美。

由Anders Norås撰写