見出し画像

ハーバード大 コンピューターサイエンス講座 CS50 日本語版登場

「MOOCs(ムークス)」とは「インターネットを通じて世界各国の有名大学の授業を受けることができる学習」です。
2021年はいくつか受けることにしています。

これまでいくつかの講座を受けてきましたが、特に面白かった edX(エデックス)(マサチューセッツ工科大学とハーバード大学など) の CS50 というハーバード大学のプログラミングの基礎講座が、なんと日本語化されました。
無理して英語で聴いて読んでいたのに!!

日本語化は素晴らしく、動画と講座内容をまとめたNoteが完璧な日本語になっています。

MOOCsの多くは長くても10分程度の短い動画で構成されているのですが、この講座は大学の講座そのものなので1本あたり1時間半くらいあります。しかし内容も教授の話も面白いので飽きずに見ることができます。

講座は動画、Noteの他に、実際にプログラムを書いて課題を提出する機能があります。課題を提出する方はプログラム経験がないと難しいかもしれません。

課題は edX.orgを通じて提出することになります。

しかし、講座とNoteだけでも聴いて読んでみるとコンピューターサイエンスの基礎がどんなものか雰囲気が分かると思います。
もちろん課題もやると分かった気になっていたことが、実は分かってなかったことが分かるので良いです。

この講座は構成が素晴らしいです。
CS50X 2021とCS50`s WEB PROGIRAMINGの2コースあるのですが、前者の簡単な紹介
()内は僕が書いた紹介です。

Week0 Scratch :
(日本の小学生などのプログラミング教育につかわれるプログラミング言語、文字を打たずに部品を組み合わせてゲームなどができます)
Week1 C
((高級)プログラミング言語の基礎的なC言語に触れる)
Week2 Arrays
(データをメモリ上に保管する配列と、文字列を中心にC言語に触れる)
Week3 Algorithms
(メモリは有限なため、上手にデータを扱わないとすぐにパンクしてしまいます。うまくデータを扱うためのベストプラクティスをアルゴリズムといいます。検索アルゴリズムをいくつか学び、どれだけの差がでるかを体感します)
Week4 Memory
(データはコンピュータのメモリ上にどのように配置されているのかを学びます。独学で本を読んでいても分からなくなるところなので是非この講座で学びましょう)
Week5 Data Structures
(データをどのようにメモリに配置してゆくなか、とても重要なデータ構造の基礎について学びます)
Week6 Python
(C言語は効率の良いプログラムを書くことができますが、いろいろしんどいところがあります。Pythonという言語だと人間が楽をできるし、人気言語なのでやれることが増えます)
Week7 SQL
(データは通常メモリに配置されておらず、データベースに保管してある場合が多いです。データベースからデータを扱うための言語がSQLです。SQLiteという簡単につかえるデータベースに触れます)
Week8 HTML, CSS, JavaScript
(インターネット上にあるホームページなどを作っている言語を学びます)
Week9 Flask
(インターネット上のWebサービスは、ユーザーからデータを入力してもらってデータベースに保管したり、データベースのデータを見せたりすること動的なコンテンツになっています。Pythonで書かれたWebフレームワークFlaskに触れます)
Week10 Ethics
(まとめ)

どの講座も面白く、Noteは恐ろしく良くまとまっています。
いきなり全部やろうと思うとつらいので、まずは最初の講座のNoteの流し読みと動画を見ることからおすすめします。




この記事が気に入ったらサポートをしてみませんか?