この記事は
https://learnblockchain.cnを元に編集したものです。
翻訳者のTwitter Account:taro03293
##前書き
ブロックチェーン(以下BC)は今後1~3年以内に急速に発展し、近い将来、BC技術関連の需要は急速に増えるでしょう。
特にプログラマーの方は、このチャンスを必ずつかむべきです。
BCに関連する技術、知識は多岐にわたり、多くの開発者は、BC関連の資料を見た後にわかったような、わからなかったような感覚を頂くと思います。
特にBC開発をしたい方が一番多く抱く疑問は、BC技術をどのように体系的に勉強するか、ということではないでしょうか。
ここでは、BC技術を何章かにわけて説明します。私の説明が、皆さまのBC技術を理解する助けになればとてもうれしいです。
##ジャンルを定める
BC技術の開発業務に携わる、といっても、様々なジャンルがあります。
例:BCアプリケーション開発者、BCシステム構築者、BC技術のコア核心部の開発者、BCの数学研究者、などなど
ジャンルが違えば、勉強する方法も異なります。
もしあなたがBCアプリケーション開発をしたいと考えているなら
・次のプログラミング言語のいずれかを理解していること(nodejs, Go, Python, C++ など)
・BC技術の原理を理解していること(奥深いレベルまで理解する必要はありません)
・アプリ開発経験は必須ではないですが、あるに越したことはないでしょう。
が必要です。
また、どんなジャンルにも関わらず時間をかけてしっかり勉強し、実際に自分でコードを書いて実践することが大切です。
BC技術は多岐に渡るため、それぞれの技術について概念を知り、そして一歩踏み込んだ原理を理解する必要があります。
あなたがBC技術の概念を理解している間、頭の中に沢山の疑問が浮かぶでしょう。
例えばBitcoinの概念でよく見かける説明の一つに
“Bitcoinの認証方式は、仕事量の証明(POW)によって実現される。”
とありますが、
**“POWとは?”**という疑問が生まれるでしょう。
POWとは、仮想通貨の取引が正しいかを検証する手続き(コンセンサスアルゴリズム)の一種ですが(よくわからなくても大丈夫です。簡単にいうと、張さんがテストを受けて100点を取った時、張さんがよく勉強したということを確認する方法のことです。)、
上記から “Bitcoinはどのように手続きを検証をしているのでしょうか?” という新たな疑問が浮かぶかもしれません。(この疑問を解決するには、BCの暗号理論とHashを勉強する必要があります。)
BCを一歩踏み込んだレベルまで理解するためにはGoogleをよく使って、時には英語文献から答えを見つける必要があります。
もし既に概念や原理を理解したと思えるなら、実際にコードを書いてみましょう。
例えばマイニングについて理解したなら、マイニングのためのコードを書いてマイニングの過程を理解しても良いでしょう。
学習とは一つの長い旅のようなものです。残念ながら、そこには近道はありません。
本を沢山読み、コードを読み、コードを書く
これが最も早く、簡単にBC技術を使いこなすための方法です。
2に続く