SlideShare ist ein Scribd-Unternehmen logo
1 von 33
© 2016 Embarcadero Technologies, Inc.
All rights reserved. Proprietary and confidential.
Delphi Boot Camp
Delphiでビジュアル開発に挑戦しよう
2016年9月12日(月)~15日(木)
© 2016 Embarcadero Technologies, Inc.
All rights reserved. Proprietary and confidential.
DELPHI BOOT CAMP
DELPHIでビジュアル開発に挑戦しよう
Day 2 :
DelphiでUI設計のポイントを学ぼう
3© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
Delphi Boot Camp
Day 4:「Delphiモバイルアプリ開発事始め」
2016年9月15日(木)16:00~17:00
対象:Delphi初心者、中級者
必要な開発環境:Delphi Professional + Mobile Add-On Pack以上
Day 3:「Delphiプログラミングを学ぼう」
2016年9月14日(水)16:00~17:00
対象:Delphi初心者、中級者
必要な開発環境:Delphi Starter以上
Day 2:「DelphiでUI設計のポイントを学ぼう」
2016年9月13日(火)16:00~17:00
対象:Delphi初心者、中級者
必要な開発環境:Delphi Starter以上
Day 1:「Delphiで作るはじめてのアプリケーション」
2016年9月12日(月)16:00~17:00
対象:Delphi初心者
必要な開発環境:Delphi Starter以上
4© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
Day2:「DelphiでUI設計のポイントを学ぼう」アジェンダ
セミナー対象:初心者・中級者
時間: 16:00~ 約1時間 + 10分:特別講義
 Day2 学び方
• 基本的部分はデモを加えてわかりやすく
• 応用発展は自習できるように参照すべき内容を添えて
• ユーザーインターフェースの重要性
• FireMonkeyについて
• 主要なコンポーネント
• レイアウトを構成する要素
• レイアウトに便利なコンポーネント
• UIの見た目をよりよく
• 処理側から見たUI
• 特別講義:UI設計の事例
5© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
実施内容の再視聴
 実施内容のビデオは後日再視聴可能
• 申し込みメールアドレスに再視聴のリンク
 実施内容サマリー
• Community embarcadero (コミュニティ エンバカデロ)にWebリンク、
サンプルコード情報等 : http://community.embarcadero.com/
 エンバカデロWebサイト
• [リソース] – [イベント]のページに再視聴(オンデマンド)の情報記載予定
6© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
無料版 Delphi 10.1 Berlin Starter Edition 入手方法
• シリアルキーを知らせるメール内にも再ダウンロードリンク有
• EDN* = Embarcadero Developers Network
エンバ
Web
製品 Delphi
Starter
Edition
100%Off
登録 Get
インストール時にシリアルキーを入力
登録時のメールアドレスでシリアルキーを受信
登録完了後、自動でインストーラーのダウンロード開始
EDN*に登録済の方はEDNアカウントでダウンロード可
 無料ダウンロードは2016年8月22日~9月15日までの期間限定
7© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
今どきのデバイス向けUI設計
OS多様化
• Mac OS X
• iOS
• Android
• Windows
デバイス形状
• インチ数
• アスペクト比
• 4Kデバイス
• High DPI
入力方法の変化
• タッチ操作
• ジェスチャー
• ディスプレイ
• キーボード
 デバイスとOSの多様化
• パーソナルユースだけでなくビジネスユースにも
モバイルデバイス使用するケースが増加
• スマホ・タブレットの増加により利用される
OSの種類や、デバイス形状の多様化
8© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
今どきのユーザー
■無線デバイス馴れ
• どこでも利用可能
• 小さなデバイスで
■スマホ、タブレット馴れ
• マウス・キーボードのいらないUI
• 画面上で入力
■単機能、簡単なUI
• ヘルプ案内(説明書なし)
• 優しくわかりやすいUI,UX
■BYOD
• 利用者に合わせた多デバイス、多OS対応
 オペレーションとUXの変化
• モバイルデバイスと画面サイズの変化に伴い、使用シーン、アプリの画面設計も変化
• 入力方法の変化に伴い一画面における機能数を絞り、操作しやすいUIへ
• 使い慣れたデバイスをビジネスシーンに利用
9© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
UIを形成する 2種類のコンポーネントフレームワーク
※Starter では Win32アプリのみビルドが可能です
Windowsのみ Windows以外も
Windows APIをカプセル化し、
Windowsの機能を最大限活用
単一のコードで
マルチデバイス開発が可能
10© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
FireMonkey(FMX)の基礎
 マルチデバイス開発
• Windows, iOS, Android, Mac OS X 対応
• マルチデバイス向け配置、レイアウトの汎用性
• →開発効率が高い
 他のコンポーネントの子項目としてネスト可能
• ClipChildrenを参照
• →カスタマイズが行いやすい
 アニメーション効果を伴って変更可能
