SlideShare a Scribd company logo
1 of 73
仕事
個人
http://tanaka733.net
http://tech.tanaka733.net
http://www.buildinsider.net/web/iis8
http://metrostyledev.net/
テーマ
次回
Windows Store App とMVVMパターン
Xamarinによるマルチプラットフォーム開発
MvvmCrossとは?
MvvmCrossによるWindows Store App開発
XAML はBindingファーストな言語
XAMLといえば MVVM pattern
GUIアーキテクチャパターンの基礎からMVVMパターンへ
View ViewModel Model
参考資料 GUIアーキテクチャパターンの基礎から
MVVMパターンへ 40pより引用
状態変更イベントの発火
コマンドの記述
Simple な単機能アプリなら…
込み入ったアプリを作ると…
ViewModelの変更プロパティ、コマンド
ViewModelとModelの連携
MVVM Light Toolkit
Pattern & Practices Prism
MvvmCross
iOS/Obj-C
Android Java
Windows Store/Phone C# etc
https://xamarin.com/
Xamarinもネイティブをたたくだけ
コードをどこまで共有化できるか
Portability
できるだけコードは共通化したい
Interface Driven Development
IoC による依存性注入
MVVM
Native UI
プラットフォームネイティブのUIを使おう
https://github.com/MvvmCross/MvvmCross/wiki/The-MvvmCross-Manifesto
モバイル・タブレット
デスクトップ
PCL(Win Store)
View
(Android)
View
(iOS)
View
ViewModel Model
QuickCross
ReactiveUI
プロジェクトを作って起動するまで
実際の開発で使っている機能の紹介
画面遷移の仕組み
SQLiteなどプラグインの追加
プラットフォーム固有の機能の追加
Store Appのみの場合
Androidアプリも開発する場合
Xamarin が必要。
VSで開発する場合はBusinessEdition以上でVS拡張をインストール。
iOSアプリも開発する場合
Xamarinに加えてデザイナ、ビルドにMac OS が必要
PCLとストアプロジェクトを作成
NugetでMvvmCrossを検索
Appクラス
ViewModel
IoCによるServiceクラスの注入
using Cirrious.CrossCore.IoC;
using Cirrious.MvvmCross.ViewModels;
using RoomMetro.RegisterationService.Core.ViewModels;
namespace RoomMetro.RegisterationService.Core
{
public class App : MvxApplication
{
public override void Initialize()
{
CreatableTypes()
.EndingWith("Service")
.AsInterfaces()
.RegisterAsLazySingleton();
RegisterAppStart<MemberListViewModel>();
}
}
}
using Cirrious.CrossCore.IoC;
using Cirrious.MvvmCross.ViewModels;
using RoomMetro.RegisterationService.Core.ViewModels;
namespace RoomMetro.RegisterationService.Core
{
public class App : MvxApplication
{
public override void Initialize()
{
CreatableTypes()
.EndingWith("Service")
.AsInterfaces()
.RegisterAsLazySingleton();
RegisterAppStart<MemberListViewModel>();
}
}
}
using Cirrious.CrossCore.IoC;
using Cirrious.MvvmCross.ViewModels;
using RoomMetro.RegisterationService.Core.ViewModels;
namespace RoomMetro.RegisterationService.Core
{
public class App : MvxApplication
{
public override void Initialize()
{
CreatableTypes()
.EndingWith("Service")
.AsInterfaces()
.RegisterAsLazySingleton();
RegisterAppStart<MemberListViewModel>();
}
}
}
public class MemberListViewModel
: MvxViewModel
{
private readonly IDataService dataService;
public MemberListViewModel(IDataService dataService)
{
this.dataService = dataService;
}
private ObservableCollection<MemberViewModel> members = new ObservableCollection<MemberViewModel>();
public ObservableCollection<MemberViewModel> Members
{
get
{
return members;
}
set
{
if (members == value)
{
return;
}
members = value;
RaisePropertyChanged(() => Members);
}
} //続く
private MvxCommand loadCommand;
public MvxCommand LoadCommand
{
get
{
return loadCommand
?? (loadCommand = new MvxCommand(ExecuteLoadCommand));
}
}
private void ExecuteLoadCommand()
{
LoadAsync().FireAndForget();
}
}
https://gist.github.com/tanaka-takayoshi/8221618#file-mvxprop-snippet-xml
https://gist.github.com/tanaka-takayoshi/8505439#file-mvxcommand-snippet-xml
public MemberListViewModel(IDataService dataService)
{
this.dataService = dataService;
}
public override void Initialize()
{
CreatableTypes()
.EndingWith("Service")
.AsInterfaces()
.RegisterAsLazySingleton();
RegisterAppStart<MemberListViewModel>();
}
Setupクラス
App.xaml.cs の修正
Viewの定義
namespace RoomMetro.RegisterService.Store
{
public class Setup : MvxStoreSetup
{
public Setup(Frame rootFrame) : base(rootFrame) {}
protected override IMvxApplication CreateApp()
{
return new RegisterationService.Core.App();
}
protected override IMvxTrace CreateDebugTrace()
{
return new DebugTrace();
}
}
}
//前略
if (rootFrame.Content == null)
{
var setup = new Setup(rootFrame);
setup.Initialize();
var start = Mvx.Resolve<IMvxAppStart>();
start.Start();
}
//後略
最低限CreateAppメソッド
それ以外は命名規約やフォルダ配置規約
https://github.com/MvvmCross/MvvmCross/wiki/Customising-using-
App-and-Setup
画面遷移
通常のStore App
MvvmCrossでは…
単純には…
パラメーターを渡すときは…
遷移先のViewModelでは次のようにして受け取る
ShowViewModel<MemberViewModel>();
ShowViewModel<MemberDetialViewModel>(new MemberDetailParameters {Id = 1});
public class MemberDetialViewModel : MvxViewModel
{
public void Init(MemberDetailParameters param)
{
var id = param.Id;
//idを使って詳細情報を取ってくるなど
}
}
https://github.com/MvvmCross/MvvmCross/wiki/ViewMo
del--to-ViewModel-navigation
SQLite Plugin
SQLite がおすすめ
https://connect.microsoft.com/SQLServer/feedback/details/776328/po
rt-sql-compact-to-windows-rt
http://visualstudiogallery.msdn.microsoft.com/1d04f82f-2fe9-4727-
a2f9-a2db127ddc9a
Nugetから入れる
public class DataService : IDataService
{
private readonly ISQLiteConnection connection;
public DataService(ISQLiteConnectionFactory factory)
{
connection = factory.Create("roommetro.sql");
connection.CreateTable<Member>();
}
public Member Get(int id)
{
return connection.Get<Member>(id);
}
public void Insert(Member member)
{
connection.Insert(member);
} //以下略
Converters
たとえば、ViewModel でVisibilityを制御したい
たとえば、ViewModel でVisibilityを制御したい
Converterを使おう
MvxVisibilityというのがPluginで提供されている
MvxVisibilityというのがPluginで提供されている
が、自分でひと手間かける必要あり
private MvxVisibility attendedVisibility = MvxVisibility.Visible;
public MvxVisibility AttendedVisibility
{
get
{
return attendedVisibility;
}
set
{
if (attendedVisibility == value)
{
return;
}
attendedVisibility = value;
RaisePropertyChanged(() => AttendedVisibility);
}
}
Store 側にNativeConvertersを作る
namespace RoomMetro.RegisterService.Store.NativeConverters
{
public class VisibilityConverter :
MvxNativeValueConverter<MvxVisibilityValueConverter>
{
}
public class ColorConverter : MvxNativeValueConverter<MvxNativeColorValueConverter>
{
}
}
<Application
xmlns:nativeConverters="using:RoomMetro.RegisterService.Store.NativeConverters">
<Application.Resources>
<x:String x:Key="AppName">めとべや参加登録アプリ カッコカリ</x:String>
<nativeConverters:VisibilityConverter x:Key="Visibility" />
<nativeConverters:ColorConverter x:Key="NativeColor" />
</Application.Resources>
</Application>
<TextBlock Text="{Binding Name}"
Foreground="{Binding AttendedStatusColor, Converter={StaticResource NativeColor}}"
Visibility="{Binding AttendedVisibility, Converter={StaticResource Visibility}}" />
IoC
まずは豊富なPluginをチェック
すでに誰かが用意してくれているかもしれない
自前でやるならModelに書きたい
IoC を使って分離しよう or Plugin を作ろう
Core (PCL)(Win Store)
View
(Android)
View
(iOS)
View
ViewModel Model
Core (PCL)(Win Store)
View
(Android)
View
(iOS)
View
ViewModel Model
IPiyo
(Win Store)
StorePiyo
(Android)
DroidPiyo
(iOS)
TouchPiyo
Plugin
Core (PCL)(Win Store)
View
(Android)
View
(iOS)
View
ViewModel Model
IPiyo
(Win Store)
StorePiyo
(Android)
DroidPiyo
(iOS)
TouchPiyo
https://github.com/MvvmCross/MvvmCross/wiki/MvvmCross-
plugins
https://speakerdeck.com/cirrious/plugins-in-mvvmcross
namespace RoomMetro.RegisterationService.Core
{
public interface INotification
{
void Notify(string message);
}
}
public class StoreNotification : INotification
{
public void Notify(string message)
{
//トースト通知のコード省略
}
}
public class Setup : MvxStoreSetup
{
//これ以外のメソッド省略
protected override void InitializeLastChance()
{
base.InitializeLastChance();
Mvx.RegisterSingleton<INotification>(new StoreNotification());
}
}
MvvmCross はストアアプリ単体を作る視点においても高機能
は
今回の内容は割とまだ基本的な機能レベル
AndroidやiOS側の実装
Xamarinのコストパフォーマンス
https://github.com/MvvmCross/MvvmCross
https://github.com/MvvmCross/MvvmCross/wiki
https://github.com/MvvmCross/NPlus1DaysOfMvvmCross
http://ytabuchi.hatenablog.com/
実際にMvvmCrossでアプリを開発した経験に基づく記事があります
(Xamarin Studioを使ったiPhone/Androidアプリ)
http://iseebi.hatenablog.com/
https://www.slideboom.com/presentations/591514/GUI%E3%82%A2
%E3%83%BC%E3%82%AD%E3%83%86%E3%82%AF%E3%83%81%E
3%83%A3
20140322 mvvm crossforwindowsstoreapps
20140322 mvvm crossforwindowsstoreapps

More Related Content

What's hot

Xamarin ~ iOS/Android/Windows アプリを C# で作ろう~
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
Xamarin ~ iOS/Android/Windows アプリを C# で作ろう~
Fujio Kojima
 

What's hot (19)

MvcのFatモデルに立ち向かう
MvcのFatモデルに立ち向かうMvcのFatモデルに立ち向かう
MvcのFatモデルに立ち向かう
 
ブラック企業から学ぶMVCモデル
ブラック企業から学ぶMVCモデルブラック企業から学ぶMVCモデル
ブラック企業から学ぶMVCモデル
 
Prism + ReactiveProperty入門
Prism + ReactiveProperty入門Prism + ReactiveProperty入門
Prism + ReactiveProperty入門
 
GUI アプリケーションにおける MVC
GUI アプリケーションにおける MVCGUI アプリケーションにおける MVC
GUI アプリケーションにおける MVC
 
Xamarin で今日から始めるクロスプラットフォーム開発
Xamarin で今日から始めるクロスプラットフォーム開発Xamarin で今日から始めるクロスプラットフォーム開発
Xamarin で今日から始めるクロスプラットフォーム開発
 
MVVM入門
MVVM入門MVVM入門
MVVM入門
 
Xamarin.Forms.WPF を試してみた
Xamarin.Forms.WPF を試してみたXamarin.Forms.WPF を試してみた
Xamarin.Forms.WPF を試してみた
 
WPF MVVM Review
WPF MVVM ReviewWPF MVVM Review
WPF MVVM Review
 
XAML 入門
XAML 入門XAML 入門
XAML 入門
 
serviceクラスをやめようサブクラスを使おう
serviceクラスをやめようサブクラスを使おうserviceクラスをやめようサブクラスを使おう
serviceクラスをやめようサブクラスを使おう
 
Xamarin+MVVMCross のあれこれ
Xamarin+MVVMCross のあれこれXamarin+MVVMCross のあれこれ
Xamarin+MVVMCross のあれこれ
 
MVCもやもや話
MVCもやもや話MVCもやもや話
MVCもやもや話
 
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞いiOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
iOS/Androidアプリエンジニアが理解すべき「Model」の振る舞い
 
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメXamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
Xamarin de:code セッション:Windows Phone / iOS / Android アプリ同時開発のススメ
 
Xamarin ~ iOS/Android/Windows アプリを C# で作ろう~
Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~Xamarin ~ iOS/Android/Windows アプリをC# で作ろう~
Xamarin ~ iOS/Android/Windows アプリを C# で作ろう~
 
Windows ストアアプリのつくりかた (JS + HTML + CSS)
Windows ストアアプリのつくりかた (JS + HTML + CSS)Windows ストアアプリのつくりかた (JS + HTML + CSS)
Windows ストアアプリのつくりかた (JS + HTML + CSS)
 
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
“なめらか”なメトロスタイルアプリを作るために ~WinRT の非同期性を活用したアプリ開発~
 
これからのCMSマーケットトレンドとPHP (for fukuoka.php)
これからのCMSマーケットトレンドとPHP (for fukuoka.php)これからのCMSマーケットトレンドとPHP (for fukuoka.php)
これからのCMSマーケットトレンドとPHP (for fukuoka.php)
 
Windows 8時代のアプリ開発
Windows 8時代のアプリ開発Windows 8時代のアプリ開発
Windows 8時代のアプリ開発
 

Viewers also liked (8)

110216 jawsug lt by t_tanaka_wap
110216 jawsug lt by t_tanaka_wap110216 jawsug lt by t_tanaka_wap
110216 jawsug lt by t_tanaka_wap
 
20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8....
20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8....20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8....
20140510 Twitter Authentication by WebAuthentictionBroker in Windows Phone 8....
 
120225 qp lt
120225 qp lt120225 qp lt
120225 qp lt
 
20140419 xamarin zumo
20140419 xamarin zumo20140419 xamarin zumo
20140419 xamarin zumo
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
 
120517 cf tour_london
120517 cf tour_london120517 cf tour_london
120517 cf tour_london
 
110820 tech aid_lt_kinect_pub
110820 tech aid_lt_kinect_pub110820 tech aid_lt_kinect_pub
110820 tech aid_lt_kinect_pub
 
Augmented reality communication that provides a new experience value
Augmented reality communication that provides a new experience valueAugmented reality communication that provides a new experience value
Augmented reality communication that provides a new experience value
 

Similar to 20140322 mvvm crossforwindowsstoreapps

Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD PatternApplication Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Atsushi Kambara
 
DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発
Tomoharu ASAMI
 
xamarin for android試してみた
xamarin for android試してみたxamarin for android試してみた
xamarin for android試してみた
Lee Choong Geun
 

Similar to 20140322 mvvm crossforwindowsstoreapps (20)

MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT appsMAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
MAF2013 Enterprise Windows 8 – Architecture for rapid development of WinRT apps
 
Xamarin.formsとカスタムコントロールの話
Xamarin.formsとカスタムコントロールの話Xamarin.formsとカスタムコントロールの話
Xamarin.formsとカスタムコントロールの話
 
いまさら学ぶMVVMパターン
いまさら学ぶMVVMパターンいまさら学ぶMVVMパターン
いまさら学ぶMVVMパターン
 
クライアントサイドMVVMアーキテクチャとVue.jsをまとめたよ
クライアントサイドMVVMアーキテクチャとVue.jsをまとめたよクライアントサイドMVVMアーキテクチャとVue.jsをまとめたよ
クライアントサイドMVVMアーキテクチャとVue.jsをまとめたよ
 
Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15Xamarin 概要 2017/01/15
Xamarin 概要 2017/01/15
 
ASP.NET MVC プログラミング入門の入門
ASP.NET MVC プログラミング入門の入門ASP.NET MVC プログラミング入門の入門
ASP.NET MVC プログラミング入門の入門
 
20100218
2010021820100218
20100218
 
Visual Studio + xamarin で始めるモバイル アプリ開発
Visual Studio + xamarin で始めるモバイル アプリ開発Visual Studio + xamarin で始めるモバイル アプリ開発
Visual Studio + xamarin で始めるモバイル アプリ開発
 
Xamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターンXamarin.Forms アプリケーション 設計パターン
Xamarin.Forms アプリケーション 設計パターン
 
Xamarin から使う Azure
Xamarin から使う AzureXamarin から使う Azure
Xamarin から使う Azure
 
Application Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD PatternApplication Architecture for Enterprise Win Store Apps with DDD Pattern
Application Architecture for Enterprise Win Store Apps with DDD Pattern
 
ASP.NET MVC と jQuery で実践する標準志向 Web 開発
ASP.NET MVC と jQuery で実践する標準志向 Web 開発ASP.NET MVC と jQuery で実践する標準志向 Web 開発
ASP.NET MVC と jQuery で実践する標準志向 Web 開発
 
DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発DSL駆動によるクラウド・アプリケーション開発
DSL駆動によるクラウド・アプリケーション開発
 
Building Silverlight Large Scale Application Using MVVM
Building Silverlight Large Scale Application Using MVVMBuilding Silverlight Large Scale Application Using MVVM
Building Silverlight Large Scale Application Using MVVM
 
SpringMVC
SpringMVCSpringMVC
SpringMVC
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 
Xamarinで作るiPhoneとwindowsストアアプリの共通コンポーネント
Xamarinで作るiPhoneとwindowsストアアプリの共通コンポーネントXamarinで作るiPhoneとwindowsストアアプリの共通コンポーネント
Xamarinで作るiPhoneとwindowsストアアプリの共通コンポーネント
 
OthloEvent #9 Xamarinハンズオン
OthloEvent #9 XamarinハンズオンOthloEvent #9 Xamarinハンズオン
OthloEvent #9 Xamarinハンズオン
 
Xamarin概要と活用方法
Xamarin概要と活用方法Xamarin概要と活用方法
Xamarin概要と活用方法
 
xamarin for android試してみた
xamarin for android試してみたxamarin for android試してみた
xamarin for android試してみた
 

More from Takayoshi Tanaka

.NET Core向けコンテナおよびデバッグ関連のVisual Studioの新機能
.NET Core向けコンテナおよびデバッグ関連のVisual Studioの新機能.NET Core向けコンテナおよびデバッグ関連のVisual Studioの新機能
.NET Core向けコンテナおよびデバッグ関連のVisual Studioの新機能
Takayoshi Tanaka
 

More from Takayoshi Tanaka (20)

deep dive distributed tracing
deep dive distributed tracingdeep dive distributed tracing
deep dive distributed tracing
 
202202 open telemetry .net handson
202202 open telemetry .net handson202202 open telemetry .net handson
202202 open telemetry .net handson
 
202109-New_Relic-for-csharp-engineers
202109-New_Relic-for-csharp-engineers202109-New_Relic-for-csharp-engineers
202109-New_Relic-for-csharp-engineers
 
20210129 azure webapplogging
20210129 azure webapplogging20210129 azure webapplogging
20210129 azure webapplogging
 
20201127 .NET 5
20201127 .NET 520201127 .NET 5
20201127 .NET 5
 
Unity(再)入門
Unity(再)入門Unity(再)入門
Unity(再)入門
 
最近のQ#について
最近のQ#について最近のQ#について
最近のQ#について
 
SRENEXT 2020 [B5] New RelicのSREに学ぶ SREのためのNew Relic活用法
SRENEXT 2020 [B5] New RelicのSREに学ぶSREのためのNew Relic活用法SRENEXT 2020 [B5] New RelicのSREに学ぶSREのためのNew Relic活用法
SRENEXT 2020 [B5] New RelicのSREに学ぶ SREのためのNew Relic活用法
 
20191024 Get Start gRPC with ASP.NET
20191024 Get Start gRPC with ASP.NET20191024 Get Start gRPC with ASP.NET
20191024 Get Start gRPC with ASP.NET
 
New Relicで始める、.NET Applications on AWSのObservability
New Relicで始める、.NET Applications on AWSのObservabilityNew Relicで始める、.NET Applications on AWSのObservability
New Relicで始める、.NET Applications on AWSのObservability
 
C#エンジニアのためのdocker kubernetesハンズオン (再)
C#エンジニアのためのdocker kubernetesハンズオン (再)C#エンジニアのためのdocker kubernetesハンズオン (再)
C#エンジニアのためのdocker kubernetesハンズオン (再)
 
20190806 Q# Measurements
20190806 Q# Measurements20190806 Q# Measurements
20190806 Q# Measurements
 
C#エンジニアのためのdocker kubernetesハンズオン
C#エンジニアのためのdocker kubernetesハンズオンC#エンジニアのためのdocker kubernetesハンズオン
C#エンジニアのためのdocker kubernetesハンズオン
 
20190604 Containerized MagicOnion on kubernetes with Observability with New R...
20190604 Containerized MagicOnion on kubernetes with Observability with New R...20190604 Containerized MagicOnion on kubernetes with Observability with New R...
20190604 Containerized MagicOnion on kubernetes with Observability with New R...
 
.NET Core向けコンテナおよびデバッグ関連のVisual Studio 2019の機能
.NET Core向けコンテナおよびデバッグ関連のVisual Studio 2019の機能.NET Core向けコンテナおよびデバッグ関連のVisual Studio 2019の機能
.NET Core向けコンテナおよびデバッグ関連のVisual Studio 2019の機能
 
.NET Core向けコンテナおよびデバッグ関連のVisual Studioの新機能
.NET Core向けコンテナおよびデバッグ関連のVisual Studioの新機能.NET Core向けコンテナおよびデバッグ関連のVisual Studioの新機能
.NET Core向けコンテナおよびデバッグ関連のVisual Studioの新機能
 
Try! Visual Studio 209 git feature
Try! Visual Studio 209 git featureTry! Visual Studio 209 git feature
Try! Visual Studio 209 git feature
 
Q#基礎 ver1.1
Q#基礎 ver1.1Q#基礎 ver1.1
Q#基礎 ver1.1
 
(過去バージョン) Q#基礎 ver1.0
(過去バージョン) Q#基礎 ver1.0(過去バージョン) Q#基礎 ver1.0
(過去バージョン) Q#基礎 ver1.0
 
ゼロから始めるQ#
ゼロから始めるQ#ゼロから始めるQ#
ゼロから始めるQ#
 

Recently uploaded

Recently uploaded (10)

Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 

20140322 mvvm crossforwindowsstoreapps