タグ

ブックマーク / qiita.com (442)

  • WebStorm+Chrome+BrowserSyncでJavaScriptデバッグ - Qiita

    「WebStorm」とJetBrains製品共通のChromeプラグイン「JetBrains IDE Support」を利用すると、ブラウザ上で実行されるJavaScriptでも、格的なデバッグを行うことができます。 今回はそのデバッグ方法を紹介したいと思います。 使用するWebサーバは最近お気に入りの「BrowserSync」を使っています。 今回やる事 WebStormのコンソールにログを出力 WebStormのエディタで変数/プロパティの中身をリアルタイム表示 WebStormでブレークポイントを設定してJavaScriptを一時停止 → コールスタックを辿ったり、変数/プロパティの中身を調べたり 動作環境 Windows 7 64bit WebStorm 9 → 最近リリースされた最新版 JetBrains IDE Support 2.0.7 → Chromeプラグインの最新版

    WebStorm+Chrome+BrowserSyncでJavaScriptデバッグ - Qiita
    s5ot
    s5ot 2015/08/19
  • Facebook Relayについてまとめ - Qiita

    Reactがもっと広まって欲しいと思っている今日このごろ。React EuropeでJoseph Savona氏の講演でRelayについての「モヤっと」がいっきにかなり解消された気がするので、要点を編を翻訳しながら自分なりにまとめておきます。 私の理解が誤っている可能性は十二分にありえるので、ご指摘いただければ幸いです。 はじめに ReactとFluxって組み合わせと共によく目にするのが↓の図。 矢印は一方向にしか進まないのが特徴で、わかりやすいってのがいろんなところで書かれているんですけど、 結局データをサーバからとってくるところってどうなってるの?ってのが疑問として残ります。つまり、図で表現すると↓の部分の仕組みがどうなっているかってところです。 その部分を、Instagramのようなサービスを例に説明しています。 クライアントはどのようにしてサーバからデータを取得すべきか まず、I

    Facebook Relayについてまとめ - Qiita
    s5ot
    s5ot 2015/08/18
  • 絶対ハマる、不思議なnil - Qiita

    goのnilは直感的ではない、これは強烈にハマりそう。 型を持つnil nilと一口に書くが、実際には型がある。 nilとnilが等価でないように見える nilが型情報を持つので、nil == nilがtrueになるとは限らない。 trueとなるためには、右辺と左辺の「nil」の型が一致しているという条件が必要。 package main func main() { var x *int32 = nil var y *int64 = nil equals(x, y) return } func equals(x, y interface{}) { println(x == y) }

    絶対ハマる、不思議なnil - Qiita
    s5ot
    s5ot 2015/08/18
  • 最速MVCフレームワークMithril.jsの速度の秘密 - Qiita

    Mithril 0.2が日リリースされました。ちょっとURLが変わったり( http://mithril.js.org/ )、API名が一部(m.moduleがm.mount)変わっていたり、コンポーネント機能がコーディング規約レベルから、専用のサポートAPIが追加されたりしていますが、0.1系と大した差はなさそうです。 某node.js会長とはいろいろ社内で話をしたりしたのですが、各種ベンチマークでもトップクラス、平均的には最速のクライアントサイドMVCフレームワークという称号を持ちながら、国内ではまだまだ知られていないMithril。レンダリング速度は仮想DOMの代名詞となったReact.jsの5倍以上(ベンチマークによります)です。 ↓ホームページから転載 ちなみにこちらのベンチマークで計測すると、MithrilはReact.jsの10倍以上速い結果になるのですが、これはちょっと計

    最速MVCフレームワークMithril.jsの速度の秘密 - Qiita
    s5ot
    s5ot 2015/08/06
  • 『Programming Elixir』より "Think Different(ly)" - Qiita

    あの Dave Thomas が書いた『Programming Elixir』を買ったのでぼちぼち読んでいる。 Chapter 1. に Elixir の特徴を巧みに表現した文章があってカッとなったので、引用しておきたい。 Object orientation is not the only way to design code Functional Programming need not be complex or mathematical. The foundations of programming are not assignments, if statements, and loops. Concurrency does not need locks,semaphores, monitors, and the like. Processes are not necessaril

    『Programming Elixir』より "Think Different(ly)" - Qiita
    s5ot
    s5ot 2015/07/29
  • [JavaScript]使い分けるだけで今すぐデバッグ効率を上げる、consoleオブジェクトの関数 - Qiita

    なんかはよく使うはず。 だが、ちょっとした関数の使い分けでデバッグ一つもしやすくなる。 なのでほんの少し紹介。 ※以下は全てGoogle Chromeでの実行結果です console.error 赤い!よくあるエラーメッセージ エラーとみなす箇所に是非

    [JavaScript]使い分けるだけで今すぐデバッグ効率を上げる、consoleオブジェクトの関数 - Qiita
    s5ot
    s5ot 2015/07/26
  • TypeScript 1.5.3 変更点 - Qiita

    TypeScript 1.5.3が出ました! 今回のアップデートはかなり多くの更新を含む、大規模なアップデートであると言えます。 ↑ここまで前回のコピペ まさか、1.4.1から半年待つことになろうとは思いませんでしたね…。 alphaからbetaが1月なのに正式リリースが2ヶ月強ですよ。 '1.4.1': '2015-01-16T17:55:29.237Z', '1.5.0-alpha': '2015-04-02T16:40:27.808Z', '1.5.0-beta': '2015-04-30T17:23:52.442Z', '1.5.3': '2015-07-20T14:47:42.460Z' 変更点は公式Blogにも書かれているが、ざっくりイカの通り。 ES6サポート es6 modules destructuring spread for...of symbols computed

    TypeScript 1.5.3 変更点 - Qiita
    s5ot
    s5ot 2015/07/26
  • React JSX with TypeScript(1.6) - Qiita

    はじめに つい先日, TypeScript 1.5系の安定版がリリースされたばかりだが, 1.6系の話をしようと思う. 6月頃に「TypeScriptReactのJSXサポートが載るぞ!」とアナウンスがあり, 「へー」と思っていたのだが, 久々にmasterを確認してみたら, 既にmergeされてたので触ってみた. (Roadmapへの記載とmergeのタイミングにあまり差がなかった模様1) 折角なのでTypeScriptのJSXサポートを試してみましたよ、というお話. なお、作成した内容はQuramy/tsc-react-exampleに上げてます. 追記 このエントリを書いた直後に気づきましたが, 既にTypeScript の JSX/React サポートを試すに同様の内容が投稿されてました... orz 環境の準備 コードの話をする前に, TypeScriptでJSXを記述するため

    React JSX with TypeScript(1.6) - Qiita
    s5ot
    s5ot 2015/07/22
  • 使えるRSpec入門・その4「どんなブラウザ操作も自由自在!逆引きCapybara大辞典」 - Qiita

    はじめに みなさんこんにちは! この記事は「必要最小限の努力で最大限実戦で使える知識を提供するRSpec入門記事」、略して「使えるRSpec入門」の第4回です。 今回はCapybaraを使ったフィーチャスペックについて説明します。 ただし、今までの記事とは異なり、フィーチャスペックのイロハよりも「Capybaraの使い方」に重点を置きます。 なぜなら、僕個人の経験からいって、フィーチャスペックで困るのは「このブラウザの操作って、どうやってコードで表現するの??」というケースが大半だからです。 それ以外は第1回~第3回の内容をそのまま応用できるので、特に「フィーチャスペックだから困る」ということはないと思います。 今回は説明する主な項目は以下の通りです。 フィーチャスペックの基 ページの移動や画面のクリック、フォームの操作など 画面やフォームの検証 画面の操作や検証の応用テクニック その他

    使えるRSpec入門・その4「どんなブラウザ操作も自由自在!逆引きCapybara大辞典」 - Qiita
    s5ot
    s5ot 2015/07/15
  • AngularJS の $locationProvider.html5Mode について - Qiita

    AngularJS で構築するアプリケーションで $locationProvider.html5Mode をどう設定するか小一時間悩んだ結果をまとめてみました。 導入 AngularJS では $routeProvider を使用してクライアントサイドでのルーティングが可能です。 angular.module('app').config(['$routeProvider', function($routeProvider) { $routeProvider .when('/aaa/', {controller: 'AaaController', templateUrl: 'aaa.html'}) .when('/bbb/', {controller: 'BbbController', templateUrl: 'bbb.html'}); }]);

    AngularJS の $locationProvider.html5Mode について - Qiita
    s5ot
    s5ot 2015/07/13
  • AngularJS:文字列をエスケープさせずに出力する方法 - Qiita

    AngularJSバージョン:1.3 テンプレ側とJS側それぞれに対応が必要 - html側: ng-bind-htmlディレクティブを使用 - JS側: $sce.trustAsHtmlを使用

    AngularJS:文字列をエスケープさせずに出力する方法 - Qiita
    s5ot
    s5ot 2015/07/07
    “ $scope.content = $sce.trustAsHtml(html)”
  • (0, eval)('this')とは何なのか - Qiita

    この(0,eval)('this')はいったい何なのか。調べた。 調べた結果 これはindirect eval callを使用した、どのスコープでも必ずグローバルオブジェクトのthisを取得するためのテクニックであった。 ES5ではevalを直接呼び出すと、引数のコードはそのスコープで実行されるが、間接的にevalを呼び出すと、引数のコードは必ずグローバルスコープとなるそうだ。なので引数のthisは必ずグローバルオブジェクトとなる。ブラウザではwindowとなり、Nodeではglobalになるのだ。実際どうするかだが、eval関数を変数に代入し、その変数で実行すればよい。 // Nodeで実行 var obj = new (function(){ this.direct = eval('this'); var ev = eval;// 変数に代入 this.indirect = ev('t

    (0, eval)('this')とは何なのか - Qiita
    s5ot
    s5ot 2015/07/02
  • AngularJSでロード中に評価前のマークアップを表示させない方法 - Qiita

    AngularJSを使ったWebアプリケーションで、ページの読込途中や初期化までの間にテンプレートのマークアップ(下記の図の{{name}}のような記述)が一瞬見えてしまうのを何とかしたい時があります。 特にページの表示開始を早くするためにAngularJSのコード読み込みをhead要素に置かずに非同期で読み込んでいる場合は、AngularJSの読み込み完了まで見えてしまうので特に目立ってしまいます。これを解決するためにngCloakというdirectiveがあるのでこれを使います。(headセクションでAngularJSのコード読み込みのscriptタグを配置している場合はそんなに気にならないかもしれません。公式ドキュメントではこの方法を推奨しているようです) 使い方 連携するCSSをアプリケーションのCSSに追加します [ng\:cloak], [ng-cloak], [data-ng

    AngularJSでロード中に評価前のマークアップを表示させない方法 - Qiita
    s5ot
    s5ot 2015/07/01
  • AngularJS Directiveの処理順を網羅してみた - Qiita

    こんにちは@armorik83です。 この記事はAngularJS Advent Calendar 2014の2日目として書かれたものです。AngularJSは好きと嫌いの両方を2度くらい経て、今は愛に近い。 AngularJSは現在1.3がリリースされていますが、2014年10月のng-europeにて2.0系のビジョンが示されました。リリース時期は未定ですが、AngularJS 1.x系で指摘された多くの問題点、開発チームの反省が活かされた次世代のAngularになるとされ、期待が大きいです。 その中で2.0系ではControllerが無くなるという気になる情報がありました。正確にはコントローラ自体が無くなるのではなくng-controllerが整理されるとの様子ですが、この代替として、Directiveを中心としていく方針が掲げられています。 今からDirectiveに親しんでおく

    AngularJS Directiveの処理順を網羅してみた - Qiita
    s5ot
    s5ot 2015/06/25
    “$('ex-h').data()”
  • AngularJSのCompileとLinkってなぁに? - Qiita

    はじめに AngularJSのDirectiveについては、カスタムディレクティブの作成方法含め、おおよそ理解していたつもりであったが、CompileとLinkについて、若干自信が無い部分があったので、勉強がてら少し厚めに書いてみた。 なお、公式の開発ガイドにも、Oreillyの書籍でも書かれているが、カスタムディレクティブを開発することがあっても、殆どのケースでは、Linkの処理のみを気にするだけでよいため、あんまりこのエントリは役には立ちません。 おさらい 「AngularJSのDirectiveを理解する」にも書いているが、ざっくり言うと、Angularのディレクティブがテンプレートから実際のViewを描画する際は、Compile → Linkの2フェーズに分かれている。 Compile:ディテクティブのテンプレート(html文字列ではなく、DOMオブジェクト)から、Link関数を生

    AngularJSのCompileとLinkってなぁに? - Qiita
    s5ot
    s5ot 2015/06/23
  • Direct Proxiesでmethod missing的なことをやる - Qiita

    Direct Proxiesとは Direct ProxiesってのはES6の機能の一つで、オブジェクトをラップして様々なタイミングで任意の処理を差し込めるというとっても夢広がリングな機能。 harmony:direct_proxies [ES Wiki] 例えば、プロパティのget/set時に処理を差し込むのはこんな感じ。 (Direct Proxiesは現状だとFirefoxでしか動かない。そして下記のコードは無駄にテンプレートリテラル使ってるのでFirefox 34以上じゃないと動かない) // Proxyを使って処理を書き換える対象のオブジェクト var target = { foo: 'bar' }; // Proxyを使ってtargetに対してhandlerを適用したproxyオブジェクトを得る var proxy = new Proxy(target, { // プロパティ読

    Direct Proxiesでmethod missing的なことをやる - Qiita
    s5ot
    s5ot 2015/06/18
  • DDD の Java EE 実装サンプル - Cargo Tracker を読み解く - Qiita

    Cargo Tracker とは エリック・エヴァンスのドメイン駆動設計 で紹介されている様々なパターンを実際に使用して、有志が作成したサンプル Web アプリのこと。 DDD Sample Application - Introduction オリジナルは Spring Framework を使用している。 一方、この実装を Java EE 7 で置き換えたサンプルが公開されている。 Cargo Tracker この実装を読みながら、 DDD で紹介されている以下のパターンがどのように実装されているのかを確かめてみる。 レイヤ化アーキテクチャ エンティティ 値オブジェクト 集約 リポジトリ サンプルアプリを動かす ソースのダウンロード このページ の一番下に zip のリンクがあるので、そこからダウンロードする。 環境準備 以下のソフトウェアをインストールする。 JDK 7 以上 Mav

    DDD の Java EE 実装サンプル - Cargo Tracker を読み解く - Qiita
    s5ot
    s5ot 2015/06/14
  • [翻訳] Elixir - 次に来る大物Web言語 - Qiita

    Lau Taarnskovさんの2015年4月19日付のブログ記事、Elixir - The next big language for the webの翻訳です。 ElixirはErlangのVM上で走る、Rubyにちょっと似た(というのも作者(José Valim)がRuby on Railsのcoreチームメンバーなので)関数型言語です。 2012年に登場していてQiitaでもAdvent Calendarなどが既にあるようですがまだあまり知られていないですね。ElixirとPhoenix Frameworkを組み合わせたものがマイクロ秒のオーダーで反応が帰る爆速だそう(ホントかな~)で興味を持ちました。 しかしほんの10年前ぐらいの話がもう遥かな昔話に聞こえますね…。 (追記:実際にプログラムを書いてみました → Elixirで試しに何か書いてみる(その1) Elixirで試しに何

    [翻訳] Elixir - 次に来る大物Web言語 - Qiita
    s5ot
    s5ot 2015/06/08
  • [翻訳] なぜ私はElixirに賭けたか - メンテナンスプログラマになりたくなければ君もそうしろ - Qiita

    Ken Mazaikaさんの2015年1月31日付のブログ記事、Why I’m betting on Elixir And why you should too, unless you want to become a maintenance programmer.の翻訳です。 [翻訳] Elixir - 次に来る大物Web言語もそうでしたがなんかRailsのプログラマさんたちがやたらアツく語ってるんですね、Elixirを。 メンテナンスプログラマになりたくなければ1、なんてタイトルからして挑発的です。私の3つ前の仕事はまさにそういう保守系でしたけど。 あんまりアツいんで皆さんとアツさを共有したくて翻訳しました。 なおQiitaのCentOS + Erlang + Elixir + PhoenixのDockerイメージで今日から始めるElixir on Phoenix入門の追記のところでも

    [翻訳] なぜ私はElixirに賭けたか - メンテナンスプログラマになりたくなければ君もそうしろ - Qiita
    s5ot
    s5ot 2015/06/03
  • AngularJS1.4とbindToController - Qiita

    こんにちは。imaiです。待望のAngularJS1.4がリリースされましたね。Directive関係では、bindToControllerの機能が向上しました。 このbindToControllerとは一体何なのか。使って嬉しいことは何か。どう機能が向上したのか。について書いていきます。また、最後に自作Directiveを作っていく際に筆者がよくつまずく点を記しておきます。 この記事の対象者:AngularJSに触れたことがある、自作のDirectiveを作ったことがある bindToControllerとは AngularJS公式サイトのReferenceからbindToConrollerの説明を意訳すると、 再利用可能なコンポーネントを作るために、分離?隔離?スコープやcontrollerAsを用いる際に、bindToController:trueとすることでコンポーネントのプロパテ

    AngularJS1.4とbindToController - Qiita
    s5ot
    s5ot 2015/05/30