トップページ⇒tech
57コメント19KB

おいVB厨房ども! VB.NETについてこれるか?

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
いままでのVBとは互換性がないぞ。
VBというよりはJavaに近くなってきた。
もうおまえらの居場所はないな。
0002デフォルトの名無しさんNGNG
(゚Д゚)ハァ?
0003デフォルトの名無しさんNGNG
>2
レスしちゃだめだよ!ウイルスに感染しちゃうよ!
ボクはもうワクチン摂取したから平気だけど
ちゃんと病院逝ってね
0004デフォルトの名無しさんNGNG
まじな話、
・関数がデフォルトで参照渡しから値渡しへ
・配列が0オリジンに
この2つの変更をなぜ今したんだろう。
他の言語みたら当たり前のことなんだけどさ
0005けろNGNG
>>4
全ては.NETフレームワークに素直に乗っけるためだけろ。
.NETではC#などと同じ土俵に立てるため、VB開発者にとっては
逆にいい事ではなかろかと思うんだけど。
0006デフォルトの名無しさんNGNG
5年前までは QuickBasic とか Turbo-C とか MASM
のっけてるマシンがまだ残ってた.いまはほとんどない.
5年後に VB6.0@`VC++ を載せてるマシンはあるか?
たぶんないだろう...
当分プログラマーは,移行作業(というか移植作業)に
苦しむだろうな.つうか java いっとっく?
0007デフォルトの名無しさんNGNG
formひとつのプロジェクトを新規作成したら
これだけのコードを自動生成してくれたよ。

Imports System.ComponentModel
Imports System.Drawing
Imports System.WinFormsPublic Class Form1
  Inherits System.WinForms.Form
 
  Public Sub New()
    MyBase.New()
   
    Form1 = Me
   
    'This call is required by the Win Form Designer.
    InitializeComponent()
   
    'TODO: Add any initialization after the InitializeComponent() call
  End Sub
 
  'Form overrides dispose to clean up the component list.
  Public Overrides Sub Dispose()
    MyBase.Dispose()
    components.Dispose()
  End Sub
 
#Region " Windows Form Designer generated code "
 
  'Required by the Windows Form Designer
  Private components As System.ComponentModel.Container
 
  Dim WithEvents Form1 As System.WinForms.Form
 
  'NOTE: The following procedure is required by the Windows Form Designer
  'It can be modified using the Windows Form Designer.
  'Do not modify it using the code editor.
  Private Sub InitializeComponent()
    Me.components = New System.ComponentModel.Container()
    '@design Me.TrayHeight = 0
    '@design Me.TrayLargeIcon = False
    '@design Me.TrayAutoArrange = True
    Me.Text = "Form1"
    Me.AutoScaleBaseSize = New System.Drawing.Size(5@` 12)
   
  End Sub
 
#End Region
 
End Class

鬱だ。
0008デフォルトの名無しさんNGNG
あれ?
>Imports System.WinFormsPublic Class Form1

Imports System.WinFormsPublic
Class Form1
0009デフォルトの名無しさんNGNG
.NET Framework Reference
見てて思ったんだけど頭Microsoftって言いきるのがcomとRegistryで
残りがすべてSystemって言っちゃうのもすごいね。
System.Net.SocketsとSystem.Web.Servicesってなんかプロトコル層
見たいな考えほしかったな。妙に平面的じゃない?

さて問題です。VBとMFCとどっちがより生き残れないのでしょうか?
1.MSごと消えるから関係無い。
2.どちらもLinuxに移植されて残る。
3.MSが.Netを直接動かす石を生産するので、VBとMFCはIntelが引き取る。
4.Transmetaが.Netを直接動かす石を生産するので、MSは.Netを捨てる。
5.バグだらけで鼻から.Netが動かない。
0010デフォルトの名無しさんNGNG
5に一票
0011デフォルトの名無しさんNGNG
>>9
4はなんだい?ILが動けば.NETアプリは動くとでも
思ってるんだろか・・・。
それともライブラリごと石に乗っけると?
0012>>6NGNG
>当分プログラマーは,移行作業(というか移植作業)に
>苦しむだろうな.

以前のものをそのまま移植するヤツっていないだろーよ。
新規にVB.NETで開発するか、以前のVBのまま動かすか。
0013奥さん、名無しですNGNG
.NETが公約通りに動くっていうのは4と同じくらい突飛だな
0014デフォルトの名無しさんNGNG
>>5
VBオンリーの開発者には訃報だろう。
VCとVB両方で開発している人には吉報だろうが。
・・・大幅なコード修正が入るだろうから、一概には言えないか。
0015デフォルトの名無しさんNGNG
VBは進化するね。
0016>>13NGNG
似たような技術、JavaはMSのがあったからね。
それほど難しいことじゃない。
んで、JavaVMはSUNのより優秀だったよ。
0017デフォルトの名無しさんNGNG
厨房どもの最後の砦、VBも厨房を見放しました。
よかったよかった。これでprog@` prog2板も平和になるな。
0018デフォルトの名無しさんNGNG
>>17
なんつーか、書いてて自分で厨房くさく感じないか?
0019デフォルトの名無しさんNGNG
配列が0から始まるのは使いにくいな。
C/C++でポインタがらみでそうなるのは分かるけど、
VBのような高級言語でもそうなるのはどんなもんかと。
もっともC言語系がメジャーだから迎合するのは仕方ないのかも
知れないが。
0020デフォルトの名無しさんNGNG
>他の言語みたら当たり前のことなんだけどさ
厨房発見。>>4
0021奥さん、名無しですNGNG
ぱすかるもふぉーとらんも元々は配列は1からです。
0022デフォルトの名無しさんNGNG
VBが、ついにオモチャから脱皮しただけの事
クラスって言ったら3年B組って言ってるボケは
今までの古いVBを大切にしてあげてくださいな。
00239NGNG
ILって.dllだけど機械語コードじゃなくて中間コードだろ。
下はSystem.dllの逆アセンブラコードだけどちっとも86に見えないぞ。
だからああ書いたけど違うのか?

.method public hidebysig static int32 Combine(int32 h1@`
int32 h2@`
int32 h3@`
int32 h4) il managed
{
// Code size 30 (0x1e)
.maxstack 8
IL_0000: ldarg.0
IL_0001: ldarg.1
IL_0002: ldc.i4.s 13
IL_0004: shl
IL_0005: ldarg.1
IL_0006: ldc.i4.s 19
IL_0008: shr.un
IL_0009: or
IL_000a: xor
IL_000b: ldarg.2
IL_000c: ldc.i4.s 26
IL_000e: shl
IL_000f: ldarg.2
IL_0010: ldc.i4.6
IL_0011: shr.un
IL_0012: or
IL_0013: xor
IL_0014: ldarg.3
IL_0015: ldc.i4.7
IL_0016: shl
IL_0017: ldarg.3
IL_0018: ldc.i4.s 25
IL_001a: shr.un
IL_001b: or
IL_001c: xor
IL_001d: ret
} // end of method HashCodes::Combine

0024デフォルトの名無しさんNGNG
全ての言語がオブジェクト指向化するのは
多様性は善という思想からしても、良いことなのかな?
個人的にはPerlのOO化はやめてくれよと言いたい。
002511NGNG
>>9
いや、CruesoeでILを動かすってのはいいんだけど、
MS製のライブラリがなきゃ、.NETアプリは動かないよ。
んで、それのほうが大変。だからMSが手を引くなんて
ことはないでしょ。
というか、TransmetaがそうしてくれればMSは歓迎すると思う。
昔、IntelがJavaバイトコードを早く動かすための命令を
乗っけるんじゃなかろかとかいう憶測もあったんだけど、
そういう風にILコードアクセラレート命令を乗せる可能性は
微妙にあるかもしれない。
00269NGNG
>>25
なるほど、じゃ64ビットというか次の石の覇権争いは微妙に始まってんのね。
自分もJavaバイトコードとsunが妙な発言(Javaに特化した石がありうるとか)したり。
IBMがAS400のVMはJava動かすのに最高だとか言ってたのを思い出したんだよね。

.Netの行く末はVBのoo化どころじゃない波乱万丈があるのか?こう御期待ってとこだなー。
それにしてもMSって本気でネットワークにかけてるのね、単なるマーケッティングかと思ってたよ。
002711NGNG
まあSUNのJavaチップ構想は、かなりの部分失敗に終わった
んだけど、富士通のJavaチップとか、ちょこっと製品化されてるよ。
http://edevice.fujitsu.com/pre/fj/CATALOG/AD07/07-I00009/index_j.html

失敗の第一の原因は、Javaアプリケーションが増えなかった事。
.NETの場合、もし.NETアプリケーションが増えるなら、話は変わってくる、と。
0028デフォルトの名無しさんNGNG
VBとperlが.NETで動くらしいので
.NETアプリは増えそうな感じはする。

でも、VBの非上位互換性から考えて
VBプログラマが、すんなり.NETプログラマになるとは
考えにくいかも・・・。
0029デフォルトの名無しさんNGNG
おもしろいね。個人的には互換JITコンパイラより互換クラスライブラリを
構築する方がはるかに簡単だろうからもし9の書いたようにTransmetaが
そういうことをすれば、.NET互換の製品が出てき易くなりそうな気がする。
(特にLinux用とかで)
0030(ワライNGNG
VB .NETはVBにあらず?――高まるプログラマーの懸念

プログラマーらが懸念しているのは,Visual Basicの.NET版が,
これまでのVisual Basicとは大きく異り,移行へのハードルが高いという点だ。

ttp://www.zdnet.co.jp/news/0101/19/e_vb.html
0031デフォルトの名無しさんNGNG
VB.NOTか…
いいね(ワラ
0032デフォルトの名無しさんNGNG
オブジェクト指向なんて実践的に使われはじめたのは
つい最近じゃねーか。馬鹿じゃねーの?>
オブジェクト指向にあらずんば玩具とか言ってる奴。
0033デフォルトの名無しさんNGNG
世間を知らない厨房さん
いらっしゃい >>32
0034デフォルトの名無しさんNGNG
あーほ!!あーほ!!
0035デフォルトの名無しさんNGNG
玩具とゴングの違いは?
0036デフォルトの名無しさんNGNG
>>35
ツマンナイ。(2点
0037デフォルトの名無しさんNGNG
ttp://www.microsoft.com/japan/developer/net/framework/dnmag_framework.asp より
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−
ソースコードをコンパイルすると、コンパイラによってMSILが生成される。
MSILは、CPUに依存しない中間言語である。

この言語の作成にあたり、Microsoftは企業および研究者を含めて、
外部の複数の言語/コンパイラ記述者と協議している。

ほかの機械語と同じように、MSILはアセンブリ言語で記述することができる。
Microsoftは、ILAsm.exeというMSILアセンブラと、ILDasm.exeという
MSILディスアセンブラを用意している。

MSILで重要なのは、特定のCPUプラットフォームに
結び付けられていないということだ。

つまり、MSILを含むPEファイル(.exe .dll)は、CPUプラットフォームで
実行されているオペレーティングシステムが
.NETのCommon Language Runtimeエンジンをホストしている限り、
任意のCPUプラットフォームで実行できる。
−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−−

いままでの VB Runtime パッケージが Common Language Runtime に
変わって,中間コードが MSIL にかわったのが .NET Framework らしいが,
C# も Common Language Runtimeエンジンを必要とする MSIL しか
作成できないから,VB.NET で組んでも C# で組んでも速度は同じになるな.

C# って使い道あるんだろうか...
0038デフォルトの名無しさんNGNG
>C# って使い道あるんだろうか...

ちょっと心配するとこ間違ってるよ。
COMの標準クライアントがVBだったのに対して、
.netの標準言語がC#になったってだけだよ。
つまりVBがあぼーんされただけ(はぁと
0039デフォルトの名無しさんNGNG
っていうかC#とVB.NETじゃ生成されるコードが違うだろ?
最適化の度合い(クラスライブラリの簡素度?)で結局C#の方が速いのでは?
といってもCとVBほどの違いはないだろうけど・・・当り前か・・・
0040デフォルトの名無しさんNGNG
おいらはCLRがほかのプラットフォームでサポートされるまで
手を出す気はないなぁ。
0041デフォルトの名無しさんNGNG
>>39
VBだと、ネームスペース Microsoft.VisualBasic のクラスを
見えないところでいろいろ使ってるので、動きはC#と微妙に違う。

IL的に見れば、C#の方が素直で無駄がなくて好きだな。
0042デフォルトの名無しさんNGNG
あとC#だとunsafeなコードもかける。これが大きいかどうかは人によるんだろうけど。
0043デフォルトの名無しさんNGNG
おい、VB厨房ども。これぐらいの内容は理解できるよな?

http://labsoftware.com/vbpatterns/vbPatterns.htm
0044デフォルトの名無しさんNGNG
>>43
日本語訳きぼーん
0045名無しさん@1周年NGNG
>>43
ありがとー(TT
でもリンク先かなり回線細くないか?
0046デフォルトの名無しさんNGNG
>>43
前はVisual Modeler用のGOF-DP.mdlってのをネットから拾ってきてVBモードのソース生成かけたものをGofパターンとして使ってたよ。
あんまり良く無かったんで(コラボレーション図が無いので動作がわかんない。)今はデザインパターン本付属CD-ROMの
javaのサンプルを使ってるので参考にするねあんがと。VB厨房より。
0047>43NGNG
煽ったつもりが
感謝される

●9点
0048デフォルトの名無しさんNGNG
もういい。VB.NETなんかできなくても死にやしないや。
オレはVB4.0と心中するぞ。
0049デフォルトの名無しさんNGNG
> VB.NETなんかできなくても死にやしないや。

「プログラマとしては」死んだも同然だろ。(藁
0050デフォルトの名無しさんNGNG
「VBプログラマとしては」死んだも同然だよ。
0051デフォルトの名無しさんNGNG
VB7とC#って似てるね。
0052デフォルトの名無しさんNGNG
JavaってVB7に似てるね。
0053デフォルトの名無しさんNGNG
(゚Д゚) ハァ?
0054デフォルトの名無しさんNGNG
VBがなくなってもいいけど、.NETはまともに動くのか?
業務に使えるのか?
必須環境、安定動作環境に、今迄より付属品が多くなっちまうことは?
VBが.NETになることで、この系列すべてがポシャることは?

勤め人としては、投入されたプロジェクトの言語にあわせる事が必要だから
VB自体がどうなっても構わないけど、今迄納品したシステムの今後とか
客先から言語の指定があって、開発する時の不安が大きいよな

どの言語でも同じ不安はあるけど
0055VB厨房NGNG
おれさまが、元祖VB厨房様だ!ゴルァ!
0056デフォルトの名無しさんNGNG
マァマァ、そんなに威張らなくても…
0057デフォルトの名無しさんNGNG
VB.NET、すごいよかったよ。
...と心にもないことを逝ってみる。
■ このスレッドは過去ログ倉庫に格納されています