タグ

ブックマーク / dev.classmethod.jp (47)

  • デザイナーとプログラマの共同作業 | DevelopersIO

    健康診断の結果が思ったより悪くて、ちょっとへこんでいるたごです。こんにちは。 今回はよくある話題ではありますが、デザイナーとプログラマの共同作業について書いてみたいと思います。 はじめに アプリケーション開発をするにあたって、デザイナーとプログラマの共同作業にはずっと課題がつきまとってきました。 互いの理解不足によるすれ違いだとか、一つの成果物を作り上げるのに両者でどう分業すればよいかとか。 前者は人と人の問題なので互いに歩み寄って行くしかありませんが、後者の課題にはこれまでもツールやフレームワーク、開発プロセスの面から解決の工夫がとられてきました。それによって最近はだいぶやりやすくなったんではないかとは思いますが、万事解決というわけには行かないのが実情です。 まあ理想としてはデザインもプログラミングもどっちも得意な人がやってしまえばいいんですが、そういうスキルを持った人をメンバーに集めら

    デザイナーとプログラマの共同作業 | DevelopersIO
  • 「深津貴之氏に学ぶ、スマホUI/UX講座 〜iOS7についての考察とfladdictデザイン論〜」に参加してきました。 | DevelopersIO

    「デザイン = かっこ良くすること」だとは限らない。 デザインとは? 設計 複雑な問題を整理して解決すること わりとエンジニアリングに近い 文章を書く練習をすれば読みやすい文章を掛けるようになるのと同様に、勉強すれば人を困惑させないデザインは作れる。 ヒューマンインターフェースの原則 インターフェース = 接点、境界面、接触面、接合面、仲立ち、橋渡し ヒューマンインターフェース = 人とモノをつなぐもの ヒューマンインターフェースの原則 = アプリがユーザーとコミュニケーションをする時の原則 1.必然性のあるビジュアル 機能と外見が調和しているか? TPOにあわせた格好をさせる ユーザーとコミュニケーションを取る ドレスコードみたいなもの(例:ゲーム:楽しく、ツール:信頼性ありそうな) 機能に最適な外見を与えることで... 使い方がつたわる。 とっつきやすくなる 2.一貫性 アプリ全体でル

    「深津貴之氏に学ぶ、スマホUI/UX講座 〜iOS7についての考察とfladdictデザイン論〜」に参加してきました。 | DevelopersIO
  • [iOS] iOS Core Audio 入門 # 1 概要編 | DevelopersIO

    はじめに シリーズ「iOS Core Audio」ではiOS 2.0からiOSに標準搭載されている「CoreAudio」と呼ばれるオーディオ処理用のソフトウェアインターフェイスを扱っていきます。 今回はCore Audioのフレームワーク群の概要を見ていきます。 目次 Core Audio ? Core Audioを構成するフレームワーク/サービス Inter-App Audio 実機とシミュレータ 外部ハードウェアとの連携 iOSのバージョンとCore Audio まとめ Core Audio ? 「Core Audio」はオーディオ処理用のフレームワークの総称であり、アプリ内でオーディオを再生、録音、ミックス、生成することをサポートします。MIDIコンテンツを扱ったり、他のアプリにオーディオやMIDIをストリーミングしたりすることも可能です。 多数のフレームワークが用意されており、簡

    [iOS] iOS Core Audio 入門 # 1 概要編 | DevelopersIO
  • 初めてのXcode 5 プラグイン開発 | DevelopersIO

    ヤフー vs クラスメソッド「iOS 炎の7番勝負」でXcode プラグインについて話しました この記事は、ヤフー vs クラスメソッド「iOS 炎の7番勝負」で話した「Xcodeプラグインで快適な開発ライフを」の補足記事になります。 まえおき IDEとプラグイン プラグインって聞くと Eclipse を連想される方が多いかと思います。Eclipse だとそもそも言語用のプラグインやらバージョン管理(git、SVN)やら開発に最低限必要なものがプラグインとして提供されています。なので、Eclipse にとってプラグインはなくてはならない存在と言えます。 Xcodeとプラグイン Xcode は非常に優秀な IDE で、プラグインを入れなくても iOS 開発に最低限必要なものはほとんど揃っています。なので Xcode では、Eclipse のようにプラグインを入れる必要はありません(決して E

    初めてのXcode 5 プラグイン開発 | DevelopersIO
  • ド定番OSS!AFNetworking 2.xの使い方 | DevelopersIO

    今更なんだよ?って気がしますが、うちのブログにAFNetworkingについての記事が無いので軽く書いてみます。 2.x系になって変わったこと まず、一番の変更点はAFHTTPClientがいなくなったことでしょうか。変わりにAFHTTPOperationManagerやAFHTTPSessionManagerなるものや、AFXxxRequestSerializer、AFXxxResponseSerializerなどが追加になりました。また、動作可能なiOSのバージョンは6.0以降になってました。 なんだこれ?ってわけで早速触ってみます。 AFXxxManager AFHTTPOperationManagerとAFHTTPSessionManagerがありますが、どうやらiOS 6.xに対応するのであればAFHTTPOperationManagerを、iOS 7.x以降であればAFHTTP

    ド定番OSS!AFNetworking 2.xの使い方 | DevelopersIO
  • [iOS] Conference With Developers 2に参加してきました #confwd | DevelopersIO

    Conference With Developers 2 - peatix.com iOSアプリ開発者向けのカンファレンスイベント「Conference With Developers 2」に参加してきたので、発表内容をまとめてみました。 iOSエンジニアGitHubとキャリア 発表:浅野慧さん Twitter:@ninjinkun Blog:ninjinkun's diary GitHub:https://github.com/ninjinkun/ 発表資料:GitHub活動を通して個人のキャリアを積みつつ仕事の成果を出す方法 GitHubを使ったオープンソース活動についての、浅野さん自身の事例を交えた発表でした。 OSS活動は、自分自身の勉強になるし、使ってもらえる喜びがあるとよく聞きます。社内で評価されたり、GitHubのリポジトリが履歴書の代わりなったりと、2次的なメリットもある

    [iOS] Conference With Developers 2に参加してきました #confwd | DevelopersIO
  • [Objective-C]__attribute__ディレクティブを使ってみる | DevelopersIO

    Objective-Cのオープンソースライブラリのコードを眺めていると __attribute__ という文に出くわすことがしばしばあります。 これは属性を表すキーワードで、普段そこまで使う機会がないのですが、調べるうちに何かと多人数の開発の時にはご利益がありそうな機能ばかりだと感じたので、まとめておきます。尚、使用環境はXcode5, ARCです。 何ができる? __attribute__はコンパイラディレクティブの一種で、変数、型、関数(Objective-Cではクラスやメソッドも)の属性を決めることができます。コンパイラによる静的チェックや関数の最適化の役に立ちます。 __attribute__の後にはカッコが二重に続き、二重括弧の中でコンマ区切りの属性リストを付与することができます。 __attribute__は変数、型、関数宣言の前後に置かれます。Objective-Cではメソッ

    [Objective-C]__attribute__ディレクティブを使ってみる | DevelopersIO
  • [iOS]ReactiveCocoaFramework入門 | アドカレ2013 : SP #11 | DevelopersIO

    この記事ではXcode5とARCを使用することを前提にしています。 はじめに iOSやMacOSで提供されるOSのフレームワークでは UIイベントをキャッチする インスタンスのプロパティ等を監視する サーバにリクエストを投げてレスポンスが待つ 非同期で何か重たい処理を行う といった外部で起こる時々刻々の変化を捉えるために様々な方法が提供されています。 Delegate Selector Key Value Observing Notification Center Grand Central Dispatch アプリに要求されるパフォーマンス等と相談しながらこれらの仕組みを使い分けるのも非常に重要ですが、 これら時々刻々の値の流れを捉え、一括して管理しやすく扱うための包括的なフレームワークがあります。 それがReactiveCocoaFrameworkです。 ReactiveCocoaの導

    [iOS]ReactiveCocoaFramework入門 | アドカレ2013 : SP #11 | DevelopersIO
  • ユニットテスト改善ガイド | DevelopersIO

    先日、日Javaユーザグループ(JJUG)主催のJJUG CCC 2013 Fallで、「ユニットテスト改善ガイド」というタイトルで登壇してきました。自分の経験を元に、ユニットテストをチームや組織へ導入する時に起こりえる問題とその解決のヒントに関するセッションです。エントリーではそのセッションの内容を再構成して公開します。 はじめに 近年のシステム開発では、ユニットテストや継続的インテグレーション(以下、CI)の導入は必要不可欠と考えられています。とはいえ、どんな組織(チーム)でも簡単に導入できているわけではありません。特に、大きな組織や古くからの慣習を残している組織では導入したくとも中々進まないと感じているところが多いのではないでしょうか?。 私は、これまでに多くの開発現場でユニットテストやCIの導入について推進してきました。成功したケースもあれば失敗したケースもあります。そして、失

    ユニットテスト改善ガイド | DevelopersIO
  • BotsでCI環境を作る2 – ブラウザでの操作 | DevelopersIO

    ※1 ログの表示はXcode版の方が見やすくなっています。 概要[Summary] テスト[Test] コミット[Commit] はほぼ一緒。アーカイブ[Archive]に関しては成功していないのでわからないが、多分そんなに使い勝手に差はないと思います。 ブラウザ版 - 生ログです Xcode版 - 整形されています ブラウザ版では Big Screen というビューがあります イメージ的にはちらっと見える位置にある、チームで共有している大きなモニターに常にテストとビルド状況が表示されているお洒落なサマリ。そんな感じです。これをワインを片手に眺めるのが iOS開発の新しいスタイルになりそうです。 まとめ ブラウザ版はXcode版の簡易版かと思ってましたが実はそうではなく、機能的にはむしろCIされているプロジェクト全体を見れる分、ブラウザ版の方が高機能でした。開発者はXcode版、コードは書

    BotsでCI環境を作る2 – ブラウザでの操作 | DevelopersIO
  • BotsでCI環境を作る1 – Xcode 5での操作 | DevelopersIO

    はじめに Xcode 5 から Bots という名前で CI (Continuous Integration) 機能が追加されました。CIといえば今まで Jenkins など Apple 以外のツールを使っていたケースも多いと思いますが、Apple 純正のツールが出てきた事で開発者にとっては気になる存在になると思います。 既存のツールを置き換えになるのか、又は併用できるのかも気になります。 まずは動作させるまでのセットアップをしてみます。 必要なもの Mac OS X Mavericks Mac OS X Server Xcode 5 Mac OS X Server 今回初めて触りましたが、使ったことある人は結構レアなんじゃないかと思ってます。 Mac OS X Serverという名前のOSかと思ってましたが、実際の形式はアプリケーションでした。Mac App Storeからイントール可能

    BotsでCI環境を作る1 – Xcode 5での操作 | DevelopersIO
  • [iOS 7] SpriteKitの物理エンジンを使ってみた -超入門- | DevelopersIO

    iOS 7のSpriteKitには物理エンジンが搭載されているようです。 今回は、ちょっとだけそれを使ってみます。 実装 タップしたポイントに赤い四角を表示させ、そのまま重力で落下するサンプルを作ってみます。 #import "CMMyScene.h" @implementation CMMyScene -(id)initWithSize:(CGSize)size { if (self = [super initWithSize:size]) { // ここに初期処理 } return self; } -(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { CGPoint location = [touches.anyObject locationInNode:self]; [self addRedSquare:l

    [iOS 7] SpriteKitの物理エンジンを使ってみた -超入門- | DevelopersIO
  • iOS 7 特集 | DevelopersIO

    [iOS][iBeacon] iOS 7.1 からアプリを起動していなくても領域観測できるようになったので、さまざまなバックグラウンド処理を試してみた

    iOS 7 特集 | DevelopersIO
  • ユニットテストにまつわる10の勘違い | DevelopersIO

    渡辺です。さる方面からテスト系のエントリーがまだか…と催促されたので、ユニットテストについて少し考えてみたいと思います。 最近、TwitterのTLをチェックしていると、JUnitを利用しているにも関わらず違和感のあるTweetや、原因をJUnitにして来解決すべき問題から目をそらしているようなTweetを多く見かけます。そこで、JUnitをによるユニットテストに関するありがちな勘違いをまとめてみました。 なお、JUnitの部分は、RSpecでもNUnitでも適当に置き換えて読んでも構いません。 1.JUnitを使うことが目的という勘違い JUnitを利用すること自体を目的にしたところで何も得る事はありません。 ありがちな話ですが、「納品物としてJUnitのテストコード(または実行結果)を求められている」ことが理由でJUnitを利用しているならば、それは足かせでしかない可能性があります。

    ユニットテストにまつわる10の勘違い | DevelopersIO
  • つたえるって、たのしい。 〜 第1回 インフォグラフィックを学ぶ★ に参加してきた | DevelopersIO

    7月20日に開催されたつたえるって、たのしい。 〜 第1回 インフォグラフィックを学ぶ★というワークショップに参加して来ました。業務の合間を見つけては色々な勉強会に参加していますが、職業柄 Web プログラミング関連をテーマにしたモノが多く、ビジュアルデザイン関連のモノに参加したのは今回が初めてです。 みんながネットでいろいろ情報発信する時代。 つたえてるつもりでも なかなかうまくつたわらないことって ありますよね。 そこで、つたえることのプロのみなさんに、いろんなテクニックを教えていただくシリーズ、はじめます。 初回7月は「たのしいインフォグラフィック入門」*の著者、 櫻田潤さんによる記念講演&ワークショップ。 たくさんの情報をわかりやすく伝えるには、ビジュアルって大切! でも、絵心がないとビジュアル化できない?? そんな疑問にこたえる講義とワークショップ。 ポイントを学んで、つたえるこ

  • 軽量JSONパーサー『jq』のドキュメント:『jq Manual』をざっくり日本語訳してみました | DevelopersIO

    jq Manual jqで簡単JSON加工 | Developers.IO jqコマンドが実は高性能すぎてビビッた話 - beatsync.net JSONを超絶に読みやすくする jq コマンド - WebAPIバリバリ使うor開発する人必須 CLIでJSONの整形をする - ( ꒪⌓꒪) ゆるよろ日記 JSON形式の情報を様々な条件や書式として成形、フィルタリングツール『jq』。上記関連エントリで私もこのツールの存在を知る事になったのですが、ツールの簡易さ・便利さに感動しながら私もちょくちょく利用させてもらっています。 そこでこのエントリでは、jq公式ページに展開されている利用ガイド・リファレンス的な位置付けの『jq Manual』を写経がてらざっくり日語訳してみました。ざっくり訳なのでこの部分の訳おかしい・間違ってる等ありましたら御指摘頂けると幸いです。例示されているサンプルコードも

    軽量JSONパーサー『jq』のドキュメント:『jq Manual』をざっくり日本語訳してみました | DevelopersIO
  • iOSでUnderscore.jsライクに処理できるUnderscore.m〜前編〜 | Developers.IO

    Underscore.mとは? Underscore.mはNSArray(NSMutableArray)やNSDictionary(NSMutableDictionary)に対してのデータの加工処理を容易にするためのオープンソース(MITライセンス)のライブラリです。JSでUnderscore.jsを利用していた方には馴染み深いですね。これらのデータに対する処理を実装することはよくあることですので、覚えておいて損はないと思います。 Underscore.mにあるサンプルを用いて説明すると、例えば「言語をキーとして挨拶文を定義したNSDictionaryがあり、この挨拶文に含まれる単語の先頭を大文字に変換したものを配列として取得する。ただし挨拶文が必ず定義されている訳ではない」といった処理があるとします。この場合、通常であれば以下のように記述するかと思います。 NSDictionary *d

  • Xcodeのコンソール出力に色をつけて見やすくしよう〜XcodeColorsとCocoaLumberjack〜 | DevelopersIO

    NSLogでコンソールにログを出力してデバッグすることは良くあることだと思います。でもその出力が大量になるとすごく見づらいですよね。というわけで今回はコンソールに出力されるログに色をつけて見やすくしよう!的なことを書きたいと思います。 XcodeのプラグインXcodeColors 実は標準だとXcodeのコンソールに出力されるログに色をつけるのが結構難しいらしいです(やったことないですが)。そこで登場するのがXcodeColorsです。XcodeColorsはXcodeのプラグインで、インストールするだけで簡単にログに色を付けることができます! XcodeColorsのインストール まずは以下のURLからXcodeColors.xcplugin.zipをダウンロードします。 Downloads · robbiehanson/XcodeColors XcodeColors.xcplugin.

  • [開発環境] Android Studioをインストールしてみる | DevelopersIO

    Google I/O 2013 画像多めです 日2013/05/16の日時間午前1時から、Google I/Oの基調講演がLive中継されていました。眠い目をこすりつつ見ていたわけですが、その中でAndroid Studioという非常に気になる開発ツールがあったので興奮気味に目が覚めました。IntelliJをベースにしたAndroid開発環境のようです。ライブレンダリング、多言語によるレイアウトを同時に確認できたり、今までADTではなかった機能が盛り沢山のようです 今日からダウンロード可能なのでさっそくインストールしてみます 環境 OS:Mac OSX 10.8.3 インストール まずは、今日からダウンロードできるアーリーアクセス版を取得します。こちらからダウンロード 規約に同意してダウンロード Application以下にコピー Android Studio おおおお!ほんとにInt

    [開発環境] Android Studioをインストールしてみる | DevelopersIO
  • [iOSアプリ開発] いまさら聞けないモダンな書き方 | DevelopersIO

    Xcode 4.4 から Objective-C が書きやすくなりました、という今更のいまさらな話ですが、ネット上に転がっている少し前のサンプルソースなどは古い書き方のものもあるようなので、今回はよく使う NSArray と NSDictionary と NSNumber の書き方についてだけ備忘録として残しておこうと思います。 NSArray インスタンスの生成 // 古い書き方 NSArray *oldArr = [NSArray arrayWithObjects:@"value1", @"value2", @"value3", nil]; NSMutableArray *oldMutableArr = [NSMutableArray arrayWithObjects:@"value4", @"value5", @"value6", nil]; // 新しい書き方 NSArray *n

    hush_puppy
    hush_puppy 2013/05/14
    一括変換知らなかった。試してみるか・・・