概要
ライブラリの公式のドキュメントなど読むのにあると便利な英語の文法の話です。
意外とどの会社でも英語が苦手って人が結構いるので、基本の読み方みたいなものを。
「こうすれば早く読める!」類の話ではありません。言語は何度も繰り返して体に覚えこませることが大事です。
正確な文法用語を使ってはいないと思いますが、そこはゆるく見といてください。
例文引用元
文とは?
英語では、文章というのは「文」をつなげて作っています。英語に限らず話すための言語はなんでもそうですが。
じゃあ「文とは何か?」っていうところなんですが、英語では以下の5つの構造を持った語句の並びが「文」です(例外もあるでしょうが、話を簡単にするために断言します)。
ここで大事なのは、どの形にも __S・V (主語・動詞)__が必ず存在することです。
「これはOかCか?」みたいな細かい切り分けは、ドキュメントを読むときにはあまり必要ないんじゃないかと思います。
主語・動詞・補語(SVC)
The famous Hello World is trivial in Ruby.
{s} The famous Hello World
{v} is
{c} trivial
主語・動詞・目的語(SVO)
Docker unlocks the potential of your organization.
{s} Docker
{v} unlocks
{o} the potential
主語・動詞(SV)
主語・動詞・目的語・補語(SVOC)
主語・動詞・目的語・目的語(SVOO)
SV, SVOC, SVOO について例文を書かなかったのは見つけづらかったからです。SVC, SVO の形を知っておけば大体大丈夫なんじゃないかと。。
主語とか動詞って何?
「文」のなかでどういう役割を担っているかを表す言葉。文の要素のこと。
覚えておいてほしいこと
まず主語と動詞を探しましょう。英語の1つの文には1つの主語と1つの動詞しかありません。
その効率的な探し方を書いているようなものです。
その次に、「どんな言葉が主語・動詞になれるか」を知っておくと良いと思います。
この「どんな言葉」を表すのが、次に示す品詞です。
品詞について
主語とか動詞(とか目的語とか補語)になれる単語は決まっています。
ここで2種類の「動詞」という言葉が出てくるんですが、
- ↑にも書いてある「文の要素としての動詞」と
- 「単語がどういう形なのか(いわゆる品詞のこと)としての動詞」
を表す2つの意味で出てくるので紛らわしいですが気を付けてください。
主語 ... 名詞だけ
動詞 ... 動詞だけ
補語 ... 名詞と形容詞
目的語 ... 名詞
なんとなくはわかるんじゃないかと思います。
上の例文の一部で言うと「Ruby」「Docker」なんかは名詞。「unlock」は動詞。「trivial」は形容詞。
名詞にも動詞にもなれる、みたいな単語も普通にある
__program__とか。
Program is difficult. (program は名詞)
We program every day. (program は動詞)
形容詞は名詞を修飾する。副詞は 動詞・形容詞・副詞・文全体のどれかを修飾する
この段落で出てくる動詞とかの言葉は全部「品詞」のことです。お気を付けください。
いきなり「副詞」って言葉が出てきました。タイトルの通り副詞というのは「動詞・形容詞・副詞・文全体のどれかを修飾する」単語のことです。
文の構成要素ではない (つまり、副詞がなくても文法的な「文」としては成立している)んですが、だいたい出てくるので。
形容詞の例
Ruby is difficult language.
この文では「difficult」は形容詞で、名詞の「language」を修飾している。つまり「難しい言語」になる。
{s} Ruby
{v} is
{c} difficult language
副詞の例1
Ruby is very difficult language.
この文なら、「very」は副詞で、形容詞の「difficult」を修飾している、つまり「とても難しい」になるわけです。
{s} Ruby
{v} is
{c} difficult language(名詞)
上の文の構造の中に「very」がないことに注意してください。
副詞は文の構造の要素ではないからです。
副詞の例2
Program is very difficult.
副詞の例1とほぼ同じです。「very」は副詞で、形容詞の「difficult」を修飾している、つまり「とても難しい」になるわけです。
違いは「language」がないことです。形容詞はこの文みたいに何も修飾しないこともあります。
例1と比べて、文の構造のC(補語) の部分が形容詞になっているのがわかります。
{s} Program
{v} is
{c} difficult (形容詞)
名詞・形容詞・副詞は1単語じゃないときもある
名詞が1単語じゃないとき
Kubernetes provides a container-centric management environment
「management」「environment」はどちらも名詞ですが、2つ並べても大丈夫です。
この場合は「management」を「名詞の形容詞的用法」って言ったりもします。文法用語はともかく、そんなに違和感なく読めるんじゃないかと。
{s} Kubernetes
{v} provides
{o} environment (厳密に考えると SVOなの?ってなるかもしれないですが、文法のテストじゃないのでスルーしましょう)
副詞が1単語じゃないとき
In Ruby, everything is an object.
「In Ruby」全体として副詞となって、「everything is an object.」の文全体を修飾してます。
「Rubyでは、全てはオブジェクトです」となります。
{s} everything
{v} is
{c} object
形容詞が1単語じゃないとき
In many languages, numbers and other primitive types are not objects.
「In many languages」全体として副詞 (文全体を修飾)、「other」と「primitive」の2つが形容詞、「types」が前の2つの形容詞に修飾されている名詞です。
__「多くの言語では、数値や基本の型はオブジェクトではありません」__となります。
{s} numbers and (other primitive) types
{v} are
{o} object
in, on, for などが付いた名詞は形容詞か副詞になる
上の例でいうと 「In Ruby」とか「In many languages」です。
名詞は主語になれるのですが、inとかon (前置詞っていいます)が前についている名詞は主語じゃないです (そういう用法もありますが、メインで考えなくても大丈夫だと思います)。
うまい主語・動詞の見分け方
英語の文は主語によって動詞の形が変わります。
複数形だったら s が付く(be 動詞なら are になる)、というやつです。
例
上の例を再び出します。
In many languages, numbers and other primitive types are not objects.
この中で品詞として動詞になれるのは「are」だけです。ということは「主語は複数形だ」とわかります。
複数形になっている名詞は
- languages
- numbers
- types
の3つですが、「languages」は 「In many languages」と、in が付いているので副詞としてはたらくので除外。
じゃあnumbersとtypesどっちだよって思うんですが、今回は「types」か「numbers」どちらかだけを主語にすると、もう片方の「types」か「numbers」が完全に浮いてしまうので、「numbers and primitive types」が主語になります(primitiveは形容詞なので余計ですが、厳密な部分はおいといて。。。)
ちなみに「and」があると「直前の品詞と同じものが存在する」ことが多いです。
最初は慣れるまで時間がかかると思いますが、主語・動詞を見つけてあわてず一つ一つ見ていけばちゃんと文として読むことができます。
でも時間かかります。。。
google翻訳読みやすくていいと思います。技術文章だとそんなに変な訳にもならないですし。
英語の勉強することが仕事ではないので、翻訳が変だからちゃんと読もう、となったときにでも思い出してみてください。