アンチJava厨が無いと思って恥かきそうなJavaの機能
一つのファイルに複数のpublicなクラスを定義することが出来る
アンチJava厨が無いと思ってるJavaの機能でいいじゃん。>スレタイ
リフレクションAPI、動的なメソッド呼び出し
実行時にクラスメソッドを追加する。
などの動的コード生成ライブラリ
CGLIBなど。(これはマイナーなものではなく
HibernateやSpring等で使われている)
Javaにはまともなlambdaが実装されないからなぁ(チラッ
ラムダは目的ではなく手段。
ラムダと同じことが出来るのであれば何も問題がない。
インナークラス+微妙ならlambdaが素晴らしい
アンチJava厨が無いと思って恥かきそうなJavaの機能
↓
インナークラスからローカル変数にアクセスすること。
finalが要るだろw
そう。final使うだけでいい。
たとえば
for (final int i = 0; i < data.length; i++){
・・・
}
書き込みは普通にメソッドを呼べばいい
final Obj obj = new Obj();
obj.setValue(1)
LINQ
>>10 それは、ただの糖衣表現だからなくてもいい機能。
何をどう糖衣してるのか詳しく。
糖衣表現って言いたかっただけ(で、ぜんぜんわかってない)のとちゃうんかと。
final つけなきゃならんという、実装に起因する制限あるあたりが糖衣丸出し。
要するに糖衣と言いたいだけだということはよくわかった。
インナークラス関係ないじゃん
Java のくそな部分を持ち出してドヤ顔をして恥ずかしい。
C#Java連合軍にライトウェイト叩かせたほうが面白いのに
LLという語は意思の齟齬を招きやすい。
英語版Wikipediaによれば、Lightweight programming languageは計算機リソースを
多くは消費しないという意味で軽量(Lightweight)であり、C言語などが例としてあげられている。
つまり、プログラマ負担の軽い言語を意味しない。また、1997年に書かれた
Lightweight Languages as Software Engineering Toolsでは、プログラミング言語内で
補助的に使われる、正規表現やSQL、GLSLを、Lightweight Languagesと呼んでいる。
よって、日本における軽量プログラミング言語と欧米におけるLightweight programming languageは、
その「軽量」の意味においてまったく異なるものであるため注意が必要である。
英語でPerlやJavaScript、PHPを指し示す場合は、Scripting languageと表現するのが妥当である。
いいんだよ!ライトウェイトったら
perl,php,python,rubyってみんな思ってるから!
思わないよ
ライトウェイトという言葉には軽い=良いというイメージがある。
本来スクリプト言語は、ヘビーウェイトなんだ。
つまり重いんだよ。
日本語で軽量言語と言ったら、Cのようなものです。
>>21 全然おもわねーよ
それらは全部スクリプト言語だろ
設定を保持したままのJREのアップデート
スレタイと合わないかもだが、他言語からきてJavaの体系を学ぶ気ないやつのコードはすぐわかるね
なんでそうもpublicにしちゃうのかな?フルチンで外歩いてるのと一緒みたいなコード書くよね
Javassistの黒魔術
>>26 その観点で言うと、ライトウェイト言語と低レベル言語って何が違うんだ?
勝手に新しい造語をポコポコ作られても困るのだが。
32 :
仕様書無しさん:2013/04/01(月) 03:14:44.92
Javaというか最近の言語知らない奴はコレクション関連知らずに何でもかんでも配列にぶち込むとかやりそう
ライトウェイトというのは、CPUなどのリソースをあまり食わないという意味。
低レベル言語というのは、CPUに近い操作ができるという意味。
LLって聞くと「多分スクリプト言語を指してんだろうな」とは思うけど、軽量言語って聞くと何言いたいのか悩むから、自分ではLLとか軽量言語って言葉は使わない
>>33 大抵ニアイコールじゃねぇか
再代入禁止
使っててもなんとも思わないけど自身ではLLは使わないな
アンチJavaというか旧Java脳にも言えるけど、usingやStringのSwitchとかも
途中送信失礼
アンチJavaというか旧Java脳にも言えるけど、usingやStringのSwitchとか
catchに例外列挙するとかも、Java7からできるようになったってこと知っておかないと、これからは恥かきそうだね
そんな小手先のウンコ機能で満足してるのが面白い
悪いがここそういう捏造レッテル張りする場所じゃないんで。
41 :
仕様書無しさん:2013/04/08(月) 21:00:16.73
>>40 クライアントPCにはJREインストールするな、って事か?
終わったな。Java。
ネットに繋がらないPCでコーディングしろってことだよ
外部からネット隔離されたタコ部屋で仕事するJavaドカタを想像すると
涙が止まらないな
>>42 開発だけじゃないよ。
記事をよく読め。
エンドユーザPCにあるJREが問題なんだよ。
エンドユーザも外部接続するな、って事。
>>43 エンドユーザはJREをアンインストールしても
何の支障もない
「エンドユーザー」って言葉の入った文章は、たいていの場合、「俺の脳内の」を付け加えると意味がわかる
「世間一般の平均的な」を付け句分けても意味がわかった
>>44 電子入札死亡のお知らせ
・・・いやあの周辺はアップデート禁止されてることすらあるから遥か昔から死亡だけど
>>47 「.NETで実装されたサードパーティ製JVMが存在している」と
「Javaバイトコードから.NETバイトコード(MSIL)へのサードパーティ製コンバータが開発中」なだけだよね?
オラクルがそっちに舵切らん限り、数多あるJVM実装が増えるだけの話題にしか見えん…
コンバータは面白そうだけど、Java/.NETライブラリのラッパの品質と生成されるMSILの品質がどの程度マシなのやら・・・
JavaのプログラムをIKVM で走らせた方が高速動作する。JavaのStringやVMのうんこ仕様さえ 無視できるのなら、VMは.NET化したほうがいい。
アンチJavaなC#使いだが、6以降は割と使える子だぞ。
JRE含んだeclipse導入でJREアンインスコすればおkってこと?
53 :
仕様書無しさん:2013/08/04(日) NY:AN:NY.AN
可変長引数
JAVAとC#ってなんか似てるけど競り合ってるの?
どうでもいい機能追加はやめてほしい。
機能拡張はどちらも保守的。
56 :
仕様書無しさん:2013/08/11(日) NY:AN:NY.AN
機能拡張で特に困る事もないけどな?
ほとんどが、最初からそうしろよ的なもんだし。
>>56 機能が拡張されたとき、当該機能を実現させるために使っていた
バッドノウハウなコードを自動的に検知して一覧表作ってほしい
参照渡し
75 : 仕様書無しさん [sage] DATE:2013/10/14(月) 19:59:36.16
本来は「参照渡され」なんだけどねえ。
一度書いたらどこでもちゃんと動く機能
分割コンパイル
>>60 >>61 それは「Java厨が有ると間違えて思っているので恥かく知識」だ。
参照渡しはJavaには無い。
参照の値渡し
javaって器用貧乏のイメージ
67 :
仕様書無しさん:2014/01/01(水) 12:35:35.54
参照渡しは、実質的にはある。
「実質的に」みたいな語は、俺の脳内では、って読み替えると、たいてい正しい。
正直どうでもええな。儲かってる需要先の要件満たせばなんだってお金は降ってくるし
70 :
仕様書無しさん:2014/01/13(月) 15:51:49.36
printf
71 :
仕様書無しさん:2014/01/13(月) 22:44:07.40
参照はあるがポインタはない。
72 :
仕様書無しさん:2014/01/14(火) 00:49:56.79
2015年問題に向けて既に囲い込み始まってる。
筆頭はやっぱJAVA。
74 :
仕様書無しさん:2014/02/05(水) 18:29:28.36
プリプロセッサ
75 :
仕様書無しさん:
>>71 ポインタ無いのにヌルポっておかしくね?
それがウンコ