タグ

2015年2月24日のブックマーク (5件)

  • Content-Security-Policy と nonce の話 - tokuhirom's blog

    Content-Security-Policy の nonce を利用すると、XSS の脅威をかなり軽減できます。 そこで、Web Application Framework ではデフォルトで対応したほうがよいのではないか、という旨を @hasegawayosuke さんから教えて頂いたので、実装について考えてみました。 とりあえず CSP の nonce はどういうものなのかを考慮するために、コード例を探していたのですが、実際に動くサンプルというものが nonce 関連のもので見当たりませんでした。 そこで、実際に動くサンプルを用意しました。 https://github.com/tokuhirom/csp-nonce-sample 以下は Sinatra で書かれたサンプルコードです。 require 'sinatra' require 'securerandom' get '/' d

  • ReactとFluxの入門のためにArdaを使ってみた - タオルケット体操

    FluxReactもよくわからん状態で入門して今日一日泣きそうになってたのでメモ。 というかいわゆるJavaScriptMVCをガッツリ書いたこと自体がないです。 Arda、指輪物語由来っていうあたりがよさがありますね。 あと全体的に薄いので、FluxReactの仕組みを学びつつ、他と組み合わせたりいざとなったら捨てたり出来そうなのでよさそうっぽいなっていう雑な考えでいじりはじめました。 また、せっかくなので今回はContext層をTypeScriptにしつつComponentをCoffeeScriptにしてTemplateをreact-jadeに分離する、作者推奨っぽい構成でやってみました。 全体的な構成は mizchi-sandbox/arda-starter-project · GitHub から持ってきた感じなので、ツールの設定など特に言及のない部分は同じだとおもっていただきた

    ReactとFluxの入門のためにArdaを使ってみた - タオルケット体操
  • Babel <3 React · Babel

    One of the things that surprises people quite often is that Babel supports JSX out of the box. Let me show you just how easy it is to switch: Note: There are tons of ways to use Babel, I'll only list a few of them here. If you'd like to see a more complete list check out our Using Babel page. In the Browser (docs) Before:

    Babel <3 React · Babel
    ishiduca
    ishiduca 2015/02/24
    $ browserify -t babelify main.js
  • 日本一熱いデータベース論、「理論から学ぶデータベース実践入門」 - プログラマでありたい

    技評さんから理論から学ぶデータベース実践入門を頂きました。ありがとうございます。 著者の奥野さん 著者は、漢(オトコ)のコンピュータ道で有名な奥野さんです。直接の面識はないものの、データベース設計に悩み調べて行き着いた先が奥野さんが出している情報ということはよくありました。そんなこともあり、心のなかで勝手にデータベースの師匠として崇めています。そんな奥野さんが扱うテーマは、MySQLではなくデータベースです。個別の製品の話ではなく、データベース理論です。実践入門と銘打っているだけあり、データベース設計の具体的なやり方、考え方が随所にあります。 何について書いているのか? ポイントは、説明とやり方を集めたノウハウ集ではなく、設計の考え方の指針を示している点です。例えば、ID設計の話。永遠の論争であるナチュラルキーとサロゲートキー、どちらが適切かという命題があります。それぞれの利点と問題点を上

    日本一熱いデータベース論、「理論から学ぶデータベース実践入門」 - プログラマでありたい
    ishiduca
    ishiduca 2015/02/24
  • ES6のclassは巻き上げがされない - 素人がプログラミングを勉強していたブログ

    ちょっとハマったのでメモ。 例えば alert(A); function A() { } はできるが、 alert(A); class A { } ができないのはなぜか。 class A { } class B extends A { } 例えば、このようなコードの場合、hoisting(スコープ先端への巻き上げ)をしても問題ないが、 関数と違ってextendsはその場で評価しなければいけないことがある。 例えば、 var A = function () { }; A.prototype.x = function () { return 1; }; class B extends A { } alert(new B().x()); というコードの場合、BクラスはAを継承しなければいけないので、var Aで宣言されているものはhoistingされないのでclass宣言もその場で評価しないと、

    ES6のclassは巻き上げがされない - 素人がプログラミングを勉強していたブログ
    ishiduca
    ishiduca 2015/02/24