• 多くの数値プロパティはアニメーション可
• Position, RotationCenter, Scale, Size(Height およびWidth), Opacity, RotationAngle…
• →見栄えのよいUI構築が可能
11© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
標準的コンポーネントとサンプルコード
 コンポーネントの主要パーツをサンプルコードで確認してみよう!
 サンプルフォルダには…
• 各コンポーネント独自のサンプル
• データアクセスなど様々なサンプルを提供
• 各フォルダ内にReadme.htmlを(ほぼ)包有
 SubVersionに最新のサンプル
• サンプルのバグ修正や改善
• ダウンロードして差し替えを推奨
ウエルカムページ
User Interfaceフォルダ
サンプルプロジェクトを開く
Multi-Device Samples フォルダ
Object Pascal フォルダ
ControsDesktopフォルダ
12© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
主要なコンポーネント
 [Standard], [Additional], [Dialogs]カテゴリから
参照してみましょう!
 UIコントロール
• Edit, Button, CheckBox, ComboEditなど
 コンテナ(パネル)
• Panel, GroupBoxなど
 複合的なUIコントロール
• TreeView, ListViewなど
 ダイアログ
• OpenDialog, SaveDialogなど
ツールパレットのコンポーネントに
マウスカーソルを合わせると
使用できるプラットフォームが
分かります。
13© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
コンポーネントの基本プロパティ
 表示
• Align, Anchors
• Visible
• Width, Height
 入力
• CanFocus
• Enabled
• Text
 フォント
• TextSettings
 その他
• StyleLookup
http://docwiki.embarcadero.com/RADStudio/Berlin/ja/プロパティ
14© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
コンポーネントの使い方・覚え方
 配置済コンポーネント またはツールパレットのコンポーネントを選択
 選択状態でF1キーをプッシュ
 該当コンポーネントのヘルプ表示を参照
メソッド:使用できるメソッドとその使い方
プロパティ:各プロパティの意味と効果
オブジェクトインスペクタの「プロパティ」で
設定できるほかに、コード内でもプロパティを指定可能
( 例: Edit1.text := テキスト‘; )
イベント:イベントと説明
オブジェクトインスペクタ内の「イベント」から
指定して該当イベントにコードを記述可能
15© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
ユーザーインターフェイスのレイアウトを構成する要素
 パーツ レイアウト
• Anchors
• Alignments
• Padding
• Margin
 レイアウトに使いやすいコンポーネントの一例
• Tab Control
• MultiView
• List View vs. List Box
• LayoutFrames
• ScollBox
http://embt.co/firemonkey-layout
Day 1で解説
16© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
学習に使えるリンク
 DockWiki : http://docwiki.embarcadero.com/
• 入門
• チュートリアル
• サンプルコード
17© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
レイアウトに便利なコンポーネント
 TTabControl
• タブで複数のコンテナを管理
• TabPositionプロパティによりタブの位置、表示を規定
• TTabChangeAction によりタブを切り替えたときの
アニメーションを規定
http://embt.co/tabctrl-tutorial
 TMultiView
• 複数のモードをサポートしたスーパーパネル
• PlatformDefault, Drawer, NavigationPane, Panel,
Popover, Custom
• (モバイルデバイスで)画面サイズや向きによって、
モードを自動変更可能
http://embt.co/tmultiview-tutorial
18© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
レイアウトに便利なコンポーネント(2)
 TListBox
• 数が決まっているスクロールなしの表示に
• 設定やログイン画面などの一覧表示
http://docwiki.embarcadero.com/Libraries/Berlin/ja/FMX.ListBox.TListBox
 TListView
• 多数・未定のアイテムのスクロールが必要な表示に
• データベースから複数のデータをバインドし一覧表示
http://docwiki.embarcadero.com/Libraries/Berlin/ja/FMX.ListView.TListView
 TListBoxとTListViewの違い
※DockWikiでListBoxとListViewの情報を参照してみましょう!
19© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
 特定のルールに従ってコントロールを配置するコンテナ
http://embt.co/firemonkey-layoutmgr
レイアウト応用編 - レイアウトマネージャ -
 TFlowLayout
• 順に整列
 TGridLayout
• 一定の大きさにそろえて整列
 TGridPanelLayout
• 区切られた範囲に整列
20© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
レイアウト応用編 - レイアウト関連のその他の機能 -
 TScaledLayout
• 親項目の大きさに連動してリサイズ
http://embt.co/scaledlayout
 TScrollBox
• 親項目よりも子項目のサイズが大きい場合にスクロールバーを表示
• 以下も利用可能
• TVertScrollBox, THorzScrollBox, TFramedScrollBox, TFramedVertScrollBox
http://embt.co/scrollbox
21© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
コンポーネントの使い方・覚え方(その2)
 チュートリアルを試してみよう!
 コツをつかんだ後はサンプルも参照してみよう!
• 該当コンポーネントのヘルプを参照
• ヘルプやDockWikiの「入門」を参照
http://docwiki.embarcadero.com/RADStudio/Berlin/ja/RAD_Studio_入門
22© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
ユーザーインターフェイスをより見栄えよく
 アニメーション
 画像効果
 スタイル
