rksoftware

Visual Studio とか C# とかが好きです

C#

C# 2.0 以降の新機能の確認 - C# 2.0 - プロパティの get/set 個別のアクセスレベル

C#

C# 2.0 以降の新機能を一つづつ確認していきます。 以前に一度行ったのですが、公式ドキュメント再編でリンク切れしているところを見つけてしまったので。今ならもっと簡潔なサンプルが欠けるところもあるだろうし、せっかくなので今もう一度確認して行きま…

C# 2.0 以降の新機能の確認 - C# 2.0 - ?? 演算子

C#

C# 2.0 以降の新機能を一つづつ確認していきます。 以前に一度行ったのですが、公式ドキュメント再編でリンク切れしているところを見つけてしまったので。今ならもっと簡潔なサンプルが欠けるところもあるだろうし、せっかくなので今もう一度確認して行きま…

C# 2.0 以降の新機能の確認 - C# 2.0 - Null 許容型 (Nullable)

C#

C# 2.0 以降の新機能を一つづつ確認していきます。 以前に一度行ったのですが、公式ドキュメント再編でリンク切れしているところを見つけてしまったので。今ならもっと簡潔なサンプルが欠けるところもあるだろうし、せっかくなので今もう一度確認して行きま…

C# 2.0 以降の新機能の確認 - C# 2.0 - 部分型定義 (Partial クラス/構造体)

C#

C# 2.0 以降の新機能を一つづつ確認していきます。 以前に一度行ったのですが、公式ドキュメント再編でリンク切れしているところを見つけてしまったので。今ならもっと簡潔なサンプルが欠けるところもあるだろうし、せっかくなので今もう一度確認して行きま…

C# 2.0 以降の新機能の確認 - C# 2.0 - 反復子 (yield)

C#

C# 2.0 以降の新機能を一つづつ確認していきます。 以前に一度行ったのですが、公式ドキュメント再編でリンク切れしているところを見つけてしまったので。今ならもっと簡潔なサンプルが欠けるところもあるだろうし、せっかくなので今もう一度確認して行きま…

C# 2.0 以降の新機能の確認 - C# 2.0 - 匿名メソッド

C#

C# 2.0 以降の新機能を一つづつ確認していきます。 以前に一度行ったのですが、公式ドキュメント再編でリンク切れしているところを見つけてしまったので。今ならもっと簡潔なサンプルが欠けるところもあるだろうし、せっかくなので今もう一度確認して行きま…

C# 2.0 以降の新機能の確認 - C# 2.0 - ジェネリック

C#

C# 2.0 以降の新機能を一つづつ確認していきます。 以前に一度行ったのですが、公式ドキュメント再編でリンク切れしているところを見つけてしまったので。今ならもっと簡潔なサンプルが欠けるところもあるだろうし、せっかくなので今もう一度確認して行きま…

C# 9.0 の確認「パターン マッチングの拡張機能」

C#

C# 9.0 の確認の目次はこちら ■ パターン マッチングの拡張機能 ドキュメントはこちら 「 C# 9 には、新しいパターン マッチングの機能強化が 」 から始まるブロックです。 皆さん大好きなパターンマッチングが強化されました。これは使いこなしたいですね。…

C# 9.0 の確認「localsinit フラグの出力を抑制する」

C#

C# 9.0 の確認の目次はこちら ■ localsinit フラグの出力を抑制する ドキュメントはこちら パフォーマンスと相互運用 という項目の 4 つめの塊の 「最後に、」 から始まるブロックです。 この属性がついている場合、ゼロ初期化がなされずパフォーマンスが向…

C# 9.0 の確認「関数ポインター」

C#

C# 9.0 の確認の目次はこちら ■ 関数ポインター ドキュメントはこちら パフォーマンスと相互運用 という項目の 3 つめの塊の 「関数ポインターでは、」 から始まるブロックです。 関数ポインターです。ポインターというからには unsafe で書く必要があります…

C# 9.0 の確認「foreach ループの拡張機能 GetEnumerator サポート」

C#

C# 9.0 の確認の目次はこちら ■ foreach ループの拡張機能 GetEnumerator サポート ドキュメントはこちら 適合性と完成度の機能 という項目の結構読み進めたところにある 「また、foreach ループによって」 から始まるブロックです。 簡単に言うと拡張メソッ…

C# 9.0 の確認「モジュール初期化子」

C#

C# 9.0 の確認の目次はこちら ■ モジュール初期化子 ドキュメントはこちら コード ジェネレーターのサポート という項目の 4 つ目の塊 「コード ジェネレーターの 2 つ目の新機能は」 から始まるブロックです。 簡単に言うとアセンブリ (.dll) が使われる際…

C# 9.0 の確認「部分メソッドの新機能」

C#

C# 9.0 の確認の目次はこちら ■ 部分メソッドの新機能 ドキュメントはこちら コード ジェネレーターのサポート という項目の 3 つ目の塊 「コード ジェネレーターに対して追加された 2 つの機能は」 から始まるブロックです。 ~の新機能、という寿葉はそれ…

C# 9.0 の確認「ローカル関数の属性」

C#

C# 9.0 の確認の目次はこちら ■ ローカル関数の属性 ドキュメントはこちら 適合性と完成度の機能 という項目の割と読み進めた所の 「ようやく、ローカル関数に属性を適用できるようになりました」 から始まるブロックです。 言葉の通り、ローカル関数で属性…

C# 9.0 の確認「ラムダ ディスカード パラメーター」

C#

