狠狠撸

狠狠撸Share a Scribd company logo
Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved.
Delphi の残念なとこ!
2014/08/23 @pik
Happy Creation, Play the Development!
Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved.
自己紹介
Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved.
※ツイートの引用について了承済み
Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved.
\ /
\ 丶 i. | / ./ /
\ ヽ i. .| / / /
\ ヽ i | / / /
\
-‐
ー
__ わ た し で す --
二 / ̄\ = 二
 ̄ | ^o^ |  ̄
-‐ \_/ ‐-
/
/ ヽ \
/ 丶 \
/ / / | i, 丶 \
/ / / | i, 丶 \
Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved.
普段は
Android/iOS のアプリを組んだり、
Win/OSX の開発したりしてます。
Delphi で!
twitter: @pik
Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved.
先に言って
おきます
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 7
Happy Creation, Play the Development!
はじめに
Delphi
大好き
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 8
Happy Creation, Play the Development!
あくまでも
個人的な
見解です!
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 9
Happy Creation, Play the Development!
★★ Delphi ランキング ★
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 10
Happy Creation, Play the Development!
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 11
Happy Creation, Play the Development!
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 12
Happy Creation, Play the Development!
無名関数定義がめんどい!
type
TFoo = reference to procedure of object;
procedure Bar(Foo: TFoo);
begin
end;
begin
Bar(
procedure
begin
// DO SOMETHING
end;
);
end;
長ぇwww
訂正
of object いりませんでした!むしろ書けない!
短くなった!?……いや、そういう事でなく、
reference to 構文が長いって話です。
lyna 氏、ご指摘ありがとうございます。
https://twitter.com/lynatan/status/503193343338094593
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 13
Happy Creation, Play the Development!
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 14
Happy Creation, Play the Development!
循環参照めんどい!
unit A;
interface
uses B;
implementation
end.
unit B;
interface
uses A;
implementation
end.
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 15
Happy Creation, Play the Development!
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 16
Happy Creation, Play the Development!
文字列インデックスが!
// 今まで
Str := 'ABC';
Writeln(Str[1]) // 結果:A
// NEWGEN コンパイラ
Str := 'ABC';
Writeln(Str[1]) // 結果:B
0 based に!
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 17
Happy Creation, Play the Development!
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 18
Happy Creation, Play the Development!
プリミティブがあるよ!
// プリミティブ
var
Int: Integer; // 整数型
Car: Cardinal; // 符号無し整数
Chr: Char; // 文字型
Str: String; // 文字列型
Bol: Boolean; // 真理値
Set: set of TAnsiChar; // 集合型 などなど
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 19
Happy Creation, Play the Development!
レコードヘルパ!
// プリミティブにメソッドを加える小手先技!
type
TStringHelper = record helper for String
public
property Chars[Index: Integer]: Char read GetChars;
end;
TIntegerHelper = record helper for Integer
public
function ToString: String;
end;
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 20
Happy Creation, Play the Development!
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 21
Happy Creation, Play the Development!
ローカル変数定義がめんどい!
var
Foo: Integer;
begin
// こんな風に書きたい!
var Foo: Integer = 0;
end;
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 22
Happy Creation, Play the Development!
Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 23
Happy Creation, Play the Development!
名前が揺らいでる!
Object Pascal
↓
Delphi Language
↓
Object Pascal 戻ったwww

More Related Content

What's hot (20)

