• 検索結果がありません。

情報科学リテラシー

N/A
N/A
Protected

Academic year: 2021

シェア "情報科学リテラシー"

Copied!
60
0
0

読み込み中.... (全文を見る)

全文

(1)

情報科学リテラシー

2019年4月23日

海谷 治彦

(2)

目次

• notepad++を普通にインストできなかった方へ • 主に 2018事前の貸与PC • いままでで理解・修得できている(はずの)こと • コマンドプロンプト • ファイルシステムの移動と操作 • エクスプローラーとの同期の確認 • コマンドやアプリの呼び出し • テキストエディタ • ワープロとの違い • 日本語入力 2

(3)

設定: 拡張子の表示について

• 主に私物PCの方かと思いますが,全拡張子を表 示するように設定を変えてください. • 手順は以下 1. エクスプローラーを開く 2. 表示のタブを押す 3. ファイル名拡張子のチェックを入れる 3

(4)

notepad++のインストールについて

• インストーラーで,うまくインストールできなかった 場合の,対処方法を,ワード文書で挙げています. • dotcampusをみてください. • 主に,対象者は,2018以前の貸与PC利用者かと 思います. • 対象者は,すいませんが,mingw2.bat というファイ ルをダウンロードして,デスクトップにおいてくださ い. • しばし,対処のため教員が回る. 4

(5)

mingw.bat mingw2.bat の配置

• デスクトップに配置してください. • まぁ,ショートカットでもいいんですけど, Downloads に実体があってのショートカットは,い ただけないと思う. • 不備がある可能性の学生のところを教員がまわり ます. 5

(6)

mingw.bat, mingw2.bat の設定

• これをクリックして実行すると,下の ような警告が出てしまいます. • 私物PC等では出ない場合が多いです. • これがでないようにするためには, 右クリックで,プロパティを選択し, セキュリティのところにチェックを入 れます. 6

(7)

これまでに理解・修得してること

1. PCをネットにつないでログインできる. 2. GUIを使いアプリを起動できる.

GUI(Graphical User Interface) メニューやアイコン等

3. ファイルシステムの構造が理解・操作できる. • 少なくとも自身のホームディレクトリまわりは理解できて いる. 4. アプリとプロセスの違いがなんとなくわかってる. 5. アーカイブの意味と展開方法を理解できている. • アーカイブの作成方法は当面わからなくてもよい. 7

(8)

Windowsで重要なフォルダ

• C:¥Users¥r201903123ab¥ • ユーザー r201903123ab 特有のファイルが以下におかれる. • 一般にホームディレクトリと呼ばれるがWindowsではホームパス • より厳密にはホームドライブとホームパスをつなげたもの. • C:¥Users¥r201903123ab¥Downloads¥ • ユーザー r201903123ab がブラウザ等経由でダウンロードされたファイ ルがおかれる. • C:¥Users¥r201903123ab¥Desktop¥ • r201903123ab のデスクトップ • C:¥Program Files¥ • 多くのアプリがこのフィルダ以下におかれる. • 一般ユーザーは内部の修正はできない. • C:¥emacs¥ そして C:¥MinGW¥ • 本授業に特化したアプリ群があるフォルダ.標準的なWindowsには無 い. 8 復習

(9)

アプリの呼び出し法

1. エクスプローラーからアプリのファイルを探してク リック. 2. コルタナ等で検索して選択. 3. デスクトップやメニューにある参照アイコン (ショートカット)をクリック. 4. データのファイルを選択し,右クリックからアプリ を選択. 5. コマンドプロンプトからファイル名を指定. • 今回 9 復習

(10)

コマンドプロンプト

• アプリのファイル名を入力して,Enterを押すと,アプリ を起動できるユーザー・インタフェース(UI). • アプリでは無い組み込み命令もいくつかある. • 現在,注目しているフォルダを可視化してくれている. • フォルダ移動を含むフォルダ操作,ファイル削除やコ ピー等を行なうことができる. • 一般的な呼び出し方: コルタナ等から cmd.exe を検索. • 多分,cmd で見つかる. • Power shell というより高機能なものもあるが,あまり流 行ってないので本講義では用いない. 10

(11)
(12)

コマンド・インタプリター色々