C# 9.0 の確認の目次はこちら ■ ラムダ ディスカード パラメーター ドキュメントはこちら 適合性と完成度の機能 という項目の割と読み進めた所の 「次に、ラムダ式に対するパラメーターと」 から始まるブロックです。 見出しのカタカナ「ラムダ ディスカード…

C# 9.0 の確認「共変の戻り値の型」

C#

C# 9.0 の確認の目次はこちら ■ 共変の戻り値の型 ドキュメントはこちら 適合性と完成度の機能 という項目の割と読み進めた所の 「共変の戻り値の型を使用すると、」 から始まるブロックです。 ドキュメントにちゃんと書いてはあるのですが、説明が少なすぎ…

C# 9.0 の確認「ターゲットにより型指定された条件式」

C#

C# 9.0 の確認の目次はこちら ■ ターゲットにより型指定された条件式 ドキュメントはこちら 適合性と完成度の機能 という項目の割と読み進めた所の 「同様の機能により、条件式の対象となる型の解決が向上します。」 から始まるブロックです。 ちょっと何言…

C# 9.0 の確認「ターゲット型の新しい式」

C#

C# 9.0 の確認の目次はこちら ■ ターゲット型の新しい式 ドキュメントはこちら ※適合性と完成度の機能 という項目の一つ目のブロックです。 機能の名前だけを見ても想像しづらいですが、 new 式 という式が追加されました。雑にいうと型がわかっているところ…

C# 9.0 の確認「ネイティブ サイズの整数」

C#

C# 9.0 の確認の目次はこちら ■ ネイティブ サイズの整数 ドキュメントはこちら パフォーマンスと相互運用 という項目の二つ目のブロック (3行目の「ネイティブサイズの整数~」)です。 nin と nuint という型が追加されました。雑にいうと 32 ビット環境で…

C# 9.0 の確認「最上位レベルのステートメント」

C#

C# 9.0 の確認の目次はこちら ■ 最上位レベルのステートメント ドキュメントはこちら C# はプロジェクト内のどれかのクラスの static void Main(string[] args) メソッドから実行されるものでしたが、クラスを書かずにいきなりコードが書けるようになりまし…

C# 9.0 の確認「init 専用セッター」

C#

C# 9.0 の確認の目次はこちら ■ init 専用セッター ドキュメントはこちら 初期化時にだけ値をセットできる素敵なプロパティを作れます。もっとわかりやすく簡単に言うと、イミュータブルなオブジェクトが作れます。 初期化とは コンストラクタ 初期化子 ( ne…

C# 9.0 の確認「レコード」

C#

C# 9.0 の確認の目次はこちら ■ レコードの基本 ドキュメントはこちら GetHashCode()、ToString()、== なんかをいい感じに勝手に実装してくれる素敵な型です。 値を表現するクラスをいい感じに作ってくれます。 class を作る際に、class と書いていた部分を …

C# 9.0 の確認(目次)

C#

.NET 5 で C# が 9.0 になるので、これからしばらく C# 9.0 の確認に注力したいと思います。 docs のドキュメントはこちら ■ 目次 ※前述のドキュメントより 確認した確認結果の記事をリンクしていきたいと思います。 レコード init 専用セッター 最上位レベ…

.NET 5 を RC1 版で動かしてみる

みなさんお待ちかねの .NET 5 のリリースが迫っています。もう少しだけ待ちの日々ですが .NET 5 の RC1 版が公開されて動かすことができます。 そこで、実際に環境を整えて動かしてみましょう。 ■ 用意するもの Visual Studio 2019 の Preview 版をインスト…

Uno Platform で世界に挨拶する簡単なハンズオンサンプルを作りました

Uno Platform で世界に挨拶する簡単なハンズオンサンプルを作りました。 正確には以前に一回作ったのですが、最近の事情でお蔵入りしていたので平日の夜にゆっくりやっても終わるように分量を短くしたものを作りなおしました。 ※ 本当はまだ、実際にゆっくり…

C# Tokyo オンライン LT 大会 2020/07 で話をさせていただきました

先日 C# Tokyo コミュニティで C# Tokyo オンライン LT 大会 2020/07 を開催しました。 枠がいっぱいになってキャンセル待ちにまでなる大盛況でした。 私は C# 7・8 の復習 というタイトルで話をしました。 C# 7・8 の復習 from m ishizaki ■ 次回予定 C# To…

C# 7・8 の復習その4 ~ C#8の新機能を調べた時のスライド

C#

皆さん C# 書いてますか? 私はあまり書けていません。 特に、C# 7 以降は地味に書けない環境だったり、C# 8 などは (一部対応している仕様もありますが) .NET Framework で書けなかったり、何気に使えないことも多いのでなおさらです。 ■ 復習しよう という…

C# 7・8 の復習その3 ~ C#7.2の新機能を調べた時のスライド

C#

皆さん C# 書いてますか? 私はあまり書けていません。 特に、C# 7 以降は地味に書けない環境だったり、C# 8 などは (一部対応している仕様もありますが) .NET Framework で書けなかったり、何気に使えないことも多いのでなおさらです。 ■ 復習しよう という…

C# 7・8 の復習その1

C#

皆さん C# 書いてますか? 私はあまり書けていません。 特に、C# 7 以降は地味に書けない環境だったり、C# 8 などは (一部対応している仕様もありますが) .NET Framework で書けなかったり、何気に使えないことも多いのでなおさらです。 ■ 復習しよう という…

アドオン機能を持ったアプリを作る

C#

C# でアプリに対してアドオン機能として、ユーザーが機能を追加できるようにしたいことが良くあります。 注意 今回の例は大いなる力をアドオン機能作成者の与えます。不用意なアドオン機能がアプリを簡単に壊すことができます。 大いなる力には大いなる責任…