パスワードを忘れた? アカウント作成
この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。

Java 1.4SE正式リリース」記事へのコメント

  • 未だにJava人気あるんですね。
    僕はいまいちJavaの良さが分かりません。
    誰かJavaのすばらしさを語ってもらえないでしょうか。
    • 「Java は駄目」とか言う人の話をよく聞いてみると、
      Java Applet のことだったり、 JavaScript のことだったりする
      ことがあるので、いっかい問い詰めてみたほうがいいです。
      • 僕がJavaで駄目だと思うところはまず実行速度です。
        JITの技術がありますが本質的な解決策では無いと思います。
        しかもテキスト処理なんかはJITを使ってもAwkよりもPerlよりも遅い。

        次に移植性です。
        Write Once Run Anywareとか言っていますがはっきり言って実現されて無いと思います。
        移植性 + 速度
        で考えるとCの方が上だと思っています。

        GCを利点として挙げる人がいますが、それも僕はどうかと思っています。
        GCがあるためにむちゃくちゃなプログラムでもある程度動いてしまいます。
        1時間ぐらいだったら動くけど長時間動かしているとVMが落ちることがありますし、その時のバ
        • > GCを利点として挙げる人がいますが、それも僕はどうかと思っています。
          > GCがあるためにむちゃくちゃなプログラムでもある程度動いてしまいます。
          > 1時間ぐらいだったら動くけど長時間動かしているとVMが落ちることがありますし、その時のバグを見つけるのが非常に大変です。

          C だって「解放忘れ」なら同じ現象が起こるでしょー。

          Java は free を
          --
          # mishimaは本田透先生を熱烈に応援しています
          • by Anonymous Coward on 2002年02月15日 12時27分 (#63080)
            一度Visual C++を使ってみれば分かると思うけどデバッグの段階でメモリの開放のし忘れはしつこくメッセージが出てくるからメモリの開放忘れは相当減るよ
            vi使ってLinuxでCで書くんだったら確かにJava使ったほうがいいと思うけどね
            おれはほとんどWindowsしか使わないからJavaの必要性はわかんないな~
            速度が要求されない簡単なプログラムだったらVBで書いちゃうし、ある程度速度が要求されるようなものだったらVC++で書く
            はっきりいっておれの生きてる世界ではJavaの入り込む余地は無いな
            親コメント
            • by Average (3404) on 2002年02月15日 12時49分 (#63094) 日記
              だからプラットフォーム固定なら別にJavaである必要はない、
              という事でしょうか。
              サーバー側のJavaが花開いたのは、バックエンドがころころ
              変わるのに対応出来る、という事なのでは。
              --
              -----------------
              #そんなワタシはOS/2ユーザー:-)
              親コメント
              • by Anonymous Coward
                > だからプラットフォーム固定なら別にJavaである必要はない、
                > という事でしょうか。
                > サーバー側のJavaが花開いたのは、バックエンドがころころ
                > 変わるのに対応出来る、という事なのでは。

                そーそー、Windows上でスタンドアロンなアプリを趣味で作る
                人にJavaのありがたさは分かりっこないですな:-p

            • > 一度Visual C++を使ってみれば分かると思うけどデバッグの段階でメモリの開放のし忘れはしつこくメッセージが出てくるからメモリの開放忘れは相当減るよ

              これってどの機能のことを指していますか?
              VC6.0を日常業務に使っていますけど、VC がメモリの解放し忘れ
              を指摘してくれたことなど皆無なのですけど、、、

              あとデバッガがメモリリークを指摘する機能は 設計がよくでき
              ていてちゃんとコーディングされたプログラムに対して行う場合は
              有効だけど、いい加減な設計のプログラムに対しては無力だと
              思います。
              #「ほとんどメモリは使い捨て」の前提で書かれた20万行ぐらいの
              #プログラムを NuMega の BoundsChecker に掛けたら数千箇所も
              #問題を指摘されてことがある、、、
              --
              コンタミは発見の母
              親コメント
              • by nyaonyao (7735) on 2002年02月15日 17時21分 (#63206)
                ここに投稿する人に自分が使っている開発環境の構成を知らない人間がいるとは思いませんでした。
                BoundsCheckerは、元々米国のNumega社が開発し、米国Compuware社に買収されて、現在は「Compuware社のNumega製品」ということで販売されています。
                私の知る限りでは、M$社にぴったりくっついていて、VC++などとの相性というか、一部のように機能する、ということを売りにしていますが、完全な別会社の別製品です!
                ご参考までに日本コンピュウェアの該当サイトをお知らせしておきます。
                ここ [numegajapan.com]です。

                この会社の営業やってる知り合いに教えてやろうかと思っちまったい!
                親コメント
              • いや、そのメモリリークをしつこく言って来るやつを言ってるんだけど
              • MFC使ってるとき(…とは本当は限らないのだけれど)に
                IDEから実行してデバッグすると出る奴のことですよね。
                >元コメントのAC氏

                #_CrtSetDbgFlagとかそのあたり

                あれは未初期化の変数やメモリ領域に特殊な値を入れて
                おいて、freeした時にもその特殊な値を入れるようにして、
              • VC++6.0で
                #include<afxwin.h>
                #define new DEBUG_NEW
                ってやっておいたらプログラム実行終了後に
                リークしてるメモリをおしえてくれました。
                デバッグモードのみの機能みたいですが。
                このことでしょうか?
              • VC++のIDEとBoundsCheckerの認識切り分けが出来ていないのは、ちょっとまずいんじゃないかな?
                #こういうタイプの人は、往々にして言語仕様と標準ライブラリと独自ライブラリの切り分けも出来てなかったり。
              • そうかもしんない
                BoundsCheckerなんて始めて聞いたし
                BoundsCheckerって何?
              • なまえの通りのもんでない?
                直訳直訳。
              • >> #define new DEBUG_NEW

                #63080 の人のメモリ解放のし忘れ検出の機能はこれみたいですね。
                これは new して delete されていないものを表示するだけだから、
                メモリリークをしている可能性のある箇所を大量表示しちゃうんで
                すよね。

                ないよりましだけど、本当にメモリリークを潰す必要があるプログラム
                (終了のこないサーバープログラムや、プログラムの途中のフェーズ
                で大量にメモリが必要になるプログラム)には 使えんです。
                --
                コンタミは発見の母
                親コメント
              • Java なんかだと、言語仕様とライブラリと実行環境の切り分けって非常に面倒な気がするんだけど。
                言語仕様を VM に頼ってる部分(動的バインディングのやり方とか)とかあるし、
                例えば awt の設計はライブラリ? 言語仕様?
              • そんなこと言ったって元々 MS と別会社の製品だけど今は MS の製品
                (もしくは MS の製品になるはずだったけど消えた製品)
                なんて腐るほどありますから、現在も別の会社の製品といっても
                一緒に機能が提供されていれば知らない人がいるのも無理ないかと。

                # あぁ私は一応知ってますが。
              • nyaonyao さんがすでに指摘している通り、BoundsChecker は
                ランタイムベースの非常に強力なエラー検出ツールです。
                配列の境界を越えたアクセスをチェックしてくれるのが名前の
                由来だと思います。

                今はもう持っていないので詳細をチェックできませんが、メモリ
                リークやリソースリーク、配列・構造体の境界チェック、ダング
                リングポインタの検出ができたはずです。

                似たようなツールに Rational 社の purify があります。
                --
                コンタミは発見の母
                親コメント
              • あれってBoundsCheckerってゆーんですね。
                すでにほかの人が紹介して [srad.jp]いますが……
                自分で裏を取ってから投稿するべきだったのでは?
                たとえば、ここ [google.com]とかで。

                # ちょっと調べれば分かることなのに
              • by Anonymous Coward
                たぶん最初の人の書き方では 1、MFCのデバッグ機能 2、BoundsChecker(昔はお世話になりました)のような製品 のどっちを指しているか分からなかったんだと思います。
              • 「一緒に機能が提供されて」というのは不正確な表現だと思います。
                これだと、BoundsCheckerがVisual Studioにバンドルされているように読めます。

                Visual StudioのIDE内でシームレスに使用できるから区別がつかな
              • >M$社にぴったりくっついていて、VC++などとの相性というか、一部のように機能する、ということを売りにしていますが、完全な別会社の別製品です!

                ええと。VCのことは知りませんが、一般的にいえば
                そういうのはプラグインという類のものであって、
                わざわざ「完全な別会社の別製品」などと言うほどのことでもないと思うんですが。
                プラグインならばどこの馬の骨にも作ることはできるので。

                そして妥当なプラグインAPI(もし有るならば)に則って作ったプラグインは、
                相性ピッタリでも全然変な(珍しい)話では、ないわけで。
                一部のように機能するってのもプラグインならば当然のことですし。

                #プログラムすなわちos上に直接乗るアプリケーション、だと思っていませんか?

                その製品がどうなのかは知りませんが、たしかVCにもプラグインみたいな概念は
                有るんじゃありませんでしたっけ?

                #delphiにもjbuilderにも有るよね(^^;

                え?windowsのプラグインのIE? うーん(^^;;
                親コメント
            • by Average (3404) on 2002年02月15日 15時02分 (#63156) 日記
              ワタシはVisulaC++使いどころか、OS2でのPascal使いなので、著しくタトっているとは思いますが、VisualC++のメモリリーク警告って静的になめて出すだけなんでしょうか?それとも動的に解析してくれる?
              前者だったら、ワタシはむしろプログラムする人がタコい気がしますし、後者だったらこれはチューリング賞クラスの偉大な機能な気がしますが、どっちなのでしょうか?
              --
              -----------------
              #そんなワタシはOS/2ユーザー:-)
              親コメント
              • by Average (3404) on 2002年02月15日 17時01分 (#63197) 日記

                isualC++のメモリリーク警告って静的になめて出すだけなんでしょうか?それとも動的に解析してくれる?

                ぐわ、VisulaC++のIDEが行う動的チェックってただのスタックチェックなのね。IDEが静的なソースから動的にフローを出してくれてそれでメモリリークを教えてくれるのかと思いましたよ。
                pascalerとしてはまったく不要の機能だなぁ・・・
                --
                -----------------
                #そんなワタシはOS/2ユーザー:-)
                親コメント

ナニゲにアレゲなのは、ナニゲなアレゲ -- アレゲ研究家

処理中...