• Windowsのコマンドプロンプトを含め,文字でアプリ名を受 け取って,それを実行する類のUIを,一般には, Command Interpreter と呼ぶ. • コマンドを解釈する者(物?)という意味. • Macを含むUNIX/Linux系OSでは,コマンドインタプリター は割りとポピュラーなツール(下図). • ターミナル(端末)やシェル(shell)とも呼ばれる. • 尚,Androidにも存在する.まぁ,ネタツールだが.右図. • ネット経由で他のマシンに侵入する際によく使う. 12

(13)

コマンドプロンプトの利点

• コマンドプロンプトのプロセスで作業しているフォル

ダが可視化されている.

• 一般に現在作業中のフォルダ(ディレクトリ)と呼ぶが, 単に作業フォルダと呼ぶことにする.

• Current Working Folder/Directory (CWD)

• コマンドプロンプトから呼び出される他のアプリは, 原則,作業フォルダの場所を継承する. • ファイルやフォルダをアプリ間で共有しやすい. • アプリ実行時にオプションを指定することができる. • ファイル名の指定も含めて. • 実行したアプリの履歴を覚えているので,繰り返し 実行するときに楽. 13

(14)

リアルなオプション指定の実例

14 二か ら三行で 一個の コ マ ン ド と なっ て い る. 最後の gc c コ マ ン ド は , 四行分の オ プ シ ョ ン を持つ .

(15)

15

プログラムの開発の流れ

プログラミング 手作業 エディタを使用 コンパイル 機械が理解できる 表現に自動変換 実行 生成された アプリを使用 (ソース)プログラム (ソースコード hoge.c 等) アプリケーション (実行ファイル) (ロードモジュール a.exe 等) hoge.c a.exe gcc 復習

(16)

プログラム開発の特徴

• 複数のアプリを使う. • プログラムの記述,アプリへの変換,実行のテスト • アプリを繰り返し実行する. • 一発でアプリへの変換が成功しないための繰り返し. • 実行テスト結果が期待通りでないための繰り返し. • アプリ間で同じファイルや作業フォルダを使う. • プログラム: 記述アプリ(エディタ)と変換アプリで共有 • 作成したアプリ: 変換アプリ(gcc)と実行テストで共有 • コマンドプロンプトが開発に適している. 16

(17)

参考: GUIからアプリを呼ぶ場合

• 一般的に,当該アプリのプロセスの作業フォルダ がどこであるかが明示されていない. • メニュー等から調べればわかる場合はある. • 大抵は,そのアプリがインストールされているフォルダ. • しかし,アプリ自身の設定や設計によって作業フォルダ は変わる. • よって,どこが作業フォルダとなるかの予想がつかない. • 結果として,複数のアプリでファイルや作業フォル ダを共有するのがGUIでは割りと面倒. • 開発に必要なアプリを統合したアプリ(IDE)は存在 するが,その紹介は9回目以降. 17

(18)

今後のプログラム開発等の規定

• 開発するアプリ毎にフォルダを分けてください. • このフォルダをプロジェクトとこの授業では呼びます. • 自身のホームディレクリ下に projects フォルダを作 り,その下に,個々のプロジェクトをおいてください. • 前回の演習で作った src フォルダはダウンロードしたサ ンプル等をおくことにしましょう. • プロジェクトの名前は基本,こちらで指定します. ダメなこと • Desktop/Downloads下に適当にファイル,プロジェ クトのフォルダやファイルを羅列する. 18

(19)

実際にコマンドプロンプトを使う

• まず,コルタナ等から cmd. exe を検索して実 行. • 自分のホームが表示さ れているか確認. • 基本,コマンド名もしく はアプリ名を入れてエ ンターを押す. 19

(20)

フォルダに関するコマンド 1

• dir • 現在の作業フォルダにあるフォルダとファイルの一覧を表示 します. • cd フォルダ名 • 現在の作業フォルダを指定したフォルダに変更します. • フォルダは C:¥users 等の絶対パスと,後述の相対パスで指 定できます. • 貴方自身に許可が無いフォルダには移動できません. • md フォルダ名 • 新たなフォルダを作成します. • フォルダ指定はcdと同様,作成許可もcdと同様. • rd フォルダ名 • 既存のフォルダを削除します. • フォルダが空でないと消せません. • その他はmdと同様です. 20

(21)

絶対パスと相対パス

