スキル向上のためにプログラミングスキルチェックサービスを活用しよう!
paizaのようなプログラミングスキルチェックサービスを
効果的にスキル向上へつなげるために、私が実践している方法を紹介します。
メリット
作りたいものが無くてもコードを書くきっかけになる
プログラミング上達の近道は何といっても手を動かすこと!
その過程でいろんなことを調べたりしてスキルアップしていきます。
しかし、これといって作りたいものが思い浮かばなかったり、
作りたいものを一通り作り終えてしまったりして、
なかなか次にステップに行けないこともあるかと思います。
そんな時にスキルチェックサービスを利用することで、
仕様に従って動作するプログラムを書く練習をすることができます。
中には不思議な仕様の問題もありますが、アルゴリズムの勉強や、言語の標準ライブラリの勉強にもなったりします。
テストケースの見落としが減る
自信を持って提出したコードが全然ダメダメな時が結構あったりします。
個人的な感覚ですが、ここに普段から見落としがちなテストケースが顕在化していると感じます。
間違えた時はしっかりと原因を探って、自分の中のテストケース生成のパターンとして
覚えることでより適切なテストケースを作れるようになっていけます。
リファクタリングや優れたコードを書くための実践ができる
リファクタリングやいいコードを書くコツは本を読むだけでなく実際に自分で書いたり、適用してみないと身につきません。
課題で書いたコードは制限時間内クリアを目指して急いで書いたのでいろいろとアレなコードになっていることが多いので
リファクタリング実践の絶好の機会です。
バシバシ自分のコードを改善していきましょう。
活用手順(paizaの場合)
- 時間がかかってもいいので普通に問題を解く
- 自分に合った難易度を選択するようにする。
- 一番低い難易度からだんだんと上げていく。
- 最低限、全ての入力例が通るまでやる。
- コード提出!
- テスト失敗→3.へ
- 全問正解!→4.へ
- コードを追いながら失敗した原因を探り、すぐに再チャレンジして全問正解を目指す
- paizaでは失敗したテストケースの入力は教えてくれないので、自力でバグにたどり着くしかない。
- ここの入力が0だったら?こことここがイコールだったら?など怪しいところを一つ一つつぶしていく。
- 全問正解できたら4.へ進む。
- リファクタリング
- 課題で書いたコードをリファクタリングする。
-
リーダブルコードのルールの適用等をしていく。
- 私がよく使うのは誤解されない名前、巨大な式を分割する、一度に一つのことを、コードに思いを込めるです。
- リファクタリングが終わったら再チャレンジでテストをとおして、結果が変わっていないことを確認する。
一番のミソはコードを提出した後!
スキルの評価は一番最初の受験でされますが、ボロボロでも大丈夫です。
大切なのは失敗を失敗のままにしないこと、クリアできたから言ってそこで満足しないこと。
私は上記の活用手順を回し始めて、メキメキスキルが上達していることを感じます。
毎日ひとつでもやって、自分のスキルを積み上げていけるといいなと思います。
以上、自分的なスキルチェックサービスの活用法でした。
ここに挙げた以外に活用法を実践されている方がいましたらコメントいただけると嬉しいです。