とりこらぼ。

Learn from yesterday,
live for today,
hope for tomorrow.

目次

Blog 利用状況

ニュース

プロフィール

  • 名前:とりこびと
    とるに足らない人間です。

  • Wankuma MVP
    for '平々凡々'

Web Site

  • Memo(Of T)

もうひとつの Blog

おもちゃ

  • あわせて読みたい
  • track feed

広告っぽい

書庫

日記カテゴリ

2008年10月10日 #

Lucian Wischik is the Visual Basic specification lead・・・ほほう。

Lucian Wischik さんが Paul Vick さんの次の人ってことかな~。

Panopticon Central:Please welcome Lucian Wischik!

Lucian Wischik さんのブログはここ

Lucian's VBlog

VBlogってのがおもしろ~♪

Lucian's VBlog:Hello!

posted @ 9:28 | Feedback (0)

2008年10月9日 #

ASP.NET 2.0 Provider Model を(今頃)読んでます。

とりこびとDeath☆

ASP.NET 2.0ではデータ層とのやり取りがProvider経由でやれますよ(やったらいいじゃない?)~っていうお話を(今頃)お勉強中。


スタートページはここかな↓

C#の人は→MSDN:ASP.NET 2.0 Provider Model: Introduction to the Provider Model

Visual Basicの人は→MSDN:ASP.NET 2.0 Provider Model: Introduction to the Provider Model

各言語バージョンがあるのがステキ♪

あ、PDFもある~!・・・ってこれはC#だけなの~?

ASP.NET 2.0 Provider Model.pdf

posted @ 10:28 | Feedback (0)

2008年10月3日 #

Visual Studio 2008 SP1 で「XML to Schema ウィザード」が追加されています。

とりこびとです。

MSDNの「LINQ to XML」のページをみていて記述が増えているのに今気づきましたw

MSDN : Visual Basic における XML IntelliSense

の、「スキーマ ファイルの生成 (スキーマの推論)」の部分。

SP1 より、XML to Schema ウィザードを使用して、1 つ以上の XML ドキュメントから推論される XML スキーマ セットを作成し、プロジェクトに追加できるようになりました。テキスト ファイル形式の XML ドキュメント、HTTP インターネット アドレスからの XML、および XML to Schema ウィザードに入力するか貼り付ける XML を任意に組み合わせて使用できます。XML to Schema ウィザードにアクセスするには、[プロジェクト] メニューの [新しい項目の追加] をクリックし、[データ] と [共通項目] のいずれかのテンプレート グループから XML to Schema テンプレートを追加します。XML スキーマ セットを推論する対象の XML ドキュメント ソースをすべて追加したら、[OK] をクリックして推論されるスキーマ セットを作成します。詳細については、「XML to Schema ウィザード」および「方法 : XML to Schema ウィザードを使用して XML スキーマ セットを作成する」を参照してください。

今まではその下の

Visual Studio XML エディタを使用して XML ファイルから XSD スキーマ セットを推論することもできます。XML エディタを使用して XML スキーマ セットを作成するには、Visual Studio の XML デザイナで XML ファイルを開き、[XML] メニューの [スキーマの作成] をクリックします。作成した XSD スキーマ セットは、1 つ以上の XSD ファイルに保存し、プロジェクトに追加できます。詳細については、「方法 : Visual Basic で XML IntelliSense を有効にする」を参照してください。

の方法を使ってたりした(勉強会のセッションでもお話させていただきました。)のですが、ウィザードベースでできるようになったんですね~。

ちょっと今、画面の絵が取れなくて申し訳ないのですが、「方法 : XML to Schema ウィザードを使用して XML スキーマ セットを作成する」に書かれている手順でできるようです。