• C:¥Users¥r20191234ab¥ や ¥Windows¥ 等,ド ライブもしくは,ファイルシステムの頂点である ¥ から フォルダを指定する方法を,絶対パスと呼びます. • 一方,現在の作業ディレクトリからの相対位置を指定 する方法を相対パスといいます. • 相対パスの例 • cd child 現作業フォルダの下に child というフォルダ がある場合は,そこを新しい作業フォルダに変更できる. • cd .. 現作業フォルダを含む一個上位のフォルダに移動 する. • cd ..¥sibling¥ 現作業フォルダの隣にある sibling というフォルダに移動する. 21

(22)

前ページ例のイメージと操作

(23)

フォルダに関するコマンド 2

• move フォルダ1 フォルダ2 • フォルダ2が存在するなら,フォルダ1をフォルダ2の下 に移動する. • フォルダ2が存在しないなら,フォルダ1をフォルダ2に改 名する. • フォルダ1はファイルでもよい. • ren フォルダ1 フォルダ2 • フォルダ1をフォルダ2に改名する. • コマンド1も含め,他のアプリが関係するフォルダ やファイルを利用中の場合,コマンドの実行ができ ない. 23

(24)

ファイルに対するコマンド

• copy ファイル名 パス名 • あるファイルをコピーする. • 同じフォルダ内の場合,異なる名前でコピーするしかない. • 他のフォルダにコピーする場合,同じ名前でもコピーできる. • 権限の無いファイルのコピーや,権限の無いコピー先へのコ ピーはできない. • del パス名 • ファイル名もしくはパス名で指定されたファイルを削除する. • 権限に関してはcopyと同じ. • move 移動.フォルダに同じ. • ren 改名.フォルダと同じ. • 尚,ファイルの作成や取得はエディタやgcc等のアプリ を用いたり,ネットからダウンロードしたりする. 24

(25)

(26)

続き

(27)

ファイルシステムは共有されてる

• ファイルシステムは全プロセスに共有されていま す. • よって,コマンドプロンプトでファイルシステムを変 更すれば,エクスプローラーや他のアプリから見え るファイルシステムも変わります. • 逆も真です. • ちなみに,現在の作業フォルダ以外のフォルダの 変更も,権限はあればプロセスは可能である. • 例: ホームにいて,md ..¥..¥sakana¥ とすれば,¥sakana フォルダを作成可能. 27

(28)

プロセスとファイルシステムの関係例

28 kaiya

Downloads src projects Deskptop

a.zip b.txt a.c a.exe ・・・・ ・・・・ このプロセスは Desktopフォルダ で作業をしている ¥ Users r2019ab Program Files exp01 ・・・・ このプロセスも Downloadsフォルダ で作業をしている このプロセスは Downloadsフォルダ で作業をしている ・・・・ ・・・・ b.txt を消 しちゃおう かな・・・

(29)

他のプロセスの変更は影響する

29 kaiya

Downloads src projects Deskptop

a.zip a.c a.exe ・・・・ ・・・・ このプロセスは Desktopフォルダ で作業をしている ¥ Users r2019ab Program Files exp01 ・・・・ このプロセスも Downloadsフォルダ で作業をしている このプロセスは Downloadsフォルダ で作業をしている ・・・・ ・・・・ b.txt が見 えなくなり ました!

(30)

エクスプローラーで操作してもよい

30 要はコマンドプロンプトの コマンドを忘れたら, 該当する部分を エクスプローラーで操作すればよい.

(31)

演習1 電子メールにて

• コマンドプロンプトを実行し,最初の作業フォルダが自身のホームであ ることを確認せよ. • cd src¥unzip60win を実行し,前回ダウンロードしたアーカイブが指定 場所に展開されていることを確認せよ. • 指定場所に展開されていない場合,move 等のコマンドを使い,指定場 所に移動した上で,上記の確認を行なえ. • 問題1: 上記の作業後に,現在の作業フォルダをホームに戻すための コマンドを答えよ. • できれば一コマンドが望ましいが複数コマンドの列でもよい. • 問題2: 作業フォルダがホームだとして,src¥unzip60win¥man¥ の下の ファイル一覧を表示するためのコマンドを答えよ. • これも一コマンドが望ましいが複数コマンドの列でもよい. • メールの件名は 4/23 exercise 1 31