• よりUIを生き生きと
• よりUIをインタラクティブに
• より使用者の注意を引き付ける
23© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
アニメーション効果
 プロパティ値を変更するしくみ
• 自動または手動で開始
• 遅延、ループ、反転などが可能
• トリガーまたはTrue/Falseで開始・終了
• IsMouseOver, IsDragOver, IsFocused, IsVisible, IsPressed,
IsChecked, IsSelected, IsExpanded
• OnProcessおよびOnFinishイベントによりアニメーションに
伴う処理を記述可能
http://embt.co/firemonkey-animation
24© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
画像効果
 40以上のGPU画像効果を利用可能
• アニメーションと組み合わせることで、徐々に効果を加えることが可能
• 自動的に効果を有効/無効に切り替えるトリガーを用意
• 画像だけでなく、コントロールにも適用可能
 20以上のトランジション効果も用意
• 単純なフェードから帯渦巻きまで
http://embt.co/firemonkey-effects
25© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
演習:アプリに効果を加えてみる
 エフェクト – Shadow, Glow
• エフェクトの関連付け
• トリガー
 アニメーション :
• アニメーションの関連付け
• 数値の変更
• トリガー
• イベント
 エフェクトにアニメーション効果を追加
26© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
使いやすいUIを作るコツ – 処理編 -
 時間のかかる処理をメインスレッドで行わない
• メインスレッドで行うと…
• キャンセル操作ができない
• 画面が固まってしまっているように見える
• 応答がないアプリケーションとして警告が出る
• 並列プログラミングの機能を使おう!
• TTask、TFuture
• タスクを複数CPUで並列に動作させることが可能
• タスクを自動的に調整するスレッドプールの仕組みを利用可能
http://embt.co/ppl-overview
27© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
より学習をすすめたい方は
 DockWiki : http://docwiki.embarcadero.com/
• 入門
• チュートリアル
• サンプルコード
28© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
特別講義
毛利 春幸さん
RAD Studio 勉強会 大阪
元ハードウェア担当でロジック回路設計やFPGA(VHDL)などの
プログラムの経歴を有す。
初代Delphi(Windows3.1)から使い続けて20年、200万カードを
管理するカラオケ会員システムやアプリを担当している。
29© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
事例. オリジナルオーダーシャツ
 店舗スタッフ入力用端末(iPad)
• メンズ・レディース 生地種類3000~FireDAC(SQLite)
• 商品項目はローカルDB、在庫やフェア金額などはサーバーからの取得
• ボディースタイル / ネックサイズ / 衿型 / 着丈 / 裄丈 / クレリック /
カフス / 釦 / 刺繍
• シャツイメージシミュレーション機能
• オーダー用サーバー連動:
• サーバー, AWS S3 EC2 で受信後基幹システムと同期
• 各店舗ごとの注文履歴
• 店舗管理
30© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
Day2:「DelphiでUI設計のポイントを学ぼう」アジェンダ
セミナー対象:初心者・中級者
時間: 16:00~ 約1時間 + 10分:特別講義
 Day2 学び方
• 基本的部分はデモを加えてわかりやすく
• 応用発展は自習できるように参照すべき内容を添えて
• ユーザーインターフェースの重要性
• FireMonkeyについて
• 主要なコンポーネント
• レイアウトを構成する要素
• レイアウトに便利なコンポーネント
• UIの見た目をよりよく
• 処理側から見たUI
• 特別講義:UI設計の事例
31© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
実施内容の再視聴
 実施内容のビデオは後日再視聴可能
• 申し込みメールアドレスに再視聴のリンク
 実施内容サマリー
• Community embarcadero (コミュニティ エンバカデロ)にWebリンク、
サンプルコード情報等 : http://community.embarcadero.com/
 エンバカデロWebサイト
• [リソース] – [イベント]のページに再視聴(オンデマンド)の情報記載予定
32© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.
Delphi Boot Camp
Day 4:「Delphiモバイルアプリ開発事始め」
2016年9月15日(木)16:00~17:00
対象:Delphi初心者、中級者
必要な開発環境:Delphi Professional + Mobile Add-On Pack以上
Day 3:「Delphiプログラミングを学ぼう」
2016年9月14日(水)16:00~17:00
対象:Delphi初心者、中級者
必要な開発環境:Delphi Starter以上
Day 2:「DelphiでUI設計のポイントを学ぼう」
2016年9月13日(火)16:00~17:00
対象:Delphi初心者、中級者
必要な開発環境:Delphi Starter以上
Day 1:「Delphiで作るはじめてのアプリケーション」
2016年9月12日(月)16:00~17:00
対象:Delphi初心者
必要な開発環境:Delphi Starter以上
© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 33
THANKS!
www.embarcadero.com/jp

Weitere ähnliche Inhalte

Was ist angesagt?

Was ist angesagt? (20)

ソースコードの共通化
ソースコードの共通化ソースコードの共通化
ソースコードの共通化
 
