2019年度 コンピュータサイエンス第一
授業に必要な前提知識

1. 本授業を楽しく受けるために

本授業を楽しく受けるためには、

  1. プログラムを入力する。
  2. プログラムを実行する。
この 2つをとにかく速く繰り返すことが重要である。 そのためには が必要不可欠である。

2. タイピング能力を鍛える

PCのキーボードを使ったタイピングは、 学生生活・社会人生活において 絶対に必要なスキルである。 ここでいう「タイピング」とは、ただ単にキーを 打つだけではなく、PC上におけるカーソルの移動や コピー・ペースト機能の活用も含まれる。

たとえば、以下の文章を (コピー・ペースト等の機能を活用して) 空白まで含めて正確にタイプするのに要する時間はどれくらいか?

Python is an interpreted, interactive, object-oriented
programming language that combines remarkable power with
very clear syntax. For an introduction to programming in
Python, see Python tutorial.

  Main website: https://www.python.org/
  Downloads: https://www.python.org/downloads/
  Python Software Foundation: https://www.python.org/psf/

練習欄:

所要時間のめやす:

3. PC上のファイル・フォルダに関する基礎知識

本授業 (および、その他 PC を使うすべての授業) では、 PC システムの使い方に関する基礎知識が必要である。 とくに、ファイルとフォルダの扱いに関する理解は必須である。

超基本的な Mac の使い方

3.1. ファイルについて

コンピュータ上の情報 (データ) は、 すべて「0」と「1」の組み合わせで表される:

PC上では、データはすべて ファイル (file) に保存される。

ファイル拡張子を表示させるには

Macでは (Windowsでも)、ファイルの拡張子はふだんは表示されない設定になっている。 これを変更するには、以下のようにする:

  1. Finderをクリックし、メニューから「環境設定...」を選ぶ。
  2. 「詳細」タブをクリックし、「すべてのファイル名拡張子を表示」に チェックを入れる。
練習問題
  1. インターネット上の以下のサイトから、 「テキスト形式」のファイルと、 「画像形式」のファイルをそれぞれ 1つずつダウンロードせよ。
  2. ダウロードしたファイルの拡張子を確認せよ。
  3. 各ファイルに対して「情報を見る」を実行せよ。
    ひとつのファイルには、その内容の他にどのような情報が付随しているか?

3.2. フォルダとは何か

基本的な問題

ディスク A B C B E C K H K X Macintosh HD

3.3. パス名とは

練習問題
ディスク A B C B E C K H K X Macintosh HD
  1. フォルダ X のパス名を答えよ。
  2. ファイル H のパス名を答えよ。
  3. ファイル C のパス名を 2つ答えよ。
練習問題
  1. 自分のホームフォルダを開き、パス名を確認せよ。
  2. デスクトップもフォルダである。パス名を確認せよ。
  3. 先ほどダウンロードしたファイルがどこにあるか確認し、そのパス名を書け。
  4. Macintosh HD の中の「ライブラリ」フォルダを探索し、 その中にあるJPEG画像ファイル (拡張子 .jpg) を発見せよ。 そのパス名を書け。

3.4. 「ターミナル」とは何か?

ターミナルで文字を入力するときの注意

練習問題
  1. まず、ブラウザ (Safari) を終了する。
  2. ターミナルを開き、以下のコマンドを半角で入力せよ:
    • /Applications/Safari.app/Contents/MacOS/Safari
    • /Applications/Thunderbird.app/Contents/MacOS/thunderbird
  3. 以下のコマンドを実行し、出力を観察せよ:
    • date
    • cal 2019
    • banner abc
    • banner -w40 abc

ターミナルの便利な機能

練習問題
  1. 補完機能を使って、 以下のコマンドを20回以下のキー入力で入力せよ。
    /Applications/Safari.app/Contents/MacOS/Safari
  2. 以下のコマンドを実行し、出力を観察せよ:
    (似たコマンドの入力には履歴機能を使うこと)
    1. find ~ -type f -mtime 7
    2. find /Library -name '*.jpg' -size +100k
    3. find /Library -name '*.jpg' -size +100k | sort -r
  3. 以下のコマンドを入力せよ:
    1. ls /Applications
    2. ls /Users/自分の学籍番号/_mac/Desktop

    ls コマンドを使うと、パソコンの中のフォルダの内容を一覧表示できる:

    ls パス名

    ls -l コマンドを使うと、各ファイルの情報がさらに詳細表示される:

    ls -l パス名