(32)

参考 unzip60win下のフォルダ構成

(33)

アプリはどのように検索されるか?

• コマンドプロンプトでは,PATH と呼ばれる値に基づきアプリを検 索します. • しかし,本授業で用いるテキストエディタやコンパイラは初期設 定ではPATHに含まれません. • この初期設定の変更もできますが,本授業では行ないません. • そこで,mingw.bat もしくは mingw2.bat を用います. 33

(34)

34

プログラムの開発の流れ

プログラミング 手作業 エディタを使用 コンパイル 機械が理解できる 表現に自動変換 実行 生成された アプリを使用 (ソース)プログラム (ソースコード hoge.c 等) アプリケーション (実行ファイル) (ロードモジュール a.exe 等) hoge.c a.exe gcc 再掲載

(35)

本授業での開発に使うアプリ

• (テキスト)エディタ

• emacs 30年以上前からあるエディタ. • 多数のOSでの稼動実績がある. C:¥emacs¥bin¥runemacs.exe

• notepad++ 昨今に開発されたWindowsらしいエディタ

C:¥Program Files¥Notepad++¥notepad++.exe 等

• コンパイラ • gcc GNUというプロジェクトで開発されたコンパイラ. • 多数のOSでの稼動実績がある. ¥MinGW¥bin¥gcc.exe • その他,MinGWには,Linux/UNIXで使われるコマンドも入っており, それらも利用可能. • 別に利用しなくてもよいが,Windowsのコマンドより便利なものもある. • 教員の多くがこちらのほうが詳しいため,ついついデモでつかってしまうかも. 35

(36)

テキストエディタとは?

• 純粋に文字データの列としての文書を作成するた めのアプリ. • ただし,改行文字や空白文字等は扱うことができる. • ワードプロセッサ(ワープロ,MSワード等)と違い, 以下のような機能はない. • ページレイアウトの設定,ページサイズや縦横長等. • 文字の大きさ,種類,色の変更や,下線等の飾り. • 段落の字下げや箇条書き. • 図表の挿入. 36

(37)

何故,エディタを使うのか?

何故,ワープロを使わないのか? • ワープロは人間が読む本や小冊子(レポート等)を作るため のアプリである. • レイアウトや文字修飾等の見た目も重要. • 一方,これから開発するプログラムは,コンパイラ(gcc)が 読むためのデータである. • 冊子上でのレイアウトや修飾は無意味. • その代わり,プログラミング言語の特徴を強調する必要がある. • これらの強調は手動でつけるのではなく,エディタが文法を認識して,自 動でつけてくれる. • エディタとワープロは似てはいるが,成果物の読者が異な るのである. 37

(38)

リアルなプログラム例

38 アプリ unzip.exe を構築するには, このファイルを含む 153個のファイルが必要. 総行数は約8万2千行. 復習

(39)

基本的な使い方 emacs

• 起動 runemacs ファイル名 • 文字を入力すれば文字が入る. • カーソルキーで入力位置が変わる. • 実は他の方法のほうが一般的. • カーソル位置の前の文字を消す [back space] • カーソル位置の文字を消す ^D • コントロールを押しながらDを押すの意味 • ファイルを保存する ^X^S • 終了する ^X^C • その他,メニューから呼び出せる機能もある. 39

(40)

画面例

(41)

TIPS 1 emacs

• emacs起動時に,以下のように画面は上下に分かれていて,半分使え ない状態となっている. • これを解消するには,自分が文書をうつ側をクリックし,^X1 (コントロー ルをおしならがX 次に 1をうつ)で上側のみになる. • 尚,下側はemacsの詳しい使い方マニュアルになってるので,関心があ れば読んでください. 41

(42)

TIPS 2 emacs

• emacs起動時に,前ページのように画面は上下に分かれていて,半分 使えない状態となっている. • runemacs –no-splash ファイル名 として起動すると,前ページのようなことにはならないようです. 42

(43)

日本語入力について

• 他のアプリ同様,[半角/全角]キーで日本語,英文 字が切り替わります. • 日本語は基本,ローマ字入力してください. • 日本語入力時には空白文字を使わないでください. • いわゆる,「倍角文字」の空白となり,プログラム開発で はトラブルのもととなります. • 日本語入力のプロパティで倍角の空白を無効にするの がよいのですが,これは好みの問題. • プログラム開発では,日本語は使わなくても結構 です. • コメント文といわれる注釈も英語で結構です. 43