MVVM入門
MVVM入門MVVM入門
MVVM入門
 
クロスプラットフォーム開発入門
クロスプラットフォーム開発入門クロスプラットフォーム開発入門
クロスプラットフォーム開発入門
 
Xamarin.Mac をこれからはじめるあなたへ
Xamarin.Mac をこれからはじめるあなたへXamarin.Mac をこれからはじめるあなたへ
Xamarin.Mac をこれからはじめるあなたへ
 
ngCore engine for mobage platform
ngCore engine for mobage platformngCore engine for mobage platform
ngCore engine for mobage platform
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)
 
Delphi のひみつ!(2015/01/29 CROSS 2015)
Delphi のひみつ!(2015/01/29 CROSS 2015)Delphi のひみつ!(2015/01/29 CROSS 2015)
Delphi のひみつ!(2015/01/29 CROSS 2015)
 
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
運用管理者のための「開発者からみたDevOps」 - Visual Studio 2015 新機能から考える開発者の取り組み
 
OITEC19_TFS
OITEC19_TFSOITEC19_TFS
OITEC19_TFS
 
革新的ブラウザゲームを支えるプラットフォーム技術
革新的ブラウザゲームを支えるプラットフォーム技術革新的ブラウザゲームを支えるプラットフォーム技術
革新的ブラウザゲームを支えるプラットフォーム技術
 
「モダンPerl入門」の入門
「モダンPerl入門」の入門「モダンPerl入門」の入門
「モダンPerl入門」の入門
 
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」
MVPパターンによる設計アプローチ「あなたのアプリ報連相できてますか」
 
Delphi Debut Tokyo #1 - FireMonkey HD の基本
Delphi Debut Tokyo #1 - FireMonkey HD の基本Delphi Debut Tokyo #1 - FireMonkey HD の基本
Delphi Debut Tokyo #1 - FireMonkey HD の基本
 
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 EastiOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
iOS の動画アプリ開発に Xamarin を使ってみた @JXUG #2 East
 
Xamarin.formsでのmvvm利用のコツ
Xamarin.formsでのmvvm利用のコツXamarin.formsでのmvvm利用のコツ
Xamarin.formsでのmvvm利用のコツ
 
Xamarin 101 ~環境構築からビルド・テストまで~
Xamarin 101 ~環境構築からビルド・テストまで~Xamarin 101 ~環境構築からビルド・テストまで~
Xamarin 101 ~環境構築からビルド・テストまで~
 
いまさら学ぶMVVMパターン
いまさら学ぶMVVMパターンいまさら学ぶMVVMパターン
いまさら学ぶMVVMパターン
 
.Net技術でこれからも食べていくための技術戦略
.Net技術でこれからも食べていくための技術戦略.Net技術でこれからも食べていくための技術戦略
.Net技術でこれからも食べていくための技術戦略
 
Introduction to Visual Studio App Center
Introduction to Visual Studio App CenterIntroduction to Visual Studio App Center
Introduction to Visual Studio App Center
 
HTML5スマートフォン業務アプリ開発セミナー(応用)テキストの抜粋
HTML5スマートフォン業務アプリ開発セミナー(応用)テキストの抜粋HTML5スマートフォン業務アプリ開発セミナー(応用)テキストの抜粋
HTML5スマートフォン業務アプリ開発セミナー(応用)テキストの抜粋
 

Andere mochten auch

Andere mochten auch (8)

【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第5回 「配列 と レコード 」
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第5回 「配列 と レコード 」【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第5回 「配列 と レコード 」
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第5回 「配列 と レコード 」
 
移行セミナー BDE to FireDAC 20161018
移行セミナー BDE to  FireDAC 20161018移行セミナー BDE to  FireDAC 20161018
移行セミナー BDE to FireDAC 20161018
 
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第4回 「Function と Pro...
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第4回 「Function と Pro...【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第4回 「Function と Pro...
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第4回 「Function と Pro...
 
BDEを使った業務アプリを移行ツールで最新化(2017年4月14日開催)
BDEを使った業務アプリを移行ツールで最新化(2017年4月14日開催)BDEを使った業務アプリを移行ツールで最新化(2017年4月14日開催)
BDEを使った業務アプリを移行ツールで最新化(2017年4月14日開催)
 
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第2回 ‟変数と型„
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第2回 ‟変数と型„【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第2回 ‟変数と型„
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第2回 ‟変数と型„
 
データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係
データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係
データベースアプリケーション開発セミナー・最新のデータベースとアプリケーション開発の関係
 
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第7回 「オブジェクト指向 」
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第7回 「オブジェクト指向 」【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第7回 「オブジェクト指向 」
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第7回 「オブジェクト指向 」
 
【U-22】Delphi / C++Builder / RAD Studio 概要
【U-22】Delphi / C++Builder / RAD Studio 概要【U-22】Delphi / C++Builder / RAD Studio 概要
【U-22】Delphi / C++Builder / RAD Studio 概要
 

