バカでもできる!30日間プログラミングを猛勉強してアプリを作った話

バカでもできる!30日間プログラミングを猛勉強してアプリを作った話

皆さんこんにちは、エブホリです。

今回は『30days challenge』の第一発目の企画なのですが、タイトルにある通り30日間プログラミングを猛勉強してみました。

期間は2月1日から3月3日までです。厳密には31日かかってしまったのですが、優しい目で見て欲しい。

『30days challenge』が何か分からない方はこちらをお読み頂けると幸いです。

僕自身偏差値が45もない大学に進学し、しかも勉強がついていけなくなり中退しています。

ちなみに高校の偏差値は40でした。

「とびっきりのバカ」という訳ではないと思いますが、けっして頭が良い方ではありません。

恐らく僕と同じくらいの学力であるなら、これから紹介する僕がやったことを真似して頂くことで、同じようにアプリが作れるようになると思います。

もし、この記事をお読みの方で「自分は頭が良い」と自分自身で思っている方はそのままブラウザバックして下さい。

きっと他の方の記事を読んだ方が有意義だと思います。

「プログラミングに挑戦したいけど…」そう考えてなかなか行動できないでいる方にはきっと得るものがあると思うので、最後までお読み頂ければ幸いです。

それでは、まず30日間でやったことを以下にまとめます。

  1.  ProgateのHTMLとCSSを10日かけて理解・丸暗記
  2.  ProgateでJavaScriptの基本文法を3日かけて丸暗記
  3. 本「確かな力が身につくJavaScript超入門」で7日かけてDOM操作の基礎を学ぶ
  4.  10日かけて簡単なアプリを作成

ざっとこんな感じですね。

今回の『30days challenge』で作ったアプリケーションなんですが、実は過去記事ですでに公開しています。

プログラマーが良く使う「GitHub」にてアプリを公開していますので遊んで頂ければ嬉しいです。

 

 

初心者がやるべきプログラミングの学習方法

ではまず、30日間でやったことを振り返ってみたいと思います。

ProgateのHTMLとCSSを10日かけて理解・丸暗記

HTMLとCSSの学習

HTMLとCSSの学習

まず最初に取り組んだのが、オンラインプログラミング学習サービス「Progate」でのHTMLとCSSの勉強です。

これはプログラミング初心者の方には登竜門です。マストでやっておいた方が良いです。

ProgateのHTMLとCSSのコースは疑似的に一つのサイトを作りながらそれらの仕組みを理解するというものでした。

僕はとにかく初心者なので、何も分からない状態です。

なのでまずは一通りこのコースを終えることを目標に頑張ってみました。(ちなみに2日かかりました。)

以後の流れはこんな感じです。

  1. HTMLとCSSの使い方に慣れるために同じコースを合計3回復習
  2. 理解できていなかったところを時間をかけて、なるべく理解する
  3. コースで扱ったHTMLとCSSのタグやプロパティを丸暗記

特に理解しにくかったところ!HTMLにはブロックレベル要素インラインレベル要素というのがあるのですが、これが結構理解しにくい…。

これについては別記事で解説していますので、よければこちらもお読みください。

誰でも5分で理解できる!HTMLのブロックレベル要素とインライン要素を分かりやすく解説!

不思議なもので3回も同じコースをやっていれば覚えようとしなくとも自然に頭に入っています。

なので、3回やっても分からないところや覚えていなかったところを集中的に勉強した方が効率は良くなります。

ちなみにProgateで学ぶ内容は本当に基礎中の基礎なので、丸暗記は絶対にしておいた方が勉強がスムーズになります。是非暗記して下さい。

暗記が苦手な方は紙に書くのではなく、頭で何回も同じことを唱えると覚えやすくなりますよ!是非トライしてみて下さい!

ProgateでJavaScriptの基本文法を3日かけて丸暗記

javascriptの勉強

javascriptの勉強

HTMLとCSSを学習したら次に同じくProgateでJavaScriptの勉強をしました。

ここから一気にレベルが上がります。HTMLとCSSが可愛く見えてくるほどです。

ただ、ProgateのJavaScriptコースは基本的な文法のみを扱っていて、実際にウェブアプリを作ろうとした際に必要となってくるDOM操作については学ぶことができません。

なのでここはサクッと基本文法の丸暗記だけを行いました。

それでも理解しにくいところがあったので、以下にまとめておきます。

特に理解しにくかったところ!クラスコールバック関数はとても理解がしにくかった…。

これについても別記事で解説しようと思いますのでしばしお待ちください。

本「確かな力が身につくJavaScript超入門」で7日かけてDOM操作の基礎を学ぶ

本「確かな力が身につくJavaScript超入門」

本「確かな力が身につくJavaScript超入門」

ウェブページでボタンを押すと画面の見た目が変わることがあると思うのですが、それを行っているのがDOM操作です。

正式名称は「Document Object Model」でJavaScriptによってHTMLやCSSの書き換えを行ってくれます。

ウェブサイトやアプリでよく使うのですが、Progateではこれが勉強できません。

なのでここでは本を購入しました。

Amazondeでベストセラーにもなっていたので迷わずこちらを購入。

初心者にも分かりやすく解説していて本当に良本でした。

