タグ

ブックマーク / amachang.hatenablog.com (10)

  • Terminal.app を軽くする方法 - IT戦記

    プログラマの人は ずっとターミナル開きっぱなしって人多いですよね? Mac の場合 Terminal.app というターミナルがデフォルトで ついていて、それを開きっぱなしって人が多いんじゃないでしょうか。 問題点 Terminal.app をデフォルトの設定のまま使ってると問題点がある。 何か別の作業をした後に、久しぶりに Terminal.app をアクティブにすると、固まるのだ。 実はこれ、毎回相当ダメージを受ける。 で、解決策が分かった スクロールバッファを小さくすればいい。 なんとデフォルトの設定では無制限にスクロールバッファを保存する設定になっているのだ。 たまたま cat したファイルがものすごい容量だったなんてことよくあることなのに>< それが、全部スワップに入ってしまう。 スクロールバッファを小さくする方法 右上のメニューから「ターミナル」→「環境設定」→「設定」→「ウィ

    Terminal.app を軽くする方法 - IT戦記
    thorikawa
    thorikawa 2012/06/21
  • Safari 3.1 に実装された「Client-side database storage (SQL API)」とは何か? - IT戦記

    はじめに Safari 3.1 には Client-side database storage (SQL API とも呼ばれています。)という新しい仕様が実装されました。 というわけで、この新しい API について色々調べたことを簡単にまとめておきます。 Client-side database storage が使えるブラウザ 2008 年 03 月 27 日現在では、 Safari 系のブラウザのみです。 Safari 3.1 WebKit Nightly Client-side database storage とは Selectors API とは HTML5 で定義された仕様です。詳細に関してはこちらをどうぞ。 簡単に説明すると JavaScript 内でリレーショナルデータベースを使えるということです。 もっと簡単にイメージするために、実際のコードを示すとこんな感じです。 va

    Safari 3.1 に実装された「Client-side database storage (SQL API)」とは何か? - IT戦記
  • IT戦記 - [javascript] JavaScript 1.7 の yield が凄すぎる件について

    Firefox 2.0 beta 1 が出ましたね^^ さっそく、新機能のひとつ、JavaScript 1.7 の yield を使ってみました。 まず yield の動作を試してみた。 var i = 1; var g = (function() {while(1) {yield i; i++}})(); alert(i); // 1 g.next(i); g.next(i); alert(i); // 2これで分かったこと。 なんと、 yield は関数を途中で終了させている。。。! 実は。 いままで、何度も関数を途中で終了できればなーと思っていた。 JavaScript 以外のほとんどの言語でそれが可能で、それが便利だからである。 それとはなにか、それとはスレッドである。 スレッドは CPU レベルで細かーく処理を止めて、いろんな処理の流れを同時に実行させているようなものだ。 yie

    IT戦記 - [javascript] JavaScript 1.7 の yield が凄すぎる件について
  • JavaScript1.7 の yield を使って、非同期処理を同期処理のように書く方法 - IT戦記

    経緯 id:kazuhooku さんが一年前にやってたことですが Kazuho@Cybozu Labs: JavaScript/1.7 で協調的マルチスレッド 今日やっと挙動が理解できたのと、 Weave のソースを読んでいたらこのテクニックをバリバリ使っていて「ちょwwおまwww」ってなったので、自分でも作ってみようと思いました。 ほとんど id:kazuhooku さんのと同じものなので、既出です><当にありがとうございました>< まず、 yield とは何か yield とは、 JavaScript 1.7 から導入された機能です。 以下に yield の細かい挙動を示しておきます。 function f() { // なんかの処理 yield; // ... (1) // なんかの処理 yield; // ... (2) // なんかの処理 } var g = f(); // こ

    JavaScript1.7 の yield を使って、非同期処理を同期処理のように書く方法 - IT戦記
  • JavaScript で簡単にスタックトレースを取るテクニック

    Firebug を使うと console.trace(); これだけでスタックトレースを取ることが出来ます。 でも、 XUL の開発とか、人のブラウザで Firebug が入ってない時とかは出来ないので、 そういう時は、 alert(Error().stack); これだけで出来ます。まあ Firefox only ですが。

    JavaScript で簡単にスタックトレースを取るテクニック
  • JavaScript OOP におけるクラス定義方法 - IT戦記

    クラスを定義する方法です。考え付くだけでも、これだけたくさんの方法があります。やっぱり、 JavaScript って柔軟であり複雑な言語ですね。 ちなみに、以下のすべての例はこのクラスを定義しています。 ちなみに、僕は一番下の書き方ですね。 皆さんはどのようにプログラミングしていますか? プロトタイプを使わない。クロージャを使う。 // プロトタイプを使わない。 // クロージャを使う。 function Item(price) { this.showPrice = function() { alert(price); }; } プロトタイプを使わない。クロージャを使わない。 // プロトタイプを使わない。 // クロージャを使わない。 function Item(price) { this.price = price; this.showPrice = function() { aler

  • JavaScript-XPath をリリースしました!さあ、あなたも XPath を使おう!(解説付き) - IT戦記

    JavaScript-XPath とは JavaScript-XPath は、 DOM 3 XPath を実装していないブラウザに対して、実用的な速度で動作する DOM 3 XPath のエンジンを追加します。 一言で乱暴に言ってしまえば、どのブラウザでも document.evaluate って関数で XPath 使えるようになるよ!ってことです。 以下が公式サイトになります。 http://coderepos.org/share/wiki/JavaScript-XPath DOM 3 XPath ってなんなの!? めっちゃ簡単(で、ちょっとだけ適当)なDOM 3 XPath の説明をします><。 JavaScript でよく使う document.getElementById や document.getElementsByTagName って関数ありますよね? DOM 3 XPath

    JavaScript-XPath をリリースしました!さあ、あなたも XPath を使おう!(解説付き) - IT戦記
    thorikawa
    thorikawa 2008/11/15
    XPathチートシートあり
  • 文章を書く仕事を楽しく勧めるには - IT戦記

    フランスで得られたもう一つのことを書いておこうかと思う フランスで得られたもの それは、日語の文章を楽しく書く方法。 ただ、この方法には、編集者に非常な負担を掛けることになる。編集者がそれを了承してくれる関係、前提が必要。 文章を書くのが苦手だった理由 書きたいことが箇条書き的になってしまう その箇条書きをストーリーに乗せられない 日語は、合理的でない 段落中で、同じ語尾が続くと不自然とか 意味は通じるけど、言い回しが変とか 推敲すると、全体が見えなくなる(ゲシュタルト崩壊) 無意味に不安になる 文章を楽しく書く方法 大事なことは二つ 著者と編集者と一緒に書くということ「文章の共有」「感動の共有」「ビジョンの共有」 作業の分担 著者は、情報のクオリティを担当。文の局所を見る。 編集者は、文章のクオリティを担当。文章の全体を見る。 実際の作業の流れは、以下のような感じ 編集者と一緒に同じ

    文章を書く仕事を楽しく勧めるには - IT戦記
    thorikawa
    thorikawa 2008/07/15
    文章がなぜ苦手かということに真正面から向き合った良いエントリ
  • JavaScript の配列と連想配列の違い - IT戦記

    id:cheesepie:20070131:1170172709 最近は、こういう風に JavaScript を勉強する人が増えていてとても嬉しいです ^^ id:cheesepie さん頑張ってください! で、ちょっと配列と連想配列の使いかたが違うようなので、エントリーを書こうと思いました。おせっかいだったらすみません>< ! やっぱり、このへんが JavaScript の難しいところのひとつなのだろうか。 ということで、 JavaScript の配列と連想配列の違い いってみよおー 連想配列とは JavaScript では連想配列は一番シンプルなオブジェクトのことである。つまり、すべてのオブジェクトは連想配列である。 以下のすべての連想配列はまったく同じものである。 // 1 var obj = { hoge: 'hoge' }; // 2 var obj = { 'hoge': 'h

    JavaScript の配列と連想配列の違い - IT戦記
  • 社内勉強会資料 - IT戦記

    今回の趣旨 あまり JavaScript を書いたことのない人用に講義をしました。 内容 一つ一つ例を見せながら質問を聞き、参加者全員が JavaScript のオブジェクト指向を理解できるまでやりました。時間は当初 40 分の予定でしたが、結局 1.5 時間になりました。 成果 最終的にガイアックスのほとんどの開発者(マークアップエンジニアから、インフラの人まで)が JavaScript を読めるというレベルまでは、到達したのではないかと思います。 まあここからは、テクニックとバッドノウハウの世界ですが・・・。 資料 大切なことは言葉で話して、資料はほとんど例とかソースとかだけですが。教える手順とか参考になるところもあるかもしれないので公開します。 http://usrb.in/amachang/static/gaiax01/

    社内勉強会資料 - IT戦記
    thorikawa
    thorikawa 2007/04/12
  • 1