サクサク読めて、アプリ限定の機能も多数!
トップへ戻る
雑学
umai-bow.hateblo.jp
引数が多い関数は悪、リファクタリングするべきのような言説を見て引っかかったので、メモ程度に書きとどめておきます。 引数の多い関数は全く悪くない 世の中には引数の多い関数は見にくいので悪!構造体にするなどして減らすべき!と言う意見がありますが、本質的ではありません。例えば、日時を表すクラスを考えるとします。コンストラクタの引数には、(西暦、月、日、時、分、秒)を指定できるとしましょう。 日時(西暦、月、日、時、分、秒) 果たして、これらの引数は減らすことができるでしょうか?もちろん、秒、分をオプショナルなものとして、省略を可能にすることはできると思いますが、もし、秒まで指定したいとするならば、このコンストラクタの引数を減らすことはできないでしょう。それは、このクラスが本来的に6つの変数が必要な自由度を持っていることに起因します。なので、このクラスのコンストラクタの引数は減らすべきではありませ
Nightcore(ナイトコア) とはトランスのサブジャンルで、 既存の適当な音楽をスピードアップして二次元の女の子の画像を張り、 Youtube にアップロードした楽曲のこと(である/ではない)。 nightcore - YouTube Nightcore は、成り立ちが結構複雑で面白い。 まず、 Nightcore はノルウェーの学生2人組が2002年に立ち上げたユニットの名前である。 Nightcore 現在も活動中で、もちろん曲も実際に聞ける。 Nightcore - Another Night - YouTube 次に、Nightcore とは悲しげな女性ボーカルの曲を、 ハイスピードにリミックスした音楽のことである。 これがジャンルとしての Nightcore の原意には近い。 Nightcore - Find My Way To You - YouTube また、 Night
Twitter のツイート数を取得できる URL がある。 http://urls.api.twitter.com/1/urls/count.json?url=example.org 例えば、この URL からツイート数をコンソールに表示するプログラムを書きたいとする。coffeescript で 愚直に書くとこんな感じ JSON_URL = "http://urls.api.twitter.com/1/urls/count.json?url=" request = require "request" request JSON_URL+"example.org", (err, res, body) -> data = JSON.parse body console.log data.count これだと使いまわせないから、関数にする。 getTweetCount = (url, callb
gulp で開発用サーバを立てるには、gulp-connect とか、gulp-webserver とががあるんだけど、 ブラックリスト入りしていて、 gulp 的には 「入出力を伴わない処理をプラグインにすんじゃねーよバーカ」 ってことなんだと思う。 なんだか過激だなあと感じつつも、できるだけ依存の少ない gulpfile を書けという方針には、概ね賛成なので、 その辺のプラグインを使わずに、開発用サーバを立ててみる。 静的ファイルを配信するサーバを立てる まずは、普通にサーバを立てる。 connect 使えって言われてるので、素直にその言に従います。 connect = require "connect" gulp.task "serve", -> connect() .listen 9000 やったーー!! 立ちました、ウェッブサーバが。やった。 しかし、何のファイルも配信していない
browserify の API が変わったので、この記事のコードのままでは動きません! gulp で browserify しようとしたんだけど、 色々ハマったので、 ひとまずまとめておきたい。 登場人物 gulp ちゃん フロントエンドのビルドエンジン。 grunt を馬鹿にしてる。 browserify ちゃん CommonJS スタイルの require をフロントエンドでも使えるようにする npm モジュール。 調子に乗ってるけど webpack がきになる。 vinyl ちゃん npm 全般で使うオブジェクトの名前。モナドを感じる。 俺がさっき知った。 gulp の仕組み そもそも gulp って、確かに grunt より短く書けるけど、 具体的になにしてるのかよくわかんねーよ! って思ったので、 まず、この短いコードから考えていきたい。 var gulp = require(
Javascript で非同期処理を連結するときは、必ず async か、それに準ずるライブラリや関数を使え。 async とは、 callback を引数に取る関数を、順番に呼んだり、並列に呼ぶ機能をサポートする npm モジュールである。 async を使うことで、非同期処理を直感的に扱うことが出来る。 次のコードは、 async を使って、 taskA, taskB, taskC を順番に呼び出すサンプルである。 // with async var async = require("async"); var taskA = function(callback){ console.log("taskA"); callback(); }; var taskB = function(callback){ console.log("taskB"); callback(); }; var ta
このページを最初にブックマークしてみませんか?
『umai-bow.hateblo.jp』の新着エントリーを見る
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く