読者です 読者をやめる 読者になる 読者になる

世界が変わったのだから、自分も変わらなくてはならない。

エンジニア兼デザイナーのナカモリのブログです。

僕の場合、プログラミング言語は模写で勉強します。

日記 アプリ制作

f:id:takahironakamori:20160131193144j:plain

HTML、CSS、JavaScript、ActionScriptなどのフロントエンドを勉強するときに、昔(15年くらい前)からよくやっているのが「模写」です。ここでいう「模写」とは、本で記載されているコードを打ち直すのではなく、「いいサイトやよ」と紹介されているサイト等の作品を見て、実際に同じようなものを作ってみるという勉強方法です。もちろん、公開すると問題があるので、非公開で進めますし、名称や画像は仮のものを使います。10年前はGitHub等コードがたくさん観れるサイトがありませんでしたので、ActionScriptは本を見たり、いろいろ調べて「結果として同じ動きになったらOK」という感じで練習していました。1日パソコンの前に座っていて、理解できた動きは1個だけという日もありましたが、理想の動きが作れたときは嬉しかったものです。

最近の週末は、Swiftでアプリを作る勉強をしています。JavaScriptとかPHPとかは仕事で取り扱っていますので、日々レベルアップしています。しかし、Swift(というかアプリ制作)は現在、進めている案件がありません。このままでは、「アプリ作れなくなってしまいました」という事態にもなりかねないので、週末はアプリ制作をすることにしました。「忙しいから時間がない」ではなく、時間は自ら作るものです。

じゃぁ、何を作るのか?ですが、目的はSwiftのマスターです。「Swiftを勉強せねば」と思ったときに、「どうせならアプリで売り上げを上げたい」と考えてしまったら、「何を作っていいのか?」で止まってしまい、なかなか進みません。目的はSwiftを勉強し、アプリ制作の技術レベルを上げることです。そこで15年前に行っていた「模写」をすることにしました。といっても、正解というか元になるコードがないので、自分がいいなーと思ったアプリを「模写」することにしました。

「模写」するときに気をつけるポイントを思い出します。

1.完璧は目指さない。1度完成させることを重視する。

最近は、Githubや技術ブログなどすばらしいコードがたくさんあります。自分でコードを書いていると、そのようなすばらしいコードを思い出し、「これで動くけどもうちょっと美しく書けるかもしれない。今後のことを考えて抽象的に書いた方がいいかもしれない。」と思い、手が止まってしまうときがあります。まずは、一通り動くもの、アプリの場合は、アプリとして完結しているものを作ることを重視し、コードの質はその後からでもいいのでは?と思います。

2.できる限り定期的に少しずつ進める。

例えば、1ヶ月に1回くらいしか書かないプログラミング言語はすぐに忘れてしまいます。できれば毎日が理想ですが、できれば1週間に1回以上はその言語を触れなければマスターできないと思います。習得のコツはやはり接触頻度だと思います。

3.本を見るなら、まずは1冊完璧マスターする。

Swiftでもたくさんの本が発売されています。「模写」するための基礎知識は本から得ることは多いです。しかしながら、ポイントはコードが書けるか?であり、動くアプリが作れるか?です。アウトプットが重要です。なので、たくさんの本を読むより、1冊をきちんとできるようにする方がいいかもしれません。とりあえず1冊マスターしたら、次の本でも遅くないと思います。

がんばって「模写」しよう。