手続き型音楽の日常

関数型音楽に乗り換えたい

C#

C#/VB.NET の XML コメントに `completionlist` という謎のタグがある件

ネット上の情報が少なすぎて何なのか解明するのに非常に時間がかかったので。 忘れないために。 <completionlist cref=""/> 標準化されていないけど正しくコンパイルされるXMLタグ。 Microsoft Docs にも情報が載っていないので、何のための機能か一切わからない。 日本語の情報はここ</completionlist>…

.net standard プロジェクトでnull許容構造体の循環参照が検出されない

先日、ウェーブレット木の記事を書くときに C# 書いていて、あれおかしいな?と感じたところを突き詰めた結果、こんなことが分かった次第です。 Visual Studio 2017 で現象を確認しましたが、 Visual Studio 2019 Preview 2 でも同じく確認したので。 現象詳…

C# で ウェーブレット木 を実装する話 (2018年秋 応用情報技術者試験で出題された件)

応用情報技術者試験から1週間経ちましたね。 私も今回受けてきたのですが、なかなか勉強が捗らず不安しかありません。 ただ、問題解いててほんと 目から鱗 って感じたのが、今回実装する ウェーブレット木 でした。 小さいころから文字列の操作ってめちゃく…

MVVM 初心者なので、 .NET Standard 2.0 + Xamarin.Forms で Messaging クラスを実装してみた

昨今のお技術についていけていない私は、もちろん MVVM も初心者です。もっぱら Windows Forms に生きてる人なのです。 この間 Xamarin 勉強会に出かけたし、本業でも少し Xamarin を触ることになったので、 WPF 含め MVVM を色々と調べていたのですが。 や…

コレクション初期化子とオブジェクト初期化子はどちらが優先されるのか

ちょっと気になったのでメモ。 結論 オブジェクト初期化子のほうが優先される 。 実験 No.1 まず、普通にオブジェクト初期化子を書く。 using System.Collections.Generic; namespace ClassInheritedListSample { class Program { static void Main(string[]…

dynamic なオブジェクトに IntelliSense を表示する

ネタです。ホントは出ちゃいけないんじゃないの?という記事。 Visual Studio 2015 で最初確認したんですが、家に帰ってきて 2017 でやってみても同じ結果でした。 Roslyn のせいなのかな? コード namespace dynamicIntelliSenseTest { class Program { sta…

なごやで Xamarin 開発者と Xamarin 勉強会 に行ってきた話

先日 8/19、「なごやで Xamarin 開発者と Xamarin 勉強会」という勉強会に参加してきました。 jxug.connpass.com Xamarin 経験者向けの、ちょっと踏み込んだ勉強会です。 たまたま connpass を漁っていたら引っかかって、「 名古屋じゃん! 」「 超有名なち…

お兄ちゃん!そこは MemoryStream の出番だよ!

タイトルは釣りです(お約束) MemoryStream のススメ みなさん、 System.IO.MemoryStream 使っていますか。私はよく使いますよ。 MemoryStream Class (System.IO) | Microsoft Docs リアクティブプログラミングだったり、Java の Stream API だったり、いろん…

.NET core コンソールアプリで文字化けするときの対処法

Main メソッドの一番頭にこれを書く。 Console.OutputEncoding = Console.OutputEncoding; 何をしているのか .NET core コンソールアプリでは、規定で Console.OutputEncoding に System.Text.UTF8Encoding のインスタンスが入っています。 しかし、コンソー…

StringBuilderをstringと同じだけ作ると、どれほど遅いのか。

この間、以下のようなコードを見かけました。 StringBuilder strSql = new StringBuilder(); strSql.Append(@"SELECT * FROM ... WHERE ..."); // SQLは長いので省略。 this.ExecuteNonQuery(strSql.ToString()); フォームのメソッドに書かれていたのですが…

C#でJavascriptみたいな即時関数を実行する

個人的には、「即時関数」より「即時構文」というほうがしっくり来ます。 名づけ親の本では「即時関数パターン」とされているので、それでもしっくり来ます。 「即時関数」じゃ、少し足らない気がします。 Javascriptでよく使われる即時関数について まず即…

現在 0000/00/00 00:00 を生きています。