Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Windows アプリの開発手段の選択肢をまとめてみた
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Tiny Mouse
December 19, 2020
Programming
160
0
Share
Windows アプリの開発手段の選択肢をまとめてみた
Tiny Mouse
December 19, 2020
More Decks by Tiny Mouse
See All by Tiny Mouse
今年がんばったこと
tinymouse
0
59
今年がんばったこと
tinymouse
0
110
【LT会】インプット・アウトプットどうしてる?
tinymouse
0
58
今年がんばったこと
tinymouse
0
180
.NET MAUI+Blazor を使ってみた
tinymouse
0
200
【LT会】この技術書がすごい
tinymouse
1
210
蔵書管理アプリを作り直した
tinymouse
1
1k
蔵書管理アプリを作りました
tinymouse
0
660
Google Apps Script アプリを配付する
tinymouse
0
130
Other Decks in Programming
See All in Programming
感情を設計する
ichimichi
5
1.3k
3分でわかるatama plusのQA/about atama plus QA
atamaplus
0
120
forteeの改修から振り返るPHPerKaigi 2026
muno92
PRO
3
240
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
3
740
iOS機能開発のAI環境と起きた変化
ryunakayama
0
170
Symfonyの特性(設計思想)を手軽に活かす特性(trait)
ickx
0
130
Running Swift without an OS
kishikawakatsumi
0
380
レガシーPHP転生 〜父がドメインエキスパートだったのでDDD+Claude Codeでチート開発します〜
panda_program
0
580
脱 雰囲気実装!AgentCoreを良い感じにWEBアプリケーションに組み込むために
takuyay0ne
3
440
実践ハーネスエンジニアリング #MOSHTech
kajitack
7
6k
「接続」—パフォーマンスチューニングの最後の一手 〜点と点を結ぶ、その一瞬のために〜
kentaroutakeda
5
2.5k
PHPのバージョンアップ時にも役立ったAST(2026年版)
matsuo_atsushi
0
290
Featured
See All Featured
Speed Design
sergeychernyshev
33
1.6k
Become a Pro
speakerdeck
PRO
31
5.9k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.7k
Prompt Engineering for Job Search
mfonobong
0
250
Navigating Team Friction
lara
192
16k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
430
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
260
Producing Creativity
orderedlist
PRO
348
40k
VelocityConf: Rendering Performance Case Studies
addyosmani
333
25k
Believing is Seeing
oripsolob
1
110
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
510
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
Tiny Mouse Windows アプリの開発手段の 選択肢をまとめてみた 浜松IT合同勉強会 2020/12/19
n @tinymouse_jp n SI 企業の SE n 日曜プログラマ n 二児の父
n 静岡県浜松市出身 n 東京都品川区在住。名古屋市在住。 n Windows 愛用。iPhone Android スマホ n Android の会浜松支部、よちよち Android の会、 Hamamatsu.js Tiny Mouse 自己紹介
どんなアプリを開発するか スマホやタブレット ウェブフロントエンド ウェブバックエンド デスクトップ・・Windowsなど
Windows アプリの開発手段 どれを選ぶのがいいのか Win32 API WinForms WPF UWP
Windows アプリの開発手段の 選択肢をまとめてみた Qiita に書いた https://qiita.com/tinymouse/items/416eecb21ebadb0bb4c7
Windows アプリの種類と概要
Windows API とは、Microsoft Windows のシステムコール用 API のこと。特に Windows 95 以降や
Windows NT で利用できるものは Win32 API と呼ばれる。 (Windows API - Wikipedia)
.NET Framework は、実行中のアプリにさまざまなサービスを提供する、Windows 向けのマ ネージド実行環境です。 実行中のアプリを処理する実行エンジンである共通言語ランタイム (CLR) と、開発者が独自 のアプリから呼び出すことができる検証済みの再利用可能なコード ライブラリである
.NET Framework クラス ライブラリから構成されています。 (.NET Framework の概要 | Microsoft Docs)
WinForms(Windows Forms)は、.NET Framework に含まれるグラフィカルユーザーインターフェ イス API である。Windows API(GDI/GDI+)をマネージコードでラップし、Windows のユーザー インターフェイス要素へのアクセスを提供するフレームワークである。
従来から Visual C++ 用に提供されていた、複雑なネイティブ C++ ベースの MFC や、旧 Visual Basic(VB6)のフォームにとって代わるものとされる。 (Windows Forms - Wikipedia)
WPF(Windows Presentation Foundation)は、.NET Framework 3.0 以降に含まれるユーザイン タフェースサブシステムである。 (Windows Presentation Foundation
- Wikipedia) WPF は、Extensible Application Markup Language (XAML) を使用して、アプリケーションのプ ログラミング用に、宣言型モデルを提供します。 (WPF とは - Visual Studio | Microsoft Docs)
UWP(Universal Windows Platform)とは、Windows 10 のコアだと言える。そこにデバイスごとの 機能を追加したものが、デバイスに応じた Windows 10 の各製品である。 UWPアプリの開発には、主に
C#/VB.NET/C++ 言語と XAML 、もしくは JavaScript 言語と HTML を用いる。 ベースとなるフレームワークは Windowsランタイム (WinRT) だが、デバイスに応じてWindows API や DirectX 、そして .NET Framework を用いることも可能である。 (UWP(ユニバーサルWindowsプラットフォーム)とは? UWPアプリ開発の特徴 - Build Insider)
Windows アプリの開発手段の選択肢
Win32/64 API Win32/64 API アプリ 今更これはないかな Tiny Mouse は自作ソフトのインストーラはこれで書いた
VB6 VB6 アプリ 今更これはないかな Tiny Mouse はこれで作ったことない
WinForms WinForms アプリ 仕事で作るアプリは圧倒的にこれ Tiny Mouse は C# より VB
が好き
WPF アプリ WPF Tiny Mouse はこれで作ったことない。XAML は好きで ない
UWP UWP アプリ Tiny Mouse はこれで作ったことない。 業務システムをこれで作ったら配布が面倒だった。
Xamarin アプリ Mono Xamarin ? どのタイプになるかよく分からない。
HTML Electron アプリ JavaScript VS など ウェブフロントエンドのエンジンを同梱する。Windows からすると Win32 アプリに見えると思われる。
VCL Delphi アプリ Delphi 言語(Object Pascal) Delphi Delphi FireMonkey Delphi
言語(Object Pascal) Tiny Mouse は長くこれを使っていた。
Windows アプリの開発手段 どれを選ぶのがいいのか .NET Framework .NET Core .NET 5
.NET Core は、クロスプラットフォームを特徴としてMicrosoftが開発を主導している .NET 実装 の1つ。Windows・Linux・macOS に対応している。以下のタイプ(シナリオ)のアプリケーションを 開発できる。 ・Webアプリ(ASP.NET Coreによる)・コマンドラインアプリ・ライブラリ・GUIアプリ(Windows
のみ) .NET Core 3
「.NET Core」「.NET Framework」「Xamarin/Mono」が .NET ファミリーを構成していたが、.NET 5 以降はこれらを1つの「.NET」に集約する。 .NET 5 は
.NET Core 3 の後継。.NET Framework 4 があるので、バージョン番号を飛ばした。 .NET 5
Windows アプリの開発手段 どれを選ぶのがいいのか Win32 API WinForms+.NET Framework+VB WPF UWP