C#とC++とオブジェクト指向 上甲 健史
C++ C++は、1983年にベル研究所のコンピュータ科学者であったビャーネ・ストロヴストルップが、C言語の拡張として開発した。当時の名前は「C with Classes」(クラス付きのC言語)というものであった。
これがC++のプログラム。文章を表示させるだけの簡単なもの 標準名入出力 #include<iostream> int main() { cout << “こんにちは、C++の世界へよ うこそ!" << endl; return 0; } ″”の中が出力する文章
C# C#(シーシャープ)はマイクロソフト社によって同社の.NET戦略の一環として開発されたオブジェクト指向プログラミング言語である。
C#のプログラムの例。表示させたい内容はさっきのC++ とほぼ同じ。 using System; class InputOutputSample { public static void Main() Console.WriteLine("こんにちはC#の世界へようこそ!"); } クラスの宣言 文章を出力させる文
Java アメリカのサン・マイクロシステムズ社が開発したオブジェクト指向のプログム言語。従来よく使われていたプログラム言語を使用して開発されたプログラムは、Windows(ウィンドウズ)用とかMacintosh(マッキントッシュ)用というように、そのプログラムを動かす機種に依存する。しかし、Javaを使って開発すれば、Javaを動かせる条件さえあれば機種を問わず動かせる。
Javaのプログラムの例。表示内容は同じ public class reidai1 { public static void main(String args[]) { System.out.println("Hello"); System.out.println(“Javaの世界へよう こそ"); System.out.println(""); } }
なぜこのような言語が現在よく使われているのか? A.オブジェクト指向言語であるから。現在の開発では効率化が求められオブジェクト指向に基づいた開発がおこなわれている。
オブジェクト指向 オブジェクト指向におけるモデリングでは、問題領域について、実行可能な関数の集合として認識するのではなく、互いに関連し相互作用するオブジェクトの集合として認識するため、問題領域の複雑性に取り組むことに専念しやすくなる。 クラスは、オブジェクトの設計図に相当するものである。クラスは、オブジェクトの設計図に相当するものである。 オブジェクトそれぞれが属性とメソッドをもち、すべてのオブジェクトのメンバ (属性とメソッド) は、そのオブジェクトが属するクラスで定義されている。 こうしたオブジェクトの定義 (クラス) は、スキーマである。
クラス 概念的にはクラスはオブジェクトの種類を表す。 オブジェクト指向ではクラスの詳細ではなく複数のクラス同士のつながりに視点を置いて分析を行う。 分析を行うためのツールとして、クラス図やユースケース図がある。 属性 操作 クラス図
オブジェクト指向言語一覧 1962 Simula 1993 NewtonScript 1972 Smalltalk 1993 Rudy 1994 Perl 1938 Objective-C 1995 Java 1986 Eiffel 1995 ObjectPascal(Delphi) 1987 Self 1996 JavaScript 1988 CLOS 1996 Ocaml 1988 Modula-3 2000 C# 1990 Python 2002 COBOL 1990 Sather