Life is beautiful: Python Hack : 噛めば噛むほどおいしくなるクロージャの話
最近 JavaScript を書く機会が増えているが、それに従って自分のコーディングスタイルが少しづつだが変化してきているのが分かる。もともと「コードの読みやすさ」や「実行効率」にとことんこだわるタイプだが、(JavaやC++になくて)JavaScriptやRubyにあるクロージャや無名関数が私のコーディングスタイルにとてもマッチしているからだと思う。簡単な例を紹介しよう。Pythonで書かれた ...
このエントリーをブックマークしているユーザー
-
HeavyFeather
-
Hoshi-KN
自分自身を書き換えるのか。
-
abbey_rita_sady
-
voidy21
-
Bell000
-
agw
-
takuno
あまりクロージャを駆使すると、一部の人しか理解できない黒魔術になってしまうので、そこは気をつけなければいけない。
-
sbg3
-
ykikuchi
-
Nao_u
-
sgtakeru
-
nahA
-
wakarany
Makotoのコメント
-
equinox79
<Life is beautiful: Python Hack : 噛めば噛むほどおいしくなるクロージャの話>
-
t02026yi
-
moguriso
-
chocoring
-
Wacky
-
masakielastic2
-
soranosita
-
needingyou
-
wordi
オブジェクト指向で言う所のSingletonパターン的な動作
-
hiro360
-
honeybe
-
bunhiko
-
Kiske
-
swingray
-
rokujyouhitoma
-
honamis
-
shishimaruby
-
yub_314159
-
kazumi0711
-
x5gtrn
-
withbrowneyes
-
hisasann
クロージャ
-
kamataro
-
h_kenan
-
hirose504
-
tarchan
-
Cliche
-
mamimumi
-
u1_fukui
-
snowin
-
stealthinu
うーん、これ読んでもクロージャがあることがそんなにうれしそうに感じられない… クロージャのおいしさがもっとわかるエントリーってどっかにないのかな?
-
kistame228
-
scientre
一度しか呼ばれない初期化処理を置き換えてしまう。その手があったか!
-
amring
-
toshipon123
なるほどー
-
snailramper
-
nabetama
-
koumiya
オーバーヘッドがどのくらいになるのか気になったのでJavascriptで計測してみた。http://d.hatena.ne.jp/koumiya/20091108
-
allegro
クロージャ?なにそれおいしいの?状態なう
-
y_n_c
-
yamanetoshi
-
miyx
-
ikeike443
可読性がちょっと厳しいけど、すごく参考になった。
-
rezoo
これは便利
-
Makots
-
cz8686
-
mohayonao
"「メンテナンスのしやすさ」や「実行効率」にこだわりつつ作ったプログラムとそうでなプログラムでは、出来上がった時に大きな違いが出る。"
-
akit
-
hamasta
-
czblue
-
tester000
こんな使い方もあるのか
-
azurestone
-
seidai3
-
taka222
-
tknzk
-
tksthdnr
-
gan2
-
yogasa
-
kokorohamoe
C++には ->* 演算子 や.* 演算子があるのだが、意外と知られていない。
-
takedevchan7
-
moridai
-
syanbi
デコレータについても解説をお願いしたい。あとメタクラス。
-
jay777
-
patu90da
-
shiban8y
-
phirose
globalってあんまり使いたくないような
-
manaten
-
susue
-
ktplus
-
tridentfield
-
ucho
はっきりと利点が伝わるクロージャの説明
-
nelnal_programing
クロージャの使い方について。流石に分かりやすい。
-
akira655
-
ku-kai27
-
sirocco
-
r_ikeda
-
moon_croix
-
heavenshell
-
Rewish
-
teruyastar
-
y-kawaz
関数を役目が終えたら差し替えちゃうのか、面白い。/Stateパターンっぽいな
-
jampanDVN
-
masarusanjp
-
watarineko
-
payopayo54
-
kisaramatsui
-
sugarbabe335
-
qnighy
ところで何msくらい早くなるんですか
-
hiroomi
-
terazzo
クロージャでローカルな状態作る+状態判断の代わりに実装を入れ替えるStateパターン的な発想。ネストスコープに代入できたらグローバルなgetに再代入しなくても良そう/いっそ"_config=(読込処理)/while(True): yield _config"で
-
StepHacks
-
A410
-
TMTL
-
a_tsu_shi
"あまりクロージャを駆使すると、一部の人しか理解できない黒魔術になってしまう" そうなんだよね。C#のLINQやラムダ式もそこが難点。
-
nekomori
-
mi2ru
-
neko-note
-
fuktommy
オブジェクト指向だとifはあまり書かずに済むのだけど、初期化のところには書かないといけなくて困ってたんだ。PHPだとcall_user_func()みたくなって使いにくそうだけど、方法はあるかも。
-
t_mori
-
dgdg
pythonって使ったこと無いけど好きになれそうな印象
-
gami
-
bojovs
-
hikm
-
coolstyle
-
Naruhodius
-
t9md
-
minony
-
ryshinoz
-
asonas
「あまりクロージャを駆使すると、一部の人しか理解できない黒魔術になってしまうので、そこは気をつけなければいけない。」
-
gom68
-
nyamapp
-
threeMonths
-
shodai
http://dqn.sakusakutto.jp/2009/01/javascript.html で補完してようやく理解。
-
takanorikido
-
dpprkng
2つ目のソースリストが優れている点を理解できなかった…(;_;
-
moeprj
-
nbqx69
-
kodaif
"小さな話と言えば小さな話だが、こんな風に「メンテナンスのしやすさ」や「実行効率」にこだわりつつ作ったプログラムとそうでなプログラムでは、出来上がった時に大きな違いが出る。"
-
sakito
-
wekenny
-
world_style
-
aomushi510
-
ryskosn
-
finalvent
-
Shinnya
-
bsiyo
dev: Life is beautiful: Python Hack : 噛めば噛むほどおいしくなるクロージャの話 :
-
longroof
噛んでみるか...
-
maido99