プログラミング C# - 翔ソフトウェア (Sho's)

C#/.NET/ソフトウェア開発など

.NET

BuriKaigi 2023 を開催しました

毎年冬に富山で開催されている BuriKaigi。 【参考】Burikaigi という毎年冬のイベント | hikaruworld | Medium 前回と前々回は COVID-19 の影響でオンラインでの開催でしたが、 今回3年ぶりでのオフライン開催となりました。 多くの方と久々に対面でお会い…

BuriKaigi 2022 を開催しました

毎年冬に富山で開催されている BuriKaigi。COVID-19 の影響で、前回に続いて今回もオンライン開催となりました。 【参考】Burikaigi という毎年冬のイベント | hikaruworld | Medium 前回同様、ルーム シロエビとルーム ホタルイカの2トラックに分かれて、オ…

Shos.UndoRedoList (List and ObservableCollection which support undo/redo)

Click here for Japanese version (日本語版はこちら) I made List and ObservableCollection which support undo/redo: Shos.UndoRedoList | GitHub * See README.md for instructions. * There is also a sample app for WPF. Sample app for WPF You can …

Shos.UndoRedoList (undo/redo ができる List と ObservableCollection)

英語版はこちら (Click here for English version) undo/redo ができる List と ObservableCollection を作りました: Shos.UndoRedoList | GitHub ※ 使い方は README.md を参照してください。 ※ WPF のサンプル アプリもあります。 WPF のサンプル アプリ Nu…

【ライブコーディング】連結リスト LinkedList<T> ‐自作で学ぶコレクションの基礎‐

YouTube で xin9le さんとコーディング ライブをやりました。 お題は、C# で連結リスト LinkedList<T>。 テストを書きながら少しずつ実装していくというものになっています。 Visual Studio の Live Share と Live Unit Testing を使い、2人で快適にコーディン</t>…

「.NET で機械学習/ディープラーニングをやってみよう!」 | MVP パーソナルスポンサー | de:code 2020

デジタル イベントとして開催された de:code 2020 (6月17日 – 7月17日) にMVP パーソナルスポンサーとしてサンプル コードとチュートリアルを提供しました。 【de:code 2020】 Azure Machine Learning Studio と Python と C#/.NET によるディープ ラーニン…

Microsoft Build 2020 (2020/05/19-20)

マイクロソフトの最新の技術について、以下のようなオンラインイベントで情報が提供されました。 Microsoft Build 2020 (2020/05/19-20) de:code 2020 (2020/06/17-30) これらのイベントで公開された/公開予定の技術についてご紹介いたします。 ■ .NET 関連 …

新たな Web アプリケーションフレームワーク「Blazor」 &dash; ネイティブ アプリケーション開発も可能に

日本時間で昨日、「.NET Conf: Focus on Blazor」というオンライン カンファレンスが開催され、Blazor に関する新たな発表がなされた。 現在、セッション動画を観ることができる。 .NET Conf: Focus on Blazor (英語) .NET Conf: Focus on Blazor 2020 | You…

Shos.CsvHelper (simple library for reading and writing CSV)

Click here for Japanese version (日本語版はこちら) I wrote a simple library for reading and writing CSV (the Values Comma-Separated or Character-Separated Values). The csv format file is sometimes necessary because it can be displayed / ed…

Shos.CsvHelper (CSV を読み書きするためのシンプルなライブラリー)

英語版はこちら (Click here for English version) csv (Comma-Separated Values または Character-Separated Values) を読み書きするためのシンプルなライブラリーを書いてみた。 csv 形式のファイルは Excel などで表示/編集することができ、便利なので、…

Microsoft MVP を再受賞しました (My 12th MVP Award from Microsoft)

Microsoft MVP Award を再受賞しました。12年目になります。 My MVP Profile Microsoft MVP for Development Tools - Visual C# (Jul. 2005 - Dec. 2014) Microsoft MVP for .NET (Jan. 2015 - Oct. 2015) Microsoft MVP for Visual Studio and Development …

Build 2014 でオープンソースになったと発表された Roslyn のソースコードを弄ってみた

Build 2014 での Roslyn 関連の発表 先日、マイクロソフトの開発者会議 BUILD 2014 (4月2–4日、米国サンフランシスコ) で Roslyn がオープンソースとして公開されたことが発表された。 BUILD 2014 での Roslyn の発表に関連した記事/サイト [Video] The Futu…

Room metro #23 大阪「メタプログラミング C#」の資料公開

Room metro #23 大阪 (3月1日) でやったセッションの資料を公開。 メタプログラミング C# from Fujiwo サンプル コード サンプル コードはこちら。 ■ [C#][メタプログラミング][Reflection][Expression][式木][Roslyn][dynamic] 関連記事一覧 ■[C#][ラムダ式…

メタプログラミング入門 - Roslyn による C# ソースコードの解析と変更

この記事は、「C# Advent Calendar 2013」の 12 月 12 日分。 ※ 「[C#][.NET][CodeDOM] メタプログラミング入門 - CodeDOM によるクラスの生成」の続き。 Roslyn Roslyn は、C# や Visual Basic のコンパイラーの内部の API 等を公開したものだ。"Compiler a…

メタプログラミング入門 - CodeDOM によるクラスの生成

