1 / 72

オレポータビリティ

オレポータビリティ. 日本 Ruby の会 青木 峰郎. 自己紹介. 自己紹介 1/3. 文系の大学生 専門は …… 哲学?. 開発と言えば自宅. 自己紹介 2/3. Ruby 関係者 標準添付ライブラリ メンテナ 著書いろいろ. 自己紹介 3/3. 著書 『 ふつうの Haskell プログラミング 』 『 ふつうの Linux プログラミング 』 『Java を独習する前に読む本 』 『Ruby ソースコード完全解説 』 『Ruby レシピブック 』 『Ruby を 256 倍使うための本 無道編 』.

donna-reese
Download Presentation

オレポータビリティ

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. オレポータビリティ 日本Rubyの会 青木 峰郎

  2. 自己紹介

  3. 自己紹介 1/3 • 文系の大学生 • 専門は……哲学?

  4. 開発と言えば自宅

  5. 自己紹介 2/3 • Ruby関係者 • 標準添付ライブラリ メンテナ • 著書いろいろ

  6. 自己紹介 3/3 • 著書 • 『ふつうのHaskellプログラミング』 • 『ふつうのLinuxプログラミング』 • 『Javaを独習する前に読む本』 • 『Rubyソースコード完全解説』 • 『Rubyレシピブック』 • 『Rubyを256倍使うための本 無道編』

  7. 言語はほぼ確実にRubyかC

  8. ./lib/bitchannel/syntax.rb:398: [BUG] Segmentation fault ruby 1.9.0 (2005-10-22) [x86_64-linux]

  9. 「開発環境」って何?

  10. 部屋

  11. ハードウェア

  12. ソフトウェア

  13. 部屋の様子

  14. 自室

  15. 自室(本棚)

  16. 自室(デスクトップ)

  17. 自室(キーボード)

  18. ハードウェア

  19. 部屋の様子(マシン)

  20. 5つのアーキテクチャ • x86 • AMD64 • Alpha • SPARC • POWER

  21. Linux FreeBSD NetBSD Tru64UNIX Solaris AIX Windows 7つのOS

  22. Linux/x86 Linux/Alpha Linux/AMD64 FreeBSD/Alpha NetBSD/Alpha Tru64UNIX/Alpha Solaris/SPARC AIX/POWER Windows/x86 9つのプラットフォーム

  23. 「こんなにたくさんあってどうすんの?」

  24. 愛でるため

  25. 紺筐体萌え~

  26. ついでにRuby のテストもしている

  27. テーマ解説

  28. 前提:マシン台数もプラットフォームも多すぎる前提:マシン台数もプラットフォームも多すぎる

  29. オレポータビリティ

  30. 俺(の)portability

  31. → オレポータビリティ  が高い! どんな環境でも 同じように開発できる

  32. オレポータビリティを高める戦略

  33. 戦略(1)必須ソフトウェアを限界まで削る

  34. どこでも使えるソフトウェアがそもそも少ないどこでも使えるソフトウェアがそもそも少ない

  35. たくさんソフトウェアを使うとインストールがめんどくさい!たくさんソフトウェアを使うとインストールがめんどくさい!

  36. 必ず使うソフトウェア • Ruby • Cコンパイラなど • zsh • vi • バージョン管理システム • 独自の開発ツール

  37. 使うもの(1)Ruby 開発版 + 安定版ぜんぶ

  38. forall-ruby コマンド システムに存在する 全バージョンの rubyに 同じオプションを与えて実行

  39. 使うもの(2)Cコンパイラなど gcc, bison, flex, autoconf, make, …

  40. 使うもの(3)zsh

  41. 使うもの(4)vi

  42. 複数ファイルを編集するときはジョブ制御でがんばる複数ファイルを編集するときはジョブ制御でがんばる Ctrl-Z でサスペンド fg コマンドで復帰

  43. 使うもの(5)バージョン管理システム CVSかSubversion

  44. 使うもの(6)独自の開発ツール ReFe rdefs

  45. ReFe Rubyのリファレンスマニュアルを 検索するツール

  46. rdefsコマンド ファイルに定義されている クラスやメソッドを 抜き出して表示する

  47. 独自ツールのポイント • Ruby だけで書く • インストーラを付ける

  48. 戦略(2)カスタマイズしない

  49. いちいちカスタマイズしてられるか!

More Related