SlideShare uma empresa Scribd logo
1 de 60
Baixar para ler offline
これから開発はじめる人向け
               Tips50
               @tmokita




12年6月30日土曜日
•   自己紹介




12年6月30日土曜日
•
              沖田知彦@tmokita

              • (株)フォーユー

              • プログラマ募集中

12年6月30日土曜日
•   関わったアプリ




12年6月30日土曜日
•   NDA!NDA!




12年6月30日土曜日
• 思いつくままに書いていったので
               気になったところはメモするなり
               呟くなりなんなりしてください。




12年6月30日土曜日
• あくまでもこれは「自分流」の
               方法ですので他にも良い方法や
               「自分はこうやってるよー」と
               いうのがある場合はツッコんで
               くれるとうれしいです。




12年6月30日土曜日
•NSLogを無効にする

               • #define NSLog(...)



12年6月30日土曜日
• NSLogで
               関数名を出力する

              • NSLog("%s", __func__);

12年6月30日土曜日
•   コンパイルの時点で
                  エラーやワーニングを
                  出したい

              •   #error #warning を使う


12年6月30日土曜日
•CGRectを文字列にする

               • NSStringFromCGRect



12年6月30日土曜日
•文字列からCGRectを作る

               • CGRectFromNSString



12年6月30日土曜日
•ObjectをNSDataにする

               • [NSKeyedArchiver
                archivedDataWithRootObject
                :object];


12年6月30日土曜日
•NSDataからObjectにする

               • [NSKeyedUnarchiver
                unarchiveObjectWithData:
                data]


12年6月30日土曜日
• 全てのクラスから
              共通のデータを使いたい

              • シングルトンを使う

12年6月30日土曜日
•   非同期で
                  通信結果を受け取る

              •   NSNotificationCenter

               • シングルトンクラスと
                   あわせてつかう

12年6月30日土曜日
•   Retina/非Retinaによって
                  描画速度が変わらないよ
                  うにする

              • UIViewのアニメーション
                  view.Transformを使う

12年6月30日土曜日
•   iOS5以前でオリジナルの
                  タブバーを作る

              •   TabBarにViewを被せて
                  TabBarContollerのメソッ
                  ドを呼ぶ

12年6月30日土曜日
•   releaseとかを
                  出来るだけ考えたくない

              •   @property
                  (nonatomic,retain)

                  •   xxx.obj = [[[AAA alloc] init] autorelease];

                  •   xxx.obj = nil;



12年6月30日土曜日
•   delegateとして使うオブ
                  ジェクト

              •   @property
                  (nonatomic,assign)

                  •   循環参照を防ぐため

12年6月30日土曜日
•   WebViewの
                  大きさを知りたい

              •   WebView.scrollView
                  .contentSize (iOS5)


12年6月30日土曜日
•   縦横でレイアウトが違う
                  Viewを使う

              •   Viewを二種類用意して
                  WillRoatteで切り替える


12年6月30日土曜日
• 定形文字列から数字など
              を抜き取る

              • C の sscanf

12年6月30日土曜日
•   自前でカメラロールの
                  サムネイル画面をつくる

              • AssetsLibrary
              • TableViewの1セルに
                  4つImageViewを入れる



12年6月30日土曜日
• 複数のAlertViewを
               一つのDelegateで判別する

              • tagを使う

12年6月30日土曜日
• OAuth関連の
               通信処理をしたい

              • OAuthComsumer

12年6月30日土曜日
•Facebookと連携させたい

               • FacebookSDK



12年6月30日土曜日
•Flickrと連携させたい

               • ObjectiveFlckr



12年6月30日土曜日
•便利な通信系のラッパー

               • ASIHTTPRequest



12年6月30日土曜日
•JSONを使いたい

               • SBJSON



12年6月30日土曜日
•2Dゲームを作りたい

               • Cocos2D



12年6月30日土曜日
•サウンド処理をしたい

               • AudioToolBox



12年6月30日土曜日
• サウンド処理をしたい
              (2)

              • CocosDenshion

12年6月30日土曜日
•SQLiteを簡単に使いたい

               • FMDB