XML スキーマ セットを推論するには

  1. プロジェクトで、[プロジェクト] メニューの [新しい項目の追加] をクリックします。
  2. [データ] と [共通項目] のいずれかのテンプレート カテゴリから Xml to Schema 項目テンプレートを選択します。
  3. 推論されるスキーマ セットを格納する 1 つまたは複数の拡張スキーマ定義 (XSD) ファイルの名前を指定し、[追加] をクリックします。
  4. [XML ドキュメントからの XML スキーマ セットの生成] ウィンドウで、XML スキーマ セットを推論する対象の 1 つ以上の XML ドキュメントを追加します。
    • XML ドキュメントが含まれるテキスト ファイルを Windows エクスプローラで追加するには、[ファイルから追加] をクリックします。
    • HTTP アドレスから XML ドキュメントを追加するには、[Web から追加] をクリックします。
    • XML ドキュメントの内容をウィザードにコピーまたは入力するには、[XML の入力または貼り付け] をクリックします。
  5. XML スキーマ セットを推論する対象の XML ドキュメント ソースをすべて指定したら、[OK] をクリックして XML スキーマ セットを推論します。プロジェクト フォルダの 1 つ以上の XSD ファイルにスキーマ セットが保存されます (スキーマ内の XML 名前空間ごとに 1 つのファイルが作成されます)。

posted @ 17:10 | Feedback (2)

みんな来ない?

まっちゃ139-わんくま同盟合同勉強会
http://wankuma.com/seminar/20081004osaka139/Default.aspx
明日だよー

 

さっき申し込んだよ~(TーT)





posted @ 13:20 | Feedback (1)

アタシ  はなずきんさんの  同級生に  似てる  らしい  みたいな

CodeZineに

はなずきんさんの

インタビュー

載ってた

みたいな



アタシ  今日も  “ままーり”と  勉強会を  たくさん  見つけた  みたいな「IT勉強会カレンダー」はなずきんさんインタビュー

posted @ 11:39 | Feedback (1)

[メモ]MSDN Code Gallery: Visual Studio Language Futures for C# and Visual Basic

ここです↓

MSDN Code Gallery:Visual Studio Language Futures for C# and Visual Basic

ディスカッションページが面白そうなので、後で追いかけてみる予定~。

Discussions for Visual Studio Language Futures for C# and Visual Basic

posted @ 11:12 | Feedback (0)

C# で書いている人がVisual Basic 書いちゃうぞって時のの押さえどころ、だそうですw

ネタ元→Leaning Into Windows : What a C# Coder Should Know Before They Write VB - Updated

77個もあるやん!w

どれも参考になりそうなのでメモをかねてリンクです♪

で、面白いのをピックアップ!

1) Get over the respect thing or quit before you start. VB is a great language.

職場で吹き出しそうにwwwwwww

posted @ 10:58 | Feedback (1)

Paul Vick 氏が移籍・・・。

Panopticon Central : All good things...

そっか・・・そうなんですね。

おぎわら@Blog(Hatena編) : [MS]Visual Basicの指導者がMicrosoftの「Oslo」チームに移籍

ううう・・・Paul Vick 氏がOslo言語のいっちゃうっ!

Visual Basic、Paul Vick 氏の隠れファン(隠れる必要はないのですがw)な私にとってはちょっぴり寂しいニュース。

でも、"Oslo" を追いかけようと決めるきっかけになったニュース。

posted @ 9:31 | Feedback (1)

2008年10月1日 #

ASP.NET Web サイトで、複数のプログラミング言語を使用する。

とりこびとです。おはようございます。

タイトルの通り「ASP.NET Web サイトで、複数のプログラミング言語を使用する」ってことが書いてあるところを発見したのでメモです。

MSDN : ASP.NET Web サイト内の共有コード フォルダ

以下、引用。

App_Code フォルダのプログラミング言語の推定

App_Code フォルダは、格納されているファイルがどのプログラミング言語で記述されているかが明示的にマークされていません。代わりに、ASP.NET は、格納されているファイルに基づいて、App_Code フォルダのために起動するコンパイラを推定します。App_Code フォルダに .vb ファイルが存在する場合、ASP.NET は Visual Basic コンパイラを使用し、また .cs ファイルが存在する場合は C# コンパイラを使用します。

