タグ

2009年3月29日のブックマーク (18件)

  • Six Apart - Tech Talk Blog: Watirを使ってテストを自動化しようの話

    こんにちは、TypePadのQAを担当している山口です。今回はWatirを使ったテストの自動化の話を少ししたいと思います。 Watir = Web Application Test In Ruby WatirはRuby上で動作するウェブアプリケーション向けのテスト自動化ツールです。「Web Application Testing in Ruby」の頭字語で「ウォーター(water)」と発音します。 Watirはこんな風に使います。 require "watir" ie = Watir::IE.new ie.goto("http://memolog.org/") といった風に使います。Watirに組み込まれているメソッドを利用するだけで簡単にIEを操作することができます。この例では、IEを自動的に起動して、http://memolog.org に移動します。 Watir vs Seleniu

  • 第5回 メタプログラミング―Excelを使ったDSLを作ろう―その1 メタプログラミングとは?:良いコ-ドへの道―普通のプログラマのためのステップアップガイド|gihyo.jp … 技術評論社

    良いコ-ドへの道―普通のプログラマのためのステップアップガイド 第5回メタプログラミング―Excelを使ったDSLを作ろう―その1 メタプログラミングとは? おっす、おらメタプログラマ! 前回まで「良いコードとは?」という観点から、「⁠名前付け」「⁠スコープ」「⁠処理の分割」といったプログラミングで必須の基礎内容を解説してきました。今回は少し趣向を変えてメタプログラミングを取り上げます。メタプログラミングは「プログラミングをプログラムする」と言われますが、なんだかつかみどころがない概念に感じませんか? 実際、「⁠メタプログラミングとは何ですか?」と聞くと、人によって回答がまちまちです。そんなメタプログラミングですが、使いこなすとたいへん強力です。それでは、メタプログラミングについて考えを深めていきましょう。 メタプログラミングの悩み まずは毎回好例、各界の代表者にメタプログラミングについて

    第5回 メタプログラミング―Excelを使ったDSLを作ろう―その1 メタプログラミングとは?:良いコ-ドへの道―普通のプログラマのためのステップアップガイド|gihyo.jp … 技術評論社
  • 第5回 メタプログラミング―Excelを使ったDSLを作ろう―その3 Step2:メタ情報をExcelに移動する | gihyo.jp

    リスト2 Step2:メタ情報をExcelに移動したコード public static void main(String[] args) throws Exception { byte[] bytes = FileUtils.readFileToByteArray( new File("data.txt")); DataTable config = new XlsReader(                ┓ new File("config.xls")).read().getTable(0);  ┛① MessageParser parser = new MessageParser(bytes, config); parser.parse(); } private static class MessageParser { ... private DataTable config; pu

    第5回 メタプログラミング―Excelを使ったDSLを作ろう―その3 Step2:メタ情報をExcelに移動する | gihyo.jp
  • 第5回 メタプログラミング―Excelを使ったDSLを作ろう―その2 Step1:ベタなコードで書いてみる | gihyo.jp

    Step1:ベタなコードで書いてみる まずはDSLなどを使わずにべたにコードを書くとリスト1のようになります。 まず①で固定長電文のファイルを読み込み、バイト配列に変換しています。バイト配列はそのままでは「配列の一部を取り出す操作」などが面倒です。ですので、②③で「ByteArray」という自作ユーティリティクラスを使用して、バイト配列を扱いやすくラップしています。 parseメソッドはデータの読み込み処理です。データがなくなるまで読み込み処理を繰り返します。④でそれぞれのデータ項目のサイズだけ順番にデータを読み込んでいます。同時にDate型への変換(toDate)や両端文字列の除去(trim⁠)⁠、Integer型への変換(toInteger)を行っています。⑤で1件分のデータを標準出力へ出力しています。実際に実行してみると図2の出力が得られます。 リスト1 Step1:ベタなコード p

    第5回 メタプログラミング―Excelを使ったDSLを作ろう―その2 Step1:ベタなコードで書いてみる | gihyo.jp
  • 第5回 メタプログラミング―Excelを使ったDSLを作ろう―その4 Step3:リフレクションAPIで変換ルールを動的に適用する | gihyo.jp

    良いコ-ドへの道―普通のプログラマのためのステップアップガイド 第5回メタプログラミング―Excelを使ったDSLを作ろう―その4 Step3:リフレクションAPIで変換ルールを動的に適用する Step3:リフレクションAPIで変換ルールを動的に適用する Step3ではいよいよ読み取ったデータの変換処理を組み込みます。変換ルールはデータ項目に応じて異なるので、リフレクションAPI(コラム参照)を使用して動的に変換処理を適用する必要がでてきます。 下ごしらえとして、変換ルール用のConverterというインタフェースを用意し、変換ルールごとにConverterを実装するクラスを用意します(リスト3~6⁠)⁠。ここでは、IntegerConverter、DateConverter、TrimConverterの3つのクラスを作成しました。これらはStep1のstaticメソッドtoInteger

    第5回 メタプログラミング―Excelを使ったDSLを作ろう―その4 Step3:リフレクションAPIで変換ルールを動的に適用する | gihyo.jp
  • 今週末こそはOS再インスコ! という人のバックアップツール集 | 教えて君.net

    この週末(特に何という日でもないのだが)は何がなんでもOSをクリーンインストールするんだ! という人向けにおすすめなバックアップ、インストールに関するツールやサービスの記事をまとめてみた。 ■バックアップ編 OSが入っているHDDをまっさらにする前に大事なファイルを選択してバックアップするわけだが、「これで完璧!」なんて思っていても「マイドキュメントの中身」だったり、メールデータだったり、必ず何かしらコピーし忘れてしまうもの。 そんなことで後悔しないように、ディスク全体をバックアップしてくれる「EASEUS Disk Copy」を使おう。CDブートなのでシステムファイルであろうがなかろうが全てをバックアップしてくれるし、イメージ化しているわけではないのでファイルを取り出す際に特別なツールも不要だ。

  • YunoHost Admin

  • Apache POI HSSFによるExcelファイルの作成

    Webはデータで満ちており、データを検索して表示するにはもってこいのメディアです。しかし多くの場合、ブラウザはデータ分析に適したツールとは言えません。以前の記事「Reading Excel Files with Apache POI HSSF」では、Excelブックを使ってJavaアプリケーションにデータを提供する方法を解説しました。今回は、同じ形式でユーザーにデータを提供する方法を見てみましょう。 はじめに Webはデータで満ちており、データを検索して表示するにはもってこいのメディアです。多くのユーザーは、データが見つかると、自分の思考プロセスに合った方法でデータを分析したいと考えます。一部のWebアプリケーションは、データ表示オプションをどんどん増やすことで、このニーズに応えようとしています。それが適切な場合もあります。例えば、価格と機能を比較できるEコマースサイトなどです。それ以外の

    Apache POI HSSFによるExcelファイルの作成
    Hayato
    Hayato 2009/03/29
  • Return 0

    return0.infoに移転。昔の日記はまんま残してるので読みたい人はどうぞ。 世界樹の迷宮関係のコンテンツは移行が面倒なのでこっちに残すことにした。 世界樹の迷宮プレイ記録 世界樹の迷宮IIプレイ記録 世界樹の迷宮IIIプレイ記録

  • Google WSDM'09講演翻訳:大規模な情報検索システム構築における課題(4) - llameradaの日記

    GoogleのFellowであるJeffrey Dean氏のWSDM'09における講演"Challenges in Building Large-Scale Information Retrieval Systems"のスライドの翻訳の最終回です。Googleの検索システムの10年間の進化の軌跡が紹介されており、今回は将来の課題についての紹介となります。イタリック体で一部解説・感想をいれています。翻訳は素人なので詳しくは元の資料を参照してください。 第1回:Google WSDM'09講演翻訳:大規模な情報検索システム構築における課題(1) - llameradaの日記 第2回:Google WSDM'09講演翻訳:大規模な情報検索システム構築における課題(2) - llameradaの日記 第3回:Google WSDM'09講演翻訳:大規模な情報検索システム構築における課題(3) -

    Google WSDM'09講演翻訳:大規模な情報検索システム構築における課題(4) - llameradaの日記
  • 第11回 Kansai.pm / スペルミス修正プログラムを作ろう - naoyaのはてなダイアリー

    昨日は第11回 Kansai.pm でした。 今回は無理を言って自分がホストを担当させていただきましたが、面白い発表が多く開催した自分も非常に満足でした。 PFI の吉田さんによる Cell Challenge での計算機に合わせたアルゴリズムのチューニング手法の発表 (発表資料) は圧巻でした。伊奈さんの文抽出の話 (発表資料)、はこべさんのコルーチンの話 (発表資料)、いずれも難解になりがちなところを凄く分かりやすく解説されていて、さすがだなと思いました。各々ショートトークも、いずれも良かったです。 スペルミス修正プログラムを作ろう 自分も 20 分ほど時間をいただいて、スペルミス修正プログラムの作り方について発表しました。 スペルミス修正プログラムを作ろうView more presentations from Naoya Ito. スペルミス修正プログラムについてはずばり スペル

    第11回 Kansai.pm / スペルミス修正プログラムを作ろう - naoyaのはてなダイアリー
  • IBM Developer

    IBM Developer is your one-stop location for getting hands-on training and learning in-demand skills on relevant technologies such as generative AI, data science, AI, and open source.

    IBM Developer
    Hayato
    Hayato 2009/03/29
    私が考える真の意味での自動デプロイメントの定義は、まっさらな状態のマシンに Java プラットフォームと Ant をインストールし (このステップを省く方法もいくつかあります)、1 つのコマンドを入力するだけで実動のソフ
  • 携帯各キャリアの固有IDについて (全キャリア対応)

    百式の人のまとめがえらい中途半端だったのに360ブクマも集めてて悔しかったので気でまとめてみた。 ケータイのユーザーIDを取得する方法まとめ (IDEA*IDEA ~ 百式管理人のライフハックブログ ~) 携帯各キャリアの固有IDについて (全キャリア対応) 2009.03.25 コメントで指摘を頂いてEZ番号の書式について訂正いたしました。(10桁→14桁) 2010.05.20 EZ番号の再発行のポリシーに変更があったそうです 現在携帯関連の仕事を離れたため詳細を追いかけていません。 高木浩光@自宅の日記などを参照してください。 PDFはこちら: mobileid.pdf:携帯各キャリアの固有IDについて (全キャリア対応) 携帯4キャリア(DoCoMo, au, SoftBank, emobile)と、PHS(willcom)まで書いています。*1) このとおり、各キャリアは複数の

    携帯各キャリアの固有IDについて (全キャリア対応)
  • 最長共通部分列問題 (Longest Common Subsequence) - naoyaのはてなダイアリー

    部分列 (Subsequence) は系列のいくつかの要素を取り出してできた系列のことです。二つの系列の共通の部分列を共通部分列 (Common Subsecuence)と言います。共通部分列のうち、もっとも長いものを最長共通部分列 (Longest Common Subsequence, LCS) と言います。 X = <A, B, C, B, D, A, B> Y = <B, D, C, A, B, A> という二つの系列から得られる LCS は <B, C, B, A> で、その長さは 4 です。長さ 2 の<B, D> の長さ 3 の <A, B, A> なども共通部分列ですが、最長ではないのでこれらは LCS ではありません。また、LCS は最長であれば位置はどこでも良いので、この場合 <B, D, A, B> も LCS です。 LCS は動的計画法 (Dynamic Prog

    最長共通部分列問題 (Longest Common Subsequence) - naoyaのはてなダイアリー
  • ICU - International Components for Unicode

    2024-04-17: ICU 75 is now available. It updates to CLDR 45 (beta blog) locale data with new locales and various additions and corrections. C++ code now requires C++17 and is being made more robust. The CLDR MessageFormat 2.0 specification is now in technology preview, together with a corresponding update of the ICU4J (Java) tech preview and a new ICU4C (C++) tech preview. See Downloading ICU > ICU

    Hayato
    Hayato 2009/03/29
    UNICODE正規化やエンコーディング判定など
  • 編集距離 (Levenshtein Distance) - naoyaのはてなダイアリー

    昨日 最長共通部分列問題 (LCS) について触れました。ついでなので編集距離のアルゴリズムについても整理してみます。 編集距離 (レーベンシュタイン距離, Levenshtein Distance) は二つの文字列の類似度 (異なり具合) を定量化するための数値です。文字の挿入/削除/置換で一方を他方に変形するための最小手順回数を数えたものが編集距離です。 例えば 伊藤直哉と伊藤直也 … 編集距離 1 伊藤直と伊藤直也 … 編集距離 1 佐藤直哉と伊藤直也 … 編集距離 2 佐藤B作と伊藤直也 … 編集距離 3 という具合です。 編集距離はスペルミスを修正するプログラムや、近似文字列照合 (検索対象の文書から入力文字にある程度近い部分文字列を探し出す全文検索) などで利用されます。 編集距離算出は動的計画法 (Dynamic Programming, DP) で計算することができることが

    編集距離 (Levenshtein Distance) - naoyaのはてなダイアリー
  • MacPortsのSubversionが濁点つきのファイル名を扱えるようになってた - hnwの日記

    追記(2009-07-17):僕の環境だけかもしれませんが、upgradeするときは「sudo port upgrade subversion +unicode_path」としないと、新バージョンがvariantsの指定無しでビルドされてしまいます。どうにも面倒なのですが、何とかならないもんですかね。 以前、僕は「濁点ファイル名も扱えるSubversionをMacPortsでインストール」という記事を書きました。MacのSubversionだと濁点を含む日語ファイル名が上手く扱えないから、偉い人が作ってくれたパッチを当てるといいよ、という話題でした。 ところが、今日になってSubversion 1.6.0にしようと思ったらunicode_pathというvariantsの存在に気づきました。下記のようにすれば、濁点がうまく扱えるパッチを当ててくれます。 $ port install sub

    MacPortsのSubversionが濁点つきのファイル名を扱えるようになってた - hnwの日記
  • 恐怖のcrontab -r. 設定ファイルはレポジトリ管理せよ - LukeSilvia’s diary

    crontabファイル含め、設定ファイルはレポジトリで管理しましょうという話です。 恐怖のcrontab -r crontab -r を安全にする - antipop 間違えて crontab -r してしまい、crontab をふっとばしてしまったので、以下のような zsh 関数を書いて、確認を出すようにした。つか、隣同士にある -e と -r で編集と削除とか、酷いよ><。。。 cronのにジョブを登録する際に、crontabファイルを開きますが、「crontab -e」と間違って「crontab -r」をやると、crontabが消えてしまう。しかも、記事の内容にある通り、「e」と「r」というタイポしてもおかしくない位置にあるというので、これは怖い。 crontabの内容なんてほとんど覚えてない割にはちょくちょく更新するファイル。バックアップとかとってないと大変なことになる。 ytoy

    恐怖のcrontab -r. 設定ファイルはレポジトリ管理せよ - LukeSilvia’s diary