タグ

2014年10月2日のブックマーク (4件)

  • Xcode 6 時代のマルチデバイス対応 〜Size Classとベクター画像〜 - その後のその後

    とあるお仕事で、iPad をサポート(= Universal 化)してほしいという要望があり、せっかくなので iPhone 6 / 6 Plus (4.7 / 5.5 inch スクリーン)もサポートしようってことで、新しい Xcode 6 の新しい仕組みである Size Class を使って複数画面対応を行ないました。あと、同じく Xcode 6 から Asset Catalog でベクター形式がサポートされるようになったので、こちらもトライしてみました。 で、そのときに学んだ諸々の断片的なメモです。勘違いもあるかもしれないのでその際は優しくご指摘いただけますと幸いです。 ※ちなみに Size Class やベクター形式画像の使用は iOS 8 以上縛りではありません。単に Xcode 6 の新機能というだけなので。 Size Class の前提知識をつける 「Size Classsとは

    Xcode 6 時代のマルチデバイス対応 〜Size Classとベクター画像〜 - その後のその後
  • sprintf を最大10倍以上高速化するプリプロセッサ「qrintf」を作った

    最近H2OというHTTPサーバを書いているのですが、プロファイルを取ってみるとsprintfが結構な時間をっていて不満に感じていました。実際、sprintfは数値や文字列をフォーマットするのに十徳ナイフ的に便利なので、HTTPサーバに限らず良く使われる(そしてCPU時間を消費しがちな)関数です。 では、sprintfを最適化すれば、様々なプログラムが より高速に動作するようになるのではないでしょうか。ということで作ったのが、qrintfです。 qrintfは、Cプリプロセッサのラッパーとしてソースコードに含まれるsprintfの呼出フォーマットを解析し、フォーマットにあわせたコードに書き換えることで、sprintfを高速化します。 たとえば、以下のようなIPv4アドレスを文字列化するコード片を sprintf( buf, "%d.%d.%d.%d", (addr >> 24) & 0xf

  • Sqwiggleが最初の課金ユーザを獲得した3つの方法 | POSTD

    3 Ways We Acquired Our First Paying Customer by Matt Boyd Sqwiggleの共同設業者で、熱心なリモートワーカー。他には執筆やドラム演奏も。コーヒー愛飲者。 @mattboyd Sqwiggleは、リモートワークチームのための常時"繋ぎっぱなし"ビデオチャットアプリ。PCのカメラより定期的に作業の様子が共有され、呼び出しや同意の必要がなく、実際に話しかけるように1クリックですぐに会話が始めることができる。 今回のブログ記事では、いつもとはちょっと違う話題を取り上げましょう。今日は、弊社が(2013年6月3日までに)経験したことを時系列で振り返り、簡単にまとめたいと思います。その狙いは、弊社の銀行口座に初めて55ドルが振り込まれるまでの詳しい経緯を皆さんにご紹介することです。 あの日は実にエキサイティングな1日でした。 1. まずは自

  • LL から Java に移行した人がはまりがちなこと - tokuhirom's blog

    こんにちは。Java 初心者です。 Java 初心者、得に LL から Java に来た人にありがちな問題について社内向けに書いたものをオープンアンドシェアさせていただきます。 前提として、我々は Java 8 でガンガン攻めているということをご承知おきください。 また、自分がこの数ヶ月で「うわー。こうしとくべきだったのかー」と気づいたやつをドヤ顔で語っているということにもご注意ください。 【追記】 対象は中規模 B2C の場合です(中規模というのは facebook より小さいという程度の意味です) 例外を握りつぶさないようにしよう Eclipse が生成する以下のようなコードをそのまま残しているケース。 これは言うまでもなく良くないですね。デバッグが困難になります。 try { } catch (IOException e) { e.printStackTrace(); } Perl