パスワードを忘れた? アカウント作成
7189 story

J2SE 1.5のアルファ版が登場 53

ストーリー by yoosee
君よ、人柱たれ 部門より

tnk曰く、"IT Proの記事が報じたところによると,Sun MicrosystemsからJ2SE(Java 2 Platform, Standard Edition)の次期バージョン,J2SE 1.5の Early Access 版が公開された。J2SE 1.5 (コード名「Tiger」)は,いままでわりと保守的な更新を続けてきたJavaにおいては,かつて例のない大きな改良が加えられる。C++のtempleteに相当するGenerics機能(JSR-014)のような,長いこと待望された機能が追加されるほか,Autoboxing/Unboxingなど(JSR-201)のようにC#/.NETを意識したかのような機能追加もある。GC の変更や JMX の採用も大きなトピックだ。実際の完成/普及までには時間がかかるだろうが,期待と不安のいりまじる新バージョンである。人柱希望者はおためしあれ。"

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • Swing (スコア:1, 参考になる)

    by Anonymous Coward on 2004年01月06日 20時53分 (#466875)
    うーん、デフォルトのLookAndFeelがXPのになってるなぁ・・・
    うちのマシンはクラシックスタイルなのに。
    Metalで動いていたアプリケーションも変な感じ。
    デフォルトLookAndFeelは、コンパネで変更できるといいのになぁ。
    • by Anonymous Coward
      デフォルトのUIってメタルじゃないですか?でも色がj2sdk1.4.2と違う。これGTK+かなあ?ボタンの色にグラデーションがかかってる。あいかわらずフォントが汚い。。。
      • by Anonymous Coward
        ああ、XPだとXP風のUIになるんですね。しりませんでした。「ボタンの色にグラデーションがかかってる」のはwindows2000の話です。
    • by Anonymous Coward
      個人的にこれはとてもよい変更だと思っています。
      仕事でGUIアプリケーションを作る際に、Javaという選択肢が増えました。
      デフォルトのLookAndFeelがWindowsと違うと、Javaを知らない一般のユーザーは戸惑うことが多く、今まではSwingを使うことは難しかったのです。
    • by Anonymous Coward
      > デフォルトLookAndFeelは、コンパネで変更できるといいのになぁ。
      起動時に java -Dswing.defaultlaf=... とかやれば変えられんかったっけ?
      恒久的に設定したければ /lib/swing.properties だったかを作ればできたような…
      • Re:Swing (スコア:1, 参考になる)

        by Anonymous Coward on 2004年01月07日 0時31分 (#467023)
        > 恒久的に設定したければ /lib/swing.properties だったかを作ればできたような…

        %JAVA_HOME%/lib/swing.properties だった。
        親コメント
  • by Anonymous Coward on 2004年01月06日 19時03分 (#466787)
    ま、これでやっとC♯に追いついてきた、ということか。

    # ネタ投入
    • Re:しゃ~ぷ (スコア:2, 参考になる)

      by Anonymous Coward on 2004年01月06日 19時30分 (#466821)
      [2ch]隼(1.4)から虎(1.5)へ~JDK1.5について! [2ch.net]

      追加された言語仕様も便利なのですが(→J2SE 1.5 虎の穴 Java 2 Platform, Standard Edition v1.5 の新機能 [airnet.ne.jp])

      SwingのWindowsへの適合度合いが上がったのと、動作が速くなったのが
      いい感じであります。
      JavaでWindowsアプリを作ってもいいかも。
      親コメント
    • by Anonymous Coward
      >ま、これでやっとC♯に追いついてきた

      じゃ、追い越すと、Dになって…Delphiですか?
      • by suikyo (5361) on 2004年01月06日 20時44分 (#466868) ホームページ
        DっつったらD言語 [kmonos.net]では……
        親コメント
      • by Anonymous Coward
        Delphiはinterfaceとimplementsで同じようなこと書くのが猛烈に嫌だったなぁ。
        その頃は、Javaはまだ怖いしC++は嫌いだしという消極的理由で使ってました。
        現時点でDelphiの売りってありますか?

        #あえて煽り気味
        • Re:しゃ~ぷ (スコア:4, おもしろおかしい)

          by argon (3541) on 2004年01月06日 20時03分 (#466850) 日記
          >現時点でDelphiの売りってありますか?

          爆速コンパイルでターンアラウンドが短くて、終電ギリギリまで粘れるとか、
          今頃 Win95 向けの仕事がきてもなかなか逃げられないとか、
          Borland には MSDN がないので年貢が安いとか、
          入門書レベル以上の本が少ないので本代が抑えられるとか、
          Internet 上でも情報が爆発していないので何箇所かを
          watch していれば、それなりにポイント情報が集まるとか、
          某MLで次の優待販売見送りという投稿が頻発するとか、
          Delphi 7 の次の修正差分はいつでるんだろう?とか。
          ううむ、応援しているつもりなのだが、なんかちがうな。
          親コメント
          • by Anonymous Coward
            >Borland には MSDN がないので年貢が安いとか、

            JBuilder とか含めると、半年で、MSDN でも十分元取れる位払っているのに去年気づきました...
            何も言わずに承認する上司も偉いけど。
        • by Anonymous Coward
          >現時点でDelphiの売りってありますか?

          PASCALで書けるってのは、最大の売りだと思うなぁ。
          それしか売りがないとも言うけど。
          • Re:しゃ~ぷ (スコア:2, すばらしい洞察)

            by G7 (3009) on 2004年01月06日 23時15分 (#466979)
            >PASCALで書けるってのは、最大の売りだと思うなぁ

            俺としては、PASCALであることはむしろ、盲腸みたいな古臭い部分、と捉えています。
            #そうでないとそもそもこの商品は存在しなかった、という指摘はさておくとして。

            それこそJavaと比較して痛感することなんですが、
            PASCALは、Object指向言語として使うには、構文上の「順序」の縛りがキツすぎます。

            2つの関数やプロシジャが「相互参照(=相互呼び出し)」することは、ぶっちゃけ言えば稀なので、
            その際に順序の縛りの限界を超えるための特殊な書き方を強いられる(フォワード宣言でしたっけ)
            のは我慢できるんですが、
            2つのクラス(というか元を正せばデータ構造)が「相互参照」することは非常に頻繁にある出来事なので、
            特殊な書き方がいちいち強いられるのは、苦痛でしかないです。

            その点、Javaのようにクラスやメソッドや属性の記述順序を一切気にしなくて良い言語仕様のほうが、
            ずっと使いやすいんです。
            強型言語の範囲内でも順序の縛りを減らすのが可能であることは、それこそJavaが実現できていることからも明らかであり、
            「強型言語→PASCAL(のやりかた)」という古典的な常套句は、今では古すぎると言えそうです。

            他にも細かい所は一杯…。
            総じて、元の(Turbo)PascalとDelphiとの差の部分は、大抵どれも「お、いいねえ」という感じがするんですが、
            Pascalから引きずってる部分については、あんまり良い印象を受けたことがないです。

            で、JavaとDelphiの両方を見て(Delphiと同じ作者が)作った言語が、C#なんだろうなーと(^^;

            個人的には、なんでBorlandは自分で新たに言語を作らなかったのか?と疑問です。それこそMSがVBを出してるように。
            まあ、Pascalという技術的資産(および文化的伝統?)が同社内には有ったんだろうな
            (そして、それ以外は無かったんだろうな…)と邪推しています。

            #あと、Delphi(くらいの時代の言語)にコレを言うのは酷なんですが、
            #本格的にObject指向する言語では、やっぱりガベコレが無いとキツいです。
            #DelphiではWidgetとかのメモリ管理のSolutionはキチンと有るんですが、それ以外のObjectのほうが人力管理しかないんで、
            #そういう部分にばんばんObjectを使う気力が萎えるんですよね…
            #メモリ管理を自分でしなくて済むかどうかは、重力の有無みたいなものだという気がしています。
            親コメント
            • by Anonymous Coward
              あ~
              そんな七面倒臭いことを言つてるなら、なぜ今でも
              Javaなんか使うのかよくワカラン。
              SmalltalkなりClosなりを使つたほうが
              ずつとすつきりするだらうに。
              • by G7 (3009) on 2004年01月10日 21時38分 (#469587)
                >なぜ今でも Javaなんか使うのか

                「使う」の主語がもし俺G7だというならばですが、
                「(俺が)使う」とは言っていません(^^;#確かに使ってもいるけど、それはここでは無関係です。

                JavaとDelphiって、成立年代が近いとか、
                どちらもコンパイラ型だ(ターゲットは違いますが)とか、
                Object変数が参照オンリーだとか、一方プリミティブ型が有るとか、
                通じるものが色々あるんで、
                ちょうど「比べるのに都合がいい」組み合わせなんです。

                特に順序縛りの問題は、この2つの言語を比較するのが
                一番説明し易いんですよね。

                >SmalltalkなりClosなり

                箱庭かどうかはさておくとして、Smalltalkとかの
                弱型かつインタプリタな…つまり「各種のマッチングを実行時に動的に取る」
                ような言語(処理系)は、ここで一緒に論じても無意味かと。

                ただ、総じての評価という意味では、
                俺としては最近はかなり弱型な言語に傾いているので、
                それ系の言語使えばDelphiだのjavaだのの問題を丸ごと忘れられるぞ、
                という指摘が俺としても有りではありますが。

                で、箱庭問題や自国愛(藁)や落とし所の気に入り度とかでいえば、
                俺はRubyが今のところ一番っすね。
                そういやRubyは最近マーチンファウラーたん(^^;も使ってるそうで…

                #あとBlock(イテレータ)みたいなものが無い言語はもう嫌です(^^;
                Tigerの [airnet.ne.jp]もなんかRubyとかに比べれば(汎用性の低さという意味で)イマイチっぽく見えますし。
                #てか、どんなInterfaceをどう使うかをユーザが用意できたりは、しないんだろうか?
                #get(i)を使わないから遅いっていうなら、get(i)を使うかどうかを選択するシクミが有れば良かったわけで。
                親コメント
              • by Anonymous Coward
                そんな箱庭、(開発者はともかく)ユーザーは誰も望まん。
              • by dangan (17715) on 2004年01月11日 15時03分 (#470009)
                > #get(i)を使わないから遅いっていうなら、get(i)を使うかどうかを選択するシクミが有れば良かったわけで。

                櫻庭さんの拡張 for の解説記事のページ [airnet.ne.jp]のマイクロベンチマークですが、
                私のマシンでは ComparisonTest1 をそのまま使用した場合、
                拡張 for 文: 3155
                for 文: 2343
                となりましたが、for 文と拡張 for 文の順番を入れ替えた場合
                for 文: 2964
                拡張 for 文: 2484
                となりました。
                (拡張 for 文の方が若干遅いのは、測定誤差か Iterator の生成コストだと思われます)
                同様に、ComparisonTest2 もそのまま使用した場合、
                拡張 for 文: 2694
                for 文: 2143
                となりましたが、for 文と拡張 for 文の順番を入れ替えた場合
                for 文: 2664
                拡張 for 文: 2163
                となりました。
                親コメント
            • by Anonymous Coward
              >#あと、Delphi(くらいの時代の言語)にコレを言うのは酷なんですが、
              >#本格的にObject指向する言語では、やっぱりガベコレが無いとキツいです。
              >#DelphiではWidgetとかのメモリ管理のSolutionはキチンと有るんですが、それ以外のObjectのほうが人力管理しかないんで、
              >#そういう部分にばんばんObjectを使う気力が萎えるんですよね…
              >#メモリ管理を自分でしなくて済むかどうかは、重力の有無みたいなものだという気がしています。
              • by G7 (3009) on 2004年01月10日 21時52分 (#469596)
                >delphipascal_x_garbage_collector.html

                す、すばらしい!!!

                #もし(ライセンス的に)可能なら職場でも紹介して…あわよくば仕事も楽になるんでなぃかぃ?

                ところでこれ、Object間の参照切れへの対策への対策…
                つまり例えばNotificationとか…はどうなってるのかな?
                あとで読んでみます。わくわく。
                親コメント
        • by Anonymous Coward
          ランタイムが要らないことと
          構文チェックがイヤなくらい強力なとこかな。
        • by Anonymous Coward
          VCLが最大の売りでしょう。
          (それならC++Builderでもいいけど)

          MFCが嫌いで、SDK生も嫌、.netも使いたくない場合は
          今でもDelphiを使うメリットは十分にあります。

          #今後が不安ではあるが・・・。
    • by Anonymous Coward
      おもいっきり、C#のパクリばかりだがいいんでねーの。
      • Re:しゃ~ぷ (スコア:2, 興味深い)

        by onoyan (135) on 2004年01月06日 19時57分 (#466846) ホームページ 日記
        そうスね。良いものはお互いパクって向上すればいいかと。
        と書きたいところですが、お互い最初から言語仕様もコンセプトも似すぎてるので
        このままでは清々しいほど潰しあいになりそうな予感。(もうなってるか)

        # JavaからC#に乗り換えてしばらく経つけどID
        --

        --- (´-`)。oO(平和な日常は私を鈍くする) ---
        親コメント
        • by higon (6160) on 2004年01月07日 1時24分 (#467038) 日記
          ですね。

          開発者の方も「C#は無視できない。autoboxingなどは良いアイデアだから
          直接取り入れる。」とか言ってたような。今回のJavaは全然違う言語の様な
          感じがしますが、追加機能は的を射ているしコンパイル後にバイトコードが
          互換性がとれているところが素敵です。

          個人的には、C#の方がシンプルで使いやすいと感じます。見た目も格好良いし、
          プログラマはOS非依存を謳いながらXP,Longhornの新機能を堪能できます(?)。
          が、バージョン互換性のないものがガスガス出るので、まともに追いかけると、
          血の出る思いをするでしょうね。

          #Alpha版の情報をITProの記事にして大丈夫だったんだろうか

          親コメント
        • by Anonymous Coward
          C#での仕事ってありますか?私はしばらくjavaの仕事しかしてないんで世の中の流れがわからなくなりました。まあjavaのいいところって開発環境が無料ってとこを重視してるだけなんですが。
          • by onoyan (135) on 2004年01月06日 20時28分 (#466862) ホームページ 日記
            仕事はあまりないですねぇ。僕は趣味で使ってるだけだし。
            Javaがはやりだした頃と同じ雰囲気がします。
            しかし、VBの仕事は自然と.NETに移行するだろうから、
            そのタイミングでC#の仕事が増えるのではと期待してますが。

            # 仕事ではASPばかりで「VBス」と聞くだけで逃げたくなるけどID
            --

            --- (´-`)。oO(平和な日常は私を鈍くする) ---
            親コメント
          • by Anonymous Coward
            C#ばかりでJAVAはやったことないです。

            JAVAもC#も元の設計者って同じなんでしょ?
            MSが引っこ抜いたと聞いてます。
            • Re:しゃ~ぷ (スコア:2, 参考になる)

              by Anonymous Coward on 2004年01月06日 20時56分 (#466878)
              JAVAとC#が同じ設計者とは聞いたこと無いですが。

              C#設計者のことがAnders Hejlsbergならば彼はDelphiの設計者です。
              親コメント
              • by Anonymous Coward
                >Anders Hejlsberg

                    彼は確かにDelphiの設計者ですがMSに移ってからはVisual J(だっけ?なくなった奴)の
                 開発をしてたんじゃなかったかなぁ・・・
                 その後C#に移ったの??

                 日本のBorlandカンファレンスでDelphi自慢
              • by Anonymous Coward
                Visual J++がJavaの名称を外されたのは独自拡張のせいだったはず。
                デリゲートなんかはよくも悪くもMS的な機能だし、
                その方針はC#に受け継がれているみたいね。
          • by Anonymous Coward
            C#だって.NET Framework SDKなら無料で入手可能ですよ。
            VB.NETコマンドラインコンパイラだって入ってるし、
            C/C++コンパイラだってついてきちゃうんだぞ。
            残念ながらインポートライブラリが皆無に等しいんだけどもね。
            あと環境選ぶのは相手がMSなんだから諦めてね。
      • by Anonymous Coward
        言語ってお互いに影響を与え合って進化していくので正しい進化だと思います。C#だってjavaがなければなかっただろうし。
  • by Anonymous Coward on 2004年01月06日 22時53分 (#466961)
    これだけの大きな言語仕様の変更ならばJava2のままでなくて言語名も
    ちょっと変えてほしいですね。

    私としてはこれだけ普及した後にこれだけ変更したものが出るなんて、
    ああ、またバージョン間で互換性のないコードが増える・・・とため息が。

    #1.3→1.4間でバイトコードレベルで互換性がないばっかりにえらい
    #ハマったことがあるので・・・
    • Sunはバージョン番号の2個目の数字を名前の最後につける
      癖があるので順当(?)に行けば Java5 ですが...
      Solaris 2.7/2.8/2.9 が Solaris7/8/9 とか。
      Java 1.2 が Java2 とか。
      Java2 1.3/1.4 ってのが謎。
      FF-X2(ファイナルファンタジーテン・2)みたいなもんか。
      親コメント
    • あれ、1.3と1.4って互換性ないんですか?いままさにそういう仕事をやろうとしてるんで気になります。
      • by partial (18305) on 2004年01月06日 23時43分 (#466998)
        シリアライズと間違えているのでは。
        親コメント
      • iアプリのコードの作成やってみればすぐわかりますよ?
        1.4のバイトコードだとpreverify通りませんから。
        • iアプリ? 紛らわしい。
          それは、JavaMEのツールに問題があるんでしょう。
          • >iアプリ? 紛らわしい。
            >それは、JavaMEのツールに問題があるんでしょう。

            そう?J2SEになったときは Assertionが入ってるから
            バイトコードレベルで互換性がなくなってるはずだけど…
            今回の改修はコンパイラレベルで対応してるはずだから
            バイトコードの拡張はなかったはず。
            • by partial (18305) on 2004年01月07日 8時17分 (#467122)
              入ってねーって。
              親コメント
            • > そう?J2SEになったときは Assertionが入ってるから

              1.4 でもデフォルトでは javac -source 1.3 相当なので
              明示的に javac -source 1.4 Hoge.java とかしないと assert は使えませんが。

              assert ってバイトコードではどーなってんだろ?
            • assert hoge;

              は、

              if (assertionEnabled) {
                      if (!hoge) throw new AssertionError();
              }

              のようにバイトコード化されて、assertionEnabledがfalseの場合は、全体をJITが消すんじゃなかったっけ?
            • -target 1.5でコンパイルするとクラスファイルのメジャーバーションが1上がってますね。デフォルトは1.4なのかな。-target 1.3でコンパイルしようとすると「javac: リリース 1.4のソースにはリリース 1.4のターゲットが必要です。」などと言われる。
    • > ああ、またバージョン間で互換性のないコードが増える・・・とため息が。

      バージョン間で互換性の無いコードって、具体的には?

      > #1.3→1.4間でバイトコードレベルで互換性がないばっかりにえらい

      1.4 からデフォルトで javac -target 1.2 相当になった事を言ってるのだろうか?
typodupeerror

私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson

読み込み中...