ラベル プログラミング の投稿を表示しています。 すべての投稿を表示
ラベル プログラミング の投稿を表示しています。 すべての投稿を表示

2019/07/18

フロントエンドフレームワーク

Web界隈におけるメインストリームの流行。
特にフロントエンド/Javascript系。
やっぱ或程度は乗っかっておかねばらない。
まあ別に乗らなくても理解してりゃいいんだけれど、乗った方が理解が早い。
つうか私は雑魚なので使わないと理解できない。
できれば流行り切る前に乗っておきたい。

多くの場合、流行の技術には人も集まるし、利用の幅が広がったり熟れてくるのが早くなる傾向がある。
できるだけ少ない労力でモノを作るには、流行り物に乗っかるのが一番だ。
また同じ技術を長く使うことができれば、学習に割かねばならない労力も減るってモノだ。

私には自分で一から何かを作る能力も気力も無いので、在りモノを繋げてでっち上げる他ないのだ。
私は楽がしたいのだ。兎に角楽がしたいのだ。

ちょい前まで結構長い間、Web系から離れていたのだけれど、最近またちょいちょい触っている。
Javascriptのletとconstは、もうそろそろ、殆どの場面で使っていっていい気がする。
Bootstrap4にはやっと慣れてきた。
jQueryは息が長くて素晴らしいね。
w2uiはイットキめっちゃ使ったけど、ここ数年更新が無い・・・。
prototype.jsとかどうやって使ってたのかさえ覚えていない。

で、よ。
一寸複雑なことしようとすると、あると便利なフロントエンドフレームワーク。
ReactかVue.jsか、どっちに乗っかろうかという話。
jQueryかprototype.jsか、の時代を彷彿とさせる。
どっちが今後息が長く流行り続けるのか。
或はどちらかはどちらかに駆逐されたりするのか、それとも共存するのか。
現状ではReactなんだろうけれど、Vue.jsも自由な感じでどっかでパッと飛び出しそうな感じはある。
或は結局両方流行り切らず、jQuery+αでええやん、という話になってきたりするのか。
お気に入りのJSライブラリとかがjQuery依存だったりして、結局jQueryは使い続けなければならなかったりすることも多いだろうし・・・。
或はAngularとか?
息の長さから言えば、Angularが強そうではあるけれど・・・。

2016/03/19

Web系言語

Web系言語をとても久し振りに触ってみたり。

JSONファイルをUTF-8のBOMアリで返していることに気付かず、頭の3byteの所為でjQueryでパースできずに半日悩んだり。
ハッシュのキーの綴り間違いに気付かず丸一日悩んだりとか。
久し振りのWeb系だからと言って言い訳にならない感じで躓いている。

Ajaxとかで普段よりも非同期処理が多くなるので、処理実行のタイミングとかに気を付けつつ、処理やソースが猥雑にならないように気を遣いつつ、Collback地獄にも陥らないように。
普通の関数のネストとかあんまり気にならないのだけれど、何故かCollbackのネストは厭なんだな。
なんか書き方を工夫すればCollbackも見易くなったりするのかね。
あとTimerもあんま好きじゃないんよな・・・。

そういや最近prototype.jsを見かけないなあ。
私がjQuery系ばっかなので、単に情報を見落としているだけかも知れないけれど。
私も昔はprototype.jsを使っていたのだけれど、結構早い段階で特にコレといった理由も無くjQueryに移行したように記憶している。

まあそんな感じで。

2013/07/11

pow(f, 2.0)よりf*f

C++。今更な話。

2次元で2点間のキョリを求めんのにさ。

sqrt(pow(ax-bx, 2.0) + pow(ay-by, 2.0));

みたいにやりたくなるやん?
でもこれが結構遅いんよね。
今までsqrtが遅いのだと思って、sqrtの直前に無理矢理固定小数点に変換してビット演算根性平方根にしてみたりしたけど、殆ど変わらないか寧ろ遅くなる。
キョリを比較するだけのときはsqrtせずに比較対象をpowしたりしてみたんだけど、イマイチ。
まあこれはこんなもんなんか・・・と思って諦めてたんだけど。

ところがなんとなしに
pow(ax-bx, 2.0)
を
(ax-bx)*(ax-bx)
に書き換えてみるとめっさ速くなった・・・。
こんなことで・・・今までの苦労が・・・。
調べてみるとpowってのは中でテイラー展開とかやってて、自乗するだけの為に使うにはすっげー高級過ぎみたいね。
てかテイラー展開って何?レッツWikipedia(→テイラー展開)。うーん・・・。
あ、因みに私数学で0点取ったことがあります。
あとgccで最適化コンパイルすると、なんとなくpow(f, 2.0)がf*fに最適化されてるような気がする。知らんけど。

序でにvector。
例えばvector <int>v;とかのとき。
要素にアクセスするのに、今までout_of_rangeのとき例外飛ばして欲しくて何でもかんでも
v.at(i)
とかしてたけど、
v[i]
のが大分速い。
out_of_rangeになる心配がほぼ無い場合はv[i]のがよさげ。
場合によってはiterator使った方がもうちょい速いっぽいけど、私が読み難くなるのでよっぽど速度が必要なところにのみ使う感じで。

まあそんな感じで。
今更知った話。