タグ

ブックマーク / blog.ishkawa.org (6)

  • iOSのCI環境をCircleCIに移行した

    Feb 8, 2018 移行前はBitriseの$50のプランでiOSのCIをしていました。最近はサーバーやAndroidの開発もやっているのですが、そちらのCIには元々CircleCIを使っていて、workflowの使いやすさやページの軽快さが気に入っていました。 CircleCImacOSマシンは$39から始められるのですが、一定時間以上使うとそこから従量課金制になります。CircleCI上でのビルドにどのくらい時間が掛かるか完全には読めなかったので、実際に移行してみて費用が安くなるのか高くなるのか不確定だったというわけです。そういう状況だと、わざわざ確認のために新しい環境でCIをセットアップするのも億劫に感じてしまい、なかなか手をつけられずにいました。 ところがある日、サーバーのリソースを見直した結果、月に$250ほど節約できることがわかりました。なぜかその時に背中を押されて、iO

    iOSのCI環境をCircleCIに移行した
    a2ikm
    a2ikm 2019/06/28
  • Wire: Goのコード生成によるDIツール

    Dec 10, 2018 少し前に、GoogleからWireというDIツールがリリースされた。このツールは元々Go Cloudの内部で使われていたもので、汎用的なツールとして切り出したのだそうだ。このツールの特徴は依存グラフの解決がコード生成によって行われるという点で、リフレクションを使った動的なDIと比べるとエラーがコンパイル時に検出できるというアドバンテージがある。 ところで、The Go BlogのCompile-time Dependency Injection With Go Cloud’s Wireによると、コード生成によるDIというアイディアはJavaのDaggerにインスパイアされたものらしい。自分も以前、DaggerにインスパイアされてDIKitというSwiftのライブラリを開発したことがある。DIKitは今もiOSアプリの開発で使っていて生産性に貢献している実感があり、

    Wire: Goのコード生成によるDIツール
    a2ikm
    a2ikm 2018/12/31
  • Carthage: Swift対応の新しいライブラリ管理

    Nov 20, 2014 iOS, OSXで利用できるライブラリ管理ツールといえばCocoaPodsが有名ですが、 それとはまた違った方針のCarthageというライブラリ管理ツールがリリースされました。 GitHubのデベロッパーを中心としたチームで開発が進められているようです。 https://github.com/Carthage/Carthage インストール方法 Releasesからpkgをダウンロードして、インストーラーを実行します。 使い方 Cartfileを書く carthage updateを実行する Carthage.buildに作成された.frameworkをXcodeに追加する Cartfileではgithub, gitの2種類のキーワードが利用でき、以下のように書きます。 サポート対象 Carthageはdynamic frameworkのみをサポートするため、C

    Carthage: Swift対応の新しいライブラリ管理
  • xib/storyboardとの付き合い方について - blog.ishkawa.org

    アプリが大きくなるとstoryboardの小回りの利かなさに泣きたくなることがあると思います。 そうした反動からすべてのUIをコードで実装しているiOS開発者も少なくないと思います。 自分は全部storyboardにして痛い目にあってから、全部コードにしてまた痛い目に遭い、 結局コードとxibとstoryboardを上手く使い分けるのが良いという結論に達しました。 最近、やり方が定まってきてストレスを感じなくなってきたので方法をまとめます。 これから書くことは個人の見解ですが、自分のやり方を決める上では無駄にならないと思います。 使い分け方と理由 基方針: 以下に挙げる条件にマッチする場合除いて、コードで実装を行います。 xibを使う条件 viewの複雑度が高い場合(subviewが2,3個以上の場合)にはxibを使います。 xibを利用する理由は以下のような退屈なコードをたくさ

    a2ikm
    a2ikm 2013/06/25
    storyboard全然わかってないので理解したい
  • iOS開発でGitを利用する際のTips - blog.ishkawa.org

    ちょっと今更な感じもありますが、iOS開発でGitを使うときのTipsを紹介します。 Gitそのものの使い方は理解している前提のもとで書きます。 バージョン管理する対象 Xcodeのプロジェクトにはバージョン管理する上で結構余計なものが入っています。 Gitで管理すべきでないもの Xcodeの作業データ Xcodeのプロジェクトは.xcodeprojですが、こいつ自身はディレクトリになっていて project.pbxproj project.xcworkspace xcuserdata というファイルが入っています。このうち、Gitで管理するべきものはproject.pbxprojです。 その他のものはXcodeの状態(グループを開いてるかなど)を管理しているものなので、 プロジェクトのバージョン管理対象としては適切ではありません。 ビルドデータ xcodebuildコマンドを実

  • Qiita Hackathonに参加しました - blog.ishkawa.org

    テーマはGitHub APIを利用してプログラマーの問題を解決するというものでした。 http://qiitahackathon03.peatix.com つくったもの Gitのコミット毎に親コミットとのdiffからTODO:やFIXME:というコメントを探し出し、 それを元に自動的にissueのオープン/クローズを行うツールをつくりました。 このツールを使うと、TODO:コメントの挿入/削除 = issueのオープン/クローズとなります。 あまりウケないかなと思っていたのですが、思いの外受け入れてくれた方がいて嬉しかったです。 スライド GitHubのゲストの方向けに資料は英語で書かれていますが、発表は日語でした。 デモビデオ 発表のときはその場で実演しました。 かなり緊張しました。 (音声はありません。) 実装方法 いつも通り、Objective-Cで書きました。 前後のコミッ

    a2ikm
    a2ikm 2013/02/05
    これは便利そう
  • 1