タグ

2013年2月4日のブックマーク (7件)

  • マージ・ソート : 巨大データのソート法

    はじめに まずはともあれ腕試し、この問題を解いてみてくださいな: 【問1】 デタラメな順序で並んだ文字列の集合がテキストファイル「input.txt」に収められています。この文字列群を辞書順(昇順)に並び換えたテキストファイル「sorted.txt」を作りなさい。 ※各文字列は改行で区切られています。 プログラミング教の練習問題、あるいは学校の課題で出てきそうな“お馴染み”の問題です。ソート(整列)アルゴリズムの実装には配列/代入/条件分岐/ループなどなどプログラミングの基中の基となる構文を総動員するため、練習問題としてよく使われますね。 早速解いてみましょう、ソート・アルゴリズムにはこれまたお馴染みのバブル・ソートを使います。C#、VB.NETC++/CLIの3まとめて一気にいきますよ: using System; using System.IO; using System.C

    マージ・ソート : 巨大データのソート法
  • ページ内に埋め込めるカスタマイズ可能な表計算テーブル·Handsontable MOONGIFT

    HandsontableはjQuery製の小さな表計算風ソフトウェアです。 Webブラウザ上で表計算を行えるサービスは増えてきましたが、大抵全画面で表示されるものです。Handsontableはごく小さなグリッドをページ内部に埋め込んで使えるソフトウェアです。 こんな感じで簡易的な表が描けます。 選択したグリッドをコピーできます。 選択から入力もできます。 バリデーションや入力値の変換もできます。 行の削除やカラムの非表示などのアクションを追加します。 コンテクストメニュー。 コンテストメニューのカスタマイズも可能です。 リードオンリーなセル。 HandsontableはJSONでデータを定義します。データは編集も可能で、Ajaxを使うこともできるのでユーザビリティ高い編集画面を提供できます。ごく小さなマスタ編集を行ったりするのにぴったりではないでしょうか。 HandsontableはjQ

    ページ内に埋め込めるカスタマイズ可能な表計算テーブル·Handsontable MOONGIFT
  • Rubyによる関数型プログラミング

    古き良き小学校の時代、この行には困惑させられたものだった。 魔術的な x が、加算されたのに等しいままでいる事に。 どういうわけか、プログラミングを始めると、それに構わなくなる。 「やれやれ、それは重大な事柄じゃないし、プログラミングとは現実のビジネス行為なんだから、 数学的な純粋さについてあら探しなんて必要無い (その議論なら、大学にいる狂った髭面野郎どもにさせておけばいい)」と思っていた。 けれども、ただ知らなかっただけで、我々が間違っていて高い代償を支払っていたのは 明らかである。 Wikipedia によれば、「関数型プログラミング(functional programming, FP)とは、 計算を数学的な関数の評価とみなし、 状態や可変データを避けるプログラミングパラダイム」である。 言い換えると、関数型プログラミングは、 副作用が無く変数の値を変化させないコードを推奨する。

  • Twitterが自社製JavaScriptフレームワーク「Flight」をオープンソースで公開

    Twitterは自社サービスで利用しているJavaScriptフレームワーク「Flight」をオープンソースで公開しました。 Flightはコンポーネントベースの軽量フレームワーク。開発者に対して非同期で独立性の高いコンポーネントを定義する機能を提供することで、デバッグ、テスト、イベントハンドリングなどを容易にするフレームワークのようです。 Githubのページでは以下のように説明されています。 Components cannot be directly referenced, instead they communicate by triggering and subscribing to events. Consequently every component, and every component API, is entirely decoupled from every othe

    Twitterが自社製JavaScriptフレームワーク「Flight」をオープンソースで公開
  • jQuery 1.9 に更新する際に注意すべき変更点の自分なりのまとめ | 私的なjQuery他

    jQuery Core 1.9 Upgrade Guide | jQuery の「Changes of Note in jQuery 1.9」を読んで、 自分なりにまとめました。 誤訳して間違ったことをまとめてたり、 最新の情報でないかもしれないので 読まれる際はご注意下さい。 (※ページをそのまま訳したわけではないと、思います) jQuery 1.9 では API の削除や 挙動の変更を行っています。 この記事は、前のバージョンから更新した時、 既存のコードに影響がでそうな変更を 並べたものになります。 変更点を全部網羅しているわけではありません。 箇条書きにすると以下のような感じ: 削除された機能 .toggle(function, function) の用法 jQuery.browser() .live()と.die() jQuery.sub() document 以外の要素での A

  • [関数型言語のトレンド]国内でも採用企業が増加

    「少数精鋭の開発メンバーで、短期間に新しい検索サービスを始められた」。特許情報などの無料検索サービスで200万人以上の会員を抱えるアスタミューゼ。同社でサービス開発を統括する三木隆史プラットフォーム事業部部長は、こう語る。スピードの秘密は、開発言語選びにあった。 同社が採用したのは、業務系システムの開発で主流になっているJavaでも、Webシステムで人気を博すRubyPythonでもない。「関数型プログラミング言語」と呼ばれるオープンソースの開発言語の一つ、「Scala(スカラ)」だ。 Scalaは今、世界的な注目を集める。米ツイッターや米リンクトイン、英ガーディアンなど海外の名だたる企業が自社サービスの開発に採用したことで一気にその名を知らしめた。Scalaの推進企業である米タイプセーフは2012年8月に1400万米ドル(約11億円)の資金を調達。Webアプリケーションや分散処理システ

    [関数型言語のトレンド]国内でも採用企業が増加
  • Backbone.js入門 「Events」 - Qiita

    閲覧上の注意 この記事で対象としているバージョン0.5.3は結構古いので注意してください。この記事でいえば、bindは無くなり、現在ではonやlistenToが使われています。 その他の割りと新しい情報は Backbone.js Advent Calendar 2012 などにあります。 (追記ここまで) ネタ切れ感が否めないBackbone.js Advent Calendarですが、今回から何回かに分けて懇切丁寧な入門記事を書いていこうと思います。 以下のように書き進めていく予定です。 Events View Model ViewとModelの連携 Collection ViewとModelとCollectionの連携 RouterとHistory なおここで扱うBackbone.jsのバージョンは0.5.3です。 Backbone.jsのドキュメントを開くとまず最初に解説されているの

    Backbone.js入門 「Events」 - Qiita