タグ

ブックマーク / d.hatena.ne.jp/shunsuk (7)

  • Rubyの構造体を超簡単に作る会。 - このブログは証明できない。

    データ構造を適宜したクラスを作りたい時があります。メソッドは必要ありません。C系統の言語で言えば、構造体でしょうか。Rubyでは、構造体を超簡単に作ることができます。 まずは、普通にクラスを書いてみましょう。 class Person def initialize(name, age) @name = name @age = age end attr_accessor :name, :age end eita = Person.new("瑛太", 27) juri = Person.new("上野樹里", 23) 非常に冗長な感じを醸し出していますね。そんなのRubyじゃない。。。 そこで、Structを使います。 person = Struct.new("Person", :name, :age) eita = person.new("瑛太", 27) juri = person.new

  • gitで共用リポジトリにpushした変更を取り消す。 - このブログは証明できない。

    天ぷらを大量にべました。油でギットギトです。というわけで、gitで共用リポジトリにpushした変更を取り消す方法です。gitって、ローカルのリポジトリを使う参考記事は多いですが、共用リポジトリを使う記事は少ない気がしますね。でも、githubのユーザーは多いと思います。 490円のServersMan@VPS (CentOS 5) をGitサーバーにする会。 - このブログは証明できない。 追記 2010-12-03 :重要!注意を書いたつもりが書き忘れてました。共用リポジトリをいじるので、複数人で使ってる場合は他の人に影響がでますよね。注意!! あ。間違えてcommitしちゃった。しかも、共用リポジトリにgit pushしちゃった。しかも、50万円もする布団買っちゃった。まず、間違えてcommitしただけなら、git resetを使います。 $ git reset --soft HEA

    gitで共用リポジトリにpushした変更を取り消す。 - このブログは証明できない。
  • 彼氏が(function(){...})()を即時関数って言ってた。別れたい。 - このブログは証明できない。

    JavaScriptの(function(){...})()について、初心者向けの記事があがってました。いい記事ですね。長いけど、いい記事ですね。でも、(function(){...})()を即時関数と呼ぶのに違和感があります。あ。違和感しかありません。 知ってて当然?初級者のためのJavaScriptで使う即時関数(function(){...})()の全て - 三等兵 記事から引用。これですね。 (function($){ $.hoge = function() { }; })(jQuery) (function(){...})()が、「JavaScriptパターン ―優れたアプリケーションのための作法」というで「即時関数」と名付けられてるらしいです。えー。これ、関数じゃないですよね。(function(){...})という無名関数を()でコールしてる処理に見えます。 動詞を名詞とし

    彼氏が(function(){...})()を即時関数って言ってた。別れたい。 - このブログは証明できない。
  • 月315円から使えるインフラサービス Gehirn Web Services がステキで恋に落ちるレベル。 - このブログは証明できない。

    あと1ヶ月もすればもうクリスマスだ。そしてまた1年と1ヶ月もすれば来年のクリスマスだ。アレも欲しい、コレも欲しい。でも、当に欲しいモノって何だっけ?欲しいモノを聞かれて、すぐに答えていた子供の頃。歳をとるほどに、自分の欲しいモノがわからなくなる。そしてプレッシャーがかかると、思わず「からあげ」と答えてしまう。僕の欲しいモノは何なんだろう。 そうだ。サーバーだ。サーバーが欲しかったんだ。僕はずっとサーバーを探していた。昔はRailsが動くレンタルサーバーなんてなかった。専有サーバーを借りるお金などなく、ロリポップの525円の共用サーバーは当時としては珍しくRubyCGIが動いたので、名義で申し込んで(ごめんなさい!)、RailsCGIモードで動かしては画面遷移するたびに10秒くらい動かない画面を見つめたりしていた。最近は、ServersMan@VPSが490円で使えて安いんだけど、や

    月315円から使えるインフラサービス Gehirn Web Services がステキで恋に落ちるレベル。 - このブログは証明できない。
  • タダで読めるHaskell本。5冊。 - このブログは証明できない。

    少し前にHaskellのを買いました。Haskellのを買ったりスシをべたりしていました。でも、iPhoneアプリ開発が忙しくて、ほとんど読んでいません。スシはべましたけど。 タダで読めるHaskellの参考書が紹介されています。 5 Free E-Books on Haskell 参考書の前に。ブラウザ上で試せるインタラクティブなチュートリアル。これ、いいですね。 Try Haskell! An interactive tutorial in your browser Learn You a Haskell for Great Good。 これ。このを買いました。タダで読めるって知らずに。私は生まれつき英語をスラスラ読めない体質なのですが、このは読みやすいです。内容も、説明のテンポがちょうどよくて、頭に入りやすいです。人生に余裕ができたら続きを読みます。 Real World

    タダで読めるHaskell本。5冊。 - このブログは証明できない。
  • Rubyのblock、Proc、lambdaを理解する - このブログは証明できない。

    新年おめでとうございます。2009年の最初のネタはプログラミングのネタにすることにしました。 Rubyについてのステキなエントリーがあったので、紹介します。 no title 私は翻訳能力がないばかりか、リーディング能力も貧相です。ぜひ、原文を読んでみてください。 はじめに Rubyblock、Proc、lambdaはパワフルですが、解りにくい。Rubyはクロージャを使う方法が4つあって、それぞれチョットずつ違います。ここでは、そのへんを解説したいと思います。 Block もっとも簡単で、かつRubyっぽいと言えば、Blockですね。 array = [1, 2, 3, 4] array.collect! do |n| n ** 2 end puts array.inspect # => [1, 4, 9, 16] 何が起こっているか? まず、block付きでArrayの"collect

  • Vimでカーソル行のURLをブラウザで開く。という便利な設定。 - このブログは証明できない。

    ゴールデンウイークも今日で最後ですね。あ、最後と言っても、ゴールデンウイークは来年もあるので大丈夫です。でも、人はいつ死ぬかわからないので、1日1日を大切に過ごしましょう。そう考えると、Vimでファイルを開いていて、そこにURLが書かれているとき、それをコピーしてブラウザのアドレスバーにペーストするなんてやってられませんよね。 Vimでカーソルのある行にあるURLをブラウザで開くショートカットを設定しましょう。.vimrcにこんな設定を書きます。 function! HandleURI() let s:uri = matchstr(getline("."), '[a-z]*:\/\/[^ >,;:]*') echo s:uri if s:uri != "" exec "!open \"" . s:uri . "\"" else echo "No URI found in line." en

  • 1