Delphi のひみつ!(2015/01/29 CROSS 2015)

  • View
    5.470

  • Download
    4

  • Category

    Software

Preview:

Citation preview

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 3

Happy Creation, Play the Development!

Delphi のひみつ!

CROSS 2015 D1

本当に使える CROSS プラットフォーム開発環境はどれだ!ガチンコ対決!

2015/01/29株式会社シリアルゲームズ 細川 淳

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 4

Happy Creation, Play the Development! 自己紹介

• 細川のひみつ!

–twitter: @pik

–株式会社シリアルゲームズ勤務

–エンバカデロMVP(Delphi)

–最近の仕事

• Twitter で Delphi を検索して、不用意にDelphi とつぶやいた人にツイートを飛ばす

•たまに–Windows / OSX アプリを作る

– iOS / Android アプリを作る

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 5

Happy Creation, Play the Development!

• シリアルゲームズのひみつ!– ゲームサーバ・クライアントのワンストップ制作

• 両方を同時に制作することで期間・費用を抑えられます!

– ゲーム業界のバックエンドを支えています

• ゲームサーバやバックエンドプログラム全般の制作

– iOS / Android のアプリケーション

• XCode / AndroidStudio による作成

•Delphi による作成

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 6

Happy Creation, Play the Development!

Delphi のひみつ

マルチプラットフォーム

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 7

Happy Creation, Play the Development! マルチプラットフォーム

• Windows / OSX / iOS / Android をサポート

– もう少し増えるかも…

• ロードマップには Linux や Windows Phone も入ってます

Google GlassAndroid Wareなどにも対応

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 8

Happy Creation, Play the Development! マルチプラットフォーム

• IDE は Windows のみで動作

– OSX で動く IDE が待たれる…

• FireMonkey

– マルチプラットフォーム専用ライブラリ

– 昔の Delphi とはだいぶ違う!

• VCL は存在するが最早重要では無い!

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 9

Happy Creation, Play the Development! マルチプラットフォーム

• OS ネイティブ API のサポート

– 移植やラップとは異なり Object Pascal から直接 API を呼べます!

• 最終的には JNI や Objective-C Bridge につながるので、厳密にはラップですが…

– それゆえ、使えない API はありません!!

• 基本的には。

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 10

Happy Creation, Play the Development! マルチプラットフォーム

procedure OpenBrowser(const AURL: String);var

Intent: JIntent;begin

Intent := TJIntent.Create;Intent.setAction(TJIntent.JavaClass.ACTION_VIEW);Intent.setData(StrToJURI(AURL));SharedActivity.startActivity(Intent);

end;

Android API を使う例

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 11

Happy Creation, Play the Development! マルチプラットフォーム

procedure HideStatusBar;begin// UIApp は UIApplication のインスタンスUIApp.setStatusBarHidden(True); AppDelegate.MainWindow.RootViewController.StatusBarVisible := False;

if TOSVersion.Check(7, 0) thenUIViewController(AppDelegate.MainWindow.RootViewController.Super

).setNeedsStatusBarAppearanceUpdate;end;

iOS API を使う例

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 12

Happy Creation, Play the Development!

Delphi のひみつ

ビジュアル開発

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 13

Happy Creation, Play the Development! ビジュアル開発

• コンポーネントによるビジュアル開発

コンポーネント(部品)をD&Dで配置!

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 14

Happy Creation, Play the Development! ビジュアル開発

• 2way-tools

オブジェクトインスペクタで・プロパティ(部品の属性)の変更・イベントの生成ができる

さらに!これらは全てコードとして生成される!

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 15

Happy Creation, Play the Development! ビジュアル開発

置いたコンポーネントが自動的にクラスの変数に!

イベントがメソッドとして自動的に宣言される!

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 16

Happy Creation, Play the Development!

Delphi のひみつ

ネイティブコード

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 17

Happy Creation, Play the Development! ネイティブコード

• アプリは全てネイティブコードになる!

– Android のアプリでさえも!

• NDK ベースの開発になります。

• コンパイラが6個!

– Windows 32bit 用

– Windows 64bit 用

– OSX 用

– iOS シミュレータ用

– iOS デバイス用

– Android 用

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 18

Happy Creation, Play the Development!

Delphi のひみつ

UI 独自描画

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 19

Happy Creation, Play the Development! UI の独自描画

• FireMonkey ライブラリOpenGL を使って全部自分で描画してます!Google / Apple から情報を貰ってピクセル単位で同じに見えるように(ピクセルパーフェクト)

文字も!

ボタンも!

リストも!

コントロール全部が!

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 20

Happy Creation, Play the Development! UI の独自描画

• スタイル機構 / FireUI

– Style という機構を導入することでプラットフォームに即した見た目に勝手に変わります!

戻るボタンを消したりも!

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 21

Happy Creation, Play the Development!

Delphi のひみつ

言語

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 22

Happy Creation, Play the Development! 言語

• 2つの言語を使用可能!(※RAD Studio の場合)

–Object Pascal

• 昔は Delphi Language と言っていました

–さらに昔は Object Pascal と言っていました!?

•オススメ!

• ジェネリックスやクロージャなど一般的な機能は全部使えます!

–C++

• C++Builder / Appmethod / RAD Studio で使用できます

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 23

Happy Creation, Play the Development!

Delphi のひみつ

製品ライン

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 24

Happy Creation, Play the Development! 製品ライン

RAD Studio XE7 Delphi XE7 C++ Builder XE7 Appmethod 1.15

言語 Object Pascal / C++ Object Pascal C++ 契約形態による

Mobile Add-on Pack 不要 Professional:要それ以上:不要

不要

Framework VCL / FireMonkey FireMonkey

開発対象 Win / OSXiOS/ Android

Professional: Windows / OSXそれ以上 or Professional + MobileAddonPack→ Win / OSX / iOS / Android

契約形態による

配布制限 なし

エディション StarterProfessionalEnterprise / Ultimate / Architect

Freeプラン個人プランビジネスプラン

価格 Professional (ESD):¥208,000

Professional (ESD):¥116,000

MobileAddonPack:¥58,000

¥34,000 / 1Platform

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 25

Happy Creation, Play the Development!

Delphi のひみつ

その他

Copyright © 2013 SERIALGAMES inc. All Rights Reserved. PAGE 26

Happy Creation, Play the Development! 言語

•検索ワード!

–[Delphi セミナー]

エンバカデロテクノロジーズの

セミナー情報

–[Delphi カメラアカメラアプリの作成ビデオなど

チュートリアルビデオ群!

Delphi セミナー 検索

Delphi カメラアプリ 検索

Recommended