(44)

emacsでの日本語入力の注意

• emacsでは,[半角/全角]で英文字と日本語が切り 変わらなくなる障害が出る場合があります. • その場合,以下のどちらかを行なってください. • emacsのウインドウの位置を移動してみる. • emacsのウインドウのサイズを変更してみる. 上記で代替,切り替え機能が復活するようです. 44

(45)

基本的な使い方 notepad++

• あまり癖がないので,カーソルやメニューを使って 操作してください.

(46)

notepad++の特徴

• 所謂,マルチタブになって ます. • 明示的にタブを閉じない限 り,以前作業したファイル を再読み込みします. • ファイルメニュー中に,過 去に利用したファイルの履 歴が残っており,そこから も,ファイルを読み出せま す. • 行番号は邪魔なら消せま す. 46

(47)

エンコード設定 notepad++

• notepad++では,日本語を,UTF-8 という標準的なエンコー ドで保存します. • しかし,Windowsでは Shift-JIS 系のエンコードが主流なの で,変更してください. • メニュー > 設定 > 環境設定 > 新規文書 で以下の画面. 47

(48)

演習2 dotcampus

• 続くページ群にある8つの文書を指定したパスにテ キストファイルとして保存せよ. • 参考までに,これらの文書が,次回作成してもらうプロ グラムの仕様(問題文)の一部となってます. • 上記終了後に,自身のホーム下の projects フォル ダ内の全てのフォルダとファイルを,zipアーカイブ に封入せよ.ファイル名は projects.zip とする. • project.zip を提出せよ. 48

(49)

文書1

• 自身のホームの下の projects¥print01¥spec.txt

(50)

文書2

• 自身のホームの下の projects¥print02¥spec.txt

(51)

文書3

• 自身のホームの下の projects¥print03¥spec.txt

(52)

文書4

• 自身のホームの下の projects¥exp01¥spec.txt

(53)

文書5

• 自身のホームの下の projects¥exp02¥spec.txt

(54)

文書6

• 自身のホームの下の projects¥exp03¥spec.txt

(55)

文書7

• 自身のホームの下の projects¥scan01¥spec.txt

(56)

文書8

• 自身のホームの下の projects¥scan02¥spec.txt

(57)

zipアーカイブの作成法

• アーカイブに封入したいフォルダを選択し,右クリック で,7zipより,zipに圧縮を選択すれば,作成されます.

(58)

理解・修得してること (更新版)

1. PCをネットにつないでログインできる. 2. GUIを使いアプリを起動できる. 3. ファイルシステムの構造が理解・操作できる. • 少なくとも自身のホームディレクトリまわりは理解できて いる. 4. アプリとプロセスの違いがなんとなくわかってる. 5. アーカイブの意味と展開方法を理解できている. • アーカイブの作成方法もわかる. 6. コマンドプロンプトを利用できる. • フォルダの位置把握と,移動,操作ができる. • アプリを利用できる.特にテキストエディタ. 58

(59)

参考書

出来れば買って下さい,一般書店,ネット書店等. • C言語プログラミングレッスン 入門編 第3版 SBクリエイティブ ISBN-10: 4797398582 2570円 • 新・明解C言語 入門編 SBクリエイティブ ISBN-10: 479737702X 2484円 どちらか一冊で結構です. 59

(60)

本日は以上

流れ解散です

参照

関連したドキュメント

 中国では漢方の流布とは別に,古くから各地域でそれぞれ固有の生薬を開発し利用してきた.なかでも現在の四川

 スルファミン剤や種々の抗生物質の治療界へ の出現は化学療法の分野に著しい発達を促して

(使用回数が増える)。現代であれば、中央銀行 券以外に貸付を通じた預金通貨の発行がある

HORS

テューリングは、数学者が紙と鉛筆を用いて計算を行う過程を極限まで抽象化することに よりテューリング機械の定義に到達した。

LLVM から Haskell への変換は、各 LLVM 命令をそれと 同等な処理を行う Haskell のプログラムに変換することに より、実現される。

「系統情報の公開」に関する留意事項

②企業情報が「特定CO の発給申請者」欄に表示