Go Wiki: コース
はじめに
Go はコンピュータサイエンス専攻の学生にとって素晴らしい言語です。このページでは、Go を使用している大学のコースをいくつか紹介します。無料および商用の Go トレーニングクラスのリストについては、学習 Wiki を参照してください。
言語
- ヘルシンキ大学コンピュータサイエンス学科では、K. Bäckman 氏が教える「Go 入門」というコースがありました: http://www.cs.helsinki.fi/courses/582336 (2010 年春)
- ソフィア大学「聖クリメント・オフリドスキ」数学情報学部では、K. Vladimiroff 氏が教える「Go によるプログラミング」という選択科目があります: http://fmi.golang.bg (ブルガリア語) とその [公開講義] - (ブルガリア語)
- ベルリン自由大学 (ドイツ) では、2013 年春に Go プログラミング入門 というコースがありました。
- J.W. ゲーテ大学 (フランクフルト/マイン、ドイツ) では、2015 年春に Go プログラミング入門 というコースがありました (ドイツ語)。
- ペンシルバニア大学では、2017 年春に Go プログラミング に関するコースがありました。
- ニューヨーク州立大学ポツダム校 (ポツダム、ニューヨーク州) 「Go を使用した選択言語コース」、Brian C. Ladd 博士 (コンピュータサイエンス准教授) が担当。最初の授業は 2017 年春。
- ミラノ大学では、Paolo Boldi 氏が教える「コンピュータプログラミング」というコースがあります: http://boldi.di.unimi.it/Corsi/Inf2018/
- ザグレブ大学 (クロアチア) 電気工学コンピュータ学部では、2020 年から Z. Bratković 氏と B. Banelli 氏が担当する Go プログラミング言語 のコースが継続的に開講されています。2019/2020 学年度 2019./2020. と 2020/2021 学年度 2020./2021. のビデオが公開されています (クロアチア語)。
- マサリク大学情報学部では、2023 年から PB173: ドメイン特化開発 コースの一環として Go コースを提供しています。現在のコース資料は、course-go 組織 のもとで公開されています。
プログラミングの概念
- プレジデント大学 (チカラン、西ジャワ、インドネシア) では、すべてのジュニア学生を対象とした プログラミングの概念 コースがありました (C、Go、Javascript を使用)。
ウェブ
- CS 4830: WWW の科学と工学、ミズーリ大学 Ryanne Dolan 氏担当: http://4830.ryannedolan.info/
- CSCI 130: ウェブプログラミング、カリフォルニア州立大学フレズノ校 Todd McLeod 氏担当
- CSCI 194: ウェブプログラミング上級、カリフォルニア州立大学フレズノ校 Todd McLeod 氏担当
- CIT 90: データ駆動型ウェブサイト、フレズノ市立大学 Todd McLeod 氏担当
- CIT 94: サーバーサイドスクリプティング、フレズノ市立大学 Todd McLeod 氏担当
並行処理
-
Go は、KTH の 1 年間のコンピュータサイエンスの授業の最後に使用されています: http://yourbasic.org/golang/concurrent-programming/
-
Go、並行処理、システムプログラミング、ロチェスター工科大学: http://www.cs.rit.edu/~ats/go-2011-2/index.xml
-
ベルリン自由大学 (ドイツ) では、2013 年に Go を参照言語とした 並行プログラミング のコースがありました。
-
デュースブルク・エッセン大学 (ドイツ) では、2014 年夏に 並行システムモデリング のコースで、Go と CSP に関する講義が行われました。[スライド]
-
スタヴァンゲル大学 (ノルウェー)。DAT320 オペレーティングシステムで並行処理の原則を教えるために Go を使用しています。 http://www.uis.no/studies/study-courses/?code=DAT320_1&parentcat=9835
-
トロムソ大学 (ノルウェー)。 並行処理とデータ集約型プログラミング (INF-2200)。
-
ビクトリア大学 (カナダ) は、プログラミング言語 (CSC 330) の一部として、並行処理のセクションで Go を使用しました。
分散コンピューティング
-
ブラウン大学の分散コンピュータシステム (CS 138): http://cs.brown.edu/courses/cs138/s16/syllabus.html
-
プリンストン大学の分散システムコース (COS 418): https://www.cs.princeton.edu/courses/archive/fall16/cos418/
-
CMU の分散システムコース (15-440): http://www.cs.cmu.edu/~dga/15-440/F12/index.html ( http://da-data.blogspot.se/2013/02/teaching-distributed-systems-in-go.html も参照)
-
MIT の 6.824 分散システムでは、ラボで Go を使用しています: http://pdos.csail.mit.edu/6.824/。
-
CSE 223B、2014 年春: カリフォルニア大学サンディエゴ校の分散コンピューティングとシステム http://cseweb.ucsd.edu/classes/sp14/cse223B-a/index.html
-
ディキシー州立大学では、プログラミング言語入門コースと、その後の分散システムで Go を教えています。
-
CS 352、コンピュータの構成と設計、ウィスコンシン大学オー・クレア校: http://cs.uwec.edu/~buipj/teaching/cs.352.f13/lab_01_high_performance_computing.html
-
KTH ストックホルムは、並行処理を教えるために Go を使用しています: DD1396 並列および並行プログラミング。 https://www.kth.se/student/kurser/kurs/DD1396
-
ノルウェー科学技術大学: TTK4145 リアルタイムプログラミング http://www.itk.ntnu.no/fag/TTK4145/information/
-
スタヴァンゲル大学 (ノルウェー)。DAT520 分散システムで、Paxos に基づく複製状態マシンを構築するために Go を使用しています。 http://www.uis.no/studies/study-courses/?code=DAT520_1&parentcat=9835
-
モスクワ州立大学 (ロシア)。Go は、「分散システムエンジニアリングの選択されたトピック」に関する大学院コースで使用されています。
-
D7024E - ルレオ工科大学のモバイルおよび分散コンピューティングシステム。Go は、DHT アルゴリズム Chord を実装し、データ複製システムを作成するために使用されます。 http://www.ltu.se/edu/course/D70/D7024E/D7024E-Mobila-och-distribuerade-datorsystem-1.67844?l=en&kursView=kursplan
-
トロムソ大学 (ノルウェー)。 分散システムの基礎 (INF-3200) と 高度な分散システム (INF-3203)。
ネットワーキング
- プリンストン大学のコンピュータネットワーク (COS 461): http://www.cs.princeton.edu/courses/archive/spring16/cos461/ (課題 1 https://github.com/PrincetonUniversity/COS461-Spring2016/tree/master/notebook/assignment1 と課題 4 http://www.cs.princeton.edu/courses/archive/spring16/cos461/assignments/ を参照)。
コンパイラの設計
-
ニューハンプシャー大学のコンパイラ設計 (CS712/CS812): http://www.cs.unh.edu/~cs712/。2016 年秋には、Go のサブセットを LLVM コードにコンパイルしています。
-
マドリード・レイ・フアン・カルロス大学のコンパイラ入門 (6197、スペイン語): http://lsub.org/comp。学生は、グラフィックを描くための言語を実装するコンパイラを Go で記述します。
セキュリティ
- Boot.dev の Go で学ぶ暗号化。ブラウザでコードを実行するコースで、暗号化の原則を Go 言語で教えています。
- ブラウン大学の コンピュータシステムセキュリティ (CS166)。特に、最終 Dropbox プロジェクト。
このコンテンツは Go Wiki の一部です。