Download free for 30 days
Sign in
Upload
Language (EN)
Support
Business
Mobile
Social Media
Marketing
Technology
Art & Photos
Career
Design
Education
Presentations & Public Speaking
Government & Nonprofit
Healthcare
Internet
Law
Leadership & Management
Automotive
Engineering
Software
Recruiting & HR
Retail
Sales
Services
Science
Small Business & Entrepreneurship
Food
Environment
Economy & Finance
Data & Analytics
Investor Relations
Sports
Spiritual
News & Politics
Travel
Self Improvement
Real Estate
Entertainment & Humor
Health & Medicine
Devices & Hardware
Lifestyle
Change Language
Language
English
Español
Português
Français
Deutsche
Cancel
Save
EN
Uploaded by
Takeshi Fukasawa
6,483 views
[iOS 8] 測れる!パフォーマンス
Xcode 6 から追加されたパフォーマンス測定の機能を紹介します。
Software
◦
Read more
4
Save
Share
Embed
Embed presentation
Download
Download to read offline
1
/ 23
2
/ 23
3
/ 23
4
/ 23
5
/ 23
6
/ 23
7
/ 23
8
/ 23
9
/ 23
10
/ 23
11
/ 23
12
/ 23
13
/ 23
14
/ 23
15
/ 23
16
/ 23
17
/ 23
18
/ 23
19
/ 23
20
/ 23
21
/ 23
22
/ 23
23
/ 23
More Related Content
PDF
新しいTest flightの使い方(20140918)
by
Ichiro Yamamoto
PDF
20140918 i os8勉強会_performance
by
Takeshi Fukasawa
PDF
ぼくのかんがえた iOSテスト戦略
by
Naoki Umehara
PDF
モックライブラリを使ってきちんとユニットテストする #Objective-C
by
Shoichi Matsuda
PDF
第4回勉強会 単体テストのすすめ
by
hakoika-itwg
KEY
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
by
Shuji Watanabe
PPTX
C++でテスト駆動開発
by
Akineko Shimizu
PDF
はこだてIKA 第4回勉強会 単体テスト
by
Seiji KOMATSU
新しいTest flightの使い方(20140918)
by
Ichiro Yamamoto
20140918 i os8勉強会_performance
by
Takeshi Fukasawa
ぼくのかんがえた iOSテスト戦略
by
Naoki Umehara
モックライブラリを使ってきちんとユニットテストする #Objective-C
by
Shoichi Matsuda
第4回勉強会 単体テストのすすめ
by
hakoika-itwg
JUnit実践入門 xUnitTestPatternsで学ぶユニットテスト
by
Shuji Watanabe
C++でテスト駆動開発
by
Akineko Shimizu
はこだてIKA 第4回勉強会 単体テスト
by
Seiji KOMATSU
Similar to [iOS 8] 測れる!パフォーマンス
PDF
Tdd
by
Tsukasa Oishi
PPT
ユニットテスト 1日目
by
Yoshiki Shibukawa
PDF
エクストリームエンジニア4
by
T-arts
PPTX
テストスキルを測ってみよう
by
Akira Ikeda
PDF
C# から java へのプログラム移植で体験したtddの効果は?
by
Shinichi Hirauchi
PDF
iOSアプリケーションの Unit Test
by
Katsumi Kishikawa
PDF
テストコードの定型化
by
Shinichi Hirauchi
PDF
テストファースト、自動テストを導入するという事について(@社内勉強会)
by
kyon mm
KEY
テストコードのリファクタリング
by
Shuji Watanabe
PPT
20150703 『断捨離』TDDとは
by
nackypon
KEY
Unit testで定時帰宅!
by
Funato Takashi
Tdd
by
Tsukasa Oishi
ユニットテスト 1日目
by
Yoshiki Shibukawa
エクストリームエンジニア4
by
T-arts
テストスキルを測ってみよう
by
Akira Ikeda
C# から java へのプログラム移植で体験したtddの効果は?
by
Shinichi Hirauchi
iOSアプリケーションの Unit Test
by
Katsumi Kishikawa
テストコードの定型化
by
Shinichi Hirauchi
テストファースト、自動テストを導入するという事について(@社内勉強会)
by
kyon mm
テストコードのリファクタリング
by
Shuji Watanabe
20150703 『断捨離』TDDとは
by
nackypon
Unit testで定時帰宅!
by
Funato Takashi
[iOS 8] 測れる!パフォーマンス
1.
測れる!パフォーマンス Copyright ©
Classmethod, Inc. 〜~ Xcode 6 〜~
2.
• 名前:深澤 豪(ふかさわ
たけし) • 所属:iPhoneアプリサービス事業部 • 星座:やぎ座 AB型 • 役割:プロジェクトマネージャー • ⽬目標:お客様と開発者の間に薄く⼊入って、 お互いが満⾜足できるものを届ける Copyright © Classmethod, Inc. ⾃自⼰己紹介
3.
※ Botsの話しをするつもりでしたが、YosemiteとServer 4.0
は未だリリースされない事に気づいたので、やめました。 Copyright © Classmethod, Inc. ごめんなさい。
4.
重い処理理ってなんじゃろ 例例えば… ・⼤大量量データのソートなどの処理理
・画像などのエンコード/デコード ・暗号化処理理 Copyright © Classmethod, Inc.
5.
⾃自動テストで数値化して 判定できる仕組みができた! Copyright
© Classmethod, Inc. 重い処理理を
6.
Testクラスのself.measureBlock(){} 内が計測の対象になる。 Copyright
© Classmethod, Inc. 何処に書くか func testPerformanceExample() { // This is an example of a performance test case. self.measureBlock() { // Put the code you want to measure the time of here. } }
7.
今回の計測されるFunction class Logger
{ let max = 10000 func writeNSLog(){ for var i = 0; i < max; i++ { NSLog("%d",i) } } func writePrintln(){ for var i = 0; i < max; i++ { println(NSDate.date().description + " " + String(i)) } } NSLogとPrintlnで1万回の書き出しを比較 Copyright © Classmethod, Inc.
8.
今回のテストクラス import XCTest
class BotsTests: XCTestCase { … func testLoggerPrintln() { let logger = Logger() self.measureBlock() { logger.writePrintln() } } func testLoggerNSLog() { let logger = Logger() self.measureBlock() { logger.writeNSLog() } NSLog} とPrintlnで1万回の書き出しを比較 } Copyright © Classmethod, Inc.
9.
テストの実⾏行行⽅方法 ユニットテストと同様にTest Navigatorや⌘Uで
実行可能。 Copyright © Classmethod, Inc.
10.
どう計測しているか • 10回計測する。
• 平均と標準偏差を出す。 Copyright © Classmethod, Inc. 10回計測している
11.
何を計測しているか • 10回計測する。
• 平均と標準偏差を出す。 Copyright © Classmethod, Inc. Result:結果 Average: 処理理時間の平均値 Baseline: 評価の基準となる値 Max STDDEV: 標準偏差の最⼤大値
12.
何を計測しているか • 10回計測する。
• 平均と標準偏差を出す。 Copyright © Classmethod, Inc. 1回⽬目の処理理時間は 3.006秒。 平均値が2.09秒なので 43.48%遅い。
13.
標準偏差って何? どれだけデータがバラけているかの指標。 例例えば”10%”なら、ばらつきの平均は平均値
(Avarage)から⾒見見て10%という意味。 Standard Deviation Copyright © Classmethod, Inc.
14.
Copyright © Classmethod,
Inc. 評価させる⽅方法 “No Baseline” と表⽰示され ているので、”Set Baseline” ボタンを押す と”Baseline”に計測した平 均値が⼊入る。
15.
Copyright © Classmethod,
Inc. 評価させる⽅方法 “No Baseline” と表⽰示され ているので、”Set Baseline” ボタンを押す と”Baseline”に計測した平 均値が⼊入る。
16.
Copyright © Classmethod,
Inc. 評価のされ⽅方 “Baseline”を設定した後に 再度度計測すると”Result”に 値が表⽰示される。 何か評価された!
17.
Result: 20.788% better
(±17%) Baselineよりも 20.788% ⾼高速だった。 また、標準偏差は±17%だった。 Copyright © Classmethod, Inc. 評価のされ⽅方
18.
評価のされ⽅方 テスト成功の条件 •
Max STDDEV(標準偏差の最⼤大値) を超えない = ばらつきの⼤大きいテストは失敗 Copyright © Classmethod, Inc. AND • Baseline(基準値)より早い時間で処理理が終わる = 遅いと失敗
19.
Copyright © Classmethod,
Inc. 注意点 シミュレータ/実機の種類によって結果は異異なるの で、ターゲットとする実機で測定した⽅方が良良い。
20.
NSLogとprintlnでそれぞれ1万回の実行結果を計 測してみました。 println(i)
-> 0.35秒 NSLog(“%d”,i) → 2.3秒 Copyright © Classmethod, Inc. ちなみに println だけなら7倍位はやい。
21.
• パフォーマンスを計測するって楽しい。 •
Botsでも回せます。 • 実機で実⾏行行するように。 Copyright © Classmethod, Inc. まとめ
22.
ご静聴、ありがとうございました。 Copyright ©
Classmethod, Inc.
Download