なぜJavaの人気は衰えないのか

この記事をSNSで投稿する

1: 名無しさん 2014/08/11(月) 22:06:03.81 ID:???.net
これはおばあちゃんの淹れてくれるジャワ・コーヒーの話ではない。
1995年辺りに誕生したにも関わらず、Javaは今でも使用されるプログラム言語である。
事実、最近の雇用レポートで、Dice.comはJavaを2015年にプログラミング関連の仕事に就くために
有利な5つの言語の一つに挙げている。

どうやってJavaはこんなに長期間、プログラミング言語の頂点に君臨し続ける事ができたのか?
Go言語はクラウド・コンピューティングの隆盛と共に流行し始めた。Scalaはここ10年ほど企業拡大に貢献している。
その他の言語、例えばPHPやPythonも相当使われてきた。

だがJavaは、どのような調査においても、例えばIEEE spectrumによる求人とオープンソースに関する調査において、
その首位に君臨し続けている。
no title

そしてVisionMobileが行った最新の開発者への調査が示しているように、Javaは企業からの信頼が厚い。
さらにモバイルにおいても影響を持ち始めている
(グーグルがJavaをAndroid開発の共通言語として採用したことは不利に働かなかった)。

no title

「モバイルアプリ開発者向けの言語ランキングでHTML5がトップ(Javaは2位)」

何故だろうか。
世界はデータセンターからクラウドへ、デスクトップからモバイルへとシフトして来たのに、何故Javaはそんなに長い期間、
有用でありつづけることができたのか?

ジェイムス・ゴズリンと彼の愉快な「グリーン・チーム」が1995年に発表した当時のJavaは偉大だった。
しかし成功持続の鍵は、最新のコンピューティングの要求を満たせるように進化するという、Javaが持つその素晴らしい能力にあった。

しかしながら、なによりもまず、Javaはとても親しみやすいということがあった。OpenGammaの
共同設立者であるカーク・ワイリーが強調しているように、「(Javaは)一般人にとって、C++に比べて遥かに親しみやすかった」。
その親しみやすさは、言語の馴染みやすさとコードの可用性という形でみられる。

デル社のクラウド管理用製品部門ディレクター、ジェイムス・アーカート(@jamesurquhart) は、
Javaが持つ技術特性が、多くの開発者達に大歓迎された理由をいくつか提示している。

1. コンポーザビリティ。必要に応じて要素を内包、又は構築できる。(EJBsはまさにこの理由で生き残る事ができなかった。)

2. 偏在性。Javaは、Java自体の構築から、インフラ及びオペレーティング・システムのサポート、
     そしてJava内のソリューションまで広く採用されている。これは他の言語ではsあまり見られないことだ。

3. ユーティリティ性。ほとんど全ての主要な要求に対してアドレス可能。たくさんの手製アセンブリがある。
     そしてモバイル、埋込型、ウェブ、様々なスケールにも対応可能だ。

この最後の点について、Castlight Health社のシニア・エンジニア、デイビッド・ヴァン・クーバリング(@dcouvering)は強調する。
「パフォーマンスも素晴らしい…静的に扱えるため、巨大なコード・べースにも対応可能なのです。」

どんな仕事も必ずやり遂げる

おそらくこれがJavaの有用性の究極的な理由だろう。
ライバル達と違って、Javaはどんな規模においても、多種多様なアプリケーションに用いられてきた。
実際、クレディ・スイス副社長のゾハル・メラメド(@zohar_melamed)は、
Javaが「負荷がかかった状況にも対応できる言語」であるとし、失敗の可能性を最小限にしたい者達が頼るべき
言語と位置づけている。

テクノロジーによっては、その主な役割が別のものに奪われても、ニッチな役割を担うことによって長く生き残るものもある。
産業界と演算プラットフォーム全体に渡って、Javaはあらゆる用途に使用できる際立つ存在といえる。

Dice.comがJavaを「職に就きたければ」学ぶべき言語のリストのトップに置いたも納得できる。
これは2014年だけでなく2004年にもそうだった。考えてみると、それは驚くべき事である。

http://readwrite.jp/archives/11578