.wsdl ファイルなど、プログラミング言語が判然としないファイルだけが App_Code フォルダに格納されている場合、ASP.NET は、Web アプリケーションの compilation 要素やマシン構成ファイルで設定されている、Web アプリケーションの既定のコンパイラを使用します。
App_Code フォルダでの複数のプログラミング言語

App_Code フォルダのソース コードは単一のアセンブリにコンパイルされるため、App_Code フォルダ内のすべてのファイルは共通のプログラミング言語で記述する必要があります。たとえば、App_Code フォルダには、Visual Basic と C# の両方で記述されたソース コードを格納できません。

ただし、Web アプリケーションは、App_Code フォルダの各サブフォルダを個別にコンパイルが可能な単位として取り扱うように設定できます。そのように設定すると、各サブフォルダには、それぞれ別々のプログラミング言語で記述されたソース コードを格納できます。フォルダの構成を指定するには、Web.config ファイルの compilation 要素で codeSubDirectories 要素を作成し、サブフォルダへの参照を追加します。次の例は、VBCode と CSCode という名前のサブフォルダが、それぞれ別個のアセンブリにコンパイルされるように設定する方法を示しています。
<COMPILATION debug="false">
    <CODESUBDIRECTORIES>
        <ADD directoryName="VBCode" />
        <ADD directoryName="CSCode" />
    </CODESUBDIRECTORIES>
</COMPILATION>
VBCode サブフォルダと CSCode サブフォルダへの参照には、サブフォルダに格納されているプログラミング言語に関する情報を含める必要はありません。App_Code フォルダ自体と同様に、ASP.NET は、サブフォルダのファイルに基づいて使用するコンパイラを推定します。

posted @ 11:40 | Feedback (4)

2008年9月30日 #

今週末はまっちゃ139&わんくま合同勉強会です!

とりこびとです。好きなものはプリンです。

 

今週末、まっちゃ139さんと、わんくま同盟の合同勉強会があります、っていうお話です。

http://wankuma.com/seminar/20081004osaka139/Default.aspx

 

聞いた話によると、お菓子(プリンが好きです)が出るそうです。

お菓子(プリンが好きです)です、お菓子(プリンが好きです)。

ちなみに私は行けるよう全力で調整中です。

目的は、お菓子(プリンが好きです)です。

お菓子(プリンが好きです)が出ると聞いて、行けるよう全力で調整することにしました。(うそはありません。)

お菓子(プリンが好きです)が出るなら行こうかなって方もいらっしゃいますよね、きっと。

 

懇親会も楽しいそうです。

どんな風に楽しいかは知りませんが、楽しいって書いてあったので書いてみます。

 

個人的に、パッションって入ってるのが怖かったりしますw

パッションはかなーーーーーーり苦手だと思っていますが、

サ行変格活用以外やっていないのに苦手だと思い込んで避けるのももったいないかなと。

 

とはいえ、何もしゃべれないアノ人しか思い浮かばないw








元ネタ→今週末の合同勉強会

posted @ 17:24 | Feedback (4)

[リンク]Visual Studio 2010 and .NET Framework 4.0 Overview

次はVisual Studio 2010なのですね~。.NET Framework も 4.0 ですか。4.0ってなんだかすごく大きな数字になってきた気がします~。

Visual Studio 2010 and .NET Framework 4.0 Overview

posted @ 9:48 | Feedback (1)

2008年9月29日 #

ASP.NET ルーティング の学習。その2 - ASP.NET ルーティング ってなに?(後編) -

ASP.NET ルーティング の学習。その1 - ASP.NET ルーティング ってなに?(前編) -


とりこびとです。

今回は、ASP.NET ルーティング ってなに?ってのをもう少し書こうかと思ったのですが・・・どうもそううまくはいかないようですw

ASP.NET ルーティングを使用して何が出来るかについては、前回のエントリでさらっと書きましたが、特定のURLに対して処理をマップできるということでした。

たとえば、"http://torikobito.wankuma.com/foo/"というURL 要求に対し、http://torikobito.wankuma.com/foo/default.aspx ではなく、http://torikobito.wankuma.com/foo.aspx とか、http://torikobito.wankuma.com/bar.aspx というエンドポイントを定義できる、という感じかな?

