タグ

*programmingに関するhiroponzのブックマーク (232)

  • C++におけるデータのソート方法の比較:CodeZine

    はじめに この記事の目的は、「C++のSTLにはデータをソートする方法がいくつか存在するが、ソート処理を簡単に、かつ効率のよいコードはどれか…」を調べることです。 ここでは、自前のソートアルゴリズムを作って速度を比較したり、既存のソートアルゴリズムを最適化するといったことは目的としません。公開されているSTLをありのままの姿で計測します。コードの保守性や移植性、可読性を考慮して「いたって普通」な書き方が一番メリットが受けられると考えていますし、より多くの人に恩恵をもたらすと考えるからです。 自前のソートアルゴリズムの構築や、既存のアルゴリズムの最適化は、可読性や移植性を悪くするため、得られるメリット(高速処理による時間)よりもデメリットが大きいと考えているのです。よって、ここで検証するコードは「いたって普通」な書き方であり、可読性を重視した書き方になります。 自前でソートアルゴリズムの構築

    hiroponz
    hiroponz 2007/12/13
    C++でのソート方法の紹介
  • C++入門

    目指せプログラマー!にようこそ。 当サイトはこちらに引っ越しました。 お手数をおかけしますが、上記サイトへご移動くださいませ。

    hiroponz
    hiroponz 2007/12/07
    C++の入門。STLの解説などがある。
  • C++で読むデザインパターン(Design Patterns read by C++)

    hiroponz
    hiroponz 2007/12/06
    C++のデザインパターンのサンプルコード
  • 5分で使えるLoggingフレームワーク - POCO::Foundation -:CodeZine

    はじめに 記事ではPOCO(C++ Portable Componentsの略)というオープンソースのC++用クラスライブラリを紹介します。 POCOに関する概要とその導入方法については、別稿『POCO::Netライブラリによる組み込みWebサーバの実装』を参照してください。POCOはコンポーネントとして6つのライブラリに分かれていますので、今回からは、ライブラリ単位で順番に紹介したいと思います。まずは、POCO::Foundationライブラリをとりあげます。名前の通り基機能を集めたライブラリで、実際のアプリケーション開発にそのままでも使えるクラスが揃っています。対象読者 オブジェクト指向を理解し、C++のクラスライブラリを活用できる方を対象としています。必要な環境 POCOは、多様なプラットフォームで動作可能で、WindowsMac OS X、Linux、HP-UX、Tru64、

    hiroponz
    hiroponz 2007/12/05
    c++で使えるLoggingクラスの紹介
  • 404 Blog Not Found:アルゴリズム百選 - ハッシュを再発明する

    2007年12月03日11:15 カテゴリアルゴリズム百選 アルゴリズム百選 - ハッシュを再発明する (実はハッシュを使って)配列を再発明したところで、今度は配列を使ってハッシュを再発明してみます。 現代におけるプログラミングでは、連想配列(associative array)というものを非常によく使います。通常の配列では、データを取り出すのに整数の番号を使いますが、連想配列ではその代わりに文字列を使います。これは非常に便利で、多くの言語ではオブジェクトの実装にこの連想配列を用いています。JavaScriptのオブジェクトも実は連想配列です。 しかし、これを実装するには、少し工夫が必要です。単なる配列であれば、ただ等間隔に並べておけば、「何番目を出してくれ」で事足りますが、連想配列で「'dankogai'番目」といっても人間にもコンピューターにもなんのことかさっぱりわかりません。 誰でも

    404 Blog Not Found:アルゴリズム百選 - ハッシュを再発明する
    hiroponz
    hiroponz 2007/12/03
    jsでハッシュテーブルを実装する方法を説明している
  • 404 Blog Not Found:アルゴリズム百選 - 配列を再発明する

    2007年12月03日04:00 カテゴリアルゴリズム百選 アルゴリズム百選 - 配列を再発明する アルゴリズムを理解するのに最適な方法は、すでに当たり前のように使われている仕組みを、もう一度時分の手で作ってみることです。ここでは、配列に関するアルゴリズムを再実装してみます。 ここでは、MyArrayというオブジェクトを作って、それに配列としての機能を持たせることにします。まずは基的な操作ができるようにしておきます。 残念ながらRubyなどと異なり、JavaScriptでは[]を演算子として再定義することは出来ないので、ここではget()メソッドとset()メソッドをその代わりとして用意することにします。また、利便性を考えて、組み込みのArrayに変換するtoArray()メソッドも用意しておくことにしましょう。 function MyArray(){ this.size = argum

    404 Blog Not Found:アルゴリズム百選 - 配列を再発明する
    hiroponz
    hiroponz 2007/12/03
    jsで配列を自分で実装する方法を紹介
  • Geekなぺーじ : Rubyネットワークプログラミング

    ここでは、Rubyによるネットワークプログラミングの説明を行いたいと思います。 ここで対象としている読者は、ネットワークプログラミング初心者(もしくは入門者)です。 TCP 簡単なTCPサーバとクライアント TCPクライアント(エラー処理付き) 何度も受信できるTCPサーバ TCPサーバ(acceptした相手の確認) UDP UDPを使う UDPでブロードキャストを使う UDPでマルチキャストを使う(マルチキャストを送信する) UDPでマルチキャストを使う(マルチキャストを受信する) UDPでマルチキャストを使う(TTLを設定する) Web 簡単なHTTP GET(Net::HTTP) HTTP HEADと全てのHTTPヘッダの表示(Net::HTTP) HTTP POST(Net::HTTP) 簡単なRSSクライアント その他 IO::selectを使う IPアドレスからホスト名への変換

    hiroponz
    hiroponz 2007/11/30
    入門者向けRubyネットワークプログラミング
  • アルゴリズム百選 - フィボナッチ数列にO()を学ぶ : 404 Blog Not Found

    2007年11月28日18:00 カテゴリアルゴリズム百選Math アルゴリズム百選 - フィボナッチ数列にO()を学ぶ 404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10、これほどの反響になるとは。200ブクマぐらいは予想していたが、もいくとは。 とりあえず、の仮題を「アルゴリズム百選」として、「アマグラマーのすすめ」と同じようにblogに草稿を書いていくことにする。「メインページ」の「アルゴリズム大募集! C&R研究所 - トップページ」の方も適宜更新していくが、「その場で動かせるコードサンプル」はここでないと書けないので。 ただし、「アマグラマーのすすめ」よりは書き方は順不同になるはず。それでも序文相当のことは「チラ見」ならぬ「チラ書き」しておいた方がいいだろう。というわけで、序文に変えて紹介するのが、Entry。 ヒントとな

    アルゴリズム百選 - フィボナッチ数列にO()を学ぶ : 404 Blog Not Found
    hiroponz
    hiroponz 2007/11/29
    アルゴリズムによって計算量のオーダーが大きく異なることやコンピュータでは厳密解を求められないことがあるなど非常に分かりやすい
  • 404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10

    2007年11月26日18:15 カテゴリMathLightweight Languages プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10 ぎくっ あなたが一番好きなアルゴリズムを教えてください。 また、その理由やどんな点が好きなのかも教えてください。 - 人力検索はてな なぜぎくってしているかというと、実はすでにアルゴリズムの発注を受けているからなのだ。いつまでも伏せておくのもなんなので、ここにえいやっとdiscloseしてしまうことにする。 アルゴリズム大募集! C&R研究所 - トップページ その下書きもかねて、そこでも紹介しないわけに行かないメジャーなアルゴリズムをとりあえず10個紹介しておくことにする。 ユークリッドの互除法(Euclidean algorithm) その昔(数百年ほど前)は「アルゴリズム」といえば、「手順一般」を指すのではなく、この「互除法

    404 Blog Not Found:プログラマーでなくても名前ぐらい覚えておきたいアルゴリズムx10
    hiroponz
    hiroponz 2007/11/27
    プログラマーならアルゴリズムの内容も理解しておきたい
  • Railsでデバッグをする7つの方法 - Hello, world! - s21g

    記事の引越しから漏れていたのでサルベージ。 secondlifeさんの記事 に反応して後で書こうかなあと思っていたら、大分時間がたってしまいましたが、めげずに書いてみます。 1. p/pp こちらはRailsに限らず良く使われている方法ですが、RailsではWebサーバをフォアグラウンドプロセスとして立ち上げた状態で使う感じになります。

    hiroponz
    hiroponz 2007/11/22
    Railsの開発に役立つデバッグ手法
  • Spookies Labs Blog | シンプルな日付選択用ライブラリ「protocalendar.js」を公開しました

    prototype.js ベースの日付選択用 javascript ライブラリ「protocalendar.js」を公開しました。 rails や cakephp でアプリケーションを作っていて、セレクトタグでは日付を選択し辛いと感じていました。 また、オープンソースの Date Picker ライブラリでは機能不足、もしくはオーバースペック過ぎて手頃なものがないと感じていました。 そこで、社内で prototype.js ベースの日付選択用ライブラリを作ってみようということになり作ってみました。 今後もバージョンアップしていきたいと考えているので、ご意見ご要望などありましたらコメントでお願いします。 【特徴】 *prototype.js ベース(1.5 以降)。 *シンプルで軽量。 *MIT LICNESE *16のローカライゼーションに対応。 *フォーカスでカレンダー表示。(

    hiroponz
    hiroponz 2007/11/21
    シンプルで使いやすそうなカレンダー
  • プログラミング言語Ruby ― ありえるえりあ

    方針 Rubyをまったく知らない前提で始めます JavaJavaScript、elispのようなメジャーな言語と対比しながら説明します なるべく手を動かして目に見える形で説明を進めます 次回Ruby on Railsの勉強会をするので、それにつながることに重点を置きます 逆に言うと、RoRであまり使わない知識は流します。例えば、ファイル操作周りやスレッド周りなど 開発環境(2) .emacs.elに書くべき記述 ; ruby (autoload 'ruby-mode "ruby-mode") (setq auto-mode-alist (cons '("\\.rb$" . ruby-mode) auto-mode-alist)) (setq interpreter-mode-alist (append '(("ruby" . ruby-mode)) interpreter-mode-al

    hiroponz
    hiroponz 2007/11/15
    Rubyの特徴についてまとまっている
  • CodeRepos::Share – Trac

    What are u coding? old title = 個人レポジトリを共有しよう!計画。 みんながそれぞれ作って公開してる公開レポジトリを一緒くたにしちゃいたい。参加してる全員がどのファイルもみたり変更したりできるような。 パッチ送られてくる代わりに「後で見とくからコミットしといて」とかいえたりとか、つくりかけで放置したもので他の人が興味もったら続き作ってもらうとか、メンテするのめんどくなったのだれかにやってもらうとか、突発的に誰かと一緒にプロジェクト始めたりとか、できる! 詳しくは unknownplace.org - 2007/08/29 - 個人レポジトリを共有しよう! YappoLogs: CodeRepos - 個人レポジトリを共有しよう!計画 Development We have a Subversion repository and you can check it

    hiroponz
    hiroponz 2007/11/14
    リポジトリを共有してプログラムの添削を行っている
  • はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知

    はてなグループの終了日を2020年1月31日(金)に決定しました 以下のエントリの通り、今年末を目処にはてなグループを終了予定である旨をお知らせしておりました。 2019年末を目処に、はてなグループの提供を終了する予定です - はてなグループ日記 このたび、正式に終了日を決定いたしましたので、以下の通りご確認ください。 終了日: 2020年1月31日(金) エクスポート希望申請期限:2020年1月31日(金) 終了日以降は、はてなグループの閲覧および投稿は行えません。日記のエクスポートが必要な方は以下の記事にしたがって手続きをしてください。 はてなグループに投稿された日記データのエクスポートについて - はてなグループ日記 ご利用のみなさまにはご迷惑をおかけいたしますが、どうぞよろしくお願いいたします。 2020-06-25 追記 はてなグループ日記のエクスポートデータは2020年2月28

    はてなグループの終了日を2020年1月31日(金)に決定しました - はてなの告知
    hiroponz
    hiroponz 2007/11/10
    railsについてブログで書いている
  • ヽ( ・∀・)ノくまくまー(2007-11-10) ActiveScaffold

    ● [Rails] ActiveScaffold プラグイン AjaxScaffold までは知ってたけど、これは知らなかった。凄いねこれ。スペジェネでやりたかったことが殆ど実装されているよ。あとは ViewProperty 周りの機能が足りないけど、今からスペジェネを頑張るよりもこっちにそれを入れ込む方が早そうだ。Rails1.2 だとスペジェネの動作が微妙な部分もあるし。てことで、Rails1.2〜の現代では、スペジェネでなくて ActiveScaffold を使うのがよいと思われ。テンションあがったので、一気に調べて舞波のスペジェネの部分(pp.288-295)を差し替えよう計画。検証や校正をする時間がないと思うので、誤字脱字、疑問点、些細な間違い、ActiveScaffold で知りたい事、に載せて欲しい内容等、何でもどんどんツッコミお願いします。 ● ActiveScaffo

    hiroponz
    hiroponz 2007/11/10
    railsでajaxなページを簡単に作成するためのプラグイン解説
  • CppUnit 入門 | オブジェクトの広場

    技術講座] CppUnit 入門 CppUnit 入門 株式会社 オージス総研 オブジェクトテクノロジー・ソリューション部 伊藤 喜一 はじめに CppUnitC++ の単体テストを自動化するフレームワークです。XP (eXtreme Programming) の提唱者として知られる Kent Beck と、デザインパターンで有名な Erich Gamma が開発した JUnit (Java) を、Michael Feather が C++ に移植したのが最初です。 私が JUnit や CppUnit (xUnit と総称) の存在を知ったのは Martin Fowler の「リファクタリング」からでしたが、読んですぐにぜひ使ってみたいという衝動に駆られました。私が携わっているのは C++ による組込み系のプロジェクトでしたので、早速 CppUnit をダウンロードしたのですが、

    hiroponz
    hiroponz 2007/10/25
    c++ユニットテスト入門
  • VBAで正規表現を使う:CodeZine

    はじめに 改めて言うまでもないことですが、文字列処理で正規表現が使えると非常に便利です。VBAで正規表現を利用する方法を紹介したいと思います。対象読者 VBAで正規表現を使用したい方VBAで煩雑な文字列処理の行う必要のある方  なお、「正規表現についてよくわからない」という方は、以下のページの解説などを参考にしてください。サルにもわかる正規表現入門 必要な環境Windows VistaまたはWindows XPVBA開発環境 正規表現を使う前に VBAで文字列比較を行う場合、標準の機能としてStrComp関数やLike演算子があります。 特にLike演算子は、ワイルドカードなどによるパターンマッチングが行えます。正規表現よりも柔軟性は劣りますが、実現したい機能がLike演算子で済むのならば、無理に正規表現は使わずLike演算子を使った方がよいと思います。詳しくは、ヘルプにあるLike演算子

    hiroponz
    hiroponz 2007/10/23
    VBAで正規表現を使う
  • SOHO MIND » W-ZERO3のソフト開発

    ウィルコムのWindowsMoile 5.0を搭載した端末「W-ZERO3」の発売が今日開始。 でも買えなかった・・・。○| ̄|_ ウィルコムストアではアクセス集中しすぎで予約できないうちに売り切れたし、 残りの抽選に応募したけどもちろん当たらないし。。 まあそれはいいとしてWindowsMobile5.0の開発環境を構築したので忘れないうちにメモメモ。 用意する物 ・Visual Studio 2005 (β2を今は用意した。ヤフオクでteam Suite 日語版DVDを210円でGET。) ・ActiveSync 4.0 ・Windows Mobile 5.0 PocketPC SDK ・Windows Mobile 5.0 PocketPC Localized Emulator Imageから日語エミュレータイメージをダウンロード ダウンロードしたら、順番にイン

    hiroponz
    hiroponz 2007/10/07
    VS2005でwindows mobileの開発環境を構築する手順
  • ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き - - C/C++開発者向けemacsの設定

    emacsで C/C++ でコーディングしている開発者向けの emacs の設定です. [F5]でビルド,[F4]でエラー行へジャンプといったことが出来,かなり便利です. 具体的には以下のような事が出来ます. [F7]でコンパイル(バッファを全部保存して,make all します) [F4]でコンパイルエラー行へジャンプ [F1]でカーソル下の単語について マニュアルを開く SHIFT+[F7] でリビルド(make clean all) SHIFT+[F4] で一つ前のエラー行へジャンプ 設定は .emacs に以下の内容を追記するだけです. (setq auto-mode-alist (append '(("\\.C$" . c++-mode) ("\\.cc$" . c++-mode) ("\\.cpp$". c++-mode) ("\\.hh$" . c++-mode) ("\\.

    ぴょぴょぴょ? - Linuxとかプログラミングの覚え書き - - C/C++開発者向けemacsの設定
    hiroponz
    hiroponz 2007/09/19
    emacsでc++開発する際の設定など
  • ソフト開発/C++ リンク集

    ソフト開発関連のリンク集を独立させました。僕が今までに参考にしたHPを、項目別に紹介します。 妙にGoogleで高位置にヒットしますが、そんなに充実してないですよ。

    hiroponz
    hiroponz 2007/09/19
    C++開発者向けリンク集