This domain may be for sale!
Railsのmigrate機能で初期データ登録用のマイグレーションファイルを 作りました。 でも、何度かmigrationをしているうちに、 auto_incrementで採番される値はクリアされないので、 どんどん大きくなっていってしまいます。 他のテーブルで外部参照しておりキーの値が変わっては困るのです。 で、最初は以下のようにマイグレーションファイルを作成しました。 class ImportStatusInitialData < ActiveRecord::Migration def self.up down Status.create( :status => 1, :name => "AA" ) Status.create( :status => 2, :name => "BB" ) Status.create( :status => 3, :name => "CC" ) Stat
プログラミング言語の流行り廃りというのは、それ自体なかなか興味深い分析対象だ。少しだけ昔話をすると、私がコンピュータをいじり始めた十数年前は、PascalやQuick Basicあたりも広く使われてはいたものの、結局はC言語を学ばないとどうにもならなかった。私より世代が少し前の人ならばアセンブリも必修科目だっただろうし、少し後の人だと、もしかすると最初に触れた言語はCではなくJavaかもしれない。 それが最近では、職業はプログラマです、しかしCやJavaで何か書いたことはありません、という人も結構いるようだ。最初に触れた言語がPerlやRubyといった動的言語で、実用途にもそれらをそのまま使い続けているという人が増えているのだろう。個人的には、そういったモダンで設計の優れた言語からプログラミングを学び始められる人たちのことをとてもうらやましく思う。少なくとも、雑誌に数十ページに渡ってみっし
Ruby Way 第2版を読んでいきなりつまづく。 P46 class Myclass @x = 1 # クラスインスタンス変数 @y = 2 # 別のクラスインスタンス変数 def mymethod @x = 3 # インスタンス変数 # ここで@yにアクセスすることはできない end end これのなにが分からなかったかというと、クラスのはじめの@xとメソッド内の@xが別物であるということ(コメントに書いてあるんだけどね)。5年間C++を学んできた自分としては変数の宣言があることは当然だと思っていたため、なかなか理解できませんでした。 ということで、クラス変数とクラスインスタンス変数とインスタンス変数の違いについて。 クラス変数とは、 別名static変数とも言われ、各インスタンスが共有する変数のこと。 クラスインスタンス変数とは、 クラス変数とほぼ同じだが、そのクラスのみでしか参照で
未だにフィールドごとに getter/setter を用意しろって言う人がいてびっくりするわけですが。 フィールドごとに getter/setter を用意する人の言い分 そうやれって本/Webページに書いてある フィールドに触れないと不便だろう それが OOP だ 言い分に対する反論 そうやるなって本に書いてある 5章 オブジェクト指向エクササイズ 5.2.10 ルール9:Getter、Setter、プロパティを使用しないこと ThoughtWorksアンソロジー List<Book> getBooks() { return books; } これはクライアントに最大限の柔軟性を提供するが、さまざまな問題を生み出す. コレクションをそのまま返すと, その内容に依存している内部状態が知らない間に無効にされてしまうかもしれない. 略 代わりに, コレクション内の情報への, 限定された, 意味
pythonWinnyのノード情報(IPアドレスとポート番号)を復号するスクリプトをPythonで書いてみた。ソースコードは以下。自作のRC4暗号化モジュールを使用している。こことかにあるノード情報を復号すると面白いかも。しかしローカルIPアドレスを登録してる奴がいるのには驚いた。 #!/usr/bin/env python # coding: shift-jis import sys sys.path.append("rc4") import rc4 def binary(hexstring): result = [] for i in xrange(0, len(hexstring), 2): result.append(chr(int(hexstring[i:i+2], 16))) return ''.join(result) def decode_node(code): magic
XSコードはふつうPerlコードよりも多機能で高速ですが,書くのが難しいため敷居が高いことも事実です。また,いちいちコンパイルしなければならないのも煩わしい点です。 ところで,Perlにはクロージャという仕組みがあり,動的にコードを生成することができます。したがって,XSでクロージャに等しいことを実現できれば,XSコードの煩わしさを避けつつXSの利益を享受することができます。 なお,この文書はXSによるコード例を解説していますが,XSそのものについては解説しません。 XSについてはperlxstutやperlxs,perlapiを参照してください。 クロージャの分析 まず,Perlのクロージャを分析します。Perlのクロージャは以下のようなものです。 sub make_accessor{ my($name) = @_; return sub{ $_[0]->{$name} }; } my
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く