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

「プログラミング環境特論」イントロダクション

N/A
N/A
Protected

Academic year: 2021

シェア "「プログラミング環境特論」イントロダクション "

Copied!
2
0
0

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

全文

(1)

「プログラミング環境特論」イントロダクション

プログラミング環境とは?

「プログラミング環境」とは何であろうか?この用語はあまり単独で用いられることは少 ない。たとえば、「Javaプログラミング環境」とか「Unixプログラミング環境」「ARMプ ログラミング環境」というように、言語、オペレーティングシステム、プロセッサなどを つけて、用いられることが多いようである。「Java プログラミング環境」といえば、Java 言語を用いてプログラミングするための言語処理系、デバッカ、ライブラリなどのことを 意味するし、「ARMプログラミング環境」といえば、ARMというプロセッサを使うための プログラミングのソフトウエア群を意味する。コンピュータはプログラムを実行する機械 であり、そのためのプログラミングをするためのソフトウエア群が必要である。これらの ソフトウエア群がプログラミングのための「環境」を構成する。プログラミング環境を構 成するソフトウエアとしては以下のような要素がある。

z プログラミング言語(アセンブリ言語の場合もある):どのようなパラダイム、モ デルでプログラムをするか(たとえば、オブジェクト指向)

z コンパイラあるいはインタプリタ、すなわち言語処理系:どのようなエラーメッ セージをだすのか、あるいはどの程度最適化するか。

z アセンブラやリンカなど、基本ソフトウエア

z プログラムを作成するためのエディタなどのツール、あるいはvisual プログラミ ングの場合は、グラフィックインターフェース

z プログラムを正しく動作させるためのデバッカ、性能を改善するパフォーマンス ツール

z ライブラリ

z オペレーティングシステム(コマンド群)、そのインタフェース(システムコール 群)

これらのソフトウエアは、コマンド群である場合もあるし、windowsのvisual Studioのよ うな統合ツールとして提供される場合もある。

プログラミング環境の目標

プログラミング環境の目標は開発したいソフトウエアシステムを

¾ わかりやすく: programming model

¾ 手間をかけずに(楽に): programming cost

¾ 間違いなく(正しい): correctness

¾ 効率的な(速い): efficiency

プログラミングできるようにすることである。わかりやすさは、個々のプログラミング言 語だけでなく、その言語が提供するプログラミングモデルが大きく影響する。たとえば、

現在重要な技術であるオブジェクト指向プログラミングモデルは、Java、C++、など多く のオブジェクト指向言語のモデルであり、プログラミングのしやすさ、わかりやすさに大 きく影響する。また、言語が提供する機能を単に理解するだけでなく、エラーの少ない正 しいプログラミングするためには、モデルにもとづき、プログラミング言語を正しくつか うことが必要であり、それは「原則」principalというべきものを理解する必要がある。

「プログラミング環境」を論ずる確固たる理論があるわけではない。開発するプログラ

(2)

ム、あるいは言語によりさまざまな「プログラミング環境」がある。しかし、これまで様々 なシステムがあり、様々なプログラムが開発され、そこにはそのためのプログラミングを 支援するプログラミング環境が提供されてきた。そこには、共通する「原理」あるいは「モ デル」をいうべきものがあり、それらを汲み取ることが大切である。

講義の内容

この講義では、いくつかのプログラミング環境を取り上げ解説する。

以下の項目を予定している。

12/6: (1) イントロダクション、Javaによる分散プログラミング入門[佐藤]

12/13: (2) GNU開発ツール [建部]

12/20: (3) グリッド・プログラミング環境1 (Globus/GSI) [建部]

1/10: (4) グリッド・プログラミング環境2 (データグリッド) [建部]

1/17: 休講

1/24: (5) 高性能並列プログラミング環境(MPI/OpenMP) [建部]

1/31: (6) Web プログラミング入門1 servlet, JSP [佐藤]

2/7: (7) Web プログラミング入門 2 web service[佐藤]

2/13: (8) Web プログラミング入門 3 AJax[佐藤]

2/21: (9) プログラミング環境についてのプレゼンテーション[建部, 佐藤]

重要なプログラミング技術であるオブジェクト指向プログラミングを中心に進める。その 後、分散プログラミング、並列プログラミングについて解説する。分散並列システムでの プログラミングは、通常の逐次環境よりも数段に複雑であり、プログラミングのためのプ ログラミングモデル、環境が必要となる。

その講義の内容に関する資料は、

    http://www.hpcs.is.tsukuba.ac.jp/~msato/lecture-note/

にて、公開する。

参考書、文献等については、そのつど、紹介する。

質問に関しては、

    [email protected] で、随時、受け付ける。

成績評価については、全講義終了後、レポートの提出により、評価する。

今年の新しい試みとして、2/21日にプログラミング環境についての3分 プレゼンテーショ ンを予定しています。

参照

関連したドキュメント

また、 NO 2 の環境基準は、 「1時間値の1 日平均値が 0.04ppm から 0.06ppm までの ゾーン内又はそれ以下であること。」です

○事業者 今回のアセスの図書の中で、現況並みに風環境を抑えるということを目標に、ま ずは、 この 80 番の青山の、国道 246 号沿いの風環境を

このような環境要素は一っの土地の構成要素になるが︑同時に他の上地をも流動し︑又は他の上地にあるそれらと

○藤本環境政策課長 異議なしということでございますので、交告委員にお願いしたいと思

○松岡緑環境課長

3R・適正処理の促進と「持続可能な資源利用」の推進 自然豊かで多様な生きものと 共生できる都市環境の継承 快適な大気環境、良質な土壌と 水循環の確保 環 境 施 策 の 横 断 的 ・ 総

3R・適正処理の促進と「持続可能な資源利用」の推進 自然豊かで多様な生きものと 共生できる都市環境の継承 快適な大気環境、良質な土壌と 水循環の確保 環 境 施 策 の 横 断 的 ・ 総

3R・適正処理の促進と「持続可能な資源利用」の推進 自然豊かで多様な生きものと 共生できる都市環境の継承 快適な大気環境、良質な土壌と 水循環の確保 環 境 施 策 の 横 断 的 ・ 総