kdnakt blog

hello there.

#Udacity でC++ For Programmersコースを修了した話とか

始まりの終わり。

 

この記事の続きです。 

kdnakt.hatenablog.com

[Udacity: C++ For Programmers修了]

UdacityのC++ For Programmersコースを修了しました。

この通り100%です!

f:id:kidani_a:20180623233744p:plain

 

簡単に振り返ってみると、2018年5月の2週目くらいから始めて、6月の4週目まで、実に7週間近くの時間を費やした。サイトのコース案内によれば、大体3週間で終わるものらしいので、倍近く時間をかけたことになるだろうか。毎日取り組んだ訳ではないから、毎日集中してやればコース案内に記載されている時間通りに終えられたかもしれない。

 

[各レッスンの感想]

自分が受講した各レッスンのタイトルは次の通り。

カッコ内は個人的な難易度。

  1. Basics(簡単)
  2. Compilation and Execution(普通)
  3. Arithmetic Operations(簡単)
  4. Control Flow(簡単)
  5. Pointers(難しい)
  6. Arrays(簡単)
  7. Functions(普通)
  8. Classes(普通)
  9. Overloading(普通)
  10. Templates(普通)
  11. Classes and Inheritance(普通)
  12. PolyMorphism(普通)
  13. Vectors and Iterators(普通)
  14. Interview Questions(難しい)
  15. C++ Checkpoint(普通)

 

冒頭に記載した記事でしがない問題を解いた際には、Lesson 4あたりまでを学んだ後だったと思う。ここら辺までは仕事で普段使いしているJavaとそんなに変わらないなという印象だった。

 

Lesson 5のポインタの話はいまだに人に説明できるレベルでは理解できていないし、ググらずに正しいコードを書ける自信も無い。もっとも、C++を学び始めた動機としてはJVMの実装を読むことなので、それほど障害にはならないと思うが……。

 

Lesson 6から13までは、virtual関数などC++特有の用語が出てきたものの、特に詰まることなく進めることができた。

 

Lesson 14と15が理解度確認のための試験回。

Twitterで始めた #100DaysOfCode の流れに乗って、あちこちのサイトで調べ物をしながら、なんとか乗り切った。

特にLesson 14の成績の方はひどいものでした……1回で合格した問題はかなり少ない。だってLesson中でほとんどやらなかったunsigned charとか継承の種類分けとか出題されるんだもの。後ポインタ。やっぱり分からん。

  

[まとめ]

Intermediateとは書いてあるけれどプログラミングを一度でも触ったことがあれば十分に進められる難易度で、C++を(英語で)勉強するには良いコースだったと思う。オススメ! 

 

ポインタは今度また一から勉強しよう。

それからJVMも!この辺から読み始めればいいかな。

 

[2018/06/25追記]

JVMのコアライブラリはC++じゃなくてCだった。

https://image.slidesharecdn.com/jvmcodereading-131110173658-phpapp02/95/jjug-ccc-2013-falljvmjvmos-42-638.jpg?cb=1384105136

上記画像は下記のスライドより引用。

www.slideshare.net

 

というわけで次のターゲットはCですな!(泣)