あっという間に4月も中盤、「新人なら知っておきたい10の事」という感じのタイトルで長文を書きたい@yimajoです。
毎月開催場所を色々な会社に変えつつ行われているiOS/Android勉強会のpotatotipsに参加してきました。
今回はサイバーエージェント社での開催で渋谷のマークシティ17階でのpotatotipsでした。
Glide信者から見たfacebook/fresco [Android]
発表は@wasabeefさん
- frescoは画像管理やってくれる
- PicasoとかGlideとか意味合い近い
- Picasoとかと違ってViewを持ってる
- MVCのVの部分をライブラリに組み込んでる
- XMLとかコードで丸い画像にできたり
- 読み込み終了とかできる
- WebPもサポートしてる
- CAのサービスもWebPを使い始めた
- 画像加工をするためのコールバックもある
- volleyとかOKHttpで取得したキャッシュを利用できる
今からでも間に合うApple Watch用アプリ申請で気をつけること [iOS]
発表は@kitasukeさん。
- Apple Watchから本体のアプリをバックグラウンドで立ち上げられる
- NMWorlhole
- Apple Watchのスクリーンがオンじゃないといけない制限がある
- しかしApple Watchはスクリーンオフになりやすい状況をはらんでいる
- UIはグループでまとめられるのでそれ単位で表示/非表示切り替えの管理したらいいのかも
リリース前の動作チェックってしてます?少しだけでも楽にしたい今日このごろ [Android]
発表は@__chocomelonさん
- まばらにリリースをしてしまっていた
- 隔週一回のリリースにしチェックリストを作成
- とはいえこれは手動でやることが多い
- spoonというライブラリ
- テスト時にスクリーンショット取れてHTMLが出力されて分かりやすい
- スクリーンショットが通信中画面とかになる
- 雑にwaitを入れて解決
- 雑なテストで気持ち楽になった
Lazy Evaluation in Swift [iOS]
発表は@nghialvさん
- 必要なときに評価したい
- call-by-name
- closureを使う
- call-by-need
- propertyにlazy使う
- call-by-name
ユーザーを待たせないために [Android]
- 個人でTwitCalというアプリを作った
- カレンダーで自分のつぶやきを遡れるアプリ
- Twitter APIの制約がきつくて時間かかるので高速化
- RealmでDBアクセス高速化(insert速くなった)
- SQLite: 255,587 msec
- Realm: 16,906 msec
- データを処理する間表示も更新しておく
- Coach mark表示させてその裏で処理
- RealmでDBアクセス高速化(insert速くなった)
アプリにおける人力ぽちぽちテストの効率化 [iOS]
発表は@shobyさん
- 人力でポチポチテスト
- 属人性が高い
- 解決法:みんなでやる
- お祭り感を出す
- 使い勝手の問題にも気づく
- 時間を区切ろう
- だらだらしない
- 同じ箇所をみんなでやる
- お祭り感を出す
- ポチポチはつらいよ
- 見つかったバグは直さないとテストしてくれた人がモチベーション落ちる
- Design Sprintというプロトタイプ手法の良い所を取り入れている
Model View Presenter for Android [Android]
発表@kgmyshinさん
- Modelにはプレゼンターからアクセスする
- なぜMVP?
- activityとfragmentって役割分担難しい
- MVPなら解消
- activityがViewに専念(controllerを取り除く)
- activityとfragmentって役割分担難しい
Facebook PaperのTop画面かっこいいなあと思っていたらいつの間にか男坂を登っていた [iOS]
発表は@grgr56さん
- UICollectionViewでPaperっぽい奴作る
- アニメーションがおかしい
- ジェスチャーが受け入れられない時があった
- 自前で一部アニメーションをやる
- AsyncDisplayKit v1.1からASCollectionViewがある
- 先読みでロードしてくれる
はじめてのAndroidStudioプラグイン [Android]
発表は@konifarさん
- マテリアルアイコンを配置できるプラグインつくった
- 作り方
- IntelliJ(Android StudioはJava6が必要)
- Actionを作っていく
- コツ
- Action Group
- 公開したらいい感じのプルリクエストが来た
デモ用にデスクトップを表示されてたんですが一番前の席で見てたので色々見れてよかったです。
デスクトップにshuzo.jpgがある #potatotips
— yoshinori.imajo (@yimajo) 2015, 4月 15
#potatotips shuzo.jpg pic.twitter.com/6EaIRAiqev
— yoshinori.imajo (@yimajo) 2015, 4月 15
デスクトップにも面白を仕込むとは流石です
WKWebViewをシュッと使う [iOS]
発表は@yashiganiさん
- WKWebView使ってるけど不満がある
- ワークアラウンドで解決
- WKWebViewってOSXとわりと共通
- プロパティ増えてKVO出来るようになった
- StoryboardでWKWebView置けない
- WebKitPlus作った
- ZenWebViewController
- Zen = "禅" (京都っぽい)
Dagger 2.0 has been released! [Android]
発表は@ogaclejapanさん
- DaggerとはDIフレームワーク
- Daggerが2.0になった
- 1.0から2.0に置き換えた
- リフレクションなくなったりデバッグしやすい
- 並列にコンポーネントを取り込む
最新iOSアプリ開発超必殺技 [iOS]
発表は@cockscombさん
- アンラップハリケーン
- toIntで配列を返す際にIntの45のみ欲しいときとか
- 真空オペレーション切り
- かっこよくcompletionBlockを使える
- Executingのfinishとかをオーバーライドしている
- イニュメレイトバスター
- while使ってた
- for in使えるようになった
- Swift 1.2で必要なくなった
- for in使えるようになった
- while使ってた
- シャドウアクティビティ
- UIActivityItemSourceを実装する
- オーサムファンクションコール
- クラスメソッドでインスタンスを渡してインスタンスメソッドを実行できる
Custom View Tips [Android]
発表は@hosokawaさん
http://hosokawa0825.github.io/slides/CustomViewTips/#/
- 複数のViewを使うときはIDでなくtagを使う
- Custom ViewのonSave/RestoreInstanceStateを簡潔に実装する
ObjC→Swift自動変換の野望 [iOS]
発表は@taketo1024さん
- ANTLRっていうパーサージェネレータ
- 文法ファイルをinputにしてパーサー作る
- Objective-Cの文法がすでにある
- パーサーが出来たので後はSwiftに変換するコードをScalaで書く
- ビジターパターン
- 出会ったノードに対する処理を書く
- ビジターパターン
Trying Kotlin and Rx [Android]
発表は@dageziさん
http://dagezi.github.io/potatotips16/#/
- Kotlin,RX,Anko
- Kotlinやってみたかった
- Anko
- 特徴
- Kotlinと同じくJetBreins社が作った
- typesafe
- Jake神いまのころ傍観
- ListAdapter使い方が分からなかった
- 特徴
Google Tag Managerを触ってみた [iOS]
発表は@dekatotoroさん
- 設定に癖がある
- アカウントの作成から1つずつ説明
もっと知りたい人用リンク
togetter: 2015/4/15 #potatotips (iOS/Android開発Tips共有会)第16回
http://togetter.com/li/808878
iOSとAndroidのtipsを語り合う #potatotips 第16回に行ってきた時のまとめ
http://blog.mogmet.com/potatotips16-android-ios-tips/
さいごに
毎回違う会社で開催される #potatotipsですが、今年は9月まで開催場所が決まってるみたいです。もし、自社でもやってみたいという方は @tokoromさんに連絡すれば良いのではないかと思います。