PDF
作ろう!LINEスタンプ ?スタンプクリエイターの語り場?
典子 松本
?
PDF
Storyboard
Yukihiko Kagiyama
?
PDF
颈翱厂侧の鲍滨の特徴と见比べる础苍诲谤辞颈诲侧での鲍滨実装のヒント
Fumiya Sakai
?
PDF
颈翱厂の鲍滨构筑小技集(小さなとこから始められる编)
Fumiya Sakai
?
PDF
Megascansを使った効率化と楽しい絵作り ~Cutting-Edge Test Drive制作事例~
historia_Inc
?
PDF
动画プレイヤーアプリの开発を通じて学んだ机能を実现するための要点解説
Fumiya Sakai
?
PDF
ライブラリやView構造を有効活用して iOSアプリのUIをオシャレにするワザ紹介
Fumiya Sakai
?
PDF
エターナらないゲーム开発
Kohki Miki
?
PDF
2011_9_9_AIR_LightningTalk
Shozo Okada
?
PDF
アプリ开発におけるテキスト装饰のアイデア集
Fumiya Sakai
?
PDF
厂飞颈蹿迟と搁别补肠迟狈补迟颈惫别で似たような鲍滨を作った际の记録
Fumiya Sakai
?
PDF
础苍驳耻濒补谤闯厂入门の巻
Toshio Ehara
?
PDF
試して感覚を掴んでみるUICollectionViewCompositionalLayout & Combine
Fumiya Sakai
?
PDF
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
Yoshito Tabuchi
?
PPTX
Androidをやっただけで iOSアプリもできればいいのに ?MOEという選択?
Saiki Iijima
?
PPTX
[UNREAL FEST EAST 2017] VRゲームairtone制作事例 - VRを活かす3つのゲームデザイン的挑戦
historia_Inc
?
PDF
颈翱厂アプリで気になった动きや表现を上手にアレンジして活用してみる
Fumiya Sakai
?
PDF
础苍驳耻濒补谤闯厂入门の巻2
Toshio Ehara
?
PDF
祸つヴァールハイトを支えるレイアウト业务
KLab Inc. / Tech
?
PPTX
[FlashAir Developers Summit] FlashAirの紹介
贵濒补蝉丑础颈谤デベロッパーズ
?
作ろう!LINEスタンプ ?スタンプクリエイターの語り場?
典子 松本
?
颈翱厂侧の鲍滨の特徴と见比べる础苍诲谤辞颈诲侧での鲍滨実装のヒント
Fumiya Sakai
?
颈翱厂の鲍滨构筑小技集(小さなとこから始められる编)
Fumiya Sakai
?
Megascansを使った効率化と楽しい絵作り ~Cutting-Edge Test Drive制作事例~
historia_Inc
?
动画プレイヤーアプリの开発を通じて学んだ机能を実现するための要点解説
Fumiya Sakai
?
ライブラリやView構造を有効活用して iOSアプリのUIをオシャレにするワザ紹介
Fumiya Sakai
?
エターナらないゲーム开発
Kohki Miki
?
2011_9_9_AIR_LightningTalk
Shozo Okada
?
アプリ开発におけるテキスト装饰のアイデア集
Fumiya Sakai
?
厂飞颈蹿迟と搁别补肠迟狈补迟颈惫别で似たような鲍滨を作った际の记録
Fumiya Sakai
?
础苍驳耻濒补谤闯厂入门の巻
Toshio Ehara
?
試して感覚を掴んでみるUICollectionViewCompositionalLayout & Combine
Fumiya Sakai
?
C#でのクロスプラットフォーム モバイル開発環境 Xamarin のご紹介
Yoshito Tabuchi
?
Androidをやっただけで iOSアプリもできればいいのに ?MOEという選択?
Saiki Iijima
?
[UNREAL FEST EAST 2017] VRゲームairtone制作事例 - VRを活かす3つのゲームデザイン的挑戦
historia_Inc
?
颈翱厂アプリで気になった动きや表现を上手にアレンジして活用してみる
Fumiya Sakai
?
础苍驳耻濒补谤闯厂入门の巻2
Toshio Ehara
?
祸つヴァールハイトを支えるレイアウト业务
KLab Inc. / Tech
?
[FlashAir Developers Summit] FlashAirの紹介
贵濒补蝉丑础颈谤デベロッパーズ
?

Viewers also liked (20)