※ 「[C#][.NET][CodeDOM] メタプログラミング入門 - CodeDOM による Hello world!」の続き。 CodeDOM によるクラスの動的生成 前回は、CodeDOM を使って Hello world! を表示するプログラムを動的に生成した。 もう少し CodeDOM を使ってみよう。 今回は、Co…

メタプログラミング入門 - CodeDOM による Hello world!

※ 「[C#][.NET] メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング (パフォーマンスのテスト)」の続き。 CodeDOM による動的コード生成 これまで、Reflection.Emit、式木、Roslyn による動的コード生成を試してきた。これら…

November 2013 MVP Global Summit - 出発前

Microsoft MVP Global Summit 明日から、Microsoft MVP Global Summit に参加予定。今年は二回目。 世界中から、招待された数千人の Microsoft MVP が集まり、米国ワシントン州のマイクロソフト本社及びその周辺で、製品チームのマイクロソフトの社員と共に…

メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング (パフォーマンスのテスト)

※ 「[C#][.NET][Roslyn] メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング (Roslyn 編)」の続き。 オブジェクトの文字列変換のメタプログラミング ここまで、8通りの文字列変換メソッドを見てきた。 メソッドの動的生成を行…

メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング (Roslyn 編)

※ 「[C#][.NET][式木] メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング (式木編)」の続き。 Roslyn によるメタプログラミング Roslyn によるメタプログラミングに関しては、以前、次にあげる記事で扱った。参考にしてほし…

メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング (式木編)

※ 「[C#][.NET] メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング (Reflection.Emit 編)」の続き。 式木によるメタプログラミング Reflection.Emit の次は、式木によって文字列生成を行う例を見ていこう。 題材は同じく 「[…

プログラミング C# (開発関連) - 目次

プログラミング C# (開発関連) - 目次 <h4><a href="http://blog.shos.info/common/csharp_expression_index.html" data-mce-href="http://blog.shos.info/common/csharp_expression_index.html">■[C#][ラムダ式][LINQ][Expression][式木] 関連記事一覧</a></h4> <h4></h4>

メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング (Reflection.Emit 編)

※ 「[C#][.NET] メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング」の続き。 Reflection.Emit によるメタプログラミング それでは、Reflection.Emit を用いて文字列生成を行う例を見ていこう。 題材は 「[C#][.NET] メタプ…

メタプログラミング入門 - 目次

■ [C#][メタプログラミング][Reflection][Expression][式木][Roslyn][dynamic] 関連記事一覧

メタプログラミング入門 - 応用編 - オブジェクトの文字列変換のメタプログラミング

※ 「[C#][.NET] メタプログラミング入門 - 応用編 - オブジェクトの文字列変換を静的/動的に行う」の続き。 前回は、メタプログラミングによらない静的な方法とリフレクションによる動的な方法で、オブジェクトを文字列に変換した。 今回から、メタプログラ…

メタプログラミング入門 - 応用編 - オブジェクトの文字列変換を静的/動的に行う

※ 「[C#][.NET] メタプログラミング入門 - メソッド呼び出しのパフォーマンスの比較」の続き。 前回は、コード生成を行ってメソッド呼び出しを行う3通りの方法と静的なメソッド呼び出しや動的なメソッド呼び出しのパフォーマンスを比較した。 今回から、少し…

メタプログラミング入門 - メソッド呼び出しのパフォーマンスの比較

※ 「[C#][.NET] メタプログラミング入門 - Add メソッドのパフォーマンスの比較」の続き。 C# によるメタプログラミングでのパフォーマンスの比較 前回は、C# によるメタプログラミングで Add メソッドを動的生成した場合の実行速度を測定した。 今回も同様…

メタプログラミング入門 - Add メソッドのパフォーマンスの比較

※ 「[C#][.NET] メタプログラミング入門 - Roslyn による Add メソッドの動的生成」の続き。 C# によるメタプログラミングでのパフォーマンスの比較 前回まで、C# によるメタプログラミングで Add メソッドを動的生成するプログラムを作成してきた。 [C#][.N…

メタプログラミング入門 - Roslyn による Add メソッドの動的生成

※ 「[C#][.NET] メタプログラミング入門 - 式木による Add メソッドの動的生成」の続き。 Roslyn によるメタプログラミング 前回は、式木を用いて Add メソッドを動的生成するプログラムを作成した。 今回は、Roslyn によるメソッドの動的生成だ。 Roslyn は…

メタプログラミング入門 - 式木による Add メソッドの動的生成

※ 「[C#][.NET] メタプログラミング入門 - Reflection.Emit による Add メソッドの動的生成」の続き。 式木によるメタプログラミング 前回は、Reflection.Emit を用いて Add メソッドを動的生成するプログラムを作成した。 今回は、式木によるメソッドの動的…

メタプログラミング入門 - Reflection.Emit による Add メソッドの動的生成

※ 「[C#][.NET] メタプログラミング入門 - はじめに」の続き。 Reflection.Emit によるメタプログラミング 前回は、C#/.NET でメタプログラミングを行う方法について述べた。 これから数回に渡って、それぞれの方法について紹介していきたい。 今回は、Refle…