電子書籍の厳選無料作品が豊富!

Javaってどんな言語ですか?

A 回答 (4件)

なにと比較するかで難しいのですが…



よく比べられるC#との関係でいうと次のような感じでしょうか。

利点と言える特徴
・動くOSが多い
 C#の場合Windows以外は、Monoの様なサードパーティー製の環境が必要になる
 一方JavaであればOpenJDK JREの公式環境がSolaris、macOS、Linux、FreeBSD、OpenBSD、NetBSD、AIX、HP-UXといった非Windows環境でも使用できる

欠点と言える特徴
・パフォーマンスが悪い
 同一アルゴリズムでC#と比べると10倍の時間かかる場合がある

中立の特徴
・C#に比べて構文が限られる
 エレガントに書けないという欠点でもあるが、読みにくいソースにならない利点でもある

C++ともにている為時々比べられますがその倍は次のような関係になります。

利点と言える特徴
・構文がシンプル
 C#との関係では中立であったが、C++の場合はあまりにも構文が複雑すぎる為、Javaの利点になる
・バグフィクスがやりやすい
 スタックとレースなど豊富なデバッグ情報が出力する機能を言語として持っている

欠点と言える特徴
・パフォーマンスが悪い
 同一アルゴリズムでC++と比べると15倍の時間かかる場合がある

言語としての出来は正直なところ良くないのですが、その手軽さと、どこでも同じように動く割にパフォーマンスが良い言語く、大体だれでも読める、全体としてはなんとも言えない都合の良い言語という感じでしょうか。
    • good
    • 0
この回答へのお礼

ありがとうございます

お礼日時:2018/08/31 11:15

■小さくてやさしい言語



基本 C++ から難しい機能を削った言語ですね。
オペレータオーバーローディングとかパラメータの省略とか未だにないし、保守的です。
その分覚える機能が少なくて済みます。

■がちがちな静的言語

型付けが静的なので、動的言語に比べコーディングがめんどくさいです。その分
プログラムがかなり読みやすいです。コンパイル時に多くのチェックが行われるため
動的言語に比べデバッグ工数が少ないです。

■小さな基本ライブラリ
基本ライブラリもストイックで、.NET Framework の何でもありとは対極で、必要最小限なもののみ
提供し、サードパーティのライブラリが足りない部分を補うという形をとっています。
これも最初に覚えることを小さくする配慮です。

■GCベースのVM上で動く言語
Javaは最初のガーベージコレクションを搭載した仮想マシン上で動く言語として登場しました。
これを真似たのが後の .Net Framework + C#やVB.NETです。

プログラマの天敵であるメモリリークの危険性を激減することに成功しました。

■Webサーバ上で広く使われている

Webサーバ上のWebアプリケーションの構築に広く使われています。
ひと頃は Webアプリ=Javaアプリでした。現在でもシェアは圧倒的です。

コンソールアプリも GUIアプリも書けますが、この分野では他の言語に劣っています。
C#とかで書いたほうが楽。

■Adnroid も Javaで書く

Android携帯のアプリも Java で書くことが前提になっています。
    • good
    • 0
この回答へのお礼

ありがとうございます

お礼日時:2018/09/05 05:30

>Javaってどんな言語ですか?


いろんな解説があると思いますが、個人的な感想としては
(良い意味で)制約が多く、間違ったコードを書きにくい言語
でしょうか。
マシン独自の得意とする機能を十二分に発揮するようなプログラムは書けない代わりに、
どのマシンでも動くような特徴のないプログラムを書くのに適した言語です。
なお、特定のマシンに特化したプログラムは、アセンブラやC言語が得意です。
    • good
    • 1
この回答へのお礼

ありがとうございます

お礼日時:2018/08/31 11:16

グーグルで検索すれば、いろんな答えが見つかりますよ。

    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!