30歳 独学で始めるプログラミング ~WEBデザイン・アプリ開発~

ITスキルに興味がでたので、codeを書いてみたら面白くてハマってしまいました!日々何をやったのかを中心に、記事を書いていきたいと思います。

10日目:JavaScript (ES6) Excelの関数と同じじゃん⇒あれちょっと難しくね汗

<学習日>

10日目

<学習内容>

JavaScript Ⅰ:基本的な定義の仕方、出力の仕方、演算子、条件分岐を学ぶ!

JavaScript Ⅱ:繰り返し演算、配列、オブジェクトを学び、複合問題を解く!

JavaScript Ⅲ:関数(引数、戻り値)を学び、複合問題を解く!

④上記の総復習!

<参考>

Progateレベル:58

 

<学習内容詳細>

JavaScript Ⅰ:基本的な定義の仕方、出力の仕方、演算子を学ぶ!

f:id:yakuzen_kokoro:20200712221737p:plain

f:id:yakuzen_kokoro:20200712221750p:plain

出力するためのcodeの書き方や、変数や定数の定義の仕方、そのあとに簡単な演算子と条件分岐を勉強した。

 

最初の出力の仕方や、定義の仕方がやや取っつきにくかったものの、後半についてはExcelの関数よりも簡単だなくらいで、わりとサクサクと進んだ!

 

ただし、同じ働きをもつcodeでも、短縮形が結構たくさんあって、保守することも考えて、全て頭に入れるとなると、少し大変そうだなと思った。

 

とはいえ、HTMLとCSS、Flexboxでたくさんcodeに触れて、実際に書いてきたから、ある程度すんなり入れたのかもしれない!

 

ただし、Switchのあたりで若干?マークが飛んだが、Google先生に質問して、深堀して理解すると、?マークも解消されました!

(Switchだとifをよりスッキリさせられる、といいながら、範囲を持つような条件式ってどうするのと思ってしまっていました。で、調べてみると、案の定その点で棲み分けをしているようで、腑に落ちました)

 

1つのコンテンツの説明だけでなくて、色々な角度から理解することはとても大切ですね。

 

少なくとも、疑問が生じた項目については、説明がはしょられている可能性があるので、徹底的かつ時間をかけずに調べて、腹落ちさせるべき!!

 

 

JavaScript Ⅱ:繰り返し演算、配列、オブジェクトを学ぶ!

f:id:yakuzen_kokoro:20200712222039p:plain

f:id:yakuzen_kokoro:20200712222048p:plain

前半の繰り返し計算をするために、whileやforや使いこなすろころまでは順調だったのですが、配列やオブジェクトの複合問題のあたりでややアップアップ。

 

この辺はあとで重点的に復習することにして、とりあえずは消化することにして、どんどん進めていきました!

 

ちなみに、forがあればwhile使わなくて全然いけそうなのだけど、棲み分けってしているんですかね?

forがwhileの上位互換な気がして。ちょっと時間があるときに調べてもいいかもしれません。

 

JavaScript Ⅲ:関数(引数、戻り値)を学び、複合問題を解く!

f:id:yakuzen_kokoro:20200712222828p:plain

関数という概念を学べる単元ですね!

 

最初のうちは単純なので問題なかったのですが、戻り値のあたりと、引数の複合が入ってきたあたりで、かなりアップアップの状態に!

 

ここまでノンストップで進めてきてしまったので、この単元が完了したら復習モードに入ることを心に誓い、とりあえず最後まで終わらせることに!

 

関数で混乱しがちな理由は、関数自体の実行に”必ずしも出力が含まれているわけではない”という点が、最初は十分に認識できていないからだと感じました。

 

今まで実行してきたのは、console.log()であり必ず出力を伴っていましたが、関数の場合は、関数の処理でconsole.log()が含まれていなければ、出力を伴いません!

 

ここを意識すると、少し理解しやすくなった気がします!

 

④上記の総復習!

f:id:yakuzen_kokoro:20200712223342p:plain

ということで、アップアップになるところもありながらも、一応3単元のカリキュラムが完了したので、復習モードに入りました!

 

カリキュラムを進める時と違って、完璧かつ苦手な部分を頭に繰り返し叩き込む作業なので、新しいことをやっている時と比較して、正直気が進みません。。。

 

が、ここを歯を食いしばって、しっかりとやりきることでしか、使えるスキルは身につかないと思っているので、ファイト一発!!!

 

休憩を少し多めに挟みながらでもいいので、ちゃんと当日中にやり切ることが肝要ですね!

 

サイクルは確実に回し切ること、できれば短い時間内でたくさん回すこと、それが一番効率がいいと考えているからです!

(明日になったら、今日よりも忘れちゃうでしょ)

 

Excelやpptでまとめながら、なんとか不明点は解消し、ある程度サラからでもcodeが書けるようになりました!

 

が、結構疲れますね。

 

そのうえ、JavaScriptでは、道場編がないのでアウトプットの練習にやや不安ががが。

 

ちょっと、この点はちゃんと自分で考えて、解決策を引っ張ります!

 

 

ではでは、1日でも長く続けられるように頑張っていきます。

同志の方、一緒に頑張っていきましょう!

 

 

<補足>

JavaScriptにはver.がいくつかあるみたいなんだけど、最新ver.はES6というものみたい。

 

当然今から勉強するからには、最新ver.から勉強すればよいのだけど、例えばver.5とかで書かれているものについて、読む側の立場になったら大丈夫かななんて思ったりします。

 

が、その心配をするのはかなり先の話になると思うので、今回はあまり深く考えず、素直にES6を習得しようと思います。

 

どうやら、クラスという考え方は、ES6から実装されたみたいで、次の単元でがっつり勉強できるようです!

 

楽しみですね!!