Ähnlich wie DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう

Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12QJasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Yoshihito Kuranuki
 
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev opsOssを使ったazureでのdev ops
Ossを使ったazureでのdev ops
裕貴 荒井
 

Ähnlich wie DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう (20)

スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向スマートフォンアプリケーション開発の最新動向
スマートフォンアプリケーション開発の最新動向
 
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
AITCシニア技術者勉強会 「今さら聞けないWebサイト開発」 vol1
 
20161111 java one2016-feedback
20161111 java one2016-feedback20161111 java one2016-feedback
20161111 java one2016-feedback
 
NET MAUI for .NET 7 for iOS, Android app development
 NET MAUI for .NET 7 for iOS, Android app development  NET MAUI for .NET 7 for iOS, Android app development
NET MAUI for .NET 7 for iOS, Android app development
 
PanoPlazaについて
PanoPlazaについてPanoPlazaについて
PanoPlazaについて
 
デブサミ2013【15-D-4】Opsから挑むDevOps
デブサミ2013【15-D-4】Opsから挑むDevOpsデブサミ2013【15-D-4】Opsから挑むDevOps
デブサミ2013【15-D-4】Opsから挑むDevOps
 
12 総合演習Word Pressの利用
12 総合演習Word Pressの利用12 総合演習Word Pressの利用
12 総合演習Word Pressの利用
 
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12QJasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
Jasst12九州 倉貫資料:アジャイル・Ruby・クラウド(ARC)を活用したビジネスにおけるテストの実践 #jasst12Q
 
OpenStack Days Tokyo 2014のプレゼンテーション資料(モーフ・ラボ & アセアン・ラボ)
OpenStack Days Tokyo 2014のプレゼンテーション資料(モーフ・ラボ & アセアン・ラボ)OpenStack Days Tokyo 2014のプレゼンテーション資料(モーフ・ラボ & アセアン・ラボ)
OpenStack Days Tokyo 2014のプレゼンテーション資料(モーフ・ラボ & アセアン・ラボ)
 
ToolChainを使った次世代DevOps環境の作り方
ToolChainを使った次世代DevOps環境の作り方ToolChainを使った次世代DevOps環境の作り方
ToolChainを使った次世代DevOps環境の作り方
 
OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理
 
Site Reliability Engineering (SRE)を可能にするOpenPIEのご紹介
Site Reliability Engineering (SRE)を可能にするOpenPIEのご紹介Site Reliability Engineering (SRE)を可能にするOpenPIEのご紹介
Site Reliability Engineering (SRE)を可能にするOpenPIEのご紹介
 
Ossを使ったazureでのdev ops
Ossを使ったazureでのdev opsOssを使ったazureでのdev ops
Ossを使ったazureでのdev ops
 
Pivotal Tracker概略
Pivotal Tracker概略Pivotal Tracker概略
Pivotal Tracker概略
 
第2回HTML5企業Webシステム開発セミナー hifive紹介資料
第2回HTML5企業Webシステム開発セミナー hifive紹介資料第2回HTML5企業Webシステム開発セミナー hifive紹介資料
第2回HTML5企業Webシステム開発セミナー hifive紹介資料
 
Spath for enterprise
Spath for enterpriseSpath for enterprise
Spath for enterprise
 
What's New on XPages in IBM Notes/Domino 9.0 Social Edition.
What's New on XPages in IBM Notes/Domino 9.0 Social Edition.What's New on XPages in IBM Notes/Domino 9.0 Social Edition.
What's New on XPages in IBM Notes/Domino 9.0 Social Edition.
 
デザイナー・印刷会社の皆様に贈る、Creative Cloud 導入のメリット for Page 2013
デザイナー・印刷会社の皆様に贈る、Creative Cloud 導入のメリット for Page 2013デザイナー・印刷会社の皆様に贈る、Creative Cloud 導入のメリット for Page 2013
デザイナー・印刷会社の皆様に贈る、Creative Cloud 導入のメリット for Page 2013
 
良くわかる!Adobe Creative Cloud グループ版
良くわかる!Adobe Creative Cloud グループ版良くわかる!Adobe Creative Cloud グループ版
良くわかる!Adobe Creative Cloud グループ版
 
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
コンテナ&サーバーレス:トレンドの考察と少し先の未来の展望
 

