Microsoft MVP for Development Tools – Visual C++

Slides:



Advertisements
Similar presentations
IBMユーザ研究会九州研T3 3.Web2.0を実際に使ってみた. Web2.0を実際に使ってみました 研究会をプロジェクトに見立 てて “ Google SpreadSheet ” で会議を開く “ SNS ” でコミュニケーションを補助する “ Wiki ” で成果物を共有する.
Advertisements

主専攻実験 第1回 ガイダンス資料 TA : 野坂 龍佑 (M2), 高林大輔 (M1)
わんくま同盟 東京勉強会 #10 オブジェクト指向 #1 Windows メッセージを使いこな す -Windows 流オブジェクト指向 - とっちゃん 高萩 俊行 Microsoft MVP for Windows SDK 2005/ /09.
Internet Explorer 障害解析 最初の一歩 - IE のトラブルを理解する -. 概要 Internet Explorer を使用中に発生するトラブルの 種類と、調査のための切り分け方法を紹介します! (以降は IE と略称で表記します) よくあるお問い合わせ Web ページの表示が白画面のまま完了しない.
Ver Manual 2010 Tanaka. 目次 1. 概要 2. インストール 3. 使用方法 4. トラブルシューティング 5. その他 6. 更新履歴.
InstallShieldLecture InstallShield でインストーラを作成する方法 ( 初級編 ) ソニーエンジニアリング 設計 3 部 1 課 齋藤佑輔.
→その正体は S/人/謎の着物着付け師(見習い)/
Windows HPC Server を使ってみる
Developer Tools – Visual C /10~
水曜パソコン講座 「Windows Update プログラム  を実行する手順」         を解説します.
D&UNITE 株式会社 代表取締役 株式会社 T-Planning 取締役 Microsoft MVP for ASP.NET/IIS
PROCESS 14:一般情報(2) InstallShieldLecture
Webアプリケーション開発の 基本的なポイント
技術トピックス 2014/10.
とっちゃん Microsoft MVP for Windows-SDK Oct 2005 – Sep 2007
操作は、バッチファイルを ダブルクリックするだけ!
表紙 Windows用起動画面集        ~劇場版 v.1,00~ 作成:カズキング 場所:ブログ「俺らしいブログ」
BREWを学ぶ 情報工学科1組 石原 第5週目 Microsoft Visual Studio .NET 2003を使って
SharePoint Server において 構成ウィザードが失敗する場合の トラブルシューティング
WPF(.NET3.5)   vs Silverlight 2.0 Beta1 中 博俊@わんくま同盟.
「絵葉書を通じてのハルビンの 街の印象調査」システムUIの iPadアプリ化 谷研究室  飯 祐貴.
コンパイラ演習番外編 (その2): JVM コンテスト
Ver Manual 2010 Tanaka.
既存のBPOS のお客様のBPOS から Office 365 への切替
Windowsを理解しよう! ーメンテナンスの薦めー.
Visual Studio LightSwitchの概要
統合版 価格査定マニュアル2007 インストールガイド 目次 はじめに ご確認ください インストールメニュー(1)
L A T E X B o x Ver Manual 2010 Tanaka.
MSBuild 色々出来るよ 2011/04/02 お だ.
MS製開発ツールの歴史とか….
サーバー立ち上げ記 2009/5/23
2016年度秋期 成果発表会 2016年11月25日 大阪開発センター 技術一部 畑中 龍樹.
1 2 ワークスタイルを変えるOffice変革 クラウド導入をサポートする Microsoft CSPプログラムのご案内
Titanium Studioを使った アプリ開発 Vol.1
≆ ≯ ≮ ≴ ≃ ≨ ≡ ≧ ≥ ≲ Ver Manual 2010 Tanaka.
プロジェクト演習Ⅱ インタラクティブゲーム制作 イントロダクション2
≅ ≰ ≳ ≗ ≲ ≩ ≴ ≥ ver manual Tanaka.
Windows Azure (CTP) 触ってみた
Microsoft MVP for Development Tools – Visual C++
わんくま同盟・techbank.jp 夏椰 Insight Technology, Inc. 今川 美保
R流・C#マルチスレッドの復讐 2009年05月16日 R・田中一郎
Microsoftのマルチプラットフォーム戦略
龍谷大学理工学部における ウイルス感染事例
TDDとメソッドの外部設計 テストファーストの秘訣 2009/08 biac.
~新たなソフトウェア開発の手法~ 発表 土屋俊介
ミドルウェア”TSUNAGI”を 用いたWEBアプリケーションの構築
Windows Azure (CTP) 触ってみた
Visual Studio 2005の使用方法 新入生セミナー 
<前提条件> iSeriesSite ワークフロー 実行環境 構成イメージ
Microsoft MVP for Development Tools – Visual C++
Presented by なんでも作るつたい(隊)
≅ ≰ ≳ ≗ ≲ ≩ ≴ ≥ ver manual Tanaka.
Visual Studio 2005 の リファクタ と Edit & Continue と インテリセンス 尾崎 義尚(takanao)
SQL Server 2008 および 更新プログラムの一括セットアップ
UMLの概要とオブジェクト指向の基本概念
~目次~ Ⅰ.動作環境 Ⅱ.ファイルのダウンロード Ⅲ.システムのインストール Ⅳ.初期設定 Ⅴ.アンインストール
→その正体は S/人/謎の着物着付け師(見習い)/
情報基礎Ⅱ (第1回) 月曜4限 担当:北川 晃.
WPF(.NET3.5)   vs Silverlight 2.0 Beta1 中 博俊@わんくま同盟.
vc-2. Visual Studio C++ のデバッガー (Visual Studio C++ の実用知識を学ぶシリーズ)
本当は消去できていない!? ~データを完全消去する方法~
本当は消去できていない!? ~データを完全消去する方法~
「拝啓、さかもとと申します」 2008年6月28日 わんくま同盟 勉強会初参戦。 ※最重要 -質問はご遠慮願います-
vc-1. Visual Studio C++ の基本操作 (Visual Studio C++ の実用知識を学ぶシリーズ)
「拝啓、さかもとと申します」 2008年6月28日 わんくま同盟 勉強会初参戦。 ※最重要 -質問はご遠慮願います-
プログラム分散化のための アスペクト指向言語
Visual Studio 2013 の起動と プロジェクトの新規作成 (C プログラミング演習,Visual Studio 2019 対応) 金子邦彦.
Cp-1. Microsoft Visual Studio 2019 C++ の使い方 (C プログラミング演習,Visual Studio 2019 対応) 金子邦彦.
プロジェクト演習Ⅱ インタラクティブゲーム制作
7-Zipのインストール (Windows 10)
Presentation transcript:

