タイトルの通りです。資料をスライドシェアにアップロードしました。 WPF on .NET Core 3.1 で Windows 10 アプリ開発 from 一希 大田 www.slideshare.net 登壇中にデモを 3 つライブで作りながらやったのですが、それが失敗したとき用にバックアッププランで用意していたプログラムは以下の GitHub リポジトリで公開しています。 github.com
Visual Studio Code を入れます。 azure.microsoft.com Visual Studio のリモート開発の拡張機能を入れます。 marketplace.visualstudio.com そして docker を入れます。 www.docker.com Windows の人は入れたら設定からドライブ共有をオンにしておきましょう。 Python 3 の環境が欲しい 適当なフォルダーを Visual Studio Code で開きます。 F1 や Ctrl + Shift + P あたりでコマンドパレットを出して Remote Add あたりで検索すると Remote Containers: Add Development Container Configuration Files... という項目が出てきます。 どんな開発環境が欲しいのかリストが出てくるので Py
むか~~しむかし、Flash や Silverlight みたいなブラウザープラグイン系のリッチクライアントアプリケーションのプラットフォームと HTML 5 が覇権を争ってた時代がありました。私はブラウザープラグイン寄りの人で「DataGrid コントロールがあるだけでプラグイン系のほう使うわ」って思ってました。 やりたかったことは 表形式でデータを表示したい 表を縦横スクロールしたい スクロールしても固定列や固定行はスクロールしないで欲しい JavaScript で頑張ることで当時でもできてましたが、結構しんどかったら重めだったりと何かと問題がおきがちだった気がするので例えば <DataGrid ItemsSource="{Binding People}"> <DataGrid.Columns> <DataGridTextColumn Header="ID" Binding="{Bin
これの続きです。 blog.okazuki.jp Prism for Windows(UWP) って書いてるけど MVVM アプリって何で作ったらいいんだっていう感じのコメントがついてるので事実だけを淡々と Prism は以下のプラットフォーム向けに提供されていた WPF Xamarin.Forms UWP これがこうなった WPF Xamarin.Forms 以上 UWP...? UI テクノロジーという意味では、今後開発リソースが注がれる Windows UI Library がメインストリームとなるという感じです。OSS で GitHub 上で開発されています。 ロードマップも出ています。 github.com 今まで Windows UI の機能強化は Windows 10 の一部として UWP をターゲットとして提供されてきていました。 つまり UI まわりの機能強化は UWP
Surface Go をゲットした人の体験記を読んでいて、思ったことと、これは知らないと無理だよなぁと思ったことなどを書いていこうと思います。 uzulla.hateblo.jp はじめに はじめになのですが、私はマイクロソフトに所属して 1 年半くらいのマイクロソフトびいきの人間なので、そこらへんバイアスかかってるところは否めないのでご了承ください。あと、お約束として公式見解ではなく個人的な意見です。 ソフトウェア系のエンジニアなので、使ってるアプリとかもそっちに偏りがあるので、一般の人とは多分違うと思いますが、何か 1 つでも参考になればと思います。 本題 では、本題です!1 つずつ書いていこうと思います。 Windows 10 のソフト探しについて 最近は、ぼちぼちマイクロソフトストアも潤ってるといえば潤ってきてるのですが、正直全員のニーズを満たすほど潤ってるかと言われるとイマイチと
blog.okazuki.jp はじめに 最初の記事を受けて使い始めてきた人向けのちょっと Rx っぽい使い方を紹介します。 ReactiveProperty 値を加工して代入しているケース ReactiveProperty に値を代入するケースがあると思います。例えば以下のような感じですね。 public ReactiveProperty<string> A { get; } = new ReactiveProperty<string>(); public ReactiveProperty<string> B { get; } = new ReactiveProperty<string>(); public コンストラクタ() { A.Subscribe(x => B.Value = $"Value is {x}"); } プロパティ A の値が変わったら値を加工してプロパティ B に代
2020 年 9 月 17 日版があります → ハッカソンで使い勝手のよさそうな Microsoft のサービス紹介 ハッカソンではすごいスピードですごいものを作らないといけないので、結構既存サービスをうまく使って独自部分の実装に注力できるようにしておかないといけないというのがありますよね。 ということで、ハッカソンでパッと使えて割とすごいサービスをいくつか紹介したいと思います。 QnA Maker トップを飾るのは先日プレビューから一般公開になった QnA Maker です。 これは質問と回答の組みを登録しておくと、質問に対して回答を返してくれる API を提供してくれるものになります。 質問は完全一致してなくても大丈夫で、なんとなくそれっぽいものを返してくれるところがポイントです。 www.qnamaker.ai なんとなく AI チックにやり取りしてくれる人や QnA 対応を自動化す
追記 2018/04/25 GroupBy が遅延評価じゃないという旨の記載があってまちがえていたので修正しました。 本文 以下の記事を見ました。 qiita.com そして、それを受けての記事があります。 qiita.com 上記記事に ToList を複数回呼び出してることに関する言及があります。 そう LINQ を使う時に一番効くのが無駄にループを回す処理をいつの間にか書いてしまっていないかというところです。 LINQ は基本的に遅延評価です。例えば… var array = new[] { 1, 2, 3 }; var result = array.Where(x => x % 2 == 0); 上記コードだけだと、Where を呼び出した行では「あぁ、フィルタリングしたいのね。わかった」というのをお願いしてるだけなので実際に処理は行われません。 LINQ の多くのメソッドは、この
Connected Animation というものを使うと出来ます。 ConnectedAnimationService.GetForCurrentView() で取得した ConnectedAnimationService に対して画面遷移前と画面遷移後で対応するコントロールの紐づけをしてやる感じです。なので、画面遷移前に画面遷移前のページでアニメーションさせたいコントロールを登録して、画面遷移先でもアニメーションさせたいコントロールを指示するという処理が必要になります。 こんなイメージです。 // 画面遷移前 var a = ConnectedAnimationService.GetForCurrentView(); a.PrepareToAnimate("text", textBlock); a.PrepareToAnimate("button", button); Frame.Na
追記 2020 年 3 月版を書きました。 qiita.com 本文 C# は好きな言語です。C# 1.0 が 2002 年 4 月に出てからもうすぐ16 年!?になろうとしています。 今でも結構イケてる部類にランキングしてると個人的に思ってる C# ですが何が出来るのか?というのをまとめてみたいと思います。C# をこれから始めようと思っている方や、プログラミングを始めようと思ってるけど何を勉強しようか迷っている方が C# を検討する上での参考になればと思います。 コンソールアプリケーション開発 誰もが一度は書く黒い画面に Hello world の文字列を印字するアプリケーションもコンソールアプリケーションです。C# でももちろん作ることが出来ます。以下のような OS に対応しています。 OS .NET Fw or .NET Core Windows .NET Framework and
Reactive Extensions の v4.0.0 が出るまで待とうと思ってたのですが、一向に出る気配がないので Reactive Extensions のバージョンは v3.1.1 のままですが ReactiveProperty v4.0.0 をリリースしました。 Reactive Extensions の v4.0.0 がリリースされたら(いつだろう)Rx のバージョンだけ上げようと思います。 インストール いつも通り NuGet からインストールできます。 www.nuget.org 新しい試み リリースページ GitHub のリリース機能使ってみた。 github.com みんな使ってるから気になったので使ってみました。作るの楽でいいですね。 ドキュメント 今まで README.md につらつらと書き連ねてたものを MkDocs を使って書き直してみました。Sphinx も最
前に匿名型を使ってやりましたが Tuple 使った方が今風で値型なのでヒープ的にも優しいということでこうなりますね。 using System; using System.Linq; namespace ConsoleApp1 { class Program { static void Main(string[] args) { var items = new[] { "item 1", "item 2", "item 3", }; foreach (var (item, index) in items.Select((x, i) => (x, i))) { Console.WriteLine($"{index}: {item}"); } } } } 実行結果。 0: item 1 1: item 2 2: item 3 岩永さんのサイトのほうが詳しいですね。 ufcpp.net
ゴール こんな風にタスクの状況を俯瞰したい。 はじめに 複数のタスクが並行で進むの苦手なんですよね…。可能であれば1つのことに集中したい。 でも、なかなかそうもいかないケースがあります。 小さな仕事が複数平行で走る…つらい。 といってもやらなきゃいけないときは、きちんとタスク管理が必要です。ではやってみましょう。 世の中的には seleck.cc ここらへんを使うのでしょうか。 Visual Studio Team Services 5人まで無料。強い。 こいつはプログラムのソースコードのリポジトリとして使えたり、自動ビルドツールとして使えたり、リリース作業までいい感じにしてくれたりします。その中にプロジェクトのバックログを管理したり、それに紐づくタスクを管理したりとかいった機能も入っています。 今回はこれを使ってみようと思います。 色々なテンプレート プロジェクトの進め方に合わせて、いく
たまにポエムっぽいことを書くこともあるけれど(この記事は間違いなくポエム)基本的にこの Blog は技術 Blog です。 この Blog の現状は大体以下のような感じです。 項目 数 備考 作成日 2011/12/27 年末に何やってるんだろう 総 PV 4,478,761 月間 PV 100,000 平日の PV 4,500 土日祝日の PV 1,500 記事数 2,311 ということで300記事以上もポエム書いた記憶がないので、2,000記事以上書き溜めてることになります。 何故書くのか 大体、牛尾さんが書いてくれてます。 qiita.com 一番の目的は、なんといってもメモです。備忘録としてとても役に立ちます。 取り組んでいる最中は忘れることなんてないのですが、数年経つと下手したらやっていたことすら忘れてるくらいに覚えてないものもあったりします。 そんなとき Google で検索す
今日、マイクロソフト本社から来た David さんとお昼ご飯をしたときに教えてもらえた彼のプロダクトが凄かったので紹介したいと思います。 quicktype.io quicktype JSON をペーストするとシリアライズ・デシリアライズするためのコードを出力してくれるサービスです。 例えば、以下のような JSON があるとします。 { "name": "Kazuki Ota", "age": 36, "pets": [ { "name": "hoge" }, { "name": "foo" } ] } ページに張り付けるとこういうコードが生成されます。 // To parse this JSON data, add NuGet 'Newtonsoft.Json' then do: // // using Sample.Models; // // var data = Person.Fro
先日リリースされた Visual Studio 2017 15.4 で追加された Windows アプリケーション パッケージ プロジェクト を使うと手元に exe を出力する形式のプロジェクトがあって xcopy でインストールが終わるような類のアプリケーションを凄く簡単に appx 形式にパッケージングしてくれます!! これはいい。これまでも Visual Studio を使って appx にパッケージングする方法とかはありましたが… Visual Studio を使ったアプリのパッケージ化 (デスクトップ ブリッジ) - UWP app developer | Microsoft Docs これは、楽っちゃぁ楽だけど、まぁ無理やり感というかなんというかという感じでした。 Windows アプリケーション パッケージ プロジェクト そこで Windows アプリケーション パッケージ
Model View ViewModelパターン(以下MVVMパターン)が登場して約10年になります。 ここらへんで一度MVVMを実装するうえで必要になる技術要素を振り返ってみたいと思います。 その前にMVVM MVVMは以下のWikipediaあたりでも見てください。 Model View ViewModel - Wikipedia 見た目と、それ以外にクラスを分離して、さらに見た目をXAMLで作りやすいようにViewとViewModelに分離したようなイメージです。 見ていこう ということでMVVMで必要になる技術要素を見ていこうと思います。 INotifyPropertyChangedインターフェース まずは、これが無いと始まりません。MVVMではViewはViewModelを監視して、ViewModelはModelを監視していることが多いです。その時に、クラスのプロパティが変わった
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く