URLの書き換えと似たような感じですか?URLの書き換えとは違って実際URLを書き換えることはしないようですけども。

文字で書いてもなんだかよく分からなくなったので、とりあえずやってみる方向で!(次回に続くw)

posted @ 15:26 | Feedback (0)

2008年9月26日 #

Silverlight Version 2 RC0 が♪

リリースされた様子。

Silverlight Tips of the Day:Silverlight Version 2 RC0 Released!!

こちらも興味はあれどほとんど触れてないシロモノ・・・。

posted @ 10:44 | Feedback (0)

2008年9月24日 #

F# とかの情報。

F# とかまったく触ってないのですが興味はある・・・ということでメモです。

公式サイトはここ↓。

F# Official MSDN Website

今はCTPなんですね~↓。

Microsoft F#, September 2008 Community Technology Preview

言語仕様はここ↓。

Language Specification



ネタ元はここ→New MSDN Blog - Welcome to F#

posted @ 9:22 | Feedback (2)

2008年9月22日 #

ASP.NET ルーティング の学習。その1 - ASP.NET ルーティング ってなに?(前編) -

とりこびとです。なんだかバタバタしちゃっててめっきりエントリできなくなっていたわけですが、ここに来て再開を決意しました!!

というわけで第一弾は ASP.NET ネタ。ASP.NET ってほとんどやったこと無いのですけど、ちょっとやる必要が出てきた(というか、やる気をだしたw)のでお勉強をします♪

あくまでお勉強なので間違っちゃってるかもしれません。でも、コメント欄に正しいことを書いて下さるかもしれません。よろしくお願いしますw




さて、ASP.NET 3.5(SP1) になってルーティングの機能が追加されたようですね。

画伯そう面白そうだったのでちょっとお勉強してみることにします♪

このお勉強の入り口はこちらです。

MSDN : ASP.NET インフラストラクチャの概要

で、その中のこれ↓のお勉強ですね。

MSDN : ASP.NET ルーティング

ASP.NET ルーティングを使用すると、Web サイトの特定のファイルにマップする必要のない URL を使用できます。URL をファイルにマップする必要がないため、ユーザーの操作を表すわかりやすい URL を Web アプリケーションで使用できます。

なるほど~。つまりASP.NET ルーティングってのは・・・

  • URLに対応したファイル構成っていう制約を緩和できる。
  • URL側はユーザフレンドリなものに出来るかも。
  • ファイル側はその配置位置(階層的な)なんか気にしなくてもいい感じ?

なんだか面白そうですね~。


というわけで次回は後編として、もう少し「なに?」ってのを書きます~。

posted @ 12:33 | Feedback (1)

2008年8月21日 #

Re:拡張メソッドで ref してみる試み

とりこびとです。こんばんは。

昨日 Twitter 呟いたのをRさんに拾っていただきました。これ↓

拡張メソッドで ref してみる試み

ありがとうございます~♪

Visual Basic の言語仕様を読んでいて、拡張メソッドが拡張するデータ型を参照渡しできそうだったので、C#だとどうなの~?って感じでした。

C#だとコンパイラさんに怒られちゃうんですね、ふむふむ。


で、コメント欄でεπιστημηさんがこんなこと書いてました。

VBのばやい、実体を伴わないInterfaceやMustInherit Classに対してByRefしたらどーなるのでしょうか? > とりこ先生

せんせーちゃうわ!


ぢゃなくて。たぶんこうなるだろうな、と思いつつ、昼間は確認できなかったので、さっき書いてみました。この辺とも絡むっぽいです。

まずは Interface 。

Friend Interface IWankumaDirector
    ReadOnly Property Name() As String
End Interface

こんな IWankumaDirector インターフェイスを用意。Name プロパティだけですがw

で、それを実装するクラスを2つ用意してみる。

Friend Class επιστημη : Implements IWankumaDirector
    Public ReadOnly Property Name() As String Implements IWankumaDirector.Name         Get             Return "επιστημη"         End Get     End Property
End Class