12年6月30日土曜日
•通信状況を知りたい

               • ReachAbility



12年6月30日土曜日
• 非同期で
              画像をダウンロード

              • ImageStore

12年6月30日土曜日
• シミュレータで
              通信速度制限

              • NetworkLinkConditoner

12年6月30日土曜日
• CSVをPLISTにする
               • DataFileConverter
                (MacAppStore)



12年6月30日土曜日
• delegateメソッドを書く時
               • xcodeのスニペットに
               登録しておく


12年6月30日土曜日
•GitのGUIクライアント

               • Tower



12年6月30日土曜日
•SVNのGUIクライアント

               • Versions



12年6月30日土曜日
• テスト用データに
              URLでアクセス

              • DropBox

12年6月30日土曜日
• ベータ版を簡単に大勢に
              配布する

              • TestFlight

12年6月30日土曜日
•SQLiteのデータ確認

               • Lita



12年6月30日土曜日
• 自前カメラを作りたい
               • AVFoundation、
               AVCapture


12年6月30日土曜日
•アプリの動画を撮りたい

               • Reflection



12年6月30日土曜日
•   シミュレータのデータを
                  取りたい

              •   ~/Library/Application
                  Support/iPhone Simulator


12年6月30日土曜日
• Unityで加速度センサーを
              使いたい

              • UnityRemote

12年6月30日土曜日
• 共通して参照できる
              データ保存場所

              • [[UIApplication sharedApplication]
                delegate]




12年6月30日土曜日
• 確立が一定な乱数
               • NSArrayに
               予め入れておく


12年6月30日土曜日
•   簡単写真拡大View

              • UIScrollViewにImageViewを突っ込む



12年6月30日土曜日
•   TableViewCellの
                  カスタマイズ

              • Cell.AccessoryViewには
                   Switchとか入れられる




12年6月30日土曜日
•多言語対応

               • NSLocalizedString



12年6月30日土曜日
• UITextViewで
               リンクを張る

               • dataDetectorTypes

12年6月30日土曜日
•   Pushをつかいたい

              • Pushのサーバーを
                  提供しているサービスをつかう
                  Urbanairship, Parse ...




12年6月30日土曜日
•   引っ張って更新

              • EGORefreshTableHeaderView



12年6月30日土曜日
•
              さいごに

               • 恥ずかしがらずに聞く



12年6月30日土曜日
• iOS4プログラミングブック
              • iOS5プログラミングブック
               • オススメ!(by Seasons)


12年6月30日土曜日
• ARC使え(by @akisutesama)




12年6月30日土曜日
•   ありがとうございました




12年6月30日土曜日

Mais conteúdo relacionado

Destaque (11)

Hurdles for the india a case study
Hurdles for the india  a case studyHurdles for the india  a case study
Hurdles for the india a case study
 
Stonehaven Energy Resources
Stonehaven Energy ResourcesStonehaven Energy Resources
Stonehaven Energy Resources
 
Wtidev 0430 tmoktia
Wtidev 0430 tmoktiaWtidev 0430 tmoktia
Wtidev 0430 tmoktia
 
Wtidev0227 tmokita
Wtidev0227 tmokitaWtidev0227 tmokita
Wtidev0227 tmokita
 
Marteokiko
MarteokikoMarteokiko
Marteokiko
 
Team building a case study
Team building a case studyTeam building a case study
Team building a case study
 
Design of super elevation :- A case study
Design of super elevation :- A case studyDesign of super elevation :- A case study
Design of super elevation :- A case study
 
Extraction of developed pillars by opencast mine: acase study
Extraction of developed pillars by opencast mine:   acase studyExtraction of developed pillars by opencast mine:   acase study
Extraction of developed pillars by opencast mine: acase study
 
Highwall mining – a new approach in india
Highwall mining – a new approach in indiaHighwall mining – a new approach in india
Highwall mining – a new approach in india
 
New approch towards support desugn
New approch towards support desugnNew approch towards support desugn
New approch towards support desugn
 
Pillar design
Pillar designPillar design
Pillar design
 

Saitama beginner tips50