DELPHI BOOT CAMP / DELPHIでビジュアル開発に挑戦しよう ◆ DAY2: DELPHIでUI設計のポイントを学ぼう

  • 1. © 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. Delphi Boot Camp Delphiでビジュアル開発に挑戦しよう 2016年9月12日(月)~15日(木)
  • 2. © 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. DELPHI BOOT CAMP DELPHIでビジュアル開発に挑戦しよう Day 2 : DelphiでUI設計のポイントを学ぼう
  • 3. 3© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. Delphi Boot Camp Day 4:「Delphiモバイルアプリ開発事始め」 2016年9月15日(木)16:00~17:00 対象:Delphi初心者、中級者 必要な開発環境:Delphi Professional + Mobile Add-On Pack以上 Day 3:「Delphiプログラミングを学ぼう」 2016年9月14日(水)16:00~17:00 対象:Delphi初心者、中級者 必要な開発環境:Delphi Starter以上 Day 2:「DelphiでUI設計のポイントを学ぼう」 2016年9月13日(火)16:00~17:00 対象:Delphi初心者、中級者 必要な開発環境:Delphi Starter以上 Day 1:「Delphiで作るはじめてのアプリケーション」 2016年9月12日(月)16:00~17:00 対象:Delphi初心者 必要な開発環境:Delphi Starter以上
  • 4. 4© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. Day2:「DelphiでUI設計のポイントを学ぼう」アジェンダ セミナー対象:初心者・中級者 時間: 16:00~ 約1時間 + 10分:特別講義  Day2 学び方 • 基本的部分はデモを加えてわかりやすく • 応用発展は自習できるように参照すべき内容を添えて • ユーザーインターフェースの重要性 • FireMonkeyについて • 主要なコンポーネント • レイアウトを構成する要素 • レイアウトに便利なコンポーネント • UIの見た目をよりよく • 処理側から見たUI • 特別講義:UI設計の事例
  • 5. 5© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 実施内容の再視聴  実施内容のビデオは後日再視聴可能 • 申し込みメールアドレスに再視聴のリンク  実施内容サマリー • Community embarcadero (コミュニティ エンバカデロ)にWebリンク、 サンプルコード情報等 : http://community.embarcadero.com/  エンバカデロWebサイト • [リソース] – [イベント]のページに再視聴(オンデマンド)の情報記載予定
  • 6. 6© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 無料版 Delphi 10.1 Berlin Starter Edition 入手方法 • シリアルキーを知らせるメール内にも再ダウンロードリンク有 • EDN* = Embarcadero Developers Network エンバ Web 製品 Delphi Starter Edition 100%Off 登録 Get インストール時にシリアルキーを入力 登録時のメールアドレスでシリアルキーを受信 登録完了後、自動でインストーラーのダウンロード開始 EDN*に登録済の方はEDNアカウントでダウンロード可  無料ダウンロードは2016年8月22日~9月15日までの期間限定
  • 7. 7© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 今どきのデバイス向けUI設計 OS多様化 • Mac OS X • iOS • Android • Windows デバイス形状 • インチ数 • アスペクト比 • 4Kデバイス • High DPI 入力方法の変化 • タッチ操作 • ジェスチャー • ディスプレイ • キーボード  デバイスとOSの多様化 • パーソナルユースだけでなくビジネスユースにも モバイルデバイス使用するケースが増加 • スマホ・タブレットの増加により利用される OSの種類や、デバイス形状の多様化
  • 8. 8© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 今どきのユーザー ■無線デバイス馴れ • どこでも利用可能 • 小さなデバイスで ■スマホ、タブレット馴れ • マウス・キーボードのいらないUI • 画面上で入力 ■単機能、簡単なUI • ヘルプ案内(説明書なし) • 優しくわかりやすいUI,UX ■BYOD • 利用者に合わせた多デバイス、多OS対応  オペレーションとUXの変化 • モバイルデバイスと画面サイズの変化に伴い、使用シーン、アプリの画面設計も変化 • 入力方法の変化に伴い一画面における機能数を絞り、操作しやすいUIへ • 使い慣れたデバイスをビジネスシーンに利用
  • 9. 9© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. UIを形成する 2種類のコンポーネントフレームワーク ※Starter では Win32アプリのみビルドが可能です Windowsのみ Windows以外も Windows APIをカプセル化し、 Windowsの機能を最大限活用 単一のコードで マルチデバイス開発が可能
  • 10. 10© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. FireMonkey(FMX)の基礎  マルチデバイス開発 • Windows, iOS, Android, Mac OS X 対応 • マルチデバイス向け配置、レイアウトの汎用性 • →開発効率が高い  他のコンポーネントの子項目としてネスト可能 • ClipChildrenを参照 • →カスタマイズが行いやすい  アニメーション効果を伴って変更可能 • 多くの数値プロパティはアニメーション可 • Position, RotationCenter, Scale, Size(Height およびWidth), Opacity, RotationAngle… • →見栄えのよいUI構築が可能
  • 11. 11© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 標準的コンポーネントとサンプルコード  コンポーネントの主要パーツをサンプルコードで確認してみよう!  サンプルフォルダには… • 各コンポーネント独自のサンプル • データアクセスなど様々なサンプルを提供 • 各フォルダ内にReadme.htmlを(ほぼ)包有  SubVersionに最新のサンプル • サンプルのバグ修正や改善 • ダウンロードして差し替えを推奨 ウエルカムページ User Interfaceフォルダ サンプルプロジェクトを開く Multi-Device Samples フォルダ Object Pascal フォルダ ControsDesktopフォルダ
  • 12. 12© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 主要なコンポーネント  [Standard], [Additional], [Dialogs]カテゴリから 参照してみましょう!  UIコントロール • Edit, Button, CheckBox, ComboEditなど  コンテナ(パネル) • Panel, GroupBoxなど  複合的なUIコントロール • TreeView, ListViewなど  ダイアログ • OpenDialog, SaveDialogなど ツールパレットのコンポーネントに マウスカーソルを合わせると 使用できるプラットフォームが 分かります。
  • 13. 13© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. コンポーネントの基本プロパティ  表示 • Align, Anchors • Visible • Width, Height  入力 • CanFocus • Enabled • Text  フォント • TextSettings  その他 • StyleLookup http://docwiki.embarcadero.com/RADStudio/Berlin/ja/プロパティ
  • 14. 14© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. コンポーネントの使い方・覚え方  配置済コンポーネント またはツールパレットのコンポーネントを選択  選択状態でF1キーをプッシュ  該当コンポーネントのヘルプ表示を参照 メソッド:使用できるメソッドとその使い方 プロパティ:各プロパティの意味と効果 オブジェクトインスペクタの「プロパティ」で 設定できるほかに、コード内でもプロパティを指定可能 ( 例: Edit1.text := テキスト‘; ) イベント:イベントと説明 オブジェクトインスペクタ内の「イベント」から 指定して該当イベントにコードを記述可能
  • 15. 15© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. ユーザーインターフェイスのレイアウトを構成する要素  パーツ レイアウト • Anchors • Alignments • Padding • Margin  レイアウトに使いやすいコンポーネントの一例 • Tab Control • MultiView • List View vs. List Box • LayoutFrames • ScollBox http://embt.co/firemonkey-layout Day 1で解説
  • 16. 16© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 学習に使えるリンク  DockWiki : http://docwiki.embarcadero.com/ • 入門 • チュートリアル • サンプルコード
  • 17. 17© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. レイアウトに便利なコンポーネント  TTabControl • タブで複数のコンテナを管理 • TabPositionプロパティによりタブの位置、表示を規定 • TTabChangeAction によりタブを切り替えたときの アニメーションを規定 http://embt.co/tabctrl-tutorial  TMultiView • 複数のモードをサポートしたスーパーパネル • PlatformDefault, Drawer, NavigationPane, Panel, Popover, Custom • (モバイルデバイスで)画面サイズや向きによって、 モードを自動変更可能 http://embt.co/tmultiview-tutorial
  • 18. 18© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. レイアウトに便利なコンポーネント(2)  TListBox • 数が決まっているスクロールなしの表示に • 設定やログイン画面などの一覧表示 http://docwiki.embarcadero.com/Libraries/Berlin/ja/FMX.ListBox.TListBox  TListView • 多数・未定のアイテムのスクロールが必要な表示に • データベースから複数のデータをバインドし一覧表示 http://docwiki.embarcadero.com/Libraries/Berlin/ja/FMX.ListView.TListView  TListBoxとTListViewの違い ※DockWikiでListBoxとListViewの情報を参照してみましょう!
  • 19. 19© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential.  特定のルールに従ってコントロールを配置するコンテナ http://embt.co/firemonkey-layoutmgr レイアウト応用編 - レイアウトマネージャ -  TFlowLayout • 順に整列  TGridLayout • 一定の大きさにそろえて整列  TGridPanelLayout • 区切られた範囲に整列
  • 20. 20© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. レイアウト応用編 - レイアウト関連のその他の機能 -  TScaledLayout • 親項目の大きさに連動してリサイズ http://embt.co/scaledlayout  TScrollBox • 親項目よりも子項目のサイズが大きい場合にスクロールバーを表示 • 以下も利用可能 • TVertScrollBox, THorzScrollBox, TFramedScrollBox, TFramedVertScrollBox http://embt.co/scrollbox
  • 21. 21© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. コンポーネントの使い方・覚え方(その2)  チュートリアルを試してみよう!  コツをつかんだ後はサンプルも参照してみよう! • 該当コンポーネントのヘルプを参照 • ヘルプやDockWikiの「入門」を参照 http://docwiki.embarcadero.com/RADStudio/Berlin/ja/RAD_Studio_入門
  • 22. 22© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. ユーザーインターフェイスをより見栄えよく  アニメーション  画像効果  スタイル • よりUIを生き生きと • よりUIをインタラクティブに • より使用者の注意を引き付ける
  • 23. 23© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. アニメーション効果  プロパティ値を変更するしくみ • 自動または手動で開始 • 遅延、ループ、反転などが可能 • トリガーまたはTrue/Falseで開始・終了 • IsMouseOver, IsDragOver, IsFocused, IsVisible, IsPressed, IsChecked, IsSelected, IsExpanded • OnProcessおよびOnFinishイベントによりアニメーションに 伴う処理を記述可能 http://embt.co/firemonkey-animation
  • 24. 24© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 画像効果  40以上のGPU画像効果を利用可能 • アニメーションと組み合わせることで、徐々に効果を加えることが可能 • 自動的に効果を有効/無効に切り替えるトリガーを用意 • 画像だけでなく、コントロールにも適用可能  20以上のトランジション効果も用意 • 単純なフェードから帯渦巻きまで http://embt.co/firemonkey-effects
  • 25. 25© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 演習:アプリに効果を加えてみる  エフェクト – Shadow, Glow • エフェクトの関連付け • トリガー  アニメーション : • アニメーションの関連付け • 数値の変更 • トリガー • イベント  エフェクトにアニメーション効果を追加
  • 26. 26© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 使いやすいUIを作るコツ – 処理編 -  時間のかかる処理をメインスレッドで行わない • メインスレッドで行うと… • キャンセル操作ができない • 画面が固まってしまっているように見える • 応答がないアプリケーションとして警告が出る • 並列プログラミングの機能を使おう! • TTask、TFuture • タスクを複数CPUで並列に動作させることが可能 • タスクを自動的に調整するスレッドプールの仕組みを利用可能 http://embt.co/ppl-overview
  • 27. 27© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. より学習をすすめたい方は  DockWiki : http://docwiki.embarcadero.com/ • 入門 • チュートリアル • サンプルコード
  • 28. 28© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 特別講義 毛利 春幸さん RAD Studio 勉強会 大阪 元ハードウェア担当でロジック回路設計やFPGA(VHDL)などの プログラムの経歴を有す。 初代Delphi(Windows3.1)から使い続けて20年、200万カードを 管理するカラオケ会員システムやアプリを担当している。
  • 29. 29© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 事例. オリジナルオーダーシャツ  店舗スタッフ入力用端末(iPad) • メンズ・レディース 生地種類3000~FireDAC(SQLite) • 商品項目はローカルDB、在庫やフェア金額などはサーバーからの取得 • ボディースタイル / ネックサイズ / 衿型 / 着丈 / 裄丈 / クレリック / カフス / 釦 / 刺繍 • シャツイメージシミュレーション機能 • オーダー用サーバー連動: • サーバー, AWS S3 EC2 で受信後基幹システムと同期 • 各店舗ごとの注文履歴 • 店舗管理
  • 30. 30© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. Day2:「DelphiでUI設計のポイントを学ぼう」アジェンダ セミナー対象:初心者・中級者 時間: 16:00~ 約1時間 + 10分:特別講義  Day2 学び方 • 基本的部分はデモを加えてわかりやすく • 応用発展は自習できるように参照すべき内容を添えて • ユーザーインターフェースの重要性 • FireMonkeyについて • 主要なコンポーネント • レイアウトを構成する要素 • レイアウトに便利なコンポーネント • UIの見た目をよりよく • 処理側から見たUI • 特別講義:UI設計の事例
  • 31. 31© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 実施内容の再視聴  実施内容のビデオは後日再視聴可能 • 申し込みメールアドレスに再視聴のリンク  実施内容サマリー • Community embarcadero (コミュニティ エンバカデロ)にWebリンク、 サンプルコード情報等 : http://community.embarcadero.com/  エンバカデロWebサイト • [リソース] – [イベント]のページに再視聴(オンデマンド)の情報記載予定
  • 32. 32© 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. Delphi Boot Camp Day 4:「Delphiモバイルアプリ開発事始め」 2016年9月15日(木)16:00~17:00 対象:Delphi初心者、中級者 必要な開発環境:Delphi Professional + Mobile Add-On Pack以上 Day 3:「Delphiプログラミングを学ぼう」 2016年9月14日(水)16:00~17:00 対象:Delphi初心者、中級者 必要な開発環境:Delphi Starter以上 Day 2:「DelphiでUI設計のポイントを学ぼう」 2016年9月13日(火)16:00~17:00 対象:Delphi初心者、中級者 必要な開発環境:Delphi Starter以上 Day 1:「Delphiで作るはじめてのアプリケーション」 2016年9月12日(月)16:00~17:00 対象:Delphi初心者 必要な開発環境:Delphi Starter以上
  • 33. © 2016 Embarcadero Technologies, Inc. All rights reserved. Proprietary and confidential. 33 THANKS! www.embarcadero.com/jp

Hinweis der Redaktion

  1. デバイスが多様化 お店でも顧客情報入力してくださいとiPadが出てきたり レストランや居酒屋で、タブレットで注文することがあるのを経験したことがあるかと。
  2. そういったスマートデバイス、タブレットの使用シチュエーションの増加に伴ってユーザーさん、顧客にも変化が起きています どこでもつかえる、デバイスは小型化。 入力方法も変わってきている。 そしてデバイスに合わせて画面設計も変わってきています。 つまりこういうことを多く経験してくるうちに、ユーザーさんや顧客の、デバイス、ソフト、操作いわゆるゆーーざーエクスペリエンスに関する意識が変わってきているんですね。 そしてさらには、キーワードとしてBYODということ場が出てきていることからも分かる通り、自分の個人もちのデバイスを仕事に持ち込んで利用する、などのケースも増えてきています