タグ

関連タグで絞り込む (0)

  • 関連タグはありません

タグの絞り込みを解除

programmingとProgrammingとRubyに関するshimanpのブックマーク (34)

  • PHP しか書けなかった僕が Ruby を始めたころに思ったこと10点 « blog.udzura.jp

    RubyKaigi とか色々あって、ふと、僕がプログラミングを始めたころのことを何となく思い出したので走り書きしておきます。特に PHP に関しては記憶が曖昧なところがおおいので、 PHPer モヒカン族によるツッコミを歓迎します。 配列とハッシュが違う PHP においては、配列も連想配列もすべて array() と言う関数で生成する。むしろ、配列というものがキーを数字にしているだけの連想配列と言う位置づけだと思う。 Ruby ではもちろん、主たるコレクションには Array と Hash の二種類が存在し、区別される。最初はこの区別に若干戸惑いを覚えた。 ちなみに Python だとリスト・タプル・辞書ともっと増えるわけで、Javaのコレクションクラスに至ってはさらに多いし、この辺はどの実装が正しいとか適切とかではなく慣習なのかなあ、と思ったりする。 型(クラス)がより厳格 PHP では

  • そろそろしっかりvimを使う。vimでRubyのコーディングをするために - 南極の図書館

    Rubyのコーディングに向いているIDEは何があるのだろうか。 JavaならばEclipseがデファクトスタンダードになっているし、言語によってはVisualStudioが向いているものもある。 RubyだとNetBeansかAptanaを勧められることが多かったのだが、使ってみると私にはどうもしっくり来なかった。 最終的にvimが一番良いという結論になり、最近は専らvimで書いている。 コーディングをするにあたり、まずは「補完機能」があり「リファレンスにすぐ飛べる」のであれば最低限の機能は満たしていると考える。 今回は、vimでそれを実現するプラグイン、neocomplcacheとvim-refの導入方法を書いていく。 なお、プラグイン自体はRubyに特化したものではなく、他の言語でも使うことができる。 エントリは下記2エントリの続きになるので「その3」にあたる。 そろそろしっかりvi

    そろそろしっかりvimを使う。vimでRubyのコーディングをするために - 南極の図書館
  • RubyからScalaに乗り換えた15くらいの理由 - ヽ( ・∀・)ノくまくまー(2010-04-26)

    ● [Scala] RubyからScalaに乗り換えた15くらいの理由 [注意] この文章を読むと、既存のRubyコードをScalaでrewriteしたくなる、 Rubyコードで型チェックをやるのがになる、Ruby案件でやる気が出なくなる、 などの幻覚や異常行動が報告されています。 現在関わっているプロジェクトや家族のことを常に意識し、 気を強く持って冷静に読むとよいでしょう。 「Scalaプログラミング入門」を読みはじめて、いきなり大きく頷いてしまった。 "コーディング時間の半分をテスト作成に費やさなければならなかった"(p.3) "Railsによって得られた生産性の向上は、テスト作成の作業に失われてしまいました"(p.3) まさにここ数年私が抱いてた漠然としたストレスの正体が、的確に文章となっていたからだ。そしてほどなく、「あ、この機能がRubyに欲しかった!」という驚きと共に Sc

  • Martin Fowler's Bliki in Japanese - クロージャ

    http://martinfowler.com/bliki/Closure.html 動的言語に興味がでてくると、 クロージャやブロックと呼ばれる概念に出会うと思います。 C/C++/Java/C# などクロージャを持たない言語をご使用の方は、 どういったものなのかご存知ないかもしれません。 ここでは簡単にクロージャについて説明します。 クロージャを持った素晴らしい言語を使ったことある方にとっては、 あまり面白くない話かもしれません。 クロージャは長年使用されてきました。 私が最初に出会ったのは、おそらく Smalltalk だったと思います。 Smalltalk ではブロックと呼んでいました。 Lisp ではクロージャを多用しています。 Ruby でもクロージャが提供されています――多くの rubyist がスクリプト言語に Ruby を選ぶのはこのためです。 基的にクロージャとは、ブ

  • brainf*ckでジョジョ言語 - 旧toyoshiの日記

    CSNagoya3周年記念の発表で使ったネタ言語。 ジョジョ言語 バージョン3です。 タイトルでピンと来なかった人はwikipediaのbrainfuckの項目などをご覧下さい。 賢い人がバージョン6を作って素数をカウントするなどしてくれたらいいと思います。 特徴 バトル風言語 バージョン3 ジョジョ言語の構文 オラ … 現在のポインタの値を1増やす 無駄 …現在のポインタの値を1減らす スターフィンガー!、やれやれだぜ…ポインタを1つ右に動かす ロードローラーだ!、貧弱ゥ…ポインタを1つ左に動かす ハーミットパープル…現在のポインタの値をアスキーコードとして出力する 新手のスタンド使いか!…標準入力から1文字読み込み、現在のポインタに書き込む あ…ありのまま 今 起こった事を話すぜ!…ポインタの値が0なら、対応するザ・ワールド!までジャンプ ザ・ワールド!…ポインタの値が0以外なら、対応

    brainf*ckでジョジョ言語 - 旧toyoshiの日記
  • RubyがPHPに勝つにはメソッド呼び出しのための新しい演算子が必要 - kなんとかの日記

    PHPerがRubyを触り始めて最初に不機嫌になるのは、空文字列が偽ではないことだ。つまり、PHPなら「if ($var)」で済むのが、Rubyだと「if !var.empty?」と書かなければならない。これでPHPerは不機嫌になる (まあ気持ちは分かる)。 if ($var) ... # PHP if !var.empty? ... # Rubyそれだけならいい。もし値がnilである可能性があるなら、Rubyでは「if var && !var.empty?」と書かなければいけない。この時点でPHPerは不機嫌どころかブチ切れる。なんでこんなに書かなきゃいけないんだ!? PHPなら「if ($var)」で済むのに!! SHIIIIT!! if ($var) ... # PHP if var && !var.empty? ... # Rubyここで、「空文字列が偽になるような言語仕様こそク

    RubyがPHPに勝つにはメソッド呼び出しのための新しい演算子が必要 - kなんとかの日記
  • Route 477 - Ruby基礎文法最速マスター&Ruby書籍紹介

    Perl基礎文法最速マスターをだいたいそのまま、Rubyに置き換えてみました。 他の言語をある程度知っている人はこれを読めばRubyの基礎をマスターしてRubyを書くことができるようになる…かも知れません。無保証です。 参考: オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (1.9.2) オブジェクト指向スクリプト言語 Ruby リファレンスマニュアル (1.8.7) ■ 1. 基礎 インタラクティブRuby (irb) irbを使うと、Rubyのプログラムを簡単に練習することができます。 /Users/yhara $ irb irb(main):001:0> puts "hello" hello => nil irb(main):002:0> 1 + 1 => 2 以下の説明は、irbを起動して、自分で試しながら読むと習得が早いと思います。 表示 (print,

    Route 477 - Ruby基礎文法最速マスター&Ruby書籍紹介
  • Ruby on Railsの「えせMVC」の弊害

    先日のエントリーでも少し触れたが、Ruby on Railsの最大の問題点は、それが持つ「一見そのフレームワークがMVCの形をとりながら、MVCの最も大切なところを外している『えせMVC』である」点にある。MVC(Model View Controller)がなぜ必要かを根底の部分でちゃんとと意識せずにRailsアプリケーションを作ると、後々ひどい目に会うので注意が必要である。 その意味では「RailsでMVCを学ぶ」などもっての他だし、「JavaにもRailsと同じようなフレームワークを作って業務用アプリの開発を効率化しよう」などという発想もとても危険である。 ということで、今日はまずはMVCの解説から。 MVCの発想の根底には、「モジュール化と情報の隠蔽により、プログラムがスパゲッティ化するの(コード間の相互依存関係が複雑に入り込んでしまってにっちもさっちも行かない状態になること)を避

  • Curl+JRuby+Google App EngineでTwitter風アプリを作る ~ローカル環境構築編~

    はじめに Twitterは140文字以下の短いメッセージをつぶやきあうシンプルなサービスです。新しいコミニュケーションの形として利用している人も増えてきました。 Google App Engine(以下 GAE)についてはご存知の方が多いと思います、Googleが提供するクラウド環境で、ある規模までのアプリなら無料で使えます。また、GAEは単なるサーバ環境の提供ではなくスケーラビリティと信頼性が得られるアプリケーションの実行環境です。しかし使える機能やデータ管理の方式はGoogleの提供するSDKに従う必要があります。 GAEは2009年4月からは、Pythonに加えJavaがサポートされるようになりました。連載の第1回目でふれたように、Rubyの処理系にはまつもと氏の作った処理系(MRIと呼ばれます)以外にも、Javaで作られた JRuby という処理系があります。JRuby はJav

    Curl+JRuby+Google App EngineでTwitter風アプリを作る ~ローカル環境構築編~
  • 八角研究所 : 誰でも簡単にできる Twitter ボット作成入門

    誰でも簡単にできる Twitter ボット作成入門

  • オレオレ検索窓を設置しよう - mixi engineer blog

    まだピクミン2をクリアしてないのでケジメ的に新作ゲームを買えないmikioです。今回は、Tokyo Cabinetを使って激烈簡単に特定サイトの専用の検索機能を設置する方法について説明します。クローリングから検索までを10分くらいの作業で可能にします。 特定サイトの検索エンジン Web全体の検索機能を作るのは、途方もない技術力と設備を持っているGoogleMicrosoftなどのビッグプレーヤでないと難しいのが現実です。でも、自分が気に入っているいくつかのサイトを対象とした検索エンジンを作るのであれば個人だってできます。また、インターネットから手が届かないイントラネットのコンテンツの検索機能は自分達で手がけないと構築できません。 ということで、企業用の検索システムが数多く売られていますし、LuceneやGroongaやHyper Estraierなどのオープンソース製品も世に多数存在しま

    オレオレ検索窓を設置しよう - mixi engineer blog
  • クローラーを作るためのフレームワーク·Anemone MOONGIFT

    RSSフィードやWeb API、Mashupなどの単語が注目を集める中、Webクローラーを通じて外部のWebサイトにあるデータをかき集め、それを解析して別な形にするというのはよく見られるものになってきた。 あるURLを指定し、そこからリンクされているURLを一覧表示できる そうした数々のシステムの中で、クローラーとなる基盤は大きな違いはない。Webサイトのデータを取得し、次のリンクを洗い出して取得していくようなものだ。そうした共通動作部分を切り出したフレームワークがAnemoneだ。 今回紹介するオープンソース・ソフトウェアはAnemone、Webクローラを開発するためのフレームワークだ。 Anemoneは任意のWebサイトにアクセスし、その内容を解析するWebクローラーだ。例えばあるURLに付けられているリンクを一覧で取得するようなことも簡単にできる。外部サイトなのかどうかも区別できるの

    クローラーを作るためのフレームワーク·Anemone MOONGIFT
  • ついに無制限に解放されたGoogle App Engine/Java。RoRやPHP、もちろんJavaも試そう

    ついに無制限に解放されたGoogle App Engine/Java。RoRやPHP、もちろんJavaも試そう 4月8日に発表されたGoogle App Engine/Java。利用できるのは1万人までと制限がついていたのですが、それが撤廃されてだれでもサインアップして利用できるようになったと、Google App Engine Blogが伝えています。 Google App Engine/Javaは発表されてまだ2カ月と少しですが、はやくもJava VMの上にPHPRuby、それにJavaのフレームワークなどの実装が行われています。今回はそうしたGoogle App Engine/Javaの活用情報をまとめてご紹介しましょう。 Google App Engineの基礎知識 ITproで、Google App Engineの入門記事が掲載されています。アカウントの取得方法やSDKの入手方

    ついに無制限に解放されたGoogle App Engine/Java。RoRやPHP、もちろんJavaも試そう
  • Loading...