这是一本适用于高级程序员的日语语法速成书。
这本书假设你基本上没有日语基础,刚刚知道什么是五十音,甚至五十音都还没有背全。如果你有N5或者N4程度的水平,也算作基本上没有日语基础这一类,因为N5和N4讲过的语法通常来说很少。
这本书非常短,因为速成书就应该短。
自顶而下学习法
我还没有见过自顶而下的日语教材,所有教材都是自底而上的。
自底而上的优点是在早期比较便于理解,因为一开始给你的东西你可以看懂;但缺点是你根本不知道你到底学到哪了,以及一个知识点的定位和作用是什么。
与之相反的是本书的自顶而下学习法,自顶而下学习法从抽象到具体,有助于厘清所有知识点的定位,并且了解自己的学习进度。
相对地,自顶而下学习法在早期难度梯度很高,你会看到大量陌生的名词,而且知识点非常抽象。
这种学习方法的难度类似开发中的依赖倒置,在早期抽象阶段有相当高的理解难度,但随着不断具体,难度逐渐降低。如果你是高级程序员,我相信你已经习惯了这种先抽象后具体,并且通常来说能做出成熟的抽象。
在使用本书学习的过程中,你的大脑会不断创建一些函数,然后随着学习越来越多的内容,让函数内联从而提高性能。自底而上学习法往往没有这个自动内联的过程,所以需要额外时间来提高熟练度,花费时间更长。
如果你不知道什么是依赖倒置、调用栈、内联函数,我想你不适合看这本书。
背景知识要求
我假设你是一位高级程序员,即,要求你
- 熟练掌握至少 1 门编程语言。(不包含 Markdown, HTML, CSS 这种)
- 具有丰富的开发经验。
- 能在 1 分钟内想出任意一道 Leetcode Medium 难度的题目的大致解法。
- 有 Dependency Type Theory (中文大概叫「依值类型论」)基础。
- 至少能熟练使用 1 门语言(通常来说是母语)进行表达。
- 会用且默认使用谷歌(或者 Bing、Duckduckgo)这些互联网搜索引擎。非互联网(如百度所在的中国大陆局域网)的搜索引擎和 AI(例如 Copilot)不在此列。
为什么会有这本书
语言学习是过河拆桥的过程,擅长日语的人并不会去写这本书。
写这本书是实践了费曼学习法,费曼学习法有助于提高记忆效率,并且记下来什么有助于在未来可能遗忘的时候快速复习。
由于写这本书的时候我自己也基本上什么都不会,如果有讲错的,很正常,请提PR改正。
参考资料
我使用日日词典而非日中词典。词典推荐的有weblio。
ChatGPT-4o在中文表现不佳,如果你只会用中文,建议使用Claude Opus.
参考教材:
- 新编日语(重排本),上海外语教育出版社,周平、陈小芬
- 新版中日交流标准日本语 第二版
《新编日语》是我主要使用的教材,原因是专业性比较强,常被用作日语科班教材,这代表更容易弄清楚到底是怎么回事。新标日主要用于对照检验以及进度确认。有很多人使用《大家的日语》作为教材,我认为这本书过于缓慢了,不适合速通选手。
参考博客:
关于我一年不到速通N1这件事——基于啃生肉galgame的日语学习攻略
我不提供学习方法建议,适合每个人的学习方法不同。另外,我并没有使用参考博客中提到的方案,原因是太慢了,适合想悠闲学日语的人,不适合速通选手。
关于Anki
有很多人把Anki吹得神乎其神,我认为他们是在背死书。
Anki并不能让你神奇地记下来一大堆东西,你的记忆力主要取决于你的先天能力以及记忆时的大脑状态。
假设你用Anki并使用FSRS算法(截至本文写作时,FSRS是Anki中提供的最先进的算法),Anki做的事情是:
- 假设你的遗忘曲线是某个函数。
- 根据你的记忆情况,估计那个函数的参数。
- 得到完整参数后,预测你会在什么时候遗忘。
- 在你即将遗忘的时候提醒你。
显而易见的是,这里并没有什么记忆上的优化,它只是让你不会彻底忘掉。因此,在理解原理之前,使用Anki很容易会掉入效率陷阱,还容易让人因为枯燥而开始假努力。
建议的Anki用法是:
- 自己制卡。例如,在阅读本书时,讲读过的需要记下来的东西抄写到卡片上。
- 只记重要的东西。例如,你应该记动词的各种活用都是什么意思,而不应该记这一段使用指南。
- 长时间坚持使用。做到上面两点之后,你大概率也能做到坚持使用。
不正确的用法是:
- 用「N5词汇大全」这种别人做好的卡片合集。他妈的N5真的需要背那么多吗,我怎么裸考都过了。
- 什么都记下来。先看完本书再开始积累词汇量,不要把什么「ます」「です」都单独拿出来记一张卡。
- 对自己的手机和电脑撒谎。不会就是不会,没什么丢人的,毕竟只有Anki知道你实际上没记下来,没有人知道。