はじめに 本稿ではRubyを使ってシンプルなPOP3サーバを作成します。 POP3は、いわゆる「メールの受信」のときに使われるプロトコル(通信規約)です。本稿では、このPOP3でサービスを提供するサーバの作成を通じて、以下のことを学びます。ネットワークプログラミングの基礎POP3の仕組みRubyによるネットワークプログラミングRubyによるUNIXシステムプログラミング POPdの概要 本稿で作成するPOP3サーバ(POPd)は、イントラネットなどの信頼できるネットワークを前提として作成します。そのため、セキュリティへの配慮は最低限にとどめ、できるだけシンプルな構造を心掛けます。ただし「最低限の配慮」として、パスワードが平文で流れないようにするため、POP3の中でも特にAPOPという認証方法を用います。 また、速度やメモリ容量に関してもあまり配慮しません。せいぜい数人から数十人が日常的に使
AJAX calls do not cover updates from the server, which are needed for the modern real-time and collaborative web. PubSub (as in “publish and subscribe”) is an established messaging pattern that achieves this. In this article, Alexander Gödde will look at precisely how PubSub solves the updating problem, and he’ll look at one particular solution (the WAMP protocol) that integrates both the calling
文字列操作の比較表: Ruby, Python, JavaScript, Perl, C++ Ruby, Python, JavaScript, Perl, C++ の文字列操作の比較表を作りました。配列操作の比較表の続編です。間違いなどがあったらご指摘いただけると助かります。 Ruby (String) Python (str) JavaScript (String) Perl C++ (std::string)
沖ソフトウェア株式会社は、沖通信システム株式会社および株式会社沖インフォテックと平成22年10月1日をもって合併いたしました。新会社名は、株式会社OKIソフトウェアとなります。3社が行っております事業は新会社にて従来通り継続いたします。
Perl での print debug の方法の紹介がブーム(?)だったので、自分がよく行ってる Ruby での debug 方法7つについて書いてみます。 p ご存じの人も多い Kernel#p メソッド。これを使うとオブジェクトの内容を見やすい形で出力してくれます。 >> p ({:foobar => :baz}) {:foobar=>:baz}Object#inspect を使うと、p で出力するときと同じ文字列を String として取得できます。 >> puts ({:foobar => :baz}).inspect {:foobar=>:baz}初心者の頃この p での出力を使う方法がわからなくて困った記憶が…。 pp pp というライブラリを使うと、p より、より見やすい形式で出力してくれます。たとえば >> a = Array.new(10) { {:foobar => :
http://blog.labnotes.org/category/scrapi/ ruby でスクレイピングして web の情報を取得するのには、今まで正規表現か xpath でやってたので、わりと面倒でした。で、ふと scrAPI というスクレイピングツールキットを知ったのですが、これがかなり便利そう。 このツールキットを使うと、CSS3 なセレクタを記述することで、要素を取得することができます。たとえばとあるサイトのリンクを全部取得したければ、 require 'rubygems' require 'scrapi' require 'open-uri' require 'nkf' require 'pp' $KCODE = 'u' links = Scraper.define do process "a[href]", "urls[]"=>"@href" result :urls e
2008-01-09 15:51:08 +0900 (275d); rev 19 これは草稿です。 いずれ正式なところに移す予定。 対象とする読者 本稿は以下のような読者を対象にしています。 Ruby の拡張ライブラリを書いたことがない C プログラミングがそれなりにできる Ruby プログラミングがそれなりにできる 2 に関して。 「ポインタって何?」レベルの人は不可です。 構造体とポインタをちゃんと使ってプログラミングのできる人を対象とします。 3 に関して。 以下のプログラムの結果がどうなるか、 考えるだけでわかるようにしておいてください。 class C p self # 何が表示される? def C.m puts '1' p self end def m puts '2' p self end end C.m # 何が表示される? C.new.m # 何が表示される? このマニュ
会社からだから、走り書き。 特に推敲もしていない。一度も見直していない。 だが、これは限りなく本音に近いのだ。 ruby -rdebug hoge.rb よく使うコマンド break クラス:メソッド名 delete ブレークポイント解除 c ブレークポイントまで続行 l 該当ソースコード表示 n 次の行へ s 次の行へ、関数であれば中に入る p 画面にデバッグ表示 catch off 例外発生時に止まらなくする。 catch <Exception> 指定した例外発生時に停止 var l ローカル変数をすべて表示 良いところ rubyの標準モジュールが使えるところ。 irb 見たいな感覚で使える。 当然、デバッグ中に require 出来るので、 たとえば、pritty print したかったら require 'pp' pp @hoge とかもできるし、 require 'y' y @h
$Id: index.html,v 1.6 2004/07/20 23:08:12 aamine Exp $ この文書は書籍『Rubyソースコード完全解説』のHTML版です。 ただし初校段階の原稿をベースにしているため、 書籍では修正されている間違いが残っている場合があります。 予め御了承ください。 2004-02-16 に全章を公開しました。 目次 まえがき 序章 第 1 部「オブジェクト」 第 1 章「Ruby言語ミニマム」 第 2 章「オブジェクト」 第 3 章「名前と名前表」 第 4 章「クラス」 第 5 章「ガーベージコレクション」 第 6 章「変数と定数」 第 7 章「セキュリティ」 第 2 部「構文解析」 第 8 章「Ruby言語の詳細」 第 9 章「速習yacc」 第 10 章「パーサ」 第 11 章「状態付きスキャナ」 第 12 章「構文木の構築」 第 3 部「評価」 第
暫く前から欲しい開発環境ってのがあって、「GUIアプリケーションを簡単に作る環境が欲しいよ」があります。 何で欲しいかというと、 仕事とか趣味で、ちょっとしたツールが欲しい需要がある。 Windows環境をメインにしているのと、仕事仲間に配布したいので、GUIアプリケーションにしたい。 開発に時間をかけたくない。 こんな事情がある訳です。 そんな訳で、Pythonを使って簡単にGUIアプリを作れないかな?と妄想する訳です。 紹介 …前置きが長くなってしまいましたが、最近、VisualWx(http://visualwx.altervista.org/indexit.php)がアップデートされたらしく、0.87.0.1になっていました。 早速 入れてみます。 01 posted from フォト蔵 何か、画面変わってますね。 「File」→「New Project」とするとプロジェクト一覧が
最近オープンしたエミナルクリニックの徳島院がめっちゃ気になるなぁ。 医療脱毛なのにすごい安くていい評判も聞くけど、ほんとに痛くないのかな? 通っている人の口コミをみてみたいなぁー。 なんて気になったので、エミナルクリニックの徳島院についてSNSやネットで調べてみました。 そう思ってSNSを中心に調べてみたら、、、口コミや評判も良いじゃない♪ ちなみに、似たようなサービスや商品があるかも?なので、今回調べてみたのはこちらになります。 オープンしました! エミナルクリニックの徳島院ですが、すでにオープンしています!(2021年4月9日オープン済) もちろんですが、オープンしたてなんでめっちゃ予約が取りやすいです。 ただし!!人気のある医療脱毛院なので早めの予約が良いかも?!
String#stripは文字列前後の空白を削除します。 " Hello, world! ".strip #=> "Hello, world!" String#strip!は文字列前後の空白を削除します(破壊的メソッド)。 >> " Hello, world! ".strip => "Hello, world!" >> "\t\t\tHello, world!\n\n\n".strip => "Hello, world!" >> s = " Hello, world! " => " Hello, world! " >> s => " Hello, world! " >> s.strip => "Hello, world!" >> s => " Hello, world! " # String#strip は非破壊的 >> s.strip! => "Hello, world!" >> s =
なんか色々はまったのでメモです。 一見まとめに見えますが、実は「早い段階でやっとけばよかった」と後悔したり、向こう数日以内に後悔する予定のところをピックアップした愚痴だったりしますけど。 文字コードはUTF-8を使うのが無難。 テーブルの文字コードもUTF-8に。latin1にEUC-JPなデータを入れてしまうと大変。 Ajaxを絶対に使わないならSJISとかでもいいかも。 ケータイを考慮する場合も、around_filterを使って入出力の文字コードを変換するほうが楽だと思います。実際にはまった人の声も聞きたい。 vimを使う場合はこちらもどうぞ。 とりあえずバージョン管理はSubversionをお薦め。 Capistrano(旧名:SwitchTower)でdeployする場合、${RAILS_ROOT}/logをリポジトリに入れるとはまる。${RAILS_ROOT}でsvn:igno
奥村晴彦さんの「C言語による最新アルゴリズム事典」技術評論社、1991年、の C 言語プログラムの Ruby への翻訳に挑戦します。プログラムの説明は同書を読んでください。変換はできるだけ逐語的に行っています。プログラムの動作は原作の C プログラムのそれと比較してチェックしていますが、うまく動作しないときは C から Ruby への変換のさいに起きたものです。バグレポートは tnomura@mnet.ne.jp までお願いします。 この Ruby 翻訳版はできるだけレイアウトも含めて原作の C プログラムを変更しないようにしたため、必ずしもRuby らしいコーディングスタイルとは言えないかもしれませんが、プログラムがきちんと動作することを優先しました。C から Ruby への翻訳の著作権に関しては Ruby のライセンスに準じます。配布、改変は自由です。ただし、プログラム本体には原作者の
Ruby on Railsには良くかけたチュートリアルがあって、最初の一歩は踏み出しやすいようになっています。しかし、チュートリアルをひととおり読んで、scaffoldスゲーということはわかったのだけど、次に何をしたら良いかわからないという人が多いようです。かくいう筆者もその一人でした。 次に何をすればよいかというと、一番良いのはやはり自分で実際に何かアプリケーションを作ってみることです。 というわけで、Rails初心者の筆者が、Railsの勉強がてら「Wikiクローン」を作ってみたので、その過程を書いて見ることにしました。何かの参考になれば幸いです。 Wikiクローンを選んだのは、良く知られているアプリケーションであることと、機能を絞れば Rails の練習にはちょうど良いくらいの規模だと思われるからです。 (注: Wikiクローンで大変なのは、Wiki記法のパーサとHTMLに変換
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く