Posts Tagged ‘ソフトウェア基礎演習’

(Quiz/1年次) ソフトウェア基礎演習: ランチャー

月曜日, 8月 3rd, 2009

(出典: Wikipedia:ランチャー

コンピュータ用語では、使いやすいようにファイルやアプリケーションソフトウェアを、ショートカットキーのキーボード操作や、ボタンのクリックひとつなどの簡単な操作で起動できる機能である。近年のグラフィカルユーザインターフェース (GUI) を備えた大抵のオペレーティングシステムに、標準で備えられている機能であるほか、ツールソフトウェアの形で、様々なものが提供されている。

上記を踏まえて,以下のクイズに答えよ.

  • ファイルやアプリケーションを「ショートカットキーのキーボード操作」で操作できる機能とあるが,具体的にどのような機能があるだろうか?普段使用しているアプリケーションのショートカット機能を調べよ(どのように調べれば良いだろうか?).
  • 「ツールソフトウェアの形で、様々なものが提供されている」とあるが,どのような専用ツールがあるだろうか?
  • 使いやすさは個々人の好みに相通ずるところもあり,万人にとって便利なツールという物はなかなか見当たらない.自分にあったランチャーが見つかるまで,いろいろ利用してみよう

(Quiz/1年次) ソフトウェア基礎演習: 圧縮/アーカイブ

金曜日, 7月 31st, 2009

(出典: Wikipedia:アーカイブ (コンピュータ)

アーカイブ(英:Archive)とは、コンピュータにおいて、複数のファイルを一つのファイルにまとめたファイル、もしくはそれを作成する過程を指す。実際の利用においてはアーカイブと同時にデータ圧縮も行われる場合が多いため、圧縮技術と混同されやすい。

上記を踏まえて,以下のクイズに答えよ.

  • Linux系OSで良く使われるアーカイブ形式の一つに,tarがある.他にどのような圧縮/アーカイブ形式があるだろうか?
  • 通常は,アーカーブ形式毎に専用の圧縮・展開のためのコマンドが用意されているが,複数の圧縮形式に対応したコマンドもある.各圧縮形式に対応するコマンドは何だろうか?
  • 複数の圧縮形式に対応しているコマンド例としては,先に挙げた tar もその一つである.例えば,filename.tar.gz は gzip 圧縮したもの,filename.tar.bz2 は bzip2 圧縮したものとなる.一方,Mac OS X では Finder 上でダブルクリックしたり,ターミナル上で open コマンドを利用する事で自動で解凍してくれる形式もある.open コマンドで対応している圧縮形式にはどのようなものがあるのだろうか?
  • open コマンドのように,自動で圧縮形式に対応した解凍を行うためには,指定されたファイルがどのような圧縮形式なのかを自動判別する必要がある.どのように判別しているのだろうか?

(Quiz/1年次) ソフトウェア基礎演習: コマンドの利用

月曜日, 7月 20th, 2009

Unixのコマンドラインで使えるちょっとした小技をまとめた『Unix Comman-Line Kung Fu』より)

これは良い文書。毎年Unixをいろいろな人に教えているコンサルタント、HalさんのプレゼンテーションがScribdで公開されていました。初心者が覚えるべきちょっとしたコマンドの小技がまとまっています。

たくさんの技があるのですが、個人的にぐっときたポイントをメモ程度にまとめておきます。興味のある方は是非全文読破してください。

上記で紹介されている小技集は,bash シェルを前提としたドキュメントである.tcsh で使えない場合には bash を利用してみよう.一時的に利用したいだけならばコマンドライン上で

prompt> bash

のように実行するだけである.

これらを踏まえて,以下のクイズに答えよ.

  • プログラミング等,作業によっては「少し編集->コンパイル->実行->動作確認」のように,なんらかのループ処理を何度も繰り返すスタイルで行われる事が多い.このように「直前や少し前に実行した過去のコマンドを実行したい」という欲求に答えるものが【コマンドヒストリ】である.現在利用しているシェルでコマンドヒストリとして記録されているヒストリを出力し,確認するにはどうすれば良いか?
  • ヒストリ上に記録されている過去のコマンドを実行するには,どうすれば良いか?
  • 過去のコマンドを「全く同じように実行したい」事もあれば,「同じ引数に対して違うコマンドを実行した」事など,さまざまな欲求が出てくるシチュエーションが出てくる.このようなヒストリ機能への対応は,シェルにより大きく異なる機能の一つである.tcsh, bash, zsh でのヒストリ機能について違いを調べよ.

(Quiz/1年次) ソフトウェア基礎演習: シェル

金曜日, 7月 17th, 2009

Wikipedia:シェルより)

シェル (shell) はオペレーティングシステム (OS) の機能の一部であり、ユーザーからの指示を受けて解釈し、プログラムの起動や制御などを行うプログラムである。

上記を踏まえて,以下のクイズに答えよ.

  • 情報工学科では未だに tcsh から教えているが,実はこれは既に標準シェルとして利用されることが少なくなって来ている,古くさいシェルである.どのようなシェルがあるだろうか? tcsh より使いやすいシェルは無いだろうか?
  • 何故このように多くのシェルがあるのだろうか?シェル毎に何が違うのだろうか?
  • 一般的に,シェルは CUI である.提供している機能の多くは GUI でも実行可能なことが多い.それでもシェルを使うにはそれだけのメリットがあるからである.どのようなメリット・デメリットがあるだろうか?

(Quiz/1年次) ソフトウェア基礎演習: sudo

