- - PR -
たくさんの言語があふれていますが…
投稿者 | 投稿内容 | ||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2006-10-10 14:28
先日開催された 第67回カーネル読書会 glibc malloc について、ビデオ公開での資料がちょっと面白かったです。 | ||||||||||||||||||||||||||||||||||||
|
投稿日時: 2006-10-10 21:54
ダウト。 まず構文について。比較している C++, C#, Java が、元々派生元が同じなので構文が似ているだけ。それらと派生元が違う VB を比較すると、構文が独特になるのは当たり前。COBOL(COBOL.NET)や FORTRAN, Prolog, LISP などは、ご存じ?PL/SQL などやると、また面白いことになるんだけど。 次、ネイティブコード。少なくとも、VB 6.0 では Windows ネイティブコードが生成されます(Delphi 対策)。もっとも、VB.NET になって、共通言語になっていますから、もう一度コンパイルするという意味で、ネイティブコードではなくなっていますが、それを言っては C++/CLI, C# も同じ。 んで、なに?「コード数が少ない」?それは IDE がそうしてくれるのであって、言語仕様とは別。C# も、VS2005 を使うなら、書かなければいけないコード量はとっても少ない。 それとも、My などの、あらかじめ用意されたライブラリのことを言っていますか? それから、ずっと Windows のみって?mono プロジェクトをご存じですか?まぁ、これが C++/CLI から使えるかは、知らないけど。
ここ、意味がわかりませんでした。いったい、なんのこと?
CLI は、OS を提供するのではなく、ソフトウェアの実行環境を提供するものなので、CLI の基盤である OS の状態を知るには、当たり前のことだと思いますが? ってか、System.Windows.Forms が、Windows 完全依存なのに、.NET Framework の中に用意されているのが、あるいはおかしいのかも。System.XWindow 名前空間を用意しろって? _________________ | ||||||||||||||||||||||||||||||||||||
|
投稿日時: 2006-10-10 22:39
たくさんの返答ありがとうございます^^
えっとまず
そのとおりです、まったく何も言い返せない。ただ、僕が言いたかった(聞きたかった)ことは『Windowsでのソフトウェア開発』に限定した話です(書いてませんでした、分野が狭いと井の中の蛙で…汗)その場合、それぞれの利点・欠点等を総合して考えた結果これからどのような言語がメインで使われるようになるかな?っと思って聞いてみました。もちろんゲームならCとかアセンブリ(相当古いけどFF7はアセンブリに似た独自言語だったとか、昔聞いてびっくりした覚えがある、相当書きにくいだろうなぁって - 使用言語VB時代)
それは一時的要素にもなりえますが、たいていは二次的要素ではないでしょうか?盛んに言語が使用される → 開発環境等安定 → もっと使われる。 なんかこの辺は卵か鶏かみたいな感じで論議できないです(汗。
そうですね、最初のじゃちょっとわかりにくいです、反省。わかりやすいように書く努力! 1, Windows開発者なので開発環境はWindowsで、加えてIDEがあるものとして考えさせてもらいます。(結果Visual Studioがあるものとして) 2, 新しい言語が出てきてもわからないので VB C++(C++/CLI) C# Javaに限定して教えて(論議して)もらいたいです。 3, ローカル・ネットワークと状況を分けて利点欠点あげてもらえるとわかりやすいかも、ネット上で使うものとローカルで使うものは違いますしね。 # そういえば将来ローカルで使用するソフトウェアがネット上から利用できる形になってインストールとかが必要なくなるんじゃないか? という話を聞いたことがありますが、あれはJavaのことを強く言っていたものですよね?実際問題セキュリティなどもありますし無理なような気がしますが。 こんな感じでお願いしますm(_ _)m足りないところがあれば付け足します。
初耳。それは事実上がっつり最適化されたCのコードってのは難しいってことですよね?たしかにそりゃそうだ!それでもそこで早くなるものなんですかJavaで、Javaのイメージというのが『実行速度が遅い』というものだったんで・・・意外。
たしかにそうなんですが、実際いま『Windows用ソフトウェア作成』で使われている言語の中で言えば独特なのでは?と、僕が『Windows用』って言ってなかったのがすっごく悪いんですけど(苦笑…。ちなみにCOBOLやFORTRAN,LISPは名前だけなら…という程度(汗。
ここは僕の脳内比較をVisual Basic.netとVisual Basic6.0を比べてネイティブコードがはけなくなっちゃったなぁ…というそれにC#にもネイティブコードをはけないと書くべきでしたorz C++/CLIはC++を使えばはけるので一応はけるってことで。
Visual Basic.netを使わないので具体的な例ってのが挙げられないですが、C#は.netframework用に作られた言語なので全機能を利用できるがVBは構造上できない機能があるって聞いたことがあります。機能ってわけじゃないけどVBじゃunsafe使えませんしusingもなかったはず(新しいので使えるようになりましたっけ?)
利用者側としてはたとえばMIDIの処理・MP3の処理などファイル的には基本的にOSに依存しない(しないですよね?)ものの処理などもAPIを使ってやらなきゃいけないので、できれば PlayMidi って関数が.net frameworkで用意されていて、内部的にWindows用の.net frameworkならWindowsAPIを呼び出してマック用ならマック用の関数か何か(マックってAPI???)を呼び出すみたいに、プラットフォームが変わっても.net frameworkが処理の変更の面倒を見てくれるといいなと。APIを使わないでMIDIを鳴らすのは無理な気がします(自分の技術的面も含めて)あくまでMIDIは例なので詳しいことを聞かれてもわかりませんが…(友人が詳しくて、APIの嵐だと愚痴ってたのを今思い出しただけなので) # まぁWindowsでしか開発を行ってないですし、プラットフォーム変わってデバッグ頼まれても困るんで、いいっていえばいいんですがね。 | ||||||||||||||||||||||||||||||||||||
|
投稿日時: 2006-10-10 23:18
なんか、上の方のは、私が原因かなぁ?(苦笑)
少なくとも、COBOL については COBOL.NET というものもあり、Pascal については Delphi.NET というものもあり、VisualStudio 上でコーディングできるかどうかは知りませんが、Windows アプリケーション開発用として、存在しています。 また、PL/SQL というのは、Oracle 用のストアドプロシージャ用言語です。コレは Windows 用アプリケーションとは異なりますが、ある意味、知っていないと Windows アプリケーションを作れないこともあります。 N60-BASIC, Z80, CASL, N88-BASIC, C Language, FORTRAN, COBOL, C++, VB.NET, VBA, Java, C# をさわったことがある身としては、VB だけが「特異」とされると、違和感を覚えます。 (CASL って、おい) Borland ファンとしては、IDE として VS だけに限定されると、悲しい。。。Intel もコンパイラ開発しているんよ。
コレは、言語が作られた目的を考えましょう、ということで。 言語の善し悪しを語るには、作られた目的を抜きにして語れないと思います。 え?善し悪しを語るわけじゃない?失礼しました。
マルチメディア系まで、手が回っていないのか、あるいは、明確に実装を避けたのか、それはわかりませんね。DirectX の方に担当させようという魂胆かもしれません。 _________________ | ||||||||||||||||||||||||||||||||||||
|
投稿日時: 2006-10-10 23:42
言語がどうなっていくのかという 問いかけですが
究極的には コンポーネントをポトリ ペタリと落として プロパティをチョチョと設定という形になるのでは そして富豪的プログラミングが当たり前になってきて 細かいことは見向きもしないと こういったスレは定期的に上がりますが、すぐに消えていくんだな! | ||||||||||||||||||||||||||||||||||||
|
投稿日時: 2006-10-11 00:03
ものすごい本題と違う話をしますが、
プレイステーションのハードの事は良く知りませんが、多分シェーダ言語の事じゃないかな?全部が全部独自言語を使うなんて狂った事はさすがにしないでしょうね。(多分ですよ)
「OS に依存しない」というのをどういう意味で使ってるのかを掴みきれていませんが、OS に依存しますよね。音を出しますから。 OS とドライバが音源ハードの違いを隠してくれて、API を呼ぶだけで簡単に音が出せてます。
そうなるといいですねぇ。FreeBSD の CLI ってどこまで実装されているのかな。 因みに API とは、対象のシステム(この場合はOS)が公開しているインターフェースの事を指すので、Windows 専用の言葉じゃありません。「プラグイン機能があるエディタの API」という使い方もします。 _________________ 囚人のジレンマな日々 | ||||||||||||||||||||||||||||||||||||
|
投稿日時: 2006-10-11 10:01
"Windows 用" という意味では、むしろ VB こそ Windows 用のプログラミング言語になると思います。 無論、C# もそうなのですが、少なくとも、 「Windows 用のプログラミング言語の中で "VB は独特"」 ということはないと思っております。 C# の方が好きなのですが、かといって VB が独特だとは思いません。
".NET Framework で" C# にできることが VB にできない というものが思いつきません。
VB7 以降の VB (いわゆる VB.NET) も .NET Framework 用に作られた言語でしょう。 unsafe は確かにありませんが、これは .NET Framework に関わる部分なのでしょうか? (ちなみに、Using は、VB8 からサポートされました) _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||||||||||||||||||||||||||||||||||
|
投稿日時: 2006-10-11 10:09
COBOL.NET と言いますか .NET COBOL であれば、 Visual Studio の IDE にインテグレートできます。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 |