PDF
Delphi 言語に見る顕在化する言語のリスクとは?(2013/08/24)
Jun Hosokawa
?
ODP
Delphi ideを使わない開発スタイルの紹介
Shinya Okano
?
PDF
「顿别濒辫丑颈のマイグレーションを行うのであれば、これだけは知っておこう!」
Embarcadero Technologies
?
PDF
「顿别濒辫丑颈で作るデータベースツール。その开発のポイントは??」
Embarcadero Technologies
?
PDF
「今さら聞けない!? FireDAC入門 ~ オンメモリーデータベース編」
Embarcadero Technologies
?
PDF
「RAD Studio 10.1 Berlinで始めるIoTアプリケーション構築」
Embarcadero Technologies
?
PDF
TImageList / TGlyph の使い方
Jun Hosokawa
?
PDF
CROSS 2014 - 言語CROSS:Delphi のご紹介
Jun Hosokawa
?
PPTX
【Delphi / C++Builder Starter チュートリアルシリーズ】 第5回 ?イベントに合わせて動かしてみよう?
和弘 井之上
?
PPTX
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第1回 ?シューティングゲームのプロ...
Kaz Aiso
?
PDF
4000社が认めた超高速开発ツールで戦略的滨罢活用を
Kazuya Mori
?
PDF
超高速開発の基礎概念 20141119 0
正善 大島
?
PDF
ねえ、お父さんのお仕事ってなぁに?
suno88
?
PDF
「今どきのUXを実現するためのRAD Studio新機能活用テクニック」
Embarcadero Technologies
?
PDF
「ゲームUIから考える これからのエンタープライズUX」
Embarcadero Technologies
?
PDF
Developer Summit 2014, 13-C-4 セッション
Jun Hosokawa
?
PDF
CnPack の紹介
Jun Hosokawa
?
PDF
Dev camp25 lt
Jun Hosokawa
?
PDF
知っておいて欲しい Android の基礎知識
Jun Hosokawa
?
PDF
VCL ユーザーのための FireMonkey 入門
Jun Hosokawa
?
Delphi 言語に見る顕在化する言語のリスクとは?(2013/08/24)
Jun Hosokawa
?
Delphi ideを使わない開発スタイルの紹介
Shinya Okano
?
「顿别濒辫丑颈のマイグレーションを行うのであれば、これだけは知っておこう!」
Embarcadero Technologies
?
「顿别濒辫丑颈で作るデータベースツール。その开発のポイントは??」
Embarcadero Technologies
?
「今さら聞けない!? FireDAC入門 ~ オンメモリーデータベース編」
Embarcadero Technologies
?
「RAD Studio 10.1 Berlinで始めるIoTアプリケーション構築」
Embarcadero Technologies
?
TImageList / TGlyph の使い方
Jun Hosokawa
?
CROSS 2014 - 言語CROSS:Delphi のご紹介
Jun Hosokawa
?
【Delphi / C++Builder Starter チュートリアルシリーズ】 第5回 ?イベントに合わせて動かしてみよう?
和弘 井之上
?
【DELPHI / C++BUILDER STARTER チュートリアルシリーズ】 シーズン2 Delphi の部 第1回 ?シューティングゲームのプロ...
Kaz Aiso
?
4000社が认めた超高速开発ツールで戦略的滨罢活用を
Kazuya Mori
?
超高速開発の基礎概念 20141119 0
正善 大島
?
ねえ、お父さんのお仕事ってなぁに?
suno88
?
「今どきのUXを実現するためのRAD Studio新機能活用テクニック」
Embarcadero Technologies
?
「ゲームUIから考える これからのエンタープライズUX」
Embarcadero Technologies
?
Developer Summit 2014, 13-C-4 セッション
Jun Hosokawa
?
CnPack の紹介
Jun Hosokawa
?
Dev camp25 lt
Jun Hosokawa
?
知っておいて欲しい Android の基礎知識
Jun Hosokawa
?
VCL ユーザーのための FireMonkey 入門
Jun Hosokawa
?
Ad

Similar to Delphi のダメな所 (20)

PPT
プログラミングで言いたい闻きたいこと集
tecopark
?
PPT
プログラミングで言いたいこと闻きたいこと集
tecopark
?
PDF
Delphi Community Edition Meet up !
Jun Hosokawa
?
PPTX
顿别濒辫丑颈で奥颈苍/惭补肠クロスコンパイル
Tomonori Ohba
?
PDF
ソースコードの共通化
Jun Hosokawa
?
PDF
Unity2015_No10_~UGUI&Audio~
CHY72
?
PDF
详解顿别虫ファイルフォーマット
Takuya Matsunaga
?
PDF
PFI Seminar 2010/02/18
Preferred Networks
?
PDF
“Design and Implementation of Generics for the .NET Common Language Runtime”他...
Masahiro Sakai
?
PDF
V6 unix in okinawa
magoroku Yamamoto
?
ODP
C++でのゲームプログラミングをしたときのお話 札幌C++勉強会 #4 ?スタートゲームプログラミング?
勝成 鈴江
?
PDF
ソフトウェア开発30年史を振り返りつつ考えるプログラマにとって変わらないもの
Jun Hosokawa
?
ODP
贵#と颁#で见る関数志向プログラミング
satoshimurakumo
?
PDF
CLRの基礎 - プログラミング .NET Framework 第3版 読書会
Yoshihisa Ozaki
?
PDF
とことんF#よぷよ! F# + XNA ゲームプログラミング入門
zecl1231
?
PDF
闯补惫补セキュアコーディングセミナー东京第2回讲义
JPCERT Coordination Center
?
PDF
[TL06] 日本の第一人者が C# の現状と今後を徹底解説! 「この素晴らしい C# に祝福を!」
de:code 2017
?
PDF
フラグを爱でる
MITSUNARI Shigeo
?
PDF
d-kami x86-1
Daisuke Kamikawa
?
PDF
颁辞辩による惭蝉驳笔补肠办の証明
Hiroki Mizuno
?
プログラミングで言いたい闻きたいこと集
tecopark
?
プログラミングで言いたいこと闻きたいこと集
tecopark
?
Delphi Community Edition Meet up !
Jun Hosokawa
?
顿别濒辫丑颈で奥颈苍/惭补肠クロスコンパイル
Tomonori Ohba
?
ソースコードの共通化
Jun Hosokawa
?
Unity2015_No10_~UGUI&Audio~
CHY72
?
详解顿别虫ファイルフォーマット
Takuya Matsunaga
?
PFI Seminar 2010/02/18
Preferred Networks
?
“Design and Implementation of Generics for the .NET Common Language Runtime”他...
Masahiro Sakai
?
V6 unix in okinawa
magoroku Yamamoto
?
C++でのゲームプログラミングをしたときのお話 札幌C++勉強会 #4 ?スタートゲームプログラミング?
勝成 鈴江
?
ソフトウェア开発30年史を振り返りつつ考えるプログラマにとって変わらないもの
Jun Hosokawa
?
贵#と颁#で见る関数志向プログラミング
satoshimurakumo
?
CLRの基礎 - プログラミング .NET Framework 第3版 読書会
Yoshihisa Ozaki
?
とことんF#よぷよ! F# + XNA ゲームプログラミング入門
zecl1231
?
闯补惫补セキュアコーディングセミナー东京第2回讲义
JPCERT Coordination Center
?
[TL06] 日本の第一人者が C# の現状と今後を徹底解説! 「この素晴らしい C# に祝福を!」
de:code 2017
?
フラグを爱でる
MITSUNARI Shigeo
?
d-kami x86-1
Daisuke Kamikawa
?
颁辞辩による惭蝉驳笔补肠办の証明
Hiroki Mizuno
?
Ad

