見出し画像

C++を学び始めるのに役に立ったウェブサイト「C++入門」

一番最初の「libft」という課題も終わっていないのですが、「CPP Module」という課題をスタートさせました。

この課題ではこれまで学んできたC言語ではなく、C++言語を使用します。

今後ディープラーニングを学ぶのにC++の知識は必要なので、もともとC++を学びたいと考えていました。

もう一つこの課題を選んだ理由は、短い期限が決められており、集中的に取り組むことができるという点です。

いつもは各個人のペースで課題に取り組むのですが、今回の課題は一味ちがい「Synchronous Piscine (シンクロナス ピシン)形式」で実施されます。

この形式の特徴は以下の3つ。
・リトライができない。
・みんなで同じ課題に取り組む。
・課題の取り組み期間があらかじめ定められている。

合計で8個の課題が用意されており、それぞれの課題の期間は2日間となっています。

例えば、一番最初の「CPP Module 00」という課題の期間は11月8日(月)08:42から11月9日(火)23:42の2日間。

開始や終了時間の42分という期限が42らしい遊び心を感じます。

次の課題である「CPP Module 01」の期間は11月10日(水)08:42から11月11日(木)23:42。

このようにそれぞれの課題に2日という期間が決められており、最後の「CPP Module 07」の最終提出期限である11月23日(火)23:42まで続きます。

入学試験の「Piscine 」は4週間ですが、今回は11/8から11/23までと約2週間ほどという点も気に入っています。

42は基本的に各人のペースで学習が可能ですが、今回の「期間があらかじめ決まっている課題」は、自分を追い込むためにも積極的に活用していこうと思います。

少しやっかいなのが事前に「各課題への登録」をしなければ参加ができない点で、登録は「課題が始まる3日前から前日まで」に行わなければいけません。

今回は全部で8個の課題があるので、それぞれの課題の開始3日前から各課題の登録をしなければならず、8回ほど登録をしなければ全ての課題に挑戦することができません。

課題に挑戦するつもりだったけれど、登録をし忘れていて参加ができないという人もいました。

課題の期間は2日間ですが、課題の内容が記されているPDFは課題が始まる前でもダウンロードが可能なので、課題の期間前にもとりくむことができます。

課題はすべて英語で書かれているのですが、日本語に訳したものを全員に共有してくれている生徒もいました。

こういった共有文化も42のいいところだなと思います。

ぼくは他の課題が終わっていないので、残念ながら課題をみる余裕もC++について予習することもできませんでした。

早い生徒は課題開始の11月8日のうちに完了していたので、めちゃくちゃ焦ります。

ぼくはC++素人なので、他の学生がオススメしていた学習サイトで学習を開始しました。

それがこの「C++入門」というもの。

具体例や宿題があり、ハンズオンでC++に馴染むことができます。

最初は少しとまどいますが、C++はCの機能を拡張させたプログラミング言語なのでCと似た表記が多いのが救いです。

「CPP Module 00」は合計3問あり、最初の問題はコマンドライン引数を出力するもの。

コマンドライン引数とは、コンピュータのコマンド入力画面(コマンドライン)からプログラムを起動する際に入力する文字列です。

その文字列が「Hello World!」だったら、画面に「Hello World!」出力(表示)させる必要があります。

そしてこの課題には条件があり、もしもコマンドライン引数にアルファベットの小文字があれば、大文字に変換して出力せよというものでした。

例えば上記の「Hello World!」だったら、「HELLO WORLD!」を出力せよという問題です。

見よう見まねで最初の1問目はなんとか動くものはできましたが、2、3問目は全くわかりません。

ちょっと他の学生に聞いてみようとおもいます。

匿名のコメ・質問はmondまで👍 https://mond.how/ja/hovinci_jp