Progateでは丸暗記だけだったので、プログラムを書いている感じがしなかったのですが、この本ではDOM操作の基本を学び、HTMLやCSSの書き換えを行います。

おかげで自分でプログラムを書いている感じがして、JavaScriptの勉強が楽しくなりました。

プログラミングの勉強が楽しくなってくるのは実はここからです。

実際にコードを書いて、画面が変わるとワクワクしてくると思います。少なくとも、僕はワクワクしました。

なのでHTMLとCSSで「なんだか楽しくない」と感じても、このJavaScriptでDOM操作を行うまでは学習をやめないで下さい!

絶対、絶対に楽しくなりますから!!頑張って学習を続けてね!!!

一言メモ!この本だけでもJavaScriptの勉強ができるのですが、Progateとの学習も合わせることでより学びが深まるので、僕個人的には両方で学習することをお勧めします!

難しくなってくるけど、絶対にあきらめないで!あきらめなければプログラムは書けるようになるよ!

10日かけて簡単なアプリを作成

10日かけてアプリを作る

10日かけてアプリを作る

最終的に自分が作りたいと考えていたアプリの制作に取り掛かります。

一番楽しくて、一番頭を使って、いろいろあった10日でした。

まず最初は作りたいアプリの設計図を作ります。

こんな感じのものです。

アプリの設計図

アプリの設計図

これがないと、頭の中がごちゃごちゃしてくるので、この設計図は絶対につくりましょう。かなり大事です。

で、ここからが大変なのですが、今まで学習してきた内容だけでは当然のことながらアプリは作れません。

他の知識も必要になってきます。

ここで一番僕の頭を悩ませたのがJavaScriptが非同期言語だということです。

特に理解しにくかったところ!通常は最初に書いたプログラムから最後に書いたプログラムまでが順番に動作していくのですが、JavaScriptでは処理に時間がかかるプログラムをすっ飛ばして、次のプログラムが動作します。これを非同期というのですが、初心者はこれが分からず絶対に頭を悩ますはず。

これを回避するためにコールバック関数や、promiseを使うのですが、これに関しては別記事で解説したいと思いますので、しばしお待ちください。

それ以外にも分からないところは、自分でネットで調べてプログラムを書いていかなければならず、めちゃくちゃ時間がかかります。

それに初心者は「何をどう調べていいか」が分かっていないので苦労します。

そこで役に立つのが、『自分が分からないことを言語化する』という能力です。

例えば先程説明した非同期言語も初心者は「非同期言語」という単語がまず分かりません。

なのでそんな時は、自分がどんな風にプログラムを動かしたいかを考えます。

この場合だと、JavaScriptを順番に動作させたいのですよね?

だから調べるワードは『JavaScript 順番に 動作させる』になります。

試しにGoogleで検索してみて下さい。一番上に出てくる『LIG』のウェブページでこの問題が解決します。

僕はこれでJavaScriptが非同期言語であることが分かりましたし、その解決方法として、コールバック関数やpromiseといった方法にたどり着きました。

JavaScriptだけに限らず、これから他の言語も学習することがあるかと思います。

その時にも「分からないことを言語化する」という能力は役に立つのでこの機会に身に着けておきましょう。

 

それで、頭をフル回転させて、楽しみながら、しかし疲労コンパイで作り上げたのが一番初めにも紹介したこのウェブアプリです。

今回は記事のタイトルに『バカでもできる!30日間プログラミングを猛勉強してアプリを作った話』と書きましたが、本当にバカでもこれくらいのアプリなら作れます。実際僕がそうなので。

ただし、努力はしないといけません。努力なくしての成功はありえません。これは絶対です。

そして次に大切なのが「あきらめないこと」です。

多くの人は壁にぶち当たるとすぐにあきらめてしまいます。「自分には無理だ」と。

だけどプログラミングってなんか不思議で1回2回と勉強して分からなかったことでも、3回目にまた勉強すればスッと頭に入ってくる時があるんです。

プログラミングを学習した人にはきっと同じ経験があるはずです。

なのであきらめずに勉強を続けて欲しいです。あきらめなければ絶対にプログラムは書けるようになります。こんなバカな僕でもできたので絶対です。

まとめ

では最後に内容をまとめたいと思います。

  1.  ProgateのHTMLとCSSを3回やってタグやプロパティを丸暗記
  2.  ProgateでJavaScriptの基本文法を、本でDOM操作を学ぶ
  3.  分からないことを言語化する能力を身に着ける
  4. バカでもアプリは作れる!絶対にあきらめないこと!

以上です。

さて今回学習に使った本がこちらです。

他にもJavaScriptには教本がたくさんありますので、ご自身で探してみても良いかもです。

また他にもプログラミングに関する記事を書いていますので併せてお読み頂ければ幸いです。

30日間プログラミングの勉強をして、思った以上に楽しさを味わうことができたので、今後もプログラミングの学習は続けていこうと考えています。

そしてまだまだやりたいことがたくさんあるので、引き続き30days challengeも続けていきます。

最後まで読んで頂きありがとうございました。

この記事が読んでくれた方のプログラミング学習のきっかけになれば嬉しいです。

あきらめなければ絶対にプログラムは書けます。

くじけそうになったらこの言葉を信じて粘って、努力して下さい!!

コメントを残す

メールアドレスが公開されることはありません。

CAPTCHA