タグ

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

  • アプリ開発と状態遷移の管理 - ninjinkun's diary

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

    アプリ開発と状態遷移の管理 - ninjinkun's diary
  • 『チームが機能するとはどういうことか』を読んだ - ninjinkun's diary

    Incrementsの知人が社内で輪講していると言っていて、気になっていたので読んでみた。創造的なチームを作るために気をつけることと、そのために必要になるリーダーシップについて書かれているとのこと。 現代のチームが固定されたメンバー制から専門集団の一時的な集まりになっている(例えば病院、災害救助、スタートアップなど)ことから、チーム構造からチームワーク自体へ注目するという意味で動詞のチーミングが提唱される。 心理的安全 自立的かつ創造的なチームのキーになるのが心理的安全である。 心理的に安全な環境では、何かミスをしても、そのためにほかの人から罰せられたり評価を下げられたりすることはないと思える。手助けや情報を求めても、不快に思われたり恥をかかされたりすることはない、とも思える。そうした信念は、人々が互いに信頼し、尊敬し合っているときに生まれ、それによって、このチームでははっきり意見を言っ

    『チームが機能するとはどういうことか』を読んだ - ninjinkun's diary
  • Inspired: 顧客の心を捉える製品の創り方を読んだ - ninjinkun's diary

    プロダクトマネージャーの職能+ユーザー体験設計のです(と解釈しています)。 最近Rebuild: 98: Superhumans Wanted (Naoya Ito)やエンジニアからみた良いプロダクトマネージャとは? - サンフランシスコではたらくソフトウェアエンジニア - Higepon’s blogで話題のプロダクトマネージャーに興味があって、関連しそうなを読みたいと言っていたら、知人がこのを紹介してくれました。 Netscapeなどでプログラマーをしていたバックグラウンドを持ち、eBayなど複数の会社でプロダクトマネージャをしていた経験を持つ著者がプロダクトマネージャーの職能について語るで、以下のような内用が含まれています。 プロダクトマネージャーとは何か どうやって他の職種と連携して働くか どうやって製品を見つけ出すか どうやってユーザー体験を作っていくか 自分にとっては、

    Inspired: 顧客の心を捉える製品の創り方を読んだ - ninjinkun's diary
  • Making It Right: Product Management For A Startup World を読んだ - ninjinkun's diary

    Rebuild: 98で紹介されていたので、英語だけどがんばって読んでみた。Inspiredと同じ方向性のプロダクトマネジメント。違う人が同じ事柄について書いているという印象。しかし少しずつ違う視点が入っていて、プロダクトマネージャーの役割が立体的に見えるという意味で両方読む価値はあると思う(もう読んでしまったのでこう言うしかない)。 英語はかなり平易。使われている語彙がだいぶ簡単なので、他の英語に比べて読みやすいと感じる。それでも自分はちまちま読んで一ヶ月くらいかかった。 話題が割と新しめ。Google Buzzと写真共有アプリのColor(懐かしい!)が失敗した話が導入部分。 またInspiredに比べてスタートアップの文脈が強かったり、初期のビジネス的成功という点に重点が置かれている気がする。 以下、自分が線を引いた部分とコメント。引用の下の日語は拙訳。 Chapter 1:

    Making It Right: Product Management For A Startup World を読んだ - 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
    tasanobu
    tasanobu 2015/08/15
  • iOS組み込みのキャッシュモジュールNSCacheについて発表しました - ninjinkun's diary

    NSCacheというキャッシュモジュールについて第43回Cocoa関西で発表してきました。 NSCacheの特徴 スレッドセーフ NSDictionaryのように手動でロックする必要がない 格納オブジェクトの上限を決められる 溢れたら自動破棄 iOSのようなメモリ制約の厳しい環境に最適 NSDictionaryに似たインターフェイス Mac OS 10.6 / iOS 4.0以上で使える 具体例としては、ダウンロードした画像をオンメモリにキャッシュする際等にとても有用だと思います。同じような機能を提供してくれるOSSのモジュールは見たことがあるのですが(例えばnimbusに含まれているNIMemoryCache)こちらはOS組み込みなので手軽に使えます。 発表資料 サンプルコード Twitter及びInstagramの画像をロードしてデモするサンプルコードは以下です。それぞれの機能を動かす

    iOS組み込みのキャッシュモジュールNSCacheについて発表しました - ninjinkun's diary
  • Android SDKのソースコードを読みながら開発する - ninjinkun's diary

    この記事はAndroid Advent Calendar 2014の14日目です。 Androidアプリケーション開発をiOSのそれと比べると、SDKのソースコードが公開されていることがアドバンテージの一つになると思います。自分は半年ほど前から、開発時に時々SDKのソースコードを参照するようになり、それからSDKへの理解が深まって、開発効率が高まったと感じています。 この記事では、自分がSDKのソースコードを読む際に使っている方法をまとめます。たぶんよく知られている方法ばかりです。 1. ブラウザで見る GrepCode 特定のクラス名でぐぐっていたりすると、GrepCode というサイトが時々引っかかります。Javaのソースコードを集めて検索可能にしてくれているサイトですが、ちょっとSDKのコードを読みたいというときは、このサイトで読むのがおすすめです。 Android SDKの各バージ

    Android SDKのソースコードを読みながら開発する - ninjinkun's diary
  • ReactiveCocoa勉強会関西を開催しました #rac_kansai - ninjinkun's diary

    先週の土曜日にReactiveCocoa (以下RAC)というOSX / iOSで使うリアクティブプログラミング(RP)フレームワークの勉強会を開催しました。 当日の資料 当日の資料のうち、見つけられたものは以下にまとめました。 はじめてのReacitveCocoa @tinpayさん はじめてのReactiveCocoa from Shohei Fukui https://github.com/tinpay/RACWarikan ReactiveCocoa勉強会に参加してきました #rac_kansai . ゆるやかなReactiveCocoaの導入 @ninjinkun 実践!Twitter API+ReactiveCocoa @atsusy さん var RAC3 = ReactiveCocoa + Swift @ikesyo さん var RAC3 = ReactiveCocoa

    ReactiveCocoa勉強会関西を開催しました #rac_kansai - ninjinkun's diary
  • チームで読みたいプロトタイピング本『プロトタイピング実践ガイド』 - ninjinkun's diary

    プロトタイピング実践ガイド スマホアプリの効率的なデザイン手法 作者: 深津貴之,荻野博章出版社/メーカー: インプレス発売日: 2014/08/08メディア: Kindle版この商品を含むブログを見る スマートフォンのプロトタイピングを丁寧に解説した書籍、 プロトタイピング実践ガイド スマホアプリの効率的なデザイン手法 を読みました。fladdictさんとフェンリルの荻野さんの共著ということで、期待が高まります。 自分は昔fladdictさんがペーパープロトタイピングを実践されてると聞いてから、書籍 ペーパープロトタイピング 最適なユーザインタフェースを効率よくデザインする *1を読んだり、fladdictさんの資料を参考にしたりしながら、プロトタイピングを仕事に取り入れてきた経緯があります。その辺りの見様見真似でやってきた手法が、書では整理されて解説されています。まさに自分が欲しかっ

    チームで読みたいプロトタイピング本『プロトタイピング実践ガイド』 - ninjinkun's diary
  • iOSアプリケーション開発のコードレビューで気をつけていること - ninjinkun's diary

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

    iOSアプリケーション開発のコードレビューで気をつけていること - ninjinkun's diary
  • はてなを退職しました - ninjinkun's diary

    昨年末に株式会社はてな退職しました。2008年の京都移転直後のインターンに参加し、2009年に新卒入社したので、5年くらいはてなに関わっていたことになります。 このエントリでは、自分がはてなでやったことと、エンジニアとしてのロールモデルを持つことができたこと、コミュニティ活動ついて、そして今後について書きます。 はてなでやったこと 最近ではスマートフォン系の仕事が多かったのですが、入社当初は運用を担当していました。たくさんのサービスを担当しているチームで、ここで様々なコードに触れた経験が今振り返ってみるとすごく良かったと思います。とにかくコードをたくさん読みました。 同期入社には既に実績がある人が何人もいて焦る一方、自分はテストを書いているつもりがDBのデータを消していたり、社内のメールを止めたりとひどいミスを連発していて、今思い出しても冷や汗が出ます。 その後 はてなキーワードフィーチ

    はてなを退職しました - ninjinkun's diary
    tasanobu
    tasanobu 2014/01/06
  • Objective-Cを書く人も書かない人も必読『iPhoneアプリ設計の極意』 - ninjinkun's diary

    @fladdictさんが監訳されたことで話題の、オライリーiPhoneアプリ設計の極意 ―思わずタップしたくなるアプリのデザイン』、早速会社で購入してもらって読みました。読み終わってまず思ったのは、これはiPhone開発に携わるすべての人に必読のになるだろうということです。エンジニア、デザイナー、企画者と分担が分かれている場合は、全員が読むといいのではないでしょうか。このiPhone開発に必要な共通言語を提供してくれます。それも、コードを使わずに。 書から得られる内容としては大きくふたつあると思います。ひとつはiPhone開発のプロセスを解説書としての側面。もうひとつはiPhoneUIカタログとしての側面です。 アプリ開発プロセスの解説書 このに書かれている開発プロセスは、ベストプラクティスと言えるものになっていると思います。ユーザーニーズを探ること、シンプルさを追求するこ

    Objective-Cを書く人も書かない人も必読『iPhoneアプリ設計の極意』 - ninjinkun's diary
  • はてブiPhone・Androidアプリの開発プロセス - ninjinkun's diary

    この三ヶ月ではてなブックマークiPhoneアプリの新バージョンとAndroidアプリを開発してきました。 両方共担当はエンジニアid:ninjinkunとデザイナーid:kudakurage、総合ディレクションid:nagayamaです。同じ開発者がiPhoneアプリAndroidアプリ両方を作った事例として、なかなか面白いのではないかと思います。開発期間はちょうどそれぞれ一ヵ月半ずつでした。 自分にとってもブクマチームに移動してから初めての大きな仕事だったので、両方共思い入れがあるプロダクトです。開発話と一緒に、スマートフォンアプリを作る際の流れや、気を付けていることなどをまとめようと思います。(長いです) 開発プロセス iPhoneもAndoirdも開発の流れは基的に一緒で、以下のような流れになります。 機能の検討 UIの検討 実装 ざっくり並べただけではWebサービス開発と変わり

    はてブiPhone・Androidアプリの開発プロセス - ninjinkun's diary
    tasanobu
    tasanobu 2011/02/14
  • iPhoneアプリのアクセス解析Google Analytics SDK for iOSについて - ninjinkun's diary

    Cocoa勉強会関西でGoogle Analytics SDK for iOSについて発表してきました。資料を公開します。 Google Analyticsの豊富な機能をiPhoneアプリ内の計測にも利用でき、かなり使いでがあります。目標指標の設定や計測はもちろん、イベントのトラッキングを積極的に活用することで、UI改善の指標にすることもできると思います。 Google Analytics & iPhoneView more presentations from Satoshi Asano. 資料の中で言及している便利マクロもここに貼っておきます。 #define GA_TRACK_PAGE(PAGE) { NSError *error; if (![[GANTracker sharedTracker] trackPageview:[NSString stringWithFormat:@"

    iPhoneアプリのアクセス解析Google Analytics SDK for iOSについて - ninjinkun's diary
  • 1