タグ

ブックマーク / ninjinkun.hatenablog.com (6)

  • スマートフォンアプリ開発における共創的な開発チーム - ninjinkun's diary

    先日、一休.comを運営する株式会社一休の社内テックトークで『スマートフォンアプリ開発における共創的な開発チーム』というタイトルでお話しさせていただいた。元々、ずっと考えてきたエンジニアとデザイナーのコラボレーションというテーマを言語化してみたいと思っていたのだが、そこに丁度Fablicでの現場の体験を話して欲しいという依頼があったので、絡めた内容でスライドを作った。 しかしこの言語化する作業が想像以上に大変で、週末を二回潰して準備をした。結局今まで勉強したポインタになる書籍を紹介することで、なんとなくバックグラウンドについては察してもらうというスタイルになった。 タイトルも迷って何パターンか書いてみたのだが、最終的には「共創的」という耳慣れない言葉を採用した。当は「Collavorativeな開発チームでのアプリエンジニアの役割」とかの方が言いたいことに近い気もするが、これはこれで何だ

    スマートフォンアプリ開発における共創的な開発チーム - ninjinkun's diary
  • アプリ開発と状態遷移の管理 - ninjinkun's diary

    このエントリーは読者としてスマートフォンアプリ開発者とWebフロントエンドエンジニアを想定して書いています。 CROSS2016に出るので、最近の自分の考えを整理しておく。 最近ReduxSwift実装であるReSwiftを使って開発している。使った感想なども最後の部分に書いたけれど、このエントリーの題はアプリの状態管理の話。 アプリは大きなシングルトン iOS、Android共にアプリを実装しようと思うと大抵シングルトンが必要になる。各ViewController内をまたがってデータを共有したいというユースケースが多いからだ。例えば ユーザーのログイン情報を集約するUserManager コンテンツへのいいね情報を集めるLikesManager ブックマーク情報を集めるBookmarkManager などなど。もちろんアプリの内容によってこれらの顔ぶれは違ってくると思うけれど、大抵U

    アプリ開発と状態遷移の管理 - ninjinkun's diary
  • スマートフォンアプリでリアクティブプログラミングをしているが、Promiseとデータバインディングとして使っている - ninjinkun's diary

    このところ、複数の人からリアクティブプログラミング(RP)ってつまり何なんですかと聞かれることがあった。そのたびに非同期データストリームが…みたいな説明をしていたのだが、たいてい双方納得した感じにはならなくて、まあ難しいっすね…という感じで終わってしまっていた。 iOSとAndroidでの用途 自分は理論より実践からしか考えられないタイプなので、もっと現場寄りの説明ができないか常々考えていた。そこで自分がiOSとAndroidアプリを実装する際に使っているReactiveCocoaとRxJavaの用途を考えてみたところ Promise(の高機能版) 複数のAPIコールを連鎖させたい場合にコールバックヘルを避けたい データバインディング(の高機能版) Modelの変更とViewの変更を同期したい の2つがメインだった。 この2つはRPライブラリを入れなくても実装できる。JavaScript

    スマートフォンアプリでリアクティブプログラミングをしているが、Promiseとデータバインディングとして使っている - ninjinkun's diary
  • 【翻訳】あなたが求めていたリアクティブプログラミング入門 - ninjinkun's diary

    original: The introduction to Reactive Programming you've been missing (by @andrestaltz) (translated by @ninjinkun, reviewed by @ma0e) あなたはリアクティブプログラミングと呼ばれる新しい方法が気になっている。 勉強するのは大変で、良い教材がないのでさらに難しい。私が勉強を始めたときは、まずチュートリアルを探した。見つけたのは一握りの実践的なガイドだけ、しかもそれらは表面をなぞっているだけで、リアクティブプログラミングのアーキテクチャ全体像を構築しようとしてはいなかった。ある関数を理解するのに、ライブラリのドキュメントは役に立たないことがある。 これを見て欲しい。 Rx.Observable.prototype.flatMapLatest(selector,

    【翻訳】あなたが求めていたリアクティブプログラミング入門 - ninjinkun's diary
  • iOSアプリケーション開発のコードレビューで気をつけていること - ninjinkun's diary

    日常的なコードレビューで気をつけていることリストです。GitHub会議(仮)で発表しようと思っていたのですが、日程の都合で参加できないので、書きためておいたメモを公開します。またどこかで発表するかもしれません。 AutoLayoutにできないか AutoLayout化した方がすっきりしそうならAutoLayout化する AutoLayout化できそうなものでやっていないものは、なぜコードで実装したか質問する 例えばUITableViewCell ちゃんと理由があれば別に良い。コードの方が良いことも多い UIAppearanceで解決できないか 各クラスの中にスタイルの指定が入るより、UIAppearanceでスタイル指定を分離して別クラスに書く方がデザイナーも弄りやすくて良い 3.5インチ端末が考慮されているか レイアウトが決め打ちだとここで問題が出ることが多い 着信ステータスバーが考慮さ

    iOSアプリケーション開発のコードレビューで気をつけていること - ninjinkun's diary
  • Facebook iOSアプリのようにスクロール時にフルスクリーン表示を行うiOSライブラリを作りました - ninjinkun's diary

    明けましておめでとうございます。神トラ2クリアしました。 Facebook iOS Appのように、一覧をスクロールした際にUINavigationBarやUIToolbarを隠してフルスクリーン表示をするためのライブラリを作りました。 https://github.com/ninjinkun/NJKScrollFullScreen スクロールをフックしてフルスクリーン化をdelegateで通知する部分と、フルスクリーン時の動きを定義する部分を分離した設計になっています。 同じようにフルスクリーン化を行うYIFullScreenScrollというライブラリがあったのですが、UINavigationBarの移動などフルスクリーンの動きの部分が一体になっており、Facebook appぽい挙動にカスタマイズし辛かったので、動きを分離した設計のライブラリを別に作ることにしました。all-in-o

    Facebook iOSアプリのようにスクロール時にフルスクリーン表示を行うiOSライブラリを作りました - ninjinkun's diary
    monyurin
    monyurin 2014/01/04
  • 1