大学カタログ

図 2 4 年間の流れ()4 年間の流れ 3

3 年: つくって試す

OS・ネットワーク・データベース・機械学習など、毎日使うサービスの裏側を学び、チームで実際にものをつくる 1 年です。インターンシップや研究室選びも始まります。

大学の演習室で大きな画面とホワイトボードを囲み、役割を分けてアプリをつくる学生のチーム

ひとことで言うと

文化祭の出し物を、役割を分けてつくる

文化祭では、企画・看板・会計・当日の受付と役割を分け、締め切りまでに 1 つの出し物を仕上げます。3 年のチーム開発も同じで、1 人では作れない大きさのソフトを、分担と話し合いで形にします。

01

OS とネットワーク: いつも使うしくみの裏側

OS は、アプリに CPU やメモリを割り当て、いくつものアプリを同時に動かすソフトです。音楽を聴きながらメッセージを打てるのは、OS が CPU の時間を細かく切り分けて、順番に渡しているからです。

代表的な OS の 1 つが Linux です。1991 年、フィンランドのヘルシンキ大学の学生だったリーナス・トーバルズが、趣味で作り始めました。いまでは世界中のサーバーや、Android の中心部分で使われています。大学生が始めた 1 つのプログラムが、世界の土台になった例です。

ネットワークの授業では、データが小さなパケットに分かれて届くしくみを学びます。動画を見ているときも、データは細かな小包に分けられ、途中の機器が宛先を見て次へ送っています。

動かしてみるデータが届くまでを見る

データが小さなパケットに分かれ、途中の機器を通って相手に届くまでを、1 段ずつ確かめられます。

あなたルータールータールータールーターサーバー
届いた順
データセンターのラックに、青い表示のついたサーバーが縦に並び、白いケーブルでつながっている
アメリカの国立エネルギー研究科学計算センター(NERSC)のサーバー。Web サービスの裏側では、こうした機器が OS とネットワークで結ばれて動いています。写真: Derrick Coetzee from Berkeley, CA, USA(CC0・Wikimedia Commons)

02

データベース: 大量の記録を正しく保つ

データベースは、大量のデータを整理してしまい、速く正しく取り出すためのしくみです。通販サイトの注文、学校の成績、銀行の残高など、まちがいが許されない記録の多くがデータベースに入っています。

授業では、SQL という言葉でデータを検索したり、表の形を設計したりします。大事なのは、大勢が同時に使っても記録が食い違わない工夫です。2 人が同じ座席を同時に予約しても、売れるのは 1 人分だけになるように作ります。

日本では 1960 年に、国鉄の座席予約システム MARS-1 が動き始めました。国鉄の鉄道技術研究所が論理設計を、日立が回路設計と製作を担いました。2025 年には、電気・電子の分野の歴史的な業績として IEEE マイルストーンに認定されています。

図解座席の二重予約を防ぐ

入力2 人が同じ席を同時に予約する
  1. 1先に届いた予約が席を一時的に押さえる
  2. 2あとの予約は待たせてから「満席」と返す
  3. 3支払いが済んだら記録を確定する
結果同じ席が 2 人に売られない
薄い緑色の大きな箱形の装置 MARS-1 と、その操作パネル
鉄道博物館(さいたま市)で撮影された MARS-1 の装置。1960 年に動き始めた、国鉄の座席予約システムです。写真: Hirakawa(CC BY-SA 4.0・Wikimedia Commons)

03

機械学習: データから見分け方を学ぶ

機械学習は、たくさんの例からコンピュータに見分け方や予測のしかたを学ばせる技術です。京都大学の情報学科の計算機科学コースでは「パターン認識と機械学習」が 3 年に置かれているなど、3 年ごろに学ぶ大学が多くあります。

たとえば迷惑メールの判定では、「迷惑」と「ふつう」の印をつけた大量のメールから、見分けるための境目を自動で決めます。この計算には、1 年の線形代数・微分積分と、2 年の確率・統計がそのまま使われます。

授業で大事にされるのは、学習に使わなかったデータで確かめることです。練習問題を丸暗記して本番で解けない状態、つまり過学習を見抜くためです。

1・2 年の数学が「使える道具」に変わるのが、3 年の機械学習です。

動かしてみるしきい値で見分ける

しきい値を動かして、2 種類のデータをどこで分けると見分けのまちがいが少なくなるかを試せます。

りんごみかんまちがえたもの

正解 10 / 15 個(正解率 67%)