2: 名無しさん 2014/08/11(月) 22:08:16.18 ID:MWSS56E0.net
7年前のソースをつい最近メンテした(´・ω・`)
124: 名無しさん 2014/08/12(火) 00:54:31.78 ID:7UlhGRtx.net
>>2
7年前のソースでメンチ食ったのかと思った
3: 名無しさん 2014/08/11(月) 22:10:48.08 ID:ZAOQW2Ds.net
C#触ったらJAVAなんてやってらんない
9: 名無しさん 2014/08/11(月) 22:18:17.42 ID:i+GPPBT5.net
>>3
ほんとこれ
114: 名無しさん 2014/08/12(火) 00:27:31.25 ID:LTHr5aNS.net
>>3
ようやくLinqのパクり導入したらしいぞ

これでほんのちょびっとは触る気になれる

421: 名無しさん 2014/08/13(水) 06:46:10.19 ID:SXdVyQwc.net
>>3
C#がいろんなプラットフォームで使えたら最強なんだけどな
12: 名無しさん 2014/08/11(月) 22:22:06.06 ID:ZKKIZdiP.net
C#ってそんな良かったっけか
8年くらい前の数カ月間しか触ってないからなぁ
何か短く書けたのはぼんやり記憶してるケド
13: 名無しさん 2014/08/11(月) 22:23:30.55 ID:hdT+f5Qf.net
>>12
JAVAのパクリだから紆余曲折したJAVAに比べてすっきりしてたような気がする
212: 名無しさん 2014/08/12(火) 08:13:51.74 ID:bvk+2M6+.net
>>13
Delphiのパクリというか
Delphiの開発者が短小フナちんに引き抜かれて作った
19: 名無しさん 2014/08/11(月) 22:27:29.34 ID:6mXJKfuK.net
これだけは若い奴に言っておく
ぶっちゃけ、食っていくならCOBOL
24: 名無しさん 2014/08/11(月) 22:30:23.45 ID:20ZbVXOO.net
>>19
人はパンのみにて生きるにあらず
30: 名無しさん 2014/08/11(月) 22:38:26.91 ID:Fm2NpW2I.net
×Java人気
○JavaScriptで食いつないでる
33: 名無しさん 2014/08/11(月) 22:45:31.69 ID:7XUD8uIK.net
JavaScriptはJavaとは無関係
32: 名無しさん 2014/08/11(月) 22:45:05.07 ID:SkHFl/iI.net
no title
64: 名無しさん 2014/08/11(月) 23:18:45.44 ID:WYihBqCn.net
>>32
こいつもロングセラーだなww
51: 名無しさん 2014/08/11(月) 23:03:12.99 ID:sKKuLGm6.net
アセンブラ→C→C++→Javaの順番で覚えれば頭に入りやすいのに、最近の連中は
逆順で覚えるからな。
60: 名無しさん 2014/08/11(月) 23:10:29.94 ID:3I00jo1y.net
>>51
そういうお前は、ENIACやEDSACをやったことあるのかよ。
53: 名無しさん 2014/08/11(月) 23:03:50.91 ID:2n98+VeJ.net
そろそろ原点回帰でマシン語に戻ろうぜ
66: 名無しさん 2014/08/11(月) 23:24:26.50 ID:mjGXWCv+.net
普通に良い言語だと思うが
検査例外の思想とか好きよ
76: 名無しさん 2014/08/11(月) 23:34:13.68 ID:ezEsAkGU.net
Javaと言えば、ぬるぽ
77: 名無しさん 2014/08/11(月) 23:34:50.03 ID:2/VMVOsN.net
>>76
ガッ
92: 名無しさん 2014/08/11(月) 23:54:30.83 ID:y6TS6OGA.net
Eclipseのコードアシストが発達しすぎて、
もはやEclipseなしにはコードが書けないんじゃないかと思うくらいに楽チン
IMEなしには漢字が書けないのと同じ感じ
101: 名無しさん 2014/08/12(火) 00:02:47.05 ID:bER3Zq9v.net
>>92
私は使いにくいわ。
96: 名無しさん 2014/08/11(月) 23:59:14.32 ID:0rG/NkM1.net
How many files(1-15)?
103: 名無しさん 2014/08/12(火) 00:04:43.25 ID:Qh8By3uF.net
>>96
ハニリイト
105: 名無しさん 2014/08/12(火) 00:05:30.97 ID:FuJH5dA5.net
Linuxデバドラ書き続けて10年
こういう話題についてけなくて不安になる
115: 名無しさん 2014/08/12(火) 00:27:41.30 ID:xbqZ0Bty.net
>>105
大丈夫
アセンブラとCとJAVAさえ理解できてれば、最近の言語なんて3日で理解できる
121: 名無しさん 2014/08/12(火) 00:43:14.88 ID:h6E2DJOn.net
>>115
その最近の言語ってのが、JAVAなんですけど・・・
158: 名無しさん 2014/08/12(火) 02:45:25.73 ID:1Ovbh7dV.net
>>115
まあいえてるけど

ecmaスクリプトもう少し何とかならんのか

169: 名無しさん 2014/08/12(火) 03:36:17.69 ID:FuJH5dA5.net
>>115
armアセンブラとCとC++は仕事で使うわ
会社倒産してもアプリ屋はJavaできて求人が多いから食いっぱぐれないだろうなあ
172: 名無しさん 2014/08/12(火) 03:45:48.85 ID:dBVEyJDG.net
>>169
最近は言語の知識ではなく、フレームワークの知識が要求される。
127: 名無しさん 2014/08/12(火) 01:07:11.25 ID:4osbJzer.net
javaのおすすめフレームワーク書いといて

寝て起きたら見ます

180: 名無しさん 2014/08/12(火) 04:33:16.05 ID:7Fd1t8AL.net
>>127
Play
DropWizard
181: 名無しさん 2014/08/12(火) 04:38:55.82 ID:KE1Qdi7/.net
>>127
何の用途かわかんないから、取り敢えずJUnit
135: 名無しさん 2014/08/12(火) 01:23:14.22 ID:bNZ6pM5G.net
やっぱ基本コンセプトが効いているわな。

つまり、一度書いたら、どこでも動くというアレ。

その都度ソフトを書いていたら、いくらマンパワー有っても
足らない当世事情。 

再利用性、可搬性、保守性。
これだわ。 トータルなコストに効きますわ。

140: 名無しさん 2014/08/12(火) 01:36:09.87 ID:7Fd1t8AL.net
>>135
iPhoneで動かないわな
451: 名無しさん 2014/08/13(水) 16:00:26.98 ID:SxHP/FXO.net
>>140
動かないんじゃなく「動かさせない」ってだけじゃんw
201: 名無しさん 2014/08/12(火) 07:39:57.81 ID:St6uXIvJ.net
JavaやったらC#なんてやってられない。
202: 名無しさん 2014/08/12(火) 07:40:32.41 ID:WMUuzO9+.net
>>201
両方やるけど?
214: 名無しさん 2014/08/12(火) 08:23:04.81 ID:vd7hA3Ha.net
実際作る側としてはJavaよりC#の方が部品揃ってて使い易いんだが、なぜ普及しないのか謎

ビジネスロジックが主担当な立場としては、jsファイルとか作りたくねーよと時々思う

216: 名無しさん 2014/08/12(火) 08:26:33.05 ID:bvk+2M6+.net
>>214
企業体質が、過去を簡単に切り捨てるからだろ
220: 名無しさん 2014/08/12(火) 08:33:55.95 ID:vd7hA3Ha.net
>>216
そんなに過去を捨ててきたっけ?

つか、Javaもフレームワークの代替わりが早いイメージがあるけど
Strutsとか一時期はスタンダードになったけど今じゃ息してない子も多いじゃん?

225: 名無しさん 2014/08/12(火) 08:42:09.41 ID:CpyNQn6z.net
>>220
Strutsは実は今でも意外と使われてたりする
覚えた資産をなかなか捨てられない、新しいことにステップアップできない会社が意外と多いんだな
238: 名無しさん 2014/08/12(火) 09:35:06.03 ID:ywWHpVG1.net
>>225
Struts1系はOpenSSLの脆弱性が
Struts2系ならSpring使ったほうがいい
239: 名無しさん 2014/08/12(火) 09:47:17.29 ID:U07cCYmt.net
つか、>>1の記事って
・JAVAは新しい方の言語だし
・androidのJAVAは主にパフォーマンスの面で不利に働いてるし
・そもそもWebのサーバーサイドとandroid以外では失敗してるといって言いと思うし
で、分析としては日経の記事並に失敗してる気がするのだが。
262: 名無しさん 2014/08/12(火) 12:59:08.19 ID:aD02OW1Y.net
>>239
まあ、モバイル以外のサーバークライアントアプリって減ってるからね

あとエンベッドの世界は今も昔もC++で特殊だし

webの次のプレゼン層ってモバイルアプリだとも言われてるし

パフォーマンスの問題もプリコンパイル技術が解決しそうな状況だし

いろいろ考えると、WebとAndroidを抑えた以上、やっぱJavaは強いと思うよ

240: 名無しさん 2014/08/12(火) 09:56:35.44 ID:2HZ/5jrJ.net
no title

これの Types欄の右端にあるゲジゲジみたいのってなに?CとC++だけに付いているやつ

241: 名無しさん 2014/08/12(火) 10:04:51.88 ID:v2XTZ0AB.net
>>240
組み込み用で使われてる事を言いたいのだと思う
278: 名無しさん 2014/08/12(火) 14:40:02.87 ID:QYjkYaEt.net
スマホアプリとか仕事の補助ツールが作りたくて言語の本を買ってきたけど意味不明で挫折。捨てることもできず心の重石になっている。
Javaは出来たら楽しそうだなとは思うけど何処から勉強していいかすらわからない。
283: 名無しさん 2014/08/12(火) 15:00:22.63 ID:3x6swHGt.net
>>278
プログラム言語は
まず絶対覚える必要のある
文法の部分と
言語ごとにかわる関数の部分がある

文法の部分は言語入門を写経しながら
79733021

ただ覚えるだけ(1日8時間で2週間ぐらい)
これができたらだいたいの言語は方言なので1.2日で理解できるようになる

関数の部分は調べてもいいしプログラムやりながら覚えるもの
てきとうなサンプルが乗ってる本を打ち込んで慣れる

292: 名無しさん 2014/08/12(火) 16:44:15.62 ID:EKyanp/a.net
Javaって現代のCOBOLだよなぁ。
295: 名無しさん 2014/08/12(火) 17:22:10.25 ID:U5fNesUG.net
>>292
まるで違うなぁ。
並列処理もできるしコンピュータサイエンス系の
スパコン系やグラフィック系の一流学会誌でもJavaを使った物も掲載されているからね。

組み込み系はCが強いけどJavaはやはり便利だよ。大体できないことが無いだろ。
android 系もJavaベースだしな。

301: 名無しさん 2014/08/12(火) 19:47:54.91 ID:7Fd1t8AL.net
Javaは汚いわけのわからないコードが多い。敷居の高いNode.jsに逃げたい。
308: 名無しさん 2014/08/12(火) 21:25:25.04 ID:FuJH5dA5.net
メモリの電源入れてスタックポインタ設定すると後は殆どCでいける
309: 名無しさん 2014/08/12(火) 21:49:09.43 ID:d7pV6Np4.net
つか、C#の話が滅茶苦茶よく出てきてるけど、どんな職業についてる人が使ってるの?
少なくとも昨今のITベンチャー系でもなければシステム開発会社ではないよな?

それとも俺が無知なだけ?
マジで教えて欲しいんだが。

310: 名無しさん 2014/08/12(火) 21:58:01.30 ID:sQHDokFU.net
>>309
受託開発案件とかだと C# 結構使われてるよ
318: 名無しさん 2014/08/12(火) 22:25:03.51 ID:X8iTdmyo.net
>>309
ゲーム系だと、unityで使われる
328: 名無しさん 2014/08/12(火) 23:06:24.08 ID:DWz0ErO1.net
MAKEは依存性記述があるバッチ処理だし、libはobjの集合体に過ぎない。
objやlibをリンクするのはリンカーの仕事。
330: 名無しさん 2014/08/12(火) 23:10:32.59 ID:ks7/kd0r.net
>>328
書き方悪くてスマンが要するに、Cだけでブートにかかわる部分を記述できるの?って事。

俺は狭い範囲しか知らんのに断定して申し訳なかったが、当時Z80でROM焼いてた時は
プログラム本体はCで.hexファイル出せるクロスコンパイラで行けたが、
ROMに火が入った直後に実行される部分はアセンブラにしか書けないと言われたもんで。
その会社のレベルがそれしか知らんかったんだろうけど。

336: 名無しさん 2014/08/12(火) 23:22:17.56 ID:DoMkQHnk.net
COBOLが悪い訳じゃない。
厄介なのはCOBOLで出来ない事はどんな言語であれ出来ないと言ってしまう技術者。

本人の技量として出来ないと言うのならわかるが設計思想がCOBOLから
脱却出来ないのは勘弁して。

340: 名無しさん 2014/08/12(火) 23:28:48.53 ID:CEv4hTMc.net
>>336
COBOLで割込み処理とか考えたら胸熱
329: 名無しさん 2014/08/12(火) 23:09:25.42 ID:yLWe6w+/.net
Javaって名前がなー
スターウォーズで出てきた醜い化け物思い出すわ
no title

引用元: ・【IT】なぜJavaの人気は衰えないのか 2014/08/11

Sponsored Link
同カテゴリの新着記事

この記事をSNSで投稿する

コメントをどうぞ

メールアドレスが公開されることはありません。

コメントに画像を添付できます

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)