タグ

ブックマーク / higelog.brassworks.jp (10)

  • motion-localizationというgemを作った - ひげろぐ

    最近RubyMotionを触る機会ができたので、昔書いたコードを掘り起こしてきたり、最近はどんな風にするのが良いのか調べたりしている中、お得意のヤク毛刈りの一環でローカライズ作業に関する小物を作った。 motion-localization GitHub 導入するとローカライズに必要なファイルを作成するRakeタスクが使えるようになります。それだけです。 使い方 インストール Gemfileに以下を追加してbundle install。 gem 'motion-localization' Gemfile使ってない人はこれを機に使おう。 Rakefileでrequire Rakefileの適当な場所でrequire。 $ require 'motion-localization' rakeで実行 タスクが追加されているかどうかを確認する。 $ rake -T 以下の行があればOK。なかったら

  • WheneverでRailsのバッチ処理 - ひげろぐ

    WheneverはCronを利用して繰り返し処理を行うためのライブラリ。 シェルコマンドやRailsのRunner、RakeタスクなどのジョブをCronで実行できる。 実際のところCrontabへの登録を補助してくれるだけなのだが、そのシンプルさがかえって分かりやすい。 バッチ処理の管理にうってつけ。 タイトルではRailsとなっているがRails以外でも利用できる。 以下はRails3での使い方メモ。 導入 Gemfileに以下の行を追加してbundle install gem 'whenever', :require => false schedule.rbの編集 config/schedule.rbにスケジュール設定を書いていく。 bundle exec wheneverize . を実行するとひな形を作ってくれるので、それを元に編集していくのが吉。 スケジュールは「every」に続

    Watson
    Watson 2012/11/02
  • RubyMotionはiOS SDKに疎い人にもオススメできる - ひげろぐ

    iOSで作りたいモノが特にないのでこの頃あんまりアクティブに触ってはいないけど、一方で所感が確かな物になってきたので書いておきたい。 RubyMotionがリリースされたばかりの頃はiOS SDKの知識が必要なので敷居が高いのではと書いたが、それから三ヶ月弱立った現在、iOS SDKに疎くても気にせず開発できる環境が整ってきた。またREPLの存在によりiOS SDKを学ぶにも役に立つものだと思うようになった。 加えてどれほどの物が作れるのか、ということとサポートの話など。 Rubyらしく書く BubbleWrapのようなRubyらしく書いていけるライブラリが順調に育っていて当初よりかなり良い感じになっている。 iOS SDKの知識がなくてもかなりの所までいけるようになっているんじゃないだろうか。 他にもDSL的なライブラリがいろいろできて盛り上がっているので、今後も「Rubyらしく」という

    Watson
    Watson 2012/07/26
    "かなりおかしな英語でも再現コード付きで送れば理解してもらえる。コードは世界共通語。" 私の英語もかなりぶっ壊れていますが、再現コードと多少の説明があれば、理解してもらえますね。
  • RubyMotion Weekだった今週 - ひげろぐ

    かなりの盛り上がりでGitHubには雨後の筍のように新しいプロジェクトが次々できている有様。 個人的にも昔Objective-Cで書いたものをRubyで書き直してみたりしていてRubyMotion成分濃い目のエキサイトした週だった。 正直勢いがありすぎて自分では追い切れてないが、公式ブログにリリース後一週間の熱狂が綴られていたので抄訳してみる。 RubyMotion’s Blog — What a week! コミュニティ 今日までにユーザーによる約55のRubyMotion関連リポジトリがGitHubにできている GLKit/OpenGL, Facebook, Parse, cocos2d等の特殊なフィーチャーやフレームワークのサンプルデモ CoreDataやUIKit等の抽象化 Redcar、TextMate、Vimのコード補完を含むRubyMotionサポート RailsFactor

  • Titanium MobileとRubyMotionの比較 - ひげろぐ

    双方とも脱Objective-Cを実現してくれるプロダクトだけど性格はけっこう違う。 共通で興味を持っている人が多そうなので思うところをとりとめもなく書いてみる。 取っつきやすさ iOS SDK開発未経験者がとっつきやすいのはTitanium。おそらくRuby経験者でも。 逆にiOS SDK経験者ならばRubyMotionの方が入って行きやすいかもしれない。 RubyMotionはiOS SDKのAPIをタイトになぞっているためにiOS SDKのAPIに関する知識が必要だが、iOS SDKのAPIには直感的じゃない部分が多々あって、それに馴染むまでけっこう時間がかかる。その学習コストがけっこう高い。 TitaniumのAPIはTitanium独自のものだが整理されていて扱いやすい。学習コストは皆無ではないがiOS SDKに比べればずっと楽。 またObjective-Cよりマシとは言えRub

  • RubyMotionでCocoaPodsを使う - ひげろぐ

    CocoaPodsはRubyで言うとBundlerみたいなもの。 Objective-Cのプロジェクトにおいてライブラリの依存性を管理して使いやすくしてくれる。 podとして提供されているライブラリの一覧はここにまとまっている。 RubyMotionでもこのCocoaPodsを利用できる。 以下だいたい公式のドキュメント通り。 CocoaPodsのインストール まずはCocoaPodsを入れてセットアップする。sudoはRVMを使っているなら不要。 $ [sudo] gem install cocoapods $ pod setup motion-cocoapodsのインストール 次にRubyMotionからCocoaPodsを使うためのmotion-cocoapodsを入れる。 $ [sudo] gem install motion-cocoapods Rakefileの修正 RubyM

  • RubyMotionがすごい - ひげろぐ

    RubyMotionを使うとObjective-Cの代わりにRubyでiOSアプリを作ることができる。 有料版しかなく無償で試したりはできないがRubyMotionのサイトやサンプルコードを見てすぐに購入した。これはいいものだ。 日語での概要は以下に良くまとまっている。 Rails Hub情報局: MacRubyがiOSに来た!RubyでiOSのネイティブアプリ開発ができる「RubyMotion」登場 RubyMotion、はじめの一歩 – Watson’s Blog 一言で言うと今までObjective-Cで我慢して書いていたものをすべてRubyでサクッと書いちゃおうぜ、というノリのものだ。 JavaScriptに対するCoffeeScriptの関係に似ているかもしれない。 個人的には以下の利点だけで値千金。 配列や文字列の処理がとてもとても楽ちん メソッド定義およびメソッド呼び出しが

  • Titaniumでユニットテスト - ひげろぐ

    公式のドキュメントには何の記述もないが、ユニットテストには好きなJavaScriptのテスティングフレームワークを利用できる。 ただしブラウザに依存しないもので、ログの出力をフックできるものに限る。 要はTitaniumのコンソールにログを出力するためにTitanium.API.infoやTitanium.API.errorなどにテストの出力を渡せればよいわけです。 今回はxUnit系で一番勢いがありそうなQUnitとBDD系でよいと言われているJasmineで試してみた。 QUnitを使う Titanium用のアダプターがGitHubで公開されている。 lukaso/qunitGitHub 自分のプロジェクトで利用する場合はResources以下に次のファイルを設置すればOK。 * runner.js * qunit/qunit.js * qunit/titanium_adapto

  • TitaniumでiOSのLocalNotification - ひげろぐ

    iOSのLocalNotificationを利用すると指定した時刻にNotificationを出すことができる。 端末がスリープ状態の時やアプリが起動していない(サスペンドでもない)状況でもユーザーに通知を出すことが可能。 利用用途は目覚まし時計とかスケジュール管理ツールの時間通知など。 サンプルコード 起動してから3秒後に通知を出すサンプル。 app.js var notification; Ti.API.info("notification schduled"); notification = Ti.App.iOS.scheduleLocalNotification({ date: new Date(new Date().getTime() + 3000), repeat: "daily" alertBody: "起動から3秒後", alertAction: "アプリを開く", bad

  • Rubyで使えるMarkdownパーサー - ひげろぐ

    なぜだか知らないけどたくさんある。 Markup processors in The Ruby Toolbox RDiscountとBlueClothが定番で、Redcarpet(GitHub-Markupで内部的に使われているもの)が元気なニューフェイスといったところか。 違いは速度と拡張記法のサポート具合なのかな。 Markdownはシンプルだけどその分できることは限られているので独自拡張のニーズや実装がいくつもあるようだ。 拡張自体はどこかに仕様があるのか、それとも各ライブラリが勝手にやっているのかちょっと追いかけられていない。 気に入った拡張記法をサポートしているかどうかが選択のポイントか。 速度は速いに越したことはないが、個人ユースではそんなに気にする必要はないように思う。 BlueCloth BlueClothが古くからあるものなので、後発のものもBlueCloth互換のAPI

  • 1