720 likes | 1.02k Views
オレポータビリティ. 日本 Ruby の会 青木 峰郎. 自己紹介. 自己紹介 1/3. 文系の大学生 専門は …… 哲学?. 開発と言えば自宅. 自己紹介 2/3. Ruby 関係者 標準添付ライブラリ メンテナ 著書いろいろ. 自己紹介 3/3. 著書 『 ふつうの Haskell プログラミング 』 『 ふつうの Linux プログラミング 』 『Java を独習する前に読む本 』 『Ruby ソースコード完全解説 』 『Ruby レシピブック 』 『Ruby を 256 倍使うための本 無道編 』.
E N D
オレポータビリティ 日本Rubyの会 青木 峰郎
自己紹介 1/3 • 文系の大学生 • 専門は……哲学?
自己紹介 2/3 • Ruby関係者 • 標準添付ライブラリ メンテナ • 著書いろいろ
自己紹介 3/3 • 著書 • 『ふつうのHaskellプログラミング』 • 『ふつうのLinuxプログラミング』 • 『Javaを独習する前に読む本』 • 『Rubyソースコード完全解説』 • 『Rubyレシピブック』 • 『Rubyを256倍使うための本 無道編』
./lib/bitchannel/syntax.rb:398: [BUG] Segmentation fault ruby 1.9.0 (2005-10-22) [x86_64-linux]
5つのアーキテクチャ • x86 • AMD64 • Alpha • SPARC • POWER
Linux FreeBSD NetBSD Tru64UNIX Solaris AIX Windows 7つのOS
Linux/x86 Linux/Alpha Linux/AMD64 FreeBSD/Alpha NetBSD/Alpha Tru64UNIX/Alpha Solaris/SPARC AIX/POWER Windows/x86 9つのプラットフォーム
前提:マシン台数もプラットフォームも多すぎる前提:マシン台数もプラットフォームも多すぎる
→ オレポータビリティ が高い! どんな環境でも 同じように開発できる
どこでも使えるソフトウェアがそもそも少ないどこでも使えるソフトウェアがそもそも少ない
たくさんソフトウェアを使うとインストールがめんどくさい!たくさんソフトウェアを使うとインストールがめんどくさい!
必ず使うソフトウェア • Ruby • Cコンパイラなど • zsh • vi • バージョン管理システム • 独自の開発ツール
使うもの(1)Ruby 開発版 + 安定版ぜんぶ
forall-ruby コマンド システムに存在する 全バージョンの rubyに 同じオプションを与えて実行
使うもの(2)Cコンパイラなど gcc, bison, flex, autoconf, make, …
複数ファイルを編集するときはジョブ制御でがんばる複数ファイルを編集するときはジョブ制御でがんばる Ctrl-Z でサスペンド fg コマンドで復帰
使うもの(5)バージョン管理システム CVSかSubversion
使うもの(6)独自の開発ツール ReFe rdefs
ReFe Rubyのリファレンスマニュアルを 検索するツール
rdefsコマンド ファイルに定義されている クラスやメソッドを 抜き出して表示する
独自ツールのポイント • Ruby だけで書く • インストーラを付ける