Friend
 Class Torikobito : Implements IWankumaDirector
    Public ReadOnly Property Name() As String Implements IWankumaDirector.Name         Get             Return "とりこびと"         End Get     End Property
End Class

これで準備はおしまいです。さて、肝心の拡張メソッドを用意。

Friend Module IWankumaDirectorExtentions
    <System.Runtime.CompilerServices.Extension()> _     Friend Sub ChangeToTorikobito(ByRef d As IWankumaDirector)
        d = New Torikobito
    End Sub
End Module

拡張メソッドが拡張するIWankumaDirector型を参照渡し(ByRef)で受け取って、その中身を入れ替えてます。(Torikobito クラスを代入しなおす。)

ではお試し実行!

Friend Module Program
    Friend Sub Main()
        Dim YokohamaD As IWankumaDirector = New επιστημη ' As でIWankumaDirector 型と明示的に宣言しとく。

        Console.WriteLine("横浜勉強会のディレクターは {0} さんです。", YokohamaD.Name)
        YokohamaD.ChangeToTorikobito()
        Console.WriteLine("横浜勉強会のディレクターは {0} です。", YokohamaD.Name)
    End Sub End Module

結果は…

横浜勉強会のディレクターはεπιστημηさんです。
横浜勉強会のディレクターはとりこびとです。

うん、入れ替わっちゃいますね。


つぎに MustInherit な Class 。…とにかくだだ~っとコードを。

Friend MustInherit Class WankumaDirector
    Friend MustOverride ReadOnly Property Name() As String
End Class
Friend Class επιστημη : Inherits WankumaDirector
    Friend Overrides ReadOnly Property Name() As String         Get             Return "επιστημη"         End Get     End Property
End Class
Friend Class Torikobito : Inherits WankumaDirector
    Friend Overrides ReadOnly Property Name() As String         Get             Return "とりこびと"         End Get     End Property
End Class
Friend Module WankumaDirectorExtentions
    <System.Runtime.CompilerServices.Extension()> _     Friend Sub ChangeToTorikobito(ByRef wankuma As WankumaDirector)
        wankuma = New Torikobito
    End Sub
End Module
Friend Module Program
    Friend Sub Main()
        Dim YokohamaD As WankumaDirector = New επιστημη ' As でWankumaDirector 型と明示的に宣言しとく。
        Console.WriteLine("横浜勉強会のディレクターは{0}さんです。", YokohamaD.Name)
        YokohamaD.ChangeToTorikobito()
        Console.WriteLine("横浜勉強会のディレクターは{0}です。", YokohamaD.Name)     End Sub End Module

Interface の場合とほとんどやり方は変わりません。で、実行…。

横浜勉強会のディレクターはεπιστημηさんです。
横浜勉強会のディレクターはとりこびとです。

うん、入れ替わっちゃいますね。


拡張メソッドの機能としてこれはどうなのかなぁと思ったりもしますが、できるできないと、使う使わないとはまた別の話…かなぁと。



# επιστημηさ~ん、エントリの内容合ってますか?(汗

posted @ 3:56 | Feedback (6)

2008年8月14日 #

これほど幸せなことはありません。

とりこびとです。 今日は中さんに誕生日会をひらいてもらいました。 9名もの方に集まっていただいてとても楽しい時間を過ごすことができました。 自分のことに人が集まってくれることほど幸せなことはありません。 私は本当に幸せな人間だと思います。 本当にありがとうございました。 言葉にならないほどの感激を抱えての帰路より。

posted @ 0:31 | Feedback (4)

2008年8月11日 #

Visual Basic でも'yield' みたいなのが書けるようになったりするの?

※ ネタ元もこのエントリも'思索的な'内容です。ご注意ください。

ネタ元は→Panopticon Central : Iterators in Visual Basic

これまたPaulさんが面白いことを書いてますね。


C# のyieldに相当するIteratorの構文とかどう?


ってお話。で、上がっているコードがこれです↓。

