タグ

ProgrammingとRubyに関するlarkerのブックマーク (35)

  • Ruboto

    Ruby support can be added to any modern Android application by adding JRuby as a dependency. The Ruboto project aims to add some additional sample code to make the integration between Java, Ruby, and the Android platform a pleasant developer experience. The Apps created thereafter depend on JRuby (jruby-jars) at runtime to provide full access to Android's Java APIs. Installation is straight-forwar

  • Ruby - Rubyの行コメントとブロックコメント: プログラミング研究室

    【まず読もう】 ・Seesaaブログで、ソースコードを表示させる方法 【一覧】 ・Webサイト一覧 ・API一覧 【おすすめサイト】 ・Geekなぺーじ ・バシャログ ・ネットワークプログラミングの基礎知識 【プログラミング言語】 ・C ・C++ ・C# ・JavaPerlPHPRubyPython ・ActionScript ・HTMLCSSJavaScript ・Flex ・Apache ・MySQL ・その他 ・雑記 【プロトコル】 原理を覚えよう ・HTTP 【API】 ・YouTube API ・ニコニコ動画

    larker
    larker 2014/04/07
    最後のさようならもコメント扱いなのか
  • IO::selectを使う:Geekなぺーじ

    普通の状態では、recvなどはデータが受信できるまでブロッキングします。 ソケットを一つしか利用していない場合にはブロッキングは非常に便利なのですが、ソケットが複数になると困ってしまいます。 シングルスレッドで複数のソケットを扱うとき、片方のソケットでブロッキングしたままになってしまうと他のソケットにデータが到着しても受信が出来なくなってしまうからです。 そのため、複数のソケットを扱っていると、どのソケットからデータが受信可能か知りたくなります。 ブロッキングとは、関数が返ってこない事を表します。 例えば、recvはデータを受信して関数が戻ってきます。 言い方を変えると、データを受信するまでブロックしています。 recvをブロッキングしないノンブロッキング方式で使う事も可能ですが、ここではブロッキング方式のまま使う方法を説明します。 そのような機能を提供するのがIO::selectです。

  • 正規表現によるバリデーションでは ^ と $ ではなく \A と \z を使おう

    正規表現によるバリデーション等で、完全一致を示す目的で ^ と $ を用いる方法が一般的ですが、正しくは \A と \z を用いる必要があります。Rubyの場合 ^ と $ を使って完全一致のバリデーションを行うと脆弱性が入りやすいワナとなります。PerlPHPの場合は、Ruby程ではありませんが不具合が生じるので \A と \z を使うようにしましょう。 はじめに 大垣さんのブログエントリ「PHPer向け、Ruby/Railsの落とし穴」には、Rubyの落とし穴として、完全一致検索の指定として、正規表現の ^ と $ を指定する例が、Ruby on Rails Security Guideからの引用として紹介されています。以下の正規表現は、XSS対策として、httpスキームあるいはhttpsスキームのURLのみを許可する正規表現のつもりです。 /^https?:\/\/[^\n]+$/

  • Ruby標準添付ライブラリcsvのCSV.tableメソッドが最強な件について

    ─ 問題1 ─ data.csvファイルには、5人のプレイヤー(Alice, Bob, Jimmy, Kent, Ross)が二種類のゲーム(gameA, gameB)をプレイした結果が次のような形で格納されている。各ゲームの平均点を求めよ。 data.csv player,gameA,gameB Alice,84.0,79.5 Bob,20.0,56.5 Jimmy,80.0,31.0 Kent,90.5,15.5 Ross,68.0,33.0 data = File.read('data.csv') headers, *scores = data.lines.map { |line| line.chomp.split(',') } scores # => [["Alice", "84.0", "79.5"], ["Bob", "20.0", "56.5"], ["Jimmy", "80

  • Rubyを仕事に使うべし! Part1 なぜ仕事で使うとうれしいのか:ITpro

    プログラミング言語Rubyが注目を集めています。Ruby関連の書籍が次々と出版され,2006年6月には国内初の大規模Rubyイベントである「日Rubyカンファレンス2006」が催されました。また,Rubyで書かれたWebアプリケーション・フレームワークRuby on Rails(以下Rails)が話題となり,Rubyの高い生産性が一般に知られるようになってきました。 Rubyの生産性はJavaの10倍とさえいわれます。なぜRubyは生産性が高いのでしょうか。それは,Rubyはいろいろな言語から優れた所を集めた「いいとこ取り」言語だからです。Rubyの特徴は「構文が強力なので,迅速な開発ができる」「人に優しい言語なので,楽しくプログラミングできる*1」「問題が起こりにくいように設計されているので,初心者でも簡単に安全に作業でき,熟練者は高度なプログラミングを行える」といった点です これらの

    Rubyを仕事に使うべし! Part1 なぜ仕事で使うとうれしいのか:ITpro
  • 自作Rubyプログラム / Ruby/libpng

  • プログラミングとその応用I

    概要 コンピュータはプログラムに忠実にしたがって処理を行います. そこで,自分でプログラムを作れば,自分の思った通りにコンピュータに仕事をさせることができます. プログラムを作ることをプログラミングといいます. ここでは,演習を通じてプログラミングを基礎から学びます. プログラミングの素養を身につけることで,当の意味ではじめてコンピュータを使いこなすことができるようになります. なお,演習はLinux環境で行い,プログラミング言語としてRubyを用います. プログラミングは専門家の仕事であり,誰もが必ずしも学ぶ必要はないという考え方もあります. しかし,コンピュータは,知的活動の可能性を大きく広げることができるツールであり,それを自在に使いこなす手段としてのプログラミングを学ばないことは,卒直に言って非常にもったいないことです. またプログラミングはいい意味で「手軽に」創造性を発揮できる

  • 川o・-・)<2nd life - Rails pluginの作り方

    Rails 0.14からpluginの仕組みが導入され、今までは「libにライブラリを置いて、config/enviroment.rbに〜を記述して云々」という面倒な方法が、vender/plugins以下にファイルを配置するだけで、Rails体の拡張が簡単に可能になりました。その作り方をRailsでRESTを簡単に実現するpluginを題材に説明します。 まずは配置するファイルですが、 vender/plugins/プラグイン名/init.rb # 必須 vender/plugins/プラグイン名/lib/* # pluginで利用するライブラリ ディレクトリは$LOAD_PATHに追加される。必須ではない となります。順序としてはconfig/enviroment.rbが読み込まれた後に、init.rbがevalで実行されます。 ではvender/plugins/restmode/i

    川o・-・)<2nd life - Rails pluginの作り方
  • [ruby-list:41768] Re: nilの扱い

    Subject: [ruby-list:41768] Re: nilの扱い From: Kazuhiro Yoshida <moriq@ r . m Date: Fri, 6 Jan 2006 19:14:10 +0900 References: 41767 In-reply-to: 41767 もりきゅうです。 ARAI Shunichi wrote: > Rubyでプログラムを書いていて、 > もっともよくおこるエラーは、nilに関するものです。 > > なにかの値が空であることを表すのに、 > nilを使うべきなのか、0や空配列などを使うべきなのか、 > ちょっと悩んでいます。 > > nilを使うと、不用意に比較したりしたときに例外になって > しまいます。nilを使わない場合、簡単に > if object > としたときにtrueになってしまいますので、いちいち > オブジェク

  • Rubyで学ぶオブジェクト指向/デザインパターン

    Rubyで学ぶオブジェクト指向入門 オブジェクト指向プログラミング入門(その1).pdf オブジェクト指向プログラミング入門(その2).pdf オブジェクト指向プログラミング入門(その3).pdf オブジェクト指向プログラミング入門(その4).pdf 添付1 論理シミュレータクラス図.pdf 添付2 Pque説明.pdf 添付3 回路シミュレーション例.pdf 添付4 LogicSimソースコード オブジェクト指向プログラミング入門(その5)簡易システム性能評価シミュレータ.pdf オブジェクト指向プログラミング入門(その6)RUnitに適用されたデザインパターン.pdf Rubyで学ぶデザインパターン パターンサンプルコード このサンプルコードは、Java言語で学ぶデザインパターン入門 結城 浩(著) (ソフトバンクパブリッシング ISBN:479731462)に掲載されているサンプルソ

  • Rubyコーディング規約

    はじめに 文書は、Rubyによりコーディングを行う際の規約について述べる。 実際のプロジェクトに適用する際には、このコーディング規約をカスタ マイズして用いることを推奨する。 ソースコードの整形 インデント プログラムを読みやすくするため、インデントを適宜行う。インデント 幅は2とする。また、インデントにはスペースのみを使用し、タブは使用 しない。(環境によりタブ幅が異なるため。) 例: if x > 0 if y > 0 puts "x > 0 && y > 0" end end 一行の桁数 一行の桁数は最大80桁までとする。 空行 複数のクラスの区切には空行を挿入する。 例: class Foo ... end class Bar ... end 誤った例: class Foo ... end class Bar ... end また、クラス内の各構成要素の区切にも空行を挿入する。

  • 「Ruby on Rails」とは? - ネタフル

    最近「Ruby on Rails」というモノを見かけることが増え、なんとなくプログラム民具言語の「Ruby」に関した何かなんだろうとは思っていたのですが、詳しく意味が分からなかったので調べてみました。 「Ruby on Rails」といえば、とりあえずオフィシャルサイトのRuby on Railsです。10年前だったら英語でもなんとか読んだと思いますが、2005年の今は日語の情報が溢れているに違いないと思い、序文のようなところだけ読んでみたいと思います。 Rails is a full-stack, open-source web framework in Ruby for writing real-world applications with joy and less code than most frameworks spend doing XML sit-ups なるほどね。楽し

    「Ruby on Rails」とは? - ネタフル
  • 『Ruby on Rails』入門 : Hotwired

  • http://www.wisdom.co.jp/~ono/programming/index.htm