nuits.jp blog

C#, Xamarin, WPFを中心に書いています。Microsoft MVP for Development Technologies。

2017-06-01から1ヶ月間の記事一覧

Service LocatorとDependency InjectionパターンとDI Container

本エントリーでは次の点を整理したいと思います。 ServiceLocatorパターンとは何か? Dependency Injection(以降DI)パターンとは何か? DI Containerとは何か? これらを使うと何がうれしいのか? ServiceLocatorとDI何が違うのか? ServiceLocatorとDIど…

オブジェクトのライフタイム パターンを整理してみた

システムやアプリケーションを構築していると、様々なパターンのオブジェクトの生成~消滅に遭遇します。 ユーザーが何らかのアクションを起こし、それに伴うインタラクションが完了するまでの間だけ生存するオブジェクト。 アプリケーション起動から終了ま…

Prism 6.3の変更点 目次(for Xamarin.Forms)

Prism6.3のアップデートにおける変更点をまとめました。 以下をご覧ください。 www.nuits.jp www.nuits.jp www.nuits.jp 今回はこれだけ!

Prism 6.3の変更点 その3 新規要素(for Xamarin.Forms)

本エントリーではPrism6.3で新たに追加された機能をいくつか紹介します。 EventToCommandBehavior IApplicationLifeCycleの追加 IApplicationStore IDeviceService

Prism 6.3の変更点 その2 画面遷移関連(for Xamarin.Forms)

Prism 6.3のXamarin.Forms向けで最も大きな変更があったのが画面遷移関連です。 機能追加もありますし、注意が必要な破壊的変更もあります。

Prism 6.3の変更点 その1 Pris.Core

Prism 6.3がリリースされてからすでに2カ月。書こう書こうと思っていたのですが、後回しにしまくっていたのでここに変更点をまとめます。 for Xamarin.Formsの範囲が対象となります。 と、言っておきながら、本エントリーではWPFおよびUWPとも共通のPrism.Co…

.NET StandardプロジェクトでInternalsVisibleToを設定する方法

.NETには、例えばinternalなクラスやメソッドのUnitTestをUnitTestプロジェクトから呼び出す仕組みとして、「InternalsVisibleTo」という属性があります。 従来の.NET Frameworkプロジェクトでは、プロジェクト作成時にPropertiesの下にAssemblyInfo.csが作…

Xamarin.Forms用の汎用Behaviorライブラリをリリースました

Xamarin.Forms用の汎用Behaviorライブラリをリリースました! www.nuget.org コード&詳細ドキュメント(まだ下記中ですが)はこちらにあります。 github.com たとえば、こんな感じでイベント発生時にEventのパスを指定してEventのプロパティを引数にCommand…

.NET StandardプロジェクトをxUnitでテストする方法

.NET Standardのプロジェクトをテストするために、.NET Standardのテストプロジェクトを作成するとxUnitのテストが認識されずテストできません。 現状ではつぎのようにすることで対応できます。 Testプロジェクトを.NET Coreのコンソールアプリケーションと…

【Xamarin.Forms】汎用的なBehavior集ライブラリを作ってる

ふと思い立って、汎用的なBehaviorライブラリを作ってます。 とりあえず作っているのは Eventを指定してEventが発生したら何かする抽象Behavior Eventが発生したらCommandを実行するBehavior DisplayAlertを表示してCommandを実行するBehavior ActionSheetを…

【メモ】Xamarin.FormsでPopModalしてもStackからPageが解放されない問題と、限定的な回避策

あくまでメモです。 検証などが不十分なので、鵜呑みにはしないでください ここでの回避策は特定の利用方法における限定的な回避策です ModalStackが適切な状態になるわけではありません さて ModalStackからPageをPopすると、画面は前画面に戻るが、ModalSt…