Microsoft MVP for Development Tools – Visual C++ Deployment First のススメ とっちゃん(高萩 俊行) Microsoft MVP for Development Tools – Visual C++ Since 2005/10-

アジェンダ 自己紹介 インストーラとは何か? 製品ライフサイクルとのかかわり 更新と後始末 まとめ

自己紹介 職業 わんくまナンバー Microsoft MVP いまは… 本名 ハンドル 高萩 俊行 会社は… 主業務は とっちゃん たかはぎ としゆき ISV(Independent Software Vendor) ハンドル 主業務は とっちゃん 市販ソフトの開発 子供のころのあだ名です たぶんサラリーマン 発音はフラットに! 給料もらってるし…あってると思う わんくまナンバー Microsoft MVP #13 とっちゃん‘s Blog 応募(推薦)時は… http://blogs.wankuma.com/tocchann/ Windows Installer 受賞時は… Windows –SDK いまは… Developer Tools – Visual C++

ちなみに、おいらの主業務は インストーラの開発ではありません! 自分の開発者歴 いろいろやってますが… インストーラ関係だけ 短期開発だったため… IS-MSIにて作成 MS-DOS時代 ダメダメだったので… スクリプトベースの汎用インストーラ 翌年全面再構築… Windows時代 ここからチーム一人… 3.x~95初期 いまいちだったので… 販売元にて開発 あまりにもだったので… さらに作り直し… 丸ごともらいうけて作り直し いい加減IS-MSIのバグが… おいらはアドバイザー ISがあまりにもだったので… 基本MSIに移行… 自社開発に切り替え ISがあまりにも… エンジン担当 WiX2に変更 独自ではフォローできない… 3年たつのでそろそろ… Windows Installer 対応決定 ちなみに、おいらの主業務は インストーラの開発ではありません!