月曜日, 7月 13th, 2009

Wikipedia:sudoより)
sudo(“su do”)はUNIXおよびUnix系オペレーティングシステムのプログラムの1つで、ユーザーが別のユーザー(通常、スーパーユーザーすなわち root)の特権レベルでプログラムを実行するためのコマンドである。デフォルトではその別ユーザーのパスワード入力を求めてくるが、設定を変更すれば root のパスワードを求めるようにもできるし、擬似端末につき1回だけパスワードを入力すればよいようにも、全くパスワード入力を求めないようにもできる[2]。sudo は各コマンド実行を記録でき、スーパーユーザーとしてのログインの完全な代替として使う場合もある。例えば、アップルの Mac OS X や Linuxディストリビューションの Ubuntu はそのような使い方をしている[3][4]。

上記を踏まえて,以下のクイズに答えよ.

  • 「特権レベルでプログラムを実行するためのコマンド」とあるが,特権レベルとは何か? 何のために特権レベルが存在しているのだろうか?
  • 「sudo は各コマンド実行を記録でき」とあるように,その実行履歴がログとして保存されている.その保存場所は環境依存の部分もあり,必ずしも同一の場所・同一ファイル名とは限らないが大凡似たような場所にある.Mac OS X の場合はどこに保存されているだろうか? 学科サーバ(Cent OS, Fedora)の場合にはどこに保存されているだろうか?
  • ログファイルがどうしても見つけられない場合,どうやれば探し出す事が可能だろうか?

(Quiz/1年次) ソフトウェア基礎演習: テキストエディタ

金曜日, 7月 10th, 2009

Wikipedia:テキストエディタより)
テキストエディタ(text editor)とは、コンピュータで文字情報(テキスト)のみのファイル、すなわちテキストファイルを作成、編集、保存するためのソフトウェア(プログラム)である。一般的に、文字情報の入力、削除、コピー、貼り付け、検索、置換、整形などの機能を備えている。OSにこれらの基本的な機能を備えたエディタが付属していることが多い。しかし、さらに多機能なテキストエディタ(例えば、検索や置換に正規表現が使用可能なもの)がしばしば用いられる。

上記のように,テキスト編集作業を支援するために利用するのがテキストエディタである.一つの側面(見た目が良いとかGUIで直感的とか)でエディタを選ぶ事も理由にはなるが,結果として作業効率が落ちるのであればそれはそもそも選択基準に誤りがあるだろう.

情報工学科ではプログラミング等でソースを書くためのエディタとして emacs を選択(1年次の講義で指導)している.それ以外にも様々なエディタがある中で emacs を選択しているのは,プログラミングの際に便利な点がいろいろある事が理由となっているが,必ずしも emacs がベストだとは限らない.

上記を踏まえて,以下のクイズに答えよ.

  • emacs について,どのような利点があるのか調査せよ.
  • それ以外のエディタを使用している場合,emacs と比較してどのような利点・欠点があるのか整理し,その選択が妥当な物なのかを客観的に評価せよ.
  • emacs しか使用した事が無い場合には,どのようなテキストエディタがあるか調査し,試用してみよ.

(Quiz/1年次) ソフトウェア基礎演習: RSSリーダー

金曜日, 7月 3rd, 2009

Wikipedia:RSSより)
RSSは、ニュースやブログなど各種のウェブサイトの更新情報を簡単にまとめ、配信するための幾つかの文書フォーマットの総称である。

RSS の出現により,それまでは当たり前であった「ブックマークしたページを一つずつ訪問して更新が無いか確認し,閲覧する」というスタイルに,大きな変化が訪れた.

上記を踏まえて,以下のクイズに答えよ.

  • RSSの出現により訪問/閲覧スタイルがどのように変化したのだろうか?
  • そのように変化したのは何故か?いわゆる,従来の配信方式を「pull 型メディア」と呼ぶのに対して,RSS配信を何と呼ぶか?
  • RSSを読むためのソフト(RSSリーダー)にはどのようなものがあるだろうか?

(Quiz/1年次) ソフトウェア基礎演習: HTMLとCSS

金曜日, 6月 19th, 2009

web ページを作成する際,何らかの編集ツールを使うにせよ,それらのツールによる最終的なアウトプットの多くはHTMLやCSSであり,これがクライアント(閲覧要求をしたユーザの使用しているブラウザ)に送信され,ブラウザが解釈して表示している.

このHTMLやCSSとは,以下のように説明されている.

Wikipedia:HyperText Markup Languageより)
HyperText Markup Language(ハイパーテキスト・マークアップ・ランゲージ、略称:HTML)は、ウェブ上のドキュメントを記述するためのマークアップ言語である。

Wikipedia:Cascading Style Sheetsより)
Cascading Style Sheets(CSS、段階スタイルシート、カスケーディング・スタイル・シート、カスケード・スタイル・シート)とは、HTML や XML の要素をどのように修飾(表示)するかを指示する仕様であり、W3Cによる勧告の一つ。文書の構造と体裁を分離させるという理念を実現する為に提唱されたスタイルシートの、具体的な仕様の一つ。

上記を踏まえて,以下のクイズに答えよ.

  • CSSの説明に「文書の構造と体裁を分類させるという理念」というフレーズが出てくるが,これはどのような理念だろうか?
  • 「文書の構造と体裁」を分離させる事でどのようなメリット・デメリットがあるのだろうか?
  • ブザウザに読み込まれるファイルは,HTMLとCSS以外にどのようなものがあるか?例をいくつか示せ.