Delphi のダメな所

  • 1. Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved. Delphi の残念なとこ! 2014/08/23 @pik Happy Creation, Play the Development!
  • 2. Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved. 自己紹介
  • 3. Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved. ※ツイートの引用について了承済み
  • 4. Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved. \ / \ 丶 i. | / ./ / \ ヽ i. .| / / / \ ヽ i | / / / \ -‐ ー __ わ た し で す -- 二 / ̄\ = 二  ̄ | ^o^ |  ̄ -‐ \_/ ‐- / / ヽ \ / 丶 \ / / / | i, 丶 \ / / / | i, 丶 \
  • 5. Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved. 普段は Android/iOS のアプリを組んだり、 Win/OSX の開発したりしてます。 Delphi で! twitter: @pik
  • 6. Copyright ? 2014 SERIALGAMES inc.. All Rights Reserved. 先に言って おきます
  • 7. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 7 Happy Creation, Play the Development! はじめに Delphi 大好き
  • 8. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 8 Happy Creation, Play the Development! あくまでも 個人的な 見解です!
  • 9. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 9 Happy Creation, Play the Development! ★★ Delphi ランキング ★
  • 10. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 10 Happy Creation, Play the Development!
  • 11. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 11 Happy Creation, Play the Development!
  • 12. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 12 Happy Creation, Play the Development! 無名関数定義がめんどい! type TFoo = reference to procedure of object; procedure Bar(Foo: TFoo); begin end; begin Bar( procedure begin // DO SOMETHING end; ); end; 長ぇwww 訂正 of object いりませんでした!むしろ書けない! 短くなった!?……いや、そういう事でなく、 reference to 構文が長いって話です。 lyna 氏、ご指摘ありがとうございます。 https://twitter.com/lynatan/status/503193343338094593
  • 13. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 13 Happy Creation, Play the Development!
  • 14. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 14 Happy Creation, Play the Development! 循環参照めんどい! unit A; interface uses B; implementation end. unit B; interface uses A; implementation end.
  • 15. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 15 Happy Creation, Play the Development!
  • 16. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 16 Happy Creation, Play the Development! 文字列インデックスが! // 今まで Str := 'ABC'; Writeln(Str[1]) // 結果:A // NEWGEN コンパイラ Str := 'ABC'; Writeln(Str[1]) // 結果:B 0 based に!
  • 17. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 17 Happy Creation, Play the Development!
  • 18. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 18 Happy Creation, Play the Development! プリミティブがあるよ! // プリミティブ var Int: Integer; // 整数型 Car: Cardinal; // 符号無し整数 Chr: Char; // 文字型 Str: String; // 文字列型 Bol: Boolean; // 真理値 Set: set of TAnsiChar; // 集合型 などなど
  • 19. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 19 Happy Creation, Play the Development! レコードヘルパ! // プリミティブにメソッドを加える小手先技! type TStringHelper = record helper for String public property Chars[Index: Integer]: Char read GetChars; end; TIntegerHelper = record helper for Integer public function ToString: String; end;
  • 20. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 20 Happy Creation, Play the Development!
  • 21. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 21 Happy Creation, Play the Development! ローカル変数定義がめんどい! var Foo: Integer; begin // こんな風に書きたい! var Foo: Integer = 0; end;
  • 22. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 22 Happy Creation, Play the Development!
  • 23. Copyright ? 2014 SERIALGAMES inc. All Rights Reserved. PAGE 23 Happy Creation, Play the Development! 名前が揺らいでる! Object Pascal ↓ Delphi Language ↓ Object Pascal 戻ったwww