【脱初心者】公式ドキュメントを読めるようになろう

# はじめに
プログラミングの世界に足を踏み入れたばかりの頃、多くの初心者が頼りにするのが、teratailやStack Overflowといった質問サイトです。
これらのサイトは、困ったときに役立つ素晴らしいリソースであり、特定の問題に対する即効性のある解決策を提供してくれることが多いです。
しかし、同時に、初心者が公式ドキュメントを避ける原因にもなっています。
公式ドキュメントは、分量が多く、難解なことが多く、特に英語が苦手な日本人にとっては敷居が高いと感じられることが多いでしょう。

しかし、公式ドキュメントを読まないままでは、プログラミングのスキルが伸び悩む原因となり得ます。
質問サイトで得られる解決策は、時には古くなっていたり、あなたのプロジェクトにとって最善の方法ではないかもしれません。
一方で、公式ドキュメントは最新の情報に基づいており、基本的にはその技術に関するベストプラクティスが反映されています。
これを活用しない手はありません。

# 初心者が公式ドキュメントを読まない理由
## 分量の多さと難解さ
公式ドキュメントが敬遠される主な理由の一つは、その分量の多さと難解さです。
たとえば、新しいフレームワークやライブラリを使おうとする際、公式ドキュメントを開くと、数百ページに及ぶ内容が目に飛び込んできます。
これだけの量を目の当たりにすると、「どこから手をつければいいのかわからない」と感じてしまうのも無理はありません。
また、ドキュメントはしばしば専門用語や技術的な概念を前提として記述されているため、初心者にとっては理解が難しい部分も多く含まれています。

## 英語の壁
もう一つの大きなハードルは、言語の問題です。
多くの公式ドキュメントは英語で書かれており、日本語に翻訳されたものは限られています。
英語が得意でないと、読み進めるだけでも一苦労です。
そのため、初心者が公式ドキュメントを読むことを避け、より理解しやすい日本語の解説記事や質問サイトに頼る傾向が強くなるのです。

# 公式ドキュメントを読むメリット
しかし、公式ドキュメントを避け続けることは、あなたの成長にとって大きな損失です。
質問サイトでの解決策は、たしかに便利ですが、それが常に最新かつ最適である保証はありません。
公式ドキュメントには、常に最新の情報が反映されており、その技術を開発した人々が推奨する方法が記載されています。
これを活用しない手はありません。

公式ドキュメントを読むことで得られるメリットは以下の通りです。

## 最新の情報を得られる
公式ドキュメントは、その技術が更新されるたびに改訂されることが多いため、常に最新の情報を得ることができます。
質問サイトや解説記事では、情報が古くなっている可能性があり、そのまま実行するとエラーが発生したり、非推奨の方法を使用しているかもしれません。
公式ドキュメントを参照することで、そのようなリスクを回避できます。

## ベストプラクティスを学べる
公式ドキュメントは、技術を開発した人々が推奨するベストプラクティスを学ぶことができる場です。
これにより、単に動作するコードを書くのではなく、効率的で保守性の高いコードを書くための方法を身につけることができます。

## 幅広い知識を得られる
質問サイトでは、特定の問題に対する解決策が提供されることが多いですが、公式ドキュメントを読むことで、その技術全体の理解が深まります。
これにより、新しい機能やオプションを発見したり、より良いアプローチを見つけることができます。

# 公式ドキュメントを読むためのコツ
公式ドキュメントを読むことは難しく感じるかもしれませんが、いくつかのコツを押さえておけば、スムーズに読み進めることができます。

## 英語に対する抵抗感をなくす
まず最初に取り組むべきは、英語に対する抵抗感をなくすことです。
技術ドキュメントは、通常の英語の文章よりも専門用語が多く、文法的にもシンプルな構造が多いです。
そのため、日常会話の英語よりも理解しやすい場合が多いです。
わからない単語が出てきたら、その都度調べながら読むことで、少しずつ慣れていくことができます。
公式ドキュメントを読む際に、初心者がよく出くわす単語の例を上げておきます。