3.5. カレント ディレクトリとは?

練習問題
練習問題
  1. 自分のデスクトップ (フォルダ) のパス名を確認せよ。
  2. cd コマンドを使って、 注目フォルダを自分のデスクトップフォルダに変更せよ。
  3. CotEditor を使って、デスクトップ上にテキストファイルを作成せよ。
  4. ls コマンドを使って、 いま作成したファイル名が現れていることを確認せよ。
  5. 補完機能を使って、8回以下のキー操作で カレントディレクトリを /Applications に変更せよ。

3.6. 相対パス名と絶対パス名

相対パス名の表し方

練習問題
演習問題
  1. ターミナルを開き、cd コマンドを入力して 自分のホームフォルダに移動せよ。
  2. デスクトップに新規フォルダを作り、その中に cd コマンドを利用してカレントディレクトリを変更せよ。
  3. 相対パス名のみを使って、そこから /Application フォルダに移動せよ。 何回 cd コマンドを実行したか?
  4. その位置から、ls コマンドに相対パス名を与え、 自分のホームフォルダの一覧を表示せよ。

実際のファイル・フォルダは何でできているのか?

コンピュータ上の記憶装置 (ディスク) はつねに一定容量であり、 一定個数の「0」または「1」が書き込まれている。 これらの個数は変化しないため、 実際には「空き容量」などというものは存在しない。 また「フォルダ」という実体も存在せず、ファイルの「削除」など というものもありえない。 これらは、すべてソフトウェアによる「見せかけ」である。

K H C K C

3.7. ターミナルで使うと便利なコマンド

(以下の例における $ は実際に入力する文字ではなく、 ターミナルに毎回表示されるプロンプト ("pcm4649:~euske$" など) を表す。

練習問題
  1. cd でデスクトップに移動し 「open .」と入力せよ。何が起こるか?
  2. cot でデスクトップに適当なテキストファイルを作成し、 mv コマンドを使ってそのファイル名を適当に変更せよ。
  3. cpコマンドを使って、そのファイルを 新しい名前でコピーせよ。
  4. rmコマンドを使って、そのファイルを削除せよ。
    (注意: 各コマンドは、成功したときには何も表示しない)

4. テキストエディタとは?

練習問題
  1. この授業スライドのページ (HTMLファイル) をブラウザで開き、ファイルとして保存せよ。
  2. 保存したファイルが置かれている位置 (パス名) を答えよ。
  3. HTMLファイルを CotEditor で開き、中に隠されている合言葉を発見せよ。

4.1. キーボード・ショートカットの使用

多くのテキストエディタは、キーボードだけで必要な 操作がおこなえるようになっている。 文字を選択したりコピー・ペーストするときに、 マウスとメニューを使って行っていると非常にのろい。 基本的なキーボードによる操作を覚えるようにしよう。

機能MacWindows
入力位置 (カーソル) の移動 / / /
行頭/行末に移動 Command + / Home / End
文字の選択 Shift を押しながら / / /
選択した文字の削除 Delete Backspace
インデント (字下げ) Tab
切り取り Command + X Control + X
コピー Command + C Control + C
ペースト Command + V Control + V
ひとつ戻す (Undo) Command + Z Control + Z
すべての文字を選択 Command + A Control + A
選択した文字の置き換え 文字を選択したまま新しい文字を入力する

参考

CotEditor によるインデント幅の変更

CotEditor では、Tab キーを押すと行が一定幅インデント (字下げ) される。 これは通常「タブ文字」が挿入されるが、 Python を使う場合はこれをスペース4個に設定する。 メニューから「環境設定...」を開き、 「編集」の欄で タブをスペースに自動的に展開 をチェックせよ。 こうすると Tab キーを押すことで半角スペース4個が挿入される。