さてさて、先週水曜日に東京Node学園 12時限目を開催しました。 DeNA様からスシの供給(ハッシュタグを付けて再送) #tng12 pic.twitter.com/QC9bTX49a2— S治 えすじ(ティア108-F70b) (@esuji) April 24, 2014 こんな感じで寿司の話ばかり目立ってますが、かなり寿司で喜んでいただいたみたいで恐縮です。 Node-v0.12の新機能について by @jovi0608 Node-v0.12の新機能について from shigeki_ohtsu Node v0.12の新機能として、主にstream3の話とPromise/Object.observe/WeakSet, WeakMapの話でした。本当はもっとたくさんの話をしてもらいたかったんですが、時間の都合で途中までになってしまいました。 実際、Node v0.12の機能がここまで
Gruntについて最新の気持ち ::ハブろぐ 上記のブログエントリを読んで非常に今自分が感じていることと共通点を感じました。 Gruntに対する最新の気持ちでは2つの問題提起がされてました。 1. Gruntfile.jsが長すぎる(700行とか) 2. そもそも全部gruntでやらなきゃいけないのか 1.に関しては色んな解決手段があります、ブログの筆者も解決されているようですし、この件に関しては次回のMaintainable Gruntfile.jsで触れます。 最初は2.に関しての、全部gruntでやらなきゃいけないんだっけ、という疑問に関してです。 僕も同じ思いをしてたので、同調してブログを書きます。 gruntについて 言わずと知れたタスクランナーですね、gruntを使うとjavascriptのminifyやmeta cssのコンパイルといったフロントエンドにありがちな作業を自動化
JavaScriptに、applyとcallというメソッドが用意されていますが、自分なりにapplyとcallの丁寧に説明をしてみようと思ってこのエントリーを書くなどをしてみます。 applyとcallは非常に似たメソッドなので、まずはcallから説明します。 callメソッドとは? callメソッドは以下のように呼び出します。 methodA.call(thisArg, [, arg1 [, arg2, ...]]); methodAには任意の関数(メソッド)を指定します。 callの引数は第一引数にmethodAのthisとしたいオブジェクトを指定して、第二引数以降はmethodAに渡したい引数があれば、カンマ区切りでそれぞれ指定します。 callメソッドは、すべての関数が共通して持っているメソッドです。すべての関数はFunctionクラスのオブジェクトで、callはFunction.
node.jsにはCommonJSのモジュールに準拠したmodule機構があり、あるファイルの中から別のファイルの中の関数やオブジェクトを呼び出して使うことができるようになっています。 モジュールには「コア・モジュール」と呼ばれ、node.jsに標準で組み込まれているモジュールの他に、第三者が開発してnpmjs.orgなどで配布されているモジュールがあります。 コア・モジュールの例はhttpモジュールやcryptoモジュールなどで、どこかからかモジュールをダウンロードしてインストールしなくても、単純にrequireすることで即座に使用可能になるものです。 例えば、次の例ではコア・モジュールであるcryptoモジュールをrequireし、DiffieHellmanクラスのインスタンスを得ています。 var crypto = require('crypto') , alice = crypto
simple, flexible, fun Mocha is a feature-rich JavaScript test framework running on node and the browser, making asynchronous testing simple and fun. Mocha tests run serially, allowing for flexible and accurate reporting, while mapping uncaught exceptions to the correct test cases. Hosted on GitHub. Features browser support simple async support test coverage reporting string diff support javascript
ちょっとnode.jsでAPIサーバ作ろうとして express4に上げたらいろいろと使い方が変わっていたので 備忘録的に書いておきます。 expressでのプロジェクトの作り方 ここを見ながらやるのが確実。 https://www.npmjs.org/package/express express3の場合 express3までは $ npm install -g express # グローバルにexpressコマンド入れて $ express appName # expressコマンドでひな形作成 .. $ node app.js # アプリケーション起動 こんな感じでexpressプロジェクトを作れましたが、 express4から結構変更されています。 express4の場合 express4ではひな形を作るコマンドが本体から分離されました。 またアプリケーションの起動方法も変更されて
What is power-assert? is an implementation of "Power Assert" concept in JavaScript. provides descriptive assertion messages through standard assert interface. No API is the best API. With power-assert, you don't need to learn many assertion library APIs (in most cases, all you need to remember is just an assert(any_expression) function) Stop memorizing tons of assertion APIs. Just create expressio
タイトルで嫌な予感がしてる人もいるでしょうが、ScalaがJSに変換されて動きます。やったぜ。 Scala.js http://www.scala-js.org/ 試す このサンプルプロジェクトを git clone するのが良いです。 sjrd/scala-js-example-app https://github.com/sjrd/scala-js-example-app サンプルコードはこんな感じ package example import scala.scalajs.js import js.Dynamic.{ global => g } object ScalaJSExample { def main(): Unit = { val paragraph = g.document.createElement("p") paragraph.innerHTML = "<strong>
ってsinonのスタブ漏れを探しながら何度目かわからない感じにキレてた。 とにかく仕事でJSのテスト書くのが辛いので考えてみる。比較的JSのテストに慣れてる自分ですら辛いのだから、世界はもっと辛いに間違いない。サーバーサイドのnode.jsの話ではない。 JavaScriptで完結しない 構造がHTMLの構造と密結合している。装飾や位置、表示/非表示はCSSによって制御されている。 クライアントJSはHTMLと密結合しており、CSSからビューは影響を受ける。それらがネットワークの結果を受け非同期に振る舞いを帰る。その最終的な値を取得するのが難しい。 もちろんサーバーサイドだってDBやネットワークという外部リソースを扱うが、モックの手法が確立しているし、局所的な複雑度は、JSの方がはるかに多い。 言語仕様が貧弱 mochaやjsmineはrspecを真似てるけど、本質的にJavaScript
Javaに鉄道指向プログラミング (Railway Oriented Pro gramming) のエッセンスを取り入れる/Bringing the Essence of Railway-Oriented Programming to Java
U-NOTE サイト閉鎖のお知らせ 長らくのご利用、誠にありがとうございました。 当サイトは2024年12月31日をもちまして閉鎖いたしました。 これまでのご支援に心より感謝申し上げます。
kishikawakatsumi/JavaScriptBridge · GitHub 前にiOS 7から導入されたJavaScriptCore.frameworkを使ってUIKit標準のクラスを操作する話を書きました。 JavaScriptだけでiOSのUIを書いてみる - 24/7 twenty-four seven JavaScriptCoreを使ってJavaScriptからObjective-Cのオブジェクトを操作するのは、あらかじめJSExportプロトコルで公開しておく必要があるなど、あまり実用的ではありませんでしたが、このライブラリを導入すうることで、そういった事前準備がすでに済んでいる状態で使いはじめることができます。 また、JavaScriptからObjective-Cのクラスを定義できるなどいくつかの拡張を加えてあり、UIViewControllerのサブクラスで画面を定
この投稿は iOS Advent Calendar 2013 - Qiita の22日目の記事です。 iOS 7から新しく追加されたJavaScriptCore.frameworkを使ってJavaScriptだけでUIを書いてみましょう。 JavaScriptCore.frameworkの基本 (Objective-C -> JavaScript) まずJavaScriptCore.frameworkの基本的な使い方は次のようになります。 JSContext *context = [[JSContext alloc] init]; [context evaluateScript:@"a = 10;"]; JSValue *value = context[@"a"]; NSLog(@"%d", value.toInt32); // => 10 ↑ まずJavaScriptの実行環境としてJS
2013-12-15 とあるプログラミング言語処理系のセルフホスティング化に携わった (この記事はJSX Advent Calendar 2013の一部として書かれました。) 僕がJSXというプログラミング言語の開発に携わってこの冬で早1年半になります。コンパイラとしてのjsxにはこの1年半で幾多の出来事がありましたが、その中でも一番巨大なものがセルフホスティングでしょう。つまりJSXのコンパイラをJSX自身で書きなおすということです。 メインラインのコードをまるまる入れ替えるこのセルフホスティングは大きな苦労を伴いました。実際、通常のポーティングとは違いコンパイラそのものを入れ替えてしまうわけですから、バグの出方などもなかなか味わい深いものです。 JSXセルフホスティングを行ってから既に1年が経過しようとしています。今までこの作業の苦労について外で話したことは無かったのですが、「プログラ
2013-09-22 iOS 7 @ JavaScriptCoreでObjective-CからJavaScriptを実行する iOS 7 JavaScript Objective-C JavaScriptCore JavaScriptCore iOS 7の新機能を眺めていてJavaScriptCoreフレームワークが追加されているのを見つけました。JavaScriptCoreはSafariなどで使われているWebKitのJavaScriptエンジンです。今までTitanium MobileのiOS版などで使用されていたのでJavaScriptでネイティブアプリ開発は別に珍しいことでもなかったですが標準でサポートするようになったようです。Objective-Cとのやり取りがスムーズなのでLuaやmrubyなどその他のスクリプトより導入が簡単です。 コンテキスト作成から簡単な使い方まで iOS
by Vernon Swanepoel ウェブサイトのユーザーがどれぐらいページを見てくれているのか、訪問頻度はどれぐらいなのかといった情報を追跡するのにはクッキー(Cookie)やJavaScriptなどが使用されますが、そうやって追跡されるのがイヤだということでCookieを受け入れないように設定したり、JavaScriptをオフにしているという人もいるはず。しかし、それでもユーザーを個別に追跡する方法があります。 Lucb1e.com :: Cookieless Cookies http://lucb1e.com/rp/cookielesscookies/ これはオランダ在住でコード・セキュリティ・ネットワークを愛しているというlucb1eさんが明らかにしたもの。手法としては新しいものではなく、多数のサイトで使われているにもかかわらず、そのことを認識している人はほとんどいないというも
Webサイトの表示高速化対策していますか? 日本は欧米諸国に比べWebサイトの表示高速化対策をしているサイトが少ないです。 特に、最近ではスマートフォンの普及によりモバイルサイトの需要も増え、高速化をしなければいけない機会も増えてるのかなと思います。 日本のモバイルデータ通信はLTEで高速になりつつあるとは言え、まだまだ「貧弱!貧弱ゥ!」です。 幸いなことに僕も最近鶴の一声によってクライアントからサーバー周りまで包括的な高速化対策を経験する機会を得ることができました。 それまでは、「手間がかかりすぎるからできればやりたくない」というのが本音でした。職務怠慢ですね(苦笑)。 でも、できるだけ楽したい!と思うのが人の常。 この連載ではできるだけ楽をしながらできる高速化手法と計測結果を1つ1つ紹介しようと思います。 基本的にはすべて受け売りの内容です。やってみた対策を羅列して、連載の中で自分で試
JavaScriptのサブセットとして静的型付け言語を定義し、事前コンパイルを可能にすることでJavaScriptの実行速度を劇的に改善しようというasm.jsの概要を、1つ前の記事で調べました。 まだasm.jsの情報は少ないのですが、その中でも分かりやすくまとまった記事がDevon Govett氏のブログBADASS JAVASCRIPTのエントリ「asm.js: A Low Level, Highly Optimizable Subset of JavaScript for Compilers」です。 Govett氏に翻訳の許可を得たので、翻訳記事として掲載します。 asm.js: A Low Level, Highly Optimizable Subset of JavaScript for Compilers MozillaのDavid Herman、Luke Wagnerそして
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く