.NET
「時間抽象化」ってパッと見なんのことかわかりませんでしたが、DateTime.nowとか時関係の実装のテストで困るやつの対応なのですね。おおっ、それはうれしい。 「時間抽象化」 www.infoq.com まだ公式ドキュメントには使用例とかがほとんど無くてちょっとわ…
マイクロソフトがいざなう僕らの旅は、やはり終わらない。 Introducing WinUI 3 Preview 1 - Windows Developer Blog これまでの道は二又三又たくさん又あって、行き止まりって思ってた道も、結局全部また1つの道に集まってくる...。旧道もなんとか先を通し…
喜ぶべきなのだろうか、いや、喜ばしいと思いたい。 Windows開発に、また新たな1ページが。 C++ - C++/WinRT の紹介 マイクロソフトがいざなう、僕たちの旅は、幸せに向かっているはずだ。きっと。 あの頃は(WinRTでなく)Metroだった...(遠い目) Froms WPF …
.NET C#でライブラリを公開するときはinterfaceを公開したほうがいいという意見を見かける。UnitTestとかでmock/stubのしやすさからinterfaceを使った方が便利なことは確かにある。 でもC#では、interfaceは後からメソッド追加すると、interfaceをimplements…
タイトル書いたら「音声プログラミング」ってなんかヘンだな。ソースコードを音声入力で書く...、とかじゃないですよ。Windowsで音声合成でしゃべらせたり音声認識に関するライブラリを使うってことです。 音声認識 - .NET デスクトップ アプリと音声認識 結…
TaskをキャンセルするのにつかうCancellationTokenですが、キャンセルされたとき呼ばれるdelegateを登録しておくことができるんですよね。そういえば.NETにTaskが追加された頃になんかで見たことあったかもしれないけど忘れていました。 var cts = new Cance…
だって、 Func デリゲート とか Action デリゲート などができたので、EventHandlerとEventArgsは"過去の遺物"扱いでよいかと。 マイクロソフトさん、イベントパターンについては、プログラミングガイドや、クラス ライブラリ開発のデザイン ガイドラインで…
C# でイベントEventWaitHandle,(C#言語のeventデリゲートじゃなくてWin32イベントのほうね)のシグナルを待つのに、非同期のXxxAsync()は無いのか...。せめてeventデリゲートあるかと思ってた。Processクラスには終了待つイベントハンドラあるのにね。 AutoRe…
第6版持ってるけど、第7版も出たら買おうと思ってたので。C#5(.NET4.5)対応した内容を是非読みたかった。 Rxがまるまる1章分ある。RxとTask(やasync/await)の扱いの比重は、個人的には逆のほうがうれしかったな。Rxは確かにおもしろいけど。 とはいえ、C#を…
private enum MyEnum { AAA, BBB, CCC } private static IEnumerable<string> GetCaseSource() { return Enum.GetNames(typeof(MyEnum)); } [Test] [TestCase("abc")] [TestCaseSource("GetCaseSource")] public void FuncTest(string arg) { Assert.なにか; }</string>
いつの間にやらリリースされていました。っていうか、遅すぎでしょ。VS2012用のはもうアップデートされないと思ってたよ。 Visual Studio Code Metrics PowerTool 11.0
備忘録 Team Foundation Service から チームプロジェクトを削除するコマンド TFSDeleteProject.exe "C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\TFSDeleteProject.exe" /collection:"https://<userName>.visualstudio.com/DefaultCollection/" <projectName></projectname></username>
これ便利です。でも、 VSでWin8ストアアプリを作るとコードテンプレートに含まれてるらしいBindableBaseクラスとか、 WPFでもBindableBaseを使ってINotifyPropertyChangedを実装する - SourceChordを作ってみている方とか、 キモはCallerMemberNameAttribute…
VS2012 Update2 Updateした。 BlendがWPF対応したらしいので使ってみたかったのだが、VS2012 Express for Desktopだけ入れてる自分の環境には、そもそも"Blend for visual studio 2012"が入ってないな...。うーむ。Express for Windows8も入れにゃいかんのか…
ビッグエンディアンのユニコード文字列用のEncoding.BigEndianUnicodeプロパティあったんだ。UnicodeEncodingクラス
Task.Run()を最初見たとき、ああ、これからはTask.Factory.StartNew()じゃなくてこれを使うようになるんだな、とか思ったのですが、Task.Run()はTask.Factory.StartNew()でできること全てができるわけじゃないので、Run()は、あくまでTaskScheduler.Default…
ほう。こちらで公開されてます。Rxどうなってんのか実装見たいと思うことがあったので、うれしいかも。でも、元々.NETのソースコードはこちらでも見れるけどね。んでhttp://referencesource.microsoft.com/netframework.aspxを久々に見たら、.NET4.5もう追加…
ことがBlogにポストされてた。まだ試してないけど。時間の扱いとエラーの扱いが変わったのかな。っていうか、長すぎるよこのポスト。長すぎて読みきれない。今日はもう寝る。
なんか初めて見た気がしたので。 Environment.UserInteractive プロパティ (System) WindowsのプロセスでUIを持ってるかどうかは知りたいこともあるよね。あるかな? あと、Debugger クラス (System.Diagnostics)も知ってると便利なときあるよね。 if (!Debu…
このあたりなんか特に。 WCFはサーバ側のオブジェクト参照をクライアント側で透過的に扱えない。ギャフン。オブジェクト指向で"リモート"っていったらそれ基本でしょ。...残念。 まあ、WCFになってよかったと思う人のほうが世の中多いんでしょう(疑わしい)。…
これ、ASP.NETのテンプレートエンジンを単独でも使える感じのものですね。いろいろな用途が考えられるので、ちょっとおもしろいかも。
今までその値段と重さから買うのをためらっていたが、なんか勢いで買ってみた。 タイトルにはC#とは書いてないが(原題は"CLR via C#"なのに!)、明らかにC#言語上級者向けの本。C#について、もう書籍からじゃ得るもの無いかな、と思っている人があえて読んで…
.Net Frameworkでログといえば、まずはTraceSource クラス (System.Diagnostics)でしょうが、ほかにも、System.Diagnostics.Eventing 名前空間もあるし、名前的にそのものズバリのSystem.IO.Log 名前空間もある。System.IO.LogはVista以降でないとCommon Log…
Developer Preview から Consumer Preview へのアプリの移行の「Hot start async model」にも書いてあるのですが、IAsyncInfo.Start()メソッドがなくなりました。以前は、WinRTのAPIにたくさんあるXxxAsync()メソッドの戻り値、IAsyncOperationやIAsyncActio…
Reactive Extensions v2.0 Betaでました。 って言うか、Visual Studio 11 Betaに入ってないのかよRx。 てっきり入ってると思って、アセンブリの参照を追加しようと探しちゃったよ。
EDIT 2014.2.15 今見るとasync/awaitで例外処理がまるでできない的に書いていますが、これは悪い例ですので。こような記事Async/Await - 非同期プログラミングのベスト プラクティス参照してください。 asyncメソッドの外側で例外がキャッチできません。 sta…
単純なコンソールアプリをこんなふうに書くと、 class Program { static void Main(string[] args) { FuncAsync(); Console.ReadLine(); } static async void FuncAsync() { WriteLine("FuncAsync()Begin"); int r = await Task.Run<int>(() => Worker()); WriteL</int>…
.Net 4から、タスクのキャンセルができるようになりましたが、ちょっとわかりづらかったところ。 CancellationTokenSource source = new CancellationTokenSource(); CancellationToken token = source.Token; Task.Factory.StartNew(() => { //... if (toke…
これは知ったとき萌えた。 http://msdn.microsoft.com/en-us/data/gg577609 http://www.atmarkit.co.jp/fdotnet/introrx/index/index.html まだなじめてないけど。自分の場合、仕事で気合い入れて使わないとなかなか身につかないんだ。
だから、その言語で標準的なライブラリとして提供してほしい。 日付時間関連って、きっと世界中で毎日、星の数ほどのバグコードが生成されている気がする。1/31の1ヶ月後とか、閏年とか、サマータイムとか、スクラッチから書いてバグらないなんて難しい。 意…