これら3つの役割が一つにまとまってはじめてインストーラと呼べるようになる インストーラとは何か? インストーラに与えられた役割とは何か 製品を起動するために必要なデータを適切な場所に配置する インストールする 自分が配置した製品の更新を行う アップデートする 自分が配置した製品の削除を行う アンインストールする これら3つの役割が一つにまとまってはじめてインストーラと呼べるようになる

インストーラが必要なときとは? 開発マシン以外とは? 開発マシン以外の環境で動作させる必要があるとき ビルドを行わないマシンのこと インストーラとは何か? インストーラが必要なときとは? 開発マシン以外の環境で動作させる必要があるとき 開発マシン以外とは? ビルドを行わないマシンのこと

製品ライフサイクルを回す 製品ライフサイクルの各要素 動機 設計と実装 配布 配置 運用 フィードバック 修正 更新 終了

製品ライフサイクルを回す 製品ライフサイクルの各要素 動機 設計と実装 配布 配置 運用 フィードバック 修正 更新 終了

動機 設計と実装 製品がほしい(提供したい)という思い これがなければ、商品は成り立たない 製品として具現化していく作業 製品ライフサイクルを回す 動機 製品がほしい(提供したい)という思い これがなければ、商品は成り立たない 設計と実装 製品として具現化していく作業 インストーラもアプリケーション 製品内のアプリの一つである

インストーラの関与する設計とは? 製品への要求にあったテクノロジの選択 配置からみた製品構成の検討 配置構成に合わせたプロジェクトの構造 製品ライフサイクルを回す インストーラの関与する設計とは? 製品への要求にあったテクノロジの選択 Windows Installer ClickOnce その他 配置からみた製品構成の検討 配置構成に合わせたプロジェクトの構造 インストーラへの反映

実行情報の設定はインストーラの 仕事ではない!!! 最後に動かすのもインストーラである! 製品ライフサイクルを回す インストーラ設計での注意点 一番最初にユーザーが利用するアプリ どのような形であれシステムを変更する インストーラに失敗は許されない 変化を前提とした設計を行う 実行情報の設定はインストーラの 仕事ではない!!! 最後に動かすのもインストーラである!

バージョンとは… バージョン管理は、製品管理の基礎 インストーラのバージョン管理は バージョンがより大きいものが更新対象 製品ライフサイクルを回す バージョンとは… インストーラのバージョン管理は ファイルバージョンが対象! アセンブリバージョンではない! バージョンがより大きいものが更新対象 バージョン管理は、製品管理の基礎 製品を管理する上で必ず必要 開発マシンの外に出た時点で管理対象 たとえテストビルドであっても

配布と配置は運用を考慮して 決めなければならない!!! 製品ライフサイクルを回す 配布 どのようにユーザーの手元に届けるのか? その手段はひとつなのか?複数なのか? 配置を考えて配布を決めねばならない 配置 どうやってユーザーに実行させるか? 配布と配置は運用を考慮して 決めなければならない!!!

修正 更新 プログラムの修正に合わせてインストーラも修正 バグの修正だけとは限らない 状況によっては大きなバージョンアップもある 製品ライフサイクルを回す 修正 プログラムの修正に合わせてインストーラも修正 バグの修正だけとは限らない 状況によっては大きなバージョンアップもある 更新 すでに製品のある場所での配置を更新と呼ぶ 更新とは「配布と配置」の特殊系

製品ライフサイクルを回す 図を書いてみましょう…

更新と後始末 更新する際に注意する部分 絶対にバージョンダウンをしない 同じものは更新しない 更新対象はファイルだけとは限らない

更新と後始末 後始末とは 「配置したもの」を撤去する作業 単に消すではない次のための布石である

インストーラとは何か? 製品ライフサイクルでの役割 インストール、アップデート、アンインストールをまとめたアプリ 運用以外のすべてのシーケンスで関与

常に次を考えて作成する どのタイミングから作業するのか 常に更新を考慮する 終わりを見据える! 設計の初期段階から考察が必要 まとめ どのタイミングから作業するのか 設計の初期段階から考察が必要 常に更新を考慮する 常に先をみた変化を考慮する 終わりを見据える! 常に次を考えて作成する