タグ

2014年4月11日のブックマーク (7件)

  • power-assertでJavaScriptのテストをする ブラウザ編

    power-assertという単純なアサーションでも、テストが失敗した時に分かりやすい情報を出せるテストライブラリ/ツールについての記事です。 前回、power-assertの使い方 Node.js編 | Web scratchではpower-assertの動作やNode.jsプロジェクトでの簡単な導入方法について解説しました。 前回のpower-assert + gulpで紹介したプロジェクトをそのまま使っていくので、見ていない場合はそちらから見ていたほうがいいかと思います。 今回は、ブラウザでのpower-assertの動かし方とデバッグについて書いていきたいと思います。 今回扱う実行環境 Node.js <= 前回 ブラウザ Browserify 前回やったこと まずは前回紹介したgulp + power-assertのプロジェクトを元にやっていきます。 azu/power-asse

    power-assertでJavaScriptのテストをする ブラウザ編
    oppara
    oppara 2014/04/11
    power-assertでJavaScriptのテストをする ブラウザ編 | Web scratch
  • power-assertの使い方 Node.js編

    Power Assertとはassert(a === b); のような単純なアサーションでも、 Assert失敗時(テストが通らなかった時)に分かりやすい情報を表示できるようにする機能の事を言います。 JasmineやChaiが持つshouldやexpect等言った豊富なアサーションを覚える必要なく、 シンプルにassert()を使うだけでも十分な失敗時の情報が得られるため、沢山のアサーションを使い分けしなくていいというメリットがあります。 この記事ではPower AssertのJavaScript実装であるtwada/power-assertの使い方について紹介します。 記事を読む前に このNode.js編とブラウザ編で分けるぐらい長い記事となってるので、 お忙しい方は5分ぐらいで分かるpower-assertというスライドもあるので、そちらを読んでざっくり把握してみるのもいいでしょう。

    power-assertの使い方 Node.js編
    oppara
    oppara 2014/04/11
    power-assertの使い方 Node.js編 | Web scratch
  • "note"がAngularJSでどうやってSEO, Open Graphの対応をしているか|和田 晃一良|note

    noteAngularJSを使って、ブラウザで描写しているこの"note"というサービスはAngularJSを使って、JavaScript側(つまりブラウザ側)でノートの中身を公開しているみたいなのです。 それはブラウザでソースを見てみるとわかります。 例えばhttps://note.mu/sadaaki/n/nd921f3f7c635のノートのソースをChromeで見てみると・・・ まずhtmlタグにng-appのプロパティがついています。これはAngularJSを使うならば必要なプロパティで、ここからnoteAngularJSを使っているんだなあと分かります。 AngularJSは簡単に言うと、サーバー側ではなくブラウザ側でHTMLを描写する仕組みです。これを利用するとどんな利点があるのか。僕の理解している範囲内だと、サーバー側はベースとなるHTML(上のソース)と各ノートのJSO

    "note"がAngularJSでどうやってSEO, Open Graphの対応をしているか|和田 晃一良|note
    oppara
    oppara 2014/04/11
  • ASCIIFlow

    oppara
    oppara 2014/04/11
  • なぜRubyと違い、PHPの正規表現で^$の利用は致命的な問題ではないのか?

    (Last Updated On: 2018年8月13日)Rubyデフォルトの正規表現では^は行の先頭、$は改行を含む行末にマッチします。PHPPCREとmbregexでは^はデータの先頭、$は改行を含む行末にマッチします。 この仕様の違いはデータのバリデーションに大きく影響します。 参考: PHPer向け、Ruby/Railsの落とし穴 の続きの解説になります。こちらのエントリもどうぞ。 なぜ^と$が行の先頭と行の末尾にマッチするのか? そもそも正規表現はテキスト検索を行うステートマシーンとして設計されました。通常テキストには改行があります。特定の行に一致するかどうかテストするように設計するのが自然です。この為、正規表現の^と$は行の先頭と末尾にマッチするように設計されたと考えられます。 正規表現をバリデーションに利用することは可能です。しかし、そもそもは正規表現に一致する「テキスト」

    なぜRubyと違い、PHPの正規表現で^$の利用は致命的な問題ではないのか?
    oppara
    oppara 2014/04/11
    なぜRubyと違い、PHPの正規表現で^$の利用は致命的な問題ではないのか? | yohgaki's blog
  • Heartbleed攻撃と対策

    (Last Updated On: 2018年8月4日)OpenSSLにメモリを自由に参照できるhearbleedと呼ばれるバグ(CVE-2014-0160)がありました。概要はTechCruchで解説されています。昨日は対応に追われたエンジニアも多いのではないでしょうか?OpenSSLを利用したシステムの場合、影響がある可能性があります。詳しくは http://heartbleed.com/(英語サイト) で解説されています。 脆弱性の概要 Heartbleed脆弱性とはリモートから接続先のシステム(HTTPSのWebサーバーなど)のメモリ内容を盗みとられるセキュリティ問題です。SSLを利用したシステムはプログラム中(メモリ中)にSSLの秘密鍵を保存しています。メモリ内容を盗み取る事によりSSL秘密鍵を盗み、HTTPSなどの暗号を解読できるようになります。 接続先のシステムがWebアプリ

    Heartbleed攻撃と対策
    oppara
    oppara 2014/04/11
    Heartbleed攻撃と対策 | yohgaki's blog
  • Big Sky :: プログラミング言語の作り方

    Big Sky :: プログラミング言語の作り方(2) Big Sky :: プログラミング言語の作り方(3) Big Sky :: プログラミング言語の作り方(4) Big Sky :: プログラミング言語の作り方(5) githubtrending を見てたら面白い物を見つけた。 orangeduck/BuildYourOwnLisp - GitHub Learn C and build your own programming language in under 1000 lines of code! https://github.com/orangeduck/BuildYourOwnLisp 手順にそってC言語で lisp を実装する手順を見せるという物なのだが、その教材の一部としてパーサのコードが含まれている。 このパーサ部分だけ別のプロジェクトとして外出しされている。 o

    Big Sky :: プログラミング言語の作り方
    oppara
    oppara 2014/04/11