04

チーム開発の演習: 役割を分けて 1 つのものをつくる

3 年では、数人から十数人のチームでソフトをつくる演習を置く大学が多くあります。公立はこだて未来大学の「プロジェクト学習」は、2002 年から続く 3 年の必修科目です。1 つのテーマに 5〜15 人の学生が集まり、1 年をかけて取り組み、12 月の成果発表会ではポスターで成果を説明します。

チームでは、全体をまとめるリーダー、画面や機能を決める設計、プログラムを書く実装、動作を確かめるテストなど、役割を分けます。週に 1 回は集まって進み具合を確かめ、次の 1 週間の作業を決めます。

大勢で同じプログラムを書き換えるときに欠かせないのが、変更の履歴を残す Git です。Git は 2005 年、リーナス・トーバルズを中心とする Linux の開発者たちが作りました。だれがいつ何を変えたかが残るので、まちがえても前の状態に戻せます。

チーム開発で身につく「分担して、見せ合って、直す」流れは、企業の開発でもそのまま使われます。

図解チーム開発の 1 週間のくり返し

  1. 1計画今週つくる機能を決める
  2. 2実装分担してプログラムを書く
  3. 3レビュー仲間のコードを読んで確かめる
  4. 4テスト動かして不具合を探す
  5. 5ふり返りうまくいった点と直す点を話す

05

インターンシップと研究室選び

3 年の夏休みは、企業のインターンシップに参加する人が多い時期です。2023 年度からは、職場で働く体験を含むものが「インターンシップ」と呼ばれるように整理されました。条件は、5 日間以上で、半分を超える日数を職場での体験にあてることなどです。条件を満たせば、企業はそこで得た学生の情報を、広報活動や採用選考が始まったあとに使えます。

政府は、企業の広報活動を卒業の前の年度の 3 月 1 日以降に、採用選考を卒業する年度の 6 月 1 日以降に始めるよう求めています。学部で就職する人は、3 年の 3 月から就職活動が本格的に始まります。

研究室選びの準備も始まります。研究室を訪ねて、先輩の研究や毎日の様子を聞いておくと選びやすくなります。決め方は大学によって異なり、成績と面談で決める大学もあります。

お茶の水女子大学の情報科学科では、研究室ごとの順位と学生の希望を組み合わせて配属を決めています。この方法は、2012 年のノーベル経済学賞の対象になった安定マッチングの理論を応用したものです。

図解学部で就職する人の流れ(例)

  1. 13 年の夏インターンシップに参加する
  2. 23 年の秋〜冬研究室を訪ねて選ぶ
  3. 33 年の 3 月企業の広報活動が始まる
  4. 44 年の 6 月採用選考が始まる
  5. 54 年の 10 月正式な内定

高校生のうちに試せること

  • Git と GitHub を使ってみる

    GitHub には、Git の使い方を日本語で説明した公式のドキュメントがあります。自作のプログラムや課題研究のファイルを、変更の履歴つきで残すところから始めましょう。

    GitHub Docs(日本語)
  • 見分ける AI をブラウザでつくる

    Teachable Machine は、パソコンのカメラで撮った写真から、見分ける AI をブラウザ上でつくれる無料のツールです。グーとパーを見分けさせて、まちがえやすい条件を探してみましょう。

    Teachable Machine
  • 友だちとチームで小さなアプリをつくる

    3〜4 人で役割を決め、クラスの時間割を表示するような小さなアプリを 1 か月でつくってみましょう。週に 1 回集まって、進み具合と次にやることを決めるのがこつです。

「3 年: つくって試す」に関連するコミュニティ

研究室・部活・サークルなど、全国の 131 件から探せます。

研究室をすべて見る(102 件)

よくある質問

インターンシップに参加しないと、就職で不利になりますか?

参加しなくても就職はできます。ただ、仕事の中身や会社の雰囲気を知る機会として役立ちます。授業や研究の都合に合わせて、短いものから参加する人もいます。

チーム開発で、プログラミングが得意でないと迷惑をかけませんか?

チームの仕事はプログラムを書くことだけではありません。画面の設計、テスト、資料づくり、発表など、得意なことで役割を持てます。分からない点を早めにチームに伝えることも、大切な役目です。

研究室は 3 年のうちに決めなければいけませんか?

多くの大学では、3 年の後半から 4 年の初めに決まります。時期と決め方は大学によって異なるので、学科の説明会の案内を見逃さないようにしてください。