<dl>
<dt>Deprecation</dt>
<dd>この単語は、「非推奨」という意味です。<br>
ソフトウェアやAPIの機能が古くなり、将来的に削除される可能性があることを示します。<br>
公式ドキュメントで「This method is deprecated」と書かれている場合、そのメソッドは今後使用しない方が良いことを意味しています。<dd>

<dt>Inheritance</dt>
<dd>
継承は、オブジェクト指向プログラミングの概念で、あるクラスが他のクラスの特性や機能を引き継ぐことを指します。<br>
公式ドキュメントでは、「このクラスは他のクラスから継承しています」といった形で、オブジェクトの構造や機能の再利用に関する説明で使われます。<br>
特にJavaやC#などのオブジェクト指向言語に関するドキュメントでよく見かけます。
<dd>

<dt>Throttling（スロットリング）</dt>
<dd>
Throttlingは、「制限」や「速度制限」を指します。<br>
APIリクエストや処理の頻度を制限することで、システムの負荷を軽減するためのメカニズムです。<br>
公式ドキュメントでは、「リクエストが一定の限度を超えた場合、スロットリングが発生します」といった形で説明されます。
<dd>
</dl>

## 日本語訳を活用する
英語で読むことが難しい場合は、日本語に訳して読むことも一つの方法です。
公式ドキュメントの中には、日本語訳が提供されているものもありますが、そうでない場合は、翻訳ツールを使って部分的に訳してみると良いでしょう。
ただし、翻訳には誤りが含まれることもあるため、可能であれば原文と照らし合わせながら読むことをお勧めします。

## ドキュメントの構成を理解する
公式ドキュメントには、基本的な構成があります。
たとえば、APIリファレンスやチュートリアル、ガイドラインなど、ドキュメントの種類ごとに目的が異なります。
最初にドキュメントの目次や概要を確認し、自分が何を知りたいのかに応じて、適切な部分を選んで読むことが重要です。
たとえば、使い方を知りたいのであればチュートリアルやクイックスタートガイド、詳細な仕様を確認したいのであればAPIリファレンスを参照する、といった具合です。

## 必要な部分に絞って読む
公式ドキュメントは膨大な量がありますが、すべてを一度に読む必要はありません。
まずは、現在取り組んでいる課題やプロジェクトに関連する部分だけを読んでみましょう。
たとえば、特定の関数やメソッドの使い方がわからない場合、その部分だけをドキュメントで確認するというアプローチが有効です。

## サンプルコードを活用する
公式ドキュメントには、しばしばサンプルコードが含まれています。
このサンプルコードを動かしながら、実際に手を動かして確認することで、理解が深まります。
サンプルコードを実際に動かしてみると、「このコードがどのように動作するのか」「どのような結果が得られるのか」が具体的にイメージしやすくなり、抽象的な概念が具体的に理解できるようになります。



# まとめ
プログラミング初心者が公式ドキュメントを読むことに対して感じる抵抗は、多くの場合、分量の多さや英語の壁から来ています。
しかし、公式ドキュメントは、最新の情報を得るため、ベストプラクティスを学ぶため、そして幅広い知識を身につけるための最良のリソースです。

英語に対する抵抗感を減らし、必要な部分に絞って読む、サンプルコードを活用するなどのコツを押さえれば、公式ドキュメントを効果的に活用することができます。
質問サイトに頼るだけでなく、公式ドキュメントを積極的に読むことで、プログラミングスキルをさらに高め、脱初心者を目指しましょう。

# 余談
この度ポートフォリオとなるサービスを開発しました🎉
サービス名は「[**PowerPointChecker**](https://lp.powerpoint-checker.com/)」です！
チームでパワーポイント資料を作成するとき
* 資料の内容よりまず見た目が気になる
* 見た目の指摘を受けていつまでも完成しない
* 作成ルールを守れていない資料が提出される
* 作成ルールがわからない

このようなお悩みを解決するサービスが「[**PowerPointChecker**](https://lp.powerpoint-checker.com/)」です！


しかしこの記事公開時点ではα版リリースで、設定できるルールも少なければバグも多々あるかと思います。
すべて無料でご使用いただけますので、是非利用いただきまして様々なご意見をいただきたいです。
ユーザー数の増加が開発の励みになります。