Module Module1
    Function FromTo(ByVal low As IntegerByVal high As IntegerAs IEnumerable(Of Integer)
        Return Iterator
                   If low <= high Then
                       Return low
                       Return Each FromTo(low + 1, high)
                    End If
               End Iterator
    End Function
    Sub Main()
        For Each i In FromTo(15)
            Console.WriteLine(i)
        Next
    End Sub
End Module





えっと…キーワードが…


Each !!?


posted @ 22:05 | Feedback (3)

ラムダ式がより強力に??

※ ネタ元もこのエントリも'思索的な'内容です。ご注意ください。

ネタ元は→Panopticon Central : Lambda expression improvements

Paulさんが面白いことを書いてますね。


一つ目は…


なんにも返さないラムダ式もあってもいいんぢゃない?


Sub プロシージャなラムダ式ですね。こんな感じのコードが上がってますね。

Dim x = Sub() Console.WriteLine(10)


二つ目は…


マルチラインでどうよ?


たしかにっ!こんな感じのコードが上がってますね。

Dim y = Function(x)
            If x > 0 Then
                Return x
            Else
                Return -x
            End If
        End Function

面白い…面白いんですけど…


ほんとにそのキーワード使ったりするの?


と思います。

posted @ 21:53 | Feedback (3)

2008年8月10日 #

「My を拡張するならここを読むべし♪」を改めて自分で読んでみた。その1。

とりこらぼ。:というわけで、My を拡張するならここを読むべし♪

の元ネタ↓

MSDN : Visual Basic における My 名前空間の拡張


夏休みの読書感想文のネタに読書していましたが、1点忘れないようにメモしときます。


何はともあれ、Myを拡張してみます。拡張はMy.Algorithmとかで、こないだのへっぼこソートをMy名前空間で使えるようにしましょう♪

まずは拡張内容を含むクラスをご用意。MyAlgorithm クラスとしましょう。

Public Class MyAlgorithm

    Public Sub MogoMogoSort(ByVal list As IList(Of IComparable))
        While Not IsSorted(list)
            Shuffle(list)
        End While
    End Sub     Private Sub Shuffle(ByVal list As IList(Of IComparable))
        Dim r = New Random()
        For i = 0 To list.Count - 1
            Dim value = r.Next(list.Count)             Dim temp = list.Item(i)             list.Item(i) = list.Item(value)             list.Item(value) = temp
        Next i
    End Sub     Private Function IsSorted(ByVal list As IList(Of IComparable)) As Boolean
        If list.Count < 2 Then
            Return True
        End If
        For i = 0 To list.Count - 2
            If list.Item(i).CompareTo(list.Item(i + 1)) > 0 Then
                Return False
            End If
        Next i
        Return True
    End Function End Class

ま、これの中身はそれほど大切じゃなくってぇ、問題は次のMy名前空間への追加ですね。

この部分↓

メンバを My 名前空間に追加するには、必要に応じてモジュールにプロパティを追加します。My 名前空間に追加されるプロパティごとに、ThreadSafeObjectProvider(Of T) 型のプライベート フィールドを追加します。この型は、カスタム プロパティによって返される型です。このフィールドは、GetInstance メソッドの呼び出しによってプロパティから返されるスレッド セーフなオブジェクト インスタンスの作成に使用されます。その結果、拡張プロパティにアクセスする各スレッドは、返された型の独自のインスタンスを受け取ります。次の例では、SampleExtension 型の SampleExtension というプロパティを My 名前空間に追加します。

My 名前空間へのカスタム オブジェクトの追加

ふむふむ…こういうことかな?

Namespace My
    <Global.Microsoft.VisualBasic.HideModuleName()> _     Module MyExtention
        Private _myAlgorithmProvider As New ThreadSafeObjectProvider(Of MyAlgorithm)
        Friend ReadOnly Property Algorithm() As MyAlgorithm             Get                 Return _myAlgorithmProvider.GetInstance()             End Get         End Property
    End Module
End Namespace

で、ThreadSafeObjectProvider(Of T) ってなんぞ?


オブジェクトブラウザでも見つからない…。というわけでつづく。

posted @ 19:48 | Feedback (0)