プログラミング上達の近道は写経!やり方とおすすめサイトの紹介

プログラミング学習するなら写経がいいと聞くけど効果あるのかな…

やりかたわかんないし、効率的な方法が知りたい

プログラミング学習について検索していると「写経をするのがオススメ」というような内容を良く目にしますよね。しかし、実際にやってみようと思っても、上記のような疑問を持つ方が多いと思います。

そこでこの記事では、プログラミングにおける写経の効果と、学習教材とともにオススメの教材を紹介します。

この記事を読むことで、プログラミングの写経の仕方から学習教材がわかるので、読み終わったらすぐに写経を始められます。3分程度で読める記事なので、コツを知ってプログラミング学習を効率的に進めましょう!

プログラミングにおける写経とは?

プログラミングにおける写経とは、教材などのサンプルのコードを読みながらテキストエディターに書き写すことを指します。漢字や外国語の単語をノートに書いて覚えていたように、ソースコードを書き写しながらプログラミングを学習するのです。

写経は外国語学習などと同じくプログラミングでも効果が高く、多くの人が実践している学習方法です。ちなみに僕も最近プログラミング学習をしていますが、写経の効果を実感しています

プログラミング学習で写経をする効果

プログラミング学習で写経を行う効果は、主に3つあります。

  • 基礎文法の理解
  • 言語ごとのコード構成理解
  • プログラミングで動くものを作ったという自信

これらの効果について順に紹介していきます。

基礎文法の理解

プログラミングには、言語ごとに文法構文が決まっています。例えば、コードの最後には「()」、文字列には「’’」が必要になり、少し間違えるとエラーの元になってしまうのです。

中学や高校の英語学習で感じた方も多いと思いますが、文法を覚えるのって大変でしたよね……。しかし、写経を繰り返し実施することで、決まりが体に染み付いて、簡単に覚えることができます

分からないところは、気にぜずに進めてみるのがポイントです。

言語ごとのコードの構成理解

基礎文法と似ているところもありますが、言語ごとの構成や特徴についても理解が進みます。PHPであれば「 <?php 」と「 ?> 」の中にコードを書く必要があったり、HTMLであればheadの中にmetaタグが必要などの、言語固有の特徴です。

強く意識する必要はないですが、言語固有の決まりを少し気にしながら写経してみましょう。

プログラミングでものを動かせたという自信が手に入る

プログラミングの写経を通じて得られるものとして、一番と言ってもいいほどの効果は、ソースコードを書いて実際に動くものを作れるという体験です。

初期の学習段階では、動くものの制作イメージが持ちにくかったりしますが、写経をすることで動くものを作れて、作成のイメージを持つことができます。また、実際に動くものを作ることで、なんだかプログラミングできそうだなという自信も手に入れることもできます。

僕はRubyとRuby on Railsを学習していますが、何も知識がない状態でとりあえず教材の写経から始めました。始める前まではプログラミングに苦手意識がありましたが、苦手意識は軽減し、その後の学習の理解が早いという効果も得られました。

写経のやり方

写経のやり方

ここでは写経のやり方を2つご紹介します。

  • サンプルコードを写経しよう
  • 理解できるまで復習しよう

それぞれ詳しく見ていきましょう。

サンプルコードを写経しよう

写経のやり方の一つめは、サンプルコードを実際に書くことです。サンプルコードは参考書やネットを探せば、いくらでも見つかります。

写経と言っても、サンプルコードを書き写すだけの作業のため、簡単だと思う方も多いでしょう。しかし、ただ書き写すだけでも括弧の種類が違っていたり、インデントのずれによってプログラムが正常に起動しなくなることもあり、正確に書き写すのも簡単なことではありません

プログラミングを上達させたいならば、ひたすらにコードを書くのが1番です。英語でも最初は単語、文法とひたすら書き写すことで理解しますよね。それとプログラミングも一緒です。

ここでは写経のやり方について以下の4点について解説します。

とりあえず書いてみる

写経行う上での1番重要なことは、「とりあえずやってみるか」と考えてキーボードに手が伸び、コードを書いてみることです。

読者の皆さんはこれまで何かやろうと思い、手を出そうとして以下のようになったことはありませんか。

  • やろうと思ったが先延ばし
  • 手を出してみたが難しそうでやっぱり辞める

新しい事に手を出すときに起こることあるあるです。プログラミングの写経でも同じようなことが発生します。

  • サンプルコードを探すのが面倒くさい
  • サンプルコードが長くて嫌になる

これではプログラミングの上達など夢のまた夢です。プログラミングの写経をやると思ったら即行動しましょう。

  • 思い立ったが吉日、サンプルコードをすぐ探す
  • このコードを写経してみようと思ったら、とりあえずやってみる

「面倒くさそう」、「やる気がでない」と感じても、とにかく手を出してみます。書き始めると以外と時間を忘れて書き続けるので、最初は行数が長いと感じても案外速く終わります。

重要なのは「とりあえずやってみるか」という気持ちです。

暗記はしない

プログラミングの初心者で、かつ写経を始める多くの人がしがちなことは、サンプルコードを暗記しようとすることです。受験勉強のクセが抜けていない方が多いのか、よく目にします。

はっきり申し上げますと、プログラミングにおいてコードまるごと暗記は邪道です。なぜなら同じような機能であっても、プログラミングをする人によってコードの書き方は千差万別で、A、Bそれぞれが書いたコードはどちらが正解か、なんてことは無いからです。

後程詳しく説明しますが、プログラミング写経で学習して欲しいのは、

  • 書いたコードが動くこと
  • 文法の意味を考えること
  • コードの構成を理解すること

です。つまりアプリケーションやシステムを写経する目的は、「このようなコードを書くことで動くのか!、そうだ少しいじって私なりのプログラミングコードを書いてみよう」と、自分自身でオリジナルコードを書けるようになることです。

またプログラミングの世界は、分からなかったらインターネットで調べるというのが常識です。分からないことも何回か使っていれば覚えるでしょ、という感じです。

ですので写経するときも、このような気持ちで取り組むのがベストです。

文法の意味を考えながら書く

これは写経を1回行った後に行って欲しいことですが、写経したコードを調べ、

  • どのような文法が使用されているか
  • 書かれている文法はコード内でどのような役割か

を考えてください。

プログラミングコードと言っても、その中には条件式、繰り返し文、論理式など多数の文法があります。例えば、数行書かれているコード文を観察して、この文法はこのような動きをしているのではないかと自分なりに考えることが大事です。

もし知り合いにプログラミングに詳しい知り合いや、スクールに通っている場合は講師に自分の考えを聞いてもらってください。当たっていれば、あなたのプログラミングスキルは確実に上達しています。

もし周囲にプログラミングに詳しい人がいない場合は、以下のようなプログラミング質問サイトで確認すると良いでしょう。

悩める初心者の味方!プログラミング質問サイト厳選5選

同じコードは3回まで

プログラミングの写経で、サンプルコードを決定した後、そのサンプルコードは3回繰り返して写経を行います。

まず1回目は書くことで精いっぱいなため、中身の文法の意味や、コードの構成を考える余裕がないためです。一方で3回以降、4回、5回と繰り返して同じサンプルコードを写経するのもNGです。

なぜなら人間は無意識の内に内容を覚えてしまうからです。読書をしていても3回以上読むと次のページに何が書かれているか、なんとなく覚えているのと同じことです。

プログラミングの写経でこうなると、次に書かれているコードがなんとなく分かるので、書かれているコードに対して文法の意味など考えず、ただキーボードを打つだけになるので、プログラミング上達にはつながりません。

そのため、同じサンプルコードのプログラミング写経は3回までとします。なぜ3回かは以下の項目で説明します。

プログラミング写経で大事なのは、自分自身でオリジナルコードを書けるようになるため、書いたコードの動きや文法、コードの構成を理解することであると頭の片隅に覚えておいてください。

理解できるまで復習しよう

前項でプログラミング写経で重要なのは、コードを書きながらコードの文法や意味を理解することだと解説しました。

写経をしていれば分からない文法が頻出します。そのような文法は逐一調べ、理解できるようにしておきましょう。

サンプルコードの内容を理解できるようになるには、3回繰り返して写経をする必要があります。では1回の写経で何を学習していくのか、以下で解説していきます。

8割ほどコードが理解できるようになれば、そのプログラミングコードがなぜ動くのか分かった状態といえるでしょうから、そのレベルまで理解できるよう復習しましょう。

1回目は動くことを確認する

写経1回目は、サンプルコードを参考にしながら手を動かして書いてみることに集中します。なぜなら、そのコードが本当に動くのか、どのように動くのか、実際のところ分かっていないからです。

完成したプログラミングコードがどう動くか分からない状態で写経しながら、文法やコードの構造の意味を考えようとしても、「こんな動きをするのかな、どうだろう?」と気になって、写経の手が止まってしまいます。

まずは写経を完了させて動きを確認します。その後なぜこのような動作をしたのか文法の確認という学習に移るのがベストです。

2回目は文法を理解する

2回目は同じサンプルコードを再度写経していきます。しかし1回目のようにただ書いていくという作業のようなことはしません。

数行書くごとにこの文法の意味は何なのか、1回目で確認したどの動作部分に繋がるのか考えながら書いていきます。

どのような文法が書かれているか確認の仕方としては、

  • まず自分が学習した内容を思い出しながら考える
  • 5分経っても分からないなら調べる

です。5分という時間はそれ以上考えても答えは出てこないからです。それ以上、「う~ん」と悩むよりはネット検索なり、知っている人に聞くなりしたほうが効率的だからです。

また、どうしても分からない場合は飛ばして写経を続けても構いません。写経を進めながら文法の意味を理解していくと、「さっき分からなかった文法はこういうことだったんじゃないのか」とひらめく場合もあります。

3回目はコードの構成を理解する

動作も分かり、文法の意味も理化したらなら、最後の3回目はコード全体の構成を理解することです。ではコードの構成を理解するとはどういうことでしょうか。

例えば、繰り返し文が数行にわたって書かれており、その後に条件分岐の文が書かれているサンプルコードがあったとします。ここで考えるのは、

  • なぜ繰り返し文の後に、条件分岐の文はあるのだろうか
  • 2つを入れ替えてコードを書いてはだめなのか
  • もし入れ替えたら動作するのか

です。写経しながら、このように書くから動作するんだと自分の答えを出しておき、全部コードを書いてから入れ替えてみて動作するか確認してみます。

動作せずエラーが出たら、入れ替える前の順序になにかしらの意味があるので、どのような意味があるのか考えます。このような学習をすることで、プログラミングの書き方というものがだんだんと分かってきます。

写経時のワンポイントアドバイス

上記でプログラミング写経のやり方について説明してきました。ここでは写経によるプログラミング学習の効果をさらに高める方法について3点アドバイスを送ります。

自身でオリジナルコードを書くときに必ず役に立ちますので、ぜひ参考にしてください。

どのような役割の文法かコメントしておく

写経2回目の文法の意味を理解する段階で、コード全体においてその文法がどのような役割をしているのかコメントを残しておくとよいです。

例えば、ある条件分岐の文がWebサイトの本人確認画面の機能の役割を果たしているなら、


if (~){
 ・・・・・・・  //本人確認画面において本人かどうかをif文で判定している//


※条件分岐の文、コメントの書き方はプログラミング言語ごとに異なるので注意してください。

のようにコードの近くに役割を書いておきます。

こうすると写経後にコード全体を見返したときに、どのような文法なのか確認しやすくなります。また自身でオリジナルコードを書くとき、何か応用できる文法はないかなと探しやすくなります。

使えると思ったコードはメモする

写経をしているときに、「このコードは将来自分でオリジナルコードを書くときに使えるかも」と思ったら、そのコードがメモしておきましょう。使ってみようと思ったタイミングですぐに応用できます。

メモをすると言っても紙にペンで記入するなどは止めてください。コードをコピー&ペーストして、PCのメモ帳やWord、Excel(GoogleドキュメントなどでもO.K.)などにメモしておき、必要になったらすぐ取り出せるようにしておくのがベストです。

エラーメッセージを理解する

写経をしていると必ずエラーが出てきます。ただサンプルコードを写しているだけですが、長ければ数千行以上もあるのでミスは出てきます。

この発生したエラーメッセージは何なのか理解し、どのように対処すればよいか調査することが重要です。なぜなら将来自身でオリジナルコード書くとき、エラー発生はつきものだからです。

このとき発生したエラーの内容と対処方法を知っているどうかで大きな差が生まれます。もしエラー内容を理解していないと、どうしていいか分からず時間だけ過ぎていきます。これでは効率的ではありません。

ですので写経時にエラー発生内容と対処方法を理解しておきましょう。何回か対応していると、「ああここが間違っているのか」と余裕を持って対応ができます。

写経のサンプルコードには動画教材がおすすめ

写経をやる場合、動画を使うか、参考書を使うかの2つの方法があります。しかし、参考書を使うよりも動画を使って学習する方がオススメです。

動画の場合、実際の操作画面を見ながらできるので、あまり理解できなかったところも画面のとおり実施すれば問題なく動き、スムーズに学習が進みます。参考書の場合だと理解しにくいところがあったり、間違えてエラーがでたときに解決するのに時間がかかるので、あまりオススメしません。

そこでここでは、オススメの動画サイトをご紹介します。写経をするときは動画を見ながら写経をしましょう。

Udemy

Udemyは動画で学習できる、オンライン学習プラットフォームです。特定の分野に詳しい人が動画を作成し、販売しているサイトです。

プログラミングに関する講座が未経験者向けから上級者向けに数多く揃えられているのが特徴。定期的に割引キャンペーンが実施されていて、本を買える値段で本格的な講座を見られるので、初学者にオススメです。

» Udemyの公式サイトはこちら

YouTube

動画:Python Tutorial for Absolute Beginners #1 - What Are Variables? https://www.youtube.com/watch?v=Z1Yd7upQsXY&feature=emb_title

あまり使っている人は少ないですが、実はYouTubeにも多くの学習動画があります。例えば、実際にWebページやアプリケーションなどを作るチュートリアル動画など。

Udemyほど体系的ではないものの、質の高い動画が数多く上がっていますので、利用してみるといいでしょう。YouTubeだと無料でできるので経済的にも助かりますね。

「HTML CSS チュートリアル」など「言語 + チュートリアル」で検索すると関連動画がでてきますので、一度眺めてみてください。

ドットインストール

ドットインストールは、3分のスキマ時間でも学習できる動画コンテンツが揃った学習サイトです。言語や技術毎にカリキュラムが分かれており、415レッスンを6,153本という豊富な動画が用意されています。

無料で学習できる動画も多いので、誰でも学べるのがポイントです。

動画の解説に合わせて自分で写経を進められるため、非常に良いコンテンツといえるでしょう。ただ初学者にとっては解説スピードが早いので、ある程度の知識を備えた状態で実施することをオススメします。

写経は目的意識を持ち望むこと

プログラミング写経は、コードを書くことに慣れ、文法やコードの構成を理解することが主目的です。ただ始める前に、「なぜ写経を行うのか」「写経後にどのようになっているか」を学ぶという、目的意識を持って望むことが大事です。

例えば、ショッピングサイトを作りたいと考えているなら、

  • 目的:写経後にオリジナルのショッピングサイトを制作する
  • 習得スキル:会員登録機能、ログイン機能、商品画像表示、カート機能、決済機能

というように決めてから、その目的を達成できる写経用のサンプルコードを探します。そして写経完了後に目的を達成できるスキルは習得できたかチェックをします。

もし達成できたらなら自身の目的にチャレンジしましょう。足りないスキルがあるならば別の写経に挑戦します。この繰り返しによりあなたのプログラミング能力は各段に上がり、武器となります。

写経だけでは成長できない

写経はプログラミングスキルを向上させるには必要な行動ですが、写経だけでは成長が見込めません。写経はサンプルコードを自分の手で入力していく作業です。そのため自分の頭で考えずとも、手だけ動かしていれば写経はできてしまいます。

しかしプログラミングスキルで一番重要なことは、コードを書き写す能力ではありません。プログラミングコードを使ってサービスを作り、実務をこなすことです。

英語でも英語の文章をひたすら書き写しても成長できず、実際に写経で学んだ文法や単語を利用し会話することで、英語力の飛躍的な向上に繋がりますよね。

写経だけでは成長できないことを頭の片隅に入れてから、始めてください。

プログラミングの理解を深めるためには?

先程、写経だけでは成長できず、実際にコードを自分で使えるようになることが重要だと述べました。では写経をする以上にプログラミングの理解を深めるには、どうしたら良いのでしょうか?

ここではプログラミングの理解を深めるために必要な、3つのことをご紹介します。

  • 写経したものを改造してみる
  • サンプルアプリを作ってみる
  • オリジナルアプリを開発してみる

それぞれ説明するので、参考にしてください。

写経したものを改造してみる

写経を改造し、独自の機能を追加しましょう。サンプルコードに足りないポイントや、改善ポイントを自分で考え抜き、改造してみることでプログラミングの理解を深めます。

HTML/CSSの学習の場合は文字色を変えてみたり、デザイン要素の位置を変更したりとアレンジを取り入れてみましょう。気になったサイトの動きを再現してみるのもオススメです。

どのような改造を施せば良いのか、またその改造を実現するにはどのようなコードをどこに記述する必要があるのかなど、改造一つ取っても考えることは多岐に渡ります。自分で写経を改造してみるという一歩が、プログラミングの理解を大幅に深めてくれるでしょう。

サンプルアプリを作ってみる

サンプルアプリを作りましょう。参考とするアプリを真似して作ってみることで、アプリ開発に必要な知識を体系的に学べます。

「オリジナルアプリを作りたいんだ」と意気込んでいる方もいると思いますが、オリジナルアプリを一から制作するのは非常に難しいことです。何から手をつけて良いか分からない方もいると思いますので、まずはサンプルアプリの制作から手がけ、アプリ制作に必要な基本知識を身に付けることから始めましょう。

オリジナルアプリを開発してみる

オリジナルアプリを開発しましょう。オリジナルアプリの開発は、今までご紹介してきた方法の中ではハードルが高く、今まで培ってきた知識を応用する必要があります。

一つの処理をさせるにも様々な方法があり、一つのプログラミングを組む中でも、そこから一番最適な方法を選ぶことが重要になるので、最適化能力やアプリ設計をする力が身に付いたりします。他にも実際に自分でオリジナルアプリを開発することで、かなりの自信が身に付きますし、決して写経をするだけでは得られない経験、スキルを習得できます。

またオリジナルアプリを開発することで、企業にもアピールできるので、転職や案件獲得で役立ちます。ぜひオリジナルアプリの開発に挑戦してみてください。

まとめ

この記事では、プログラミングスキルを上達させる写経についてご紹介しました。写経をすることで、得られるメリットは大きいですし、プログラミングスキルの向上には欠かせない学習方法です。

しかし、写経だけでは成長できないというのも事実です。写経をある程度終えたら、写経の改造やオリジナルアプリの開発に注力して、転職や案件獲得に向けて動き出しましょう。

この記事が少しでもあなたの新たな一歩を踏み出すキッカケになれば幸いです。

あなたの目的に合わせた
SAMURAI ENGINEERの運営サービス

SAMURAI ENGINEER Pro

未経験でも挫折しないプログラミングスクール

詳細はこちら

SAMURAI ENGINEER Plus

日本最大級のサブスク型オンラインITスクール

詳細はこちら

SAMURAI ENGINEER Freelance

「一人で稼げる」スキルを身につける

詳細はこちら