狠狠撸

狠狠撸Share a Scribd company logo
RubyMotion LT

nitronに見る
iOSアプリ開発の未来
西見 公宏 / Masahiro Nishimi
(@mah_lab)
SonicGarden Inc.
自己绍介




   http://thinkit.co.jp/book/2012/06/07/3569
提供




     http://www.sonicgarden.jp/
RubyMotionを
はじめて見る人のイメージ



もしかして:
Objective-Cのコードを
Rubyで書き直しているだけ
事実



Objective-Cのコードを
Rubyで書き直しているだけ
いやいや、これはちょっと。。

もう少しRubyっぽくならんか?
Railsみたいな感じに開発でき
んものか?
そこでnitronですよ




  https://github.com/mattgreen/nitron
nitronとは

● Master-Detailなテーブルビューを持つアプリを
  超高速に作れるようになるラッパーライブラリ。
● CoreDataにActiveRecordっぽい文法でアクセス
  する機能もサポート。(でもRelationはサポートし
  てない!)
● データバインディングとアウトレットを無理やりサ
  ポート。
2012/7/20現在テストコードが1
行も書かれていない強気なGem
ですが、RubyMotionで書くコー
ドって後々こうなっていくんだろ
うなーという希望を持てるGemで
す。
開発の流れ (1)
プロジェクトを作成してnitronをBundle

$ motion create task

$ vi Gemfile
source :rubygems
gem "rake"
gem "nitron"

$ bundle install
$ rm app/app_delegate.rb
開発の流れ (2)
Rakefileの設定

$:.unshift("/Library/RubyMotion/lib")
require 'motion/project'

require 'rubygems'
require 'bundler'
Bundler.require

Motion::Project::App.setup do |app|
...
開発の流れ (3)
StoryboardとCoreDataの用意




XcodeでMaster-Detailプロジェクトを作り、
生成されたStoryboardとxcdatamodeldを
Xcodeプロジェクトからコピーする。
開発の流れ (4)
CoreDataの設定

Taskエンティティを作成する。
開発の流れ (5)
Taskモデルを作成する

class Task < Nitron::Model
 def self.all
   order("due")
 end

 def due
  primitiveValueForKey("due").to_s
 end
end
開発の流れ (6)
コントローラを作成する
# task_list_view_controller.rb
class TaskListViewController < Nitron::
TableViewController
 collection { Task.all }
end

# task_detail_view_controller.rb
class TaskDetailViewController < Nitron::ViewController
end
開発の流れ (7)
データバインディング
開発の流れ (8)
動かしてみる

$ rake

(rake) Task.create(title:
"Buy a pony", due: NSDate.date)
Railsっぽい!

例では紹介できなかったのですが、コントローラに
アウトレットのイベントを書いてハンドリングすること
もできます。

class TaskCreateViewController < Nitron::ViewController
 on :cancel do
   close
 end
end
これからのRubyMotion

iOS LibraryのレイヤーをRubyっぽくラップ
したRailsみたいなGemの出現によって、一
気に盛り上がるような気がします。nitronか
らはそんな流れが
垣間見れたのでした。
Have a good RubyMotion!!

More Related Content

What's hot (20)

PDF
C#でわかる こわくないMonad
Kouji Matsui
?
PDF
やはりお前らのCore Dataの使い方も間違っている
今城 善矩
?
PDF
Unity道場 ロボティクス 秋のLT祭り 2021
Ryo Kabutan
?
PDF
Roslynで体験してみるC#スクリプト #cs_fukuoka
Yuta Matsumura
?
ODP
Hacking Robotics
Kensei Demura
?
PDF
アプリのロギングからデータ収集?分析?活用
Atsushi Yokohama (BEACHSIDE)
?
PDF
第1回ROS勉強会発表資料 ROS+Gazeboではじめるロボットシミュレーション
akio19937
?
PDF
RFC Viewer開発を通して学ぶ!! iOS開発のパターン化
幸雄 村上
?
PDF
金沢アフ?リ塾 アフ?リ?オーフ?ンテ?ータとライセンス
Masayuki KaToH
?
PDF
滨罢さ?っくは?らん会
Masayuki KaToH
?
PDF
俺とCiとinfrastructure as code(未完)
Masayuki KaToH
?
PDF
【Unity道場 4月 ~アーティストの為のPBR再入門~】アーティストの為のPBR再入門
Unity Technologies Japan K.K.
?
PDF
JAWS-UG沖縄第1回勉強会 EBS/RDSがなくてもwrite massiveに耐えるDBの作り方
Koichiro Nishijima
?
PDF
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
Shinichi Okada
?
PPTX
20200714 cogbot
ひかり 影中
?
PDF
碍辞迟濒颈苍つかって蚕颈颈迟补クライアント作った时の话
shinnosuke kugimiya
?
PPTX
贵耻迟耻谤别碍谤别补迟别ロボットシミュレータ
Kensei Demura
?
PDF
Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1
Atsushi Yokohama (BEACHSIDE)
?
PPTX
俺と Ha4go と さくらクラウド
Masayuki KaToH
?
PDF
3分で作る Kotlin Friendly な API
Hiroshi Kikuchi
?
C#でわかる こわくないMonad
Kouji Matsui
?
やはりお前らのCore Dataの使い方も間違っている
今城 善矩
?
Unity道場 ロボティクス 秋のLT祭り 2021
Ryo Kabutan
?
Roslynで体験してみるC#スクリプト #cs_fukuoka
Yuta Matsumura
?
Hacking Robotics
Kensei Demura
?
アプリのロギングからデータ収集?分析?活用
Atsushi Yokohama (BEACHSIDE)
?
第1回ROS勉強会発表資料 ROS+Gazeboではじめるロボットシミュレーション
akio19937
?
RFC Viewer開発を通して学ぶ!! iOS開発のパターン化
幸雄 村上
?
金沢アフ?リ塾 アフ?リ?オーフ?ンテ?ータとライセンス
Masayuki KaToH
?
滨罢さ?っくは?らん会
Masayuki KaToH
?
俺とCiとinfrastructure as code(未完)
Masayuki KaToH
?
【Unity道場 4月 ~アーティストの為のPBR再入門~】アーティストの為のPBR再入門
Unity Technologies Japan K.K.
?
JAWS-UG沖縄第1回勉強会 EBS/RDSがなくてもwrite massiveに耐えるDBの作り方
Koichiro Nishijima
?
Kanrk05 .Netでお仕事しているプログラマがスクリプト言語として使うRuby
Shinichi Okada
?
20200714 cogbot
ひかり 影中
?
碍辞迟濒颈苍つかって蚕颈颈迟补クライアント作った时の话
shinnosuke kugimiya
?
贵耻迟耻谤别碍谤别补迟别ロボットシミュレータ
Kensei Demura
?
Azure Bot Service で始めるチャットボット開発入門 (2018-01)v1.1
Atsushi Yokohama (BEACHSIDE)
?
俺と Ha4go と さくらクラウド
Masayuki KaToH
?
3分で作る Kotlin Friendly な API
Hiroshi Kikuchi
?

Viewers also liked (17)

PDF
名著『リーダブルコード』を解説者と一緒に読み解こう - 7章 制御フローを読みやすくする
Kouhei Sutou
?
PDF
Manage Myself
bash0C7
?
PDF
プログラムによる计测と制御の仕组みを学ぶための学习支援ソフトウェア
Ryota Nakamura
?
PDF
YOKOGAWA理科教室(小学生でも作れる照度計と放射温度計) 横河電機(株)
教育颁厂搁大赏
?
PDF
20140910 Arduino for beginners
Kenichi Ohwada
?
PPTX
计测计量の基础   尘别补蝉耻谤颈苍驳
crane techno consultant
?
PDF
「纳品のない受託开発」を支えるコードレビューの取り组み
Masahiro Nishimi
?
PDF
础谤诲耻颈苍辞をこれから始める人のための础谤诲耻颈苍辞绍介スライドβ版
Katsuhiro Morishita
?
PDF
平成25年社会人講座 Arduinoによるマイコン入門講座
Katsuhiro Morishita
?
PDF
プログラムによる计测と制御の仕组みを学ぶための学习支援ソフトウェア (ポスター)
Ryota Nakamura
?
PDF
デキるプログラマだけが知っているコードレビュー7つの秘诀(顿别惫尝辞惫别版)
Masahiro Nishimi
?
PDF
納品のない受託開発を支える レガシーコードを作らない仕組み
Masahiro Nishimi
?
PPTX
Arduino 入門
mitunaga
?
PPTX
良いコードとは
Nobuyuki Matsui
?
PDF
デキるプログラマだけが知っているコードレビュー7つの秘诀
Masahiro Nishimi
?
PDF
Python, RaspberryPi, Arduinoで作る消費電力モニタリングシステム
Junichi Kakisako
?
PPTX
モーターを低速で定速で动かしてみる
Keiichi Sakai
?
名著『リーダブルコード』を解説者と一緒に読み解こう - 7章 制御フローを読みやすくする
Kouhei Sutou
?
Manage Myself
bash0C7
?
プログラムによる计测と制御の仕组みを学ぶための学习支援ソフトウェア
Ryota Nakamura
?
YOKOGAWA理科教室(小学生でも作れる照度計と放射温度計) 横河電機(株)
教育颁厂搁大赏
?
20140910 Arduino for beginners
Kenichi Ohwada
?
计测计量の基础   尘别补蝉耻谤颈苍驳
crane techno consultant
?
「纳品のない受託开発」を支えるコードレビューの取り组み
Masahiro Nishimi
?
础谤诲耻颈苍辞をこれから始める人のための础谤诲耻颈苍辞绍介スライドβ版
Katsuhiro Morishita
?
平成25年社会人講座 Arduinoによるマイコン入門講座
Katsuhiro Morishita
?
プログラムによる计测と制御の仕组みを学ぶための学习支援ソフトウェア (ポスター)
Ryota Nakamura
?
デキるプログラマだけが知っているコードレビュー7つの秘诀(顿别惫尝辞惫别版)
Masahiro Nishimi
?
納品のない受託開発を支える レガシーコードを作らない仕組み
Masahiro Nishimi
?
Arduino 入門
mitunaga
?
良いコードとは
Nobuyuki Matsui
?
デキるプログラマだけが知っているコードレビュー7つの秘诀
Masahiro Nishimi
?
Python, RaspberryPi, Arduinoで作る消費電力モニタリングシステム
Junichi Kakisako
?
モーターを低速で定速で动かしてみる
Keiichi Sakai
?
Ad

Similar to [RubyMotion LT] nitronに見るiosアプリ開発の未来 (12)

KEY
RubyMotionを1週間 触ってみた印象
Tatsuya Tobioka
?
PDF
Ruby motion
jewel12
?
PDF
Web技術勉強会 第33回
龍一 田中
?
ZIP
尝罢発表资料
murajun1978
?
PDF
颈翱厂豆知识惫别谤0.0.5
ppengotsu Name
?
PDF
Rubymotion
jewel12
?
PPTX
Tech fun rails_workshop
OMEGA (@equal_001)
?
PDF
Rubyて?アフ?リ開発(2013 0430)
Shinichirou Nakamura
?
PDF
Start-padrino
Uchio Kondo
?
PDF
RubyKaigi2009 - RubyをつかったiPhoneアプリケーション開発
takuma mori
?
PDF
厂耻驳补谤肠耻产别をはじめよう
Eihiro Saishu
?
PDF
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
Yu Nobuoka
?
RubyMotionを1週間 触ってみた印象
Tatsuya Tobioka
?
Ruby motion
jewel12
?
Web技術勉強会 第33回
龍一 田中
?
尝罢発表资料
murajun1978
?
颈翱厂豆知识惫别谤0.0.5
ppengotsu Name
?
Rubymotion
jewel12
?
Tech fun rails_workshop
OMEGA (@equal_001)
?
Rubyて?アフ?リ開発(2013 0430)
Shinichirou Nakamura
?
Start-padrino
Uchio Kondo
?
RubyKaigi2009 - RubyをつかったiPhoneアプリケーション開発
takuma mori
?
厂耻驳补谤肠耻产别をはじめよう
Eihiro Saishu
?
5 年続く 「はてなブックマーク」 アプリを継続開発する技術
Yu Nobuoka
?
Ad

More from Masahiro Nishimi (6)

PDF
2019/09/15 大阪Ruby会議02 Keynote
Masahiro Nishimi
?
PDF
技术的负债を生み出す构造とその対処について
Masahiro Nishimi
?
PDF
実践DevOps!SonicGarden流Herokuガチ運用術!SonicGarden Study #09
Masahiro Nishimi
?
PDF
ソニックガーデン流 無駄のないシステム開発
Masahiro Nishimi
?
PDF
Agile samurai達が現場を変える
Masahiro Nishimi
?
PDF
Agile Samurai インセプションデッキ
Masahiro Nishimi
?
2019/09/15 大阪Ruby会議02 Keynote
Masahiro Nishimi
?
技术的负债を生み出す构造とその対処について
Masahiro Nishimi
?
実践DevOps!SonicGarden流Herokuガチ運用術!SonicGarden Study #09
Masahiro Nishimi
?
ソニックガーデン流 無駄のないシステム開発
Masahiro Nishimi
?
Agile samurai達が現場を変える
Masahiro Nishimi
?
Agile Samurai インセプションデッキ
Masahiro Nishimi
?

[RubyMotion LT] nitronに見るiosアプリ開発の未来