タグ

*programとobject*に関するsh19910711のブックマーク (251)

  • 日本語形態素解析ライブラリ Kuromoji のコマンドライン用インターフェイスを書いた - ひだまりソケットは壊れない

    Java で書かれた日形態素解析ライブラリ Kuromoji を Perl から使ってみたいなー、と思って、別の言語のプログラムから使いやすいようなインターフェイスを書きました。 Kuromoji について kuromoji - japanese morphological analyzer Java で書かれたオープンソースの日語の形態素解析ライブラリです。 検索用のライブラリらしくて、Apache Lucene と Apache Solr に組み込まれているらしいです。 もちろん検索エンジンとは独立して利用することも可能です。 独立して使用する場合は、単に jar ファイルをダウンロードしてきて Java のライブラリパスに追加するだけ (あるいは公開されている Maven リポジトリを使用して依存関係を解決するだけ) で形態素解析できるようになります。 便利ですね。 Java

    日本語形態素解析ライブラリ Kuromoji のコマンドライン用インターフェイスを書いた - ひだまりソケットは壊れない
  • 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
  • ErlangとJavaを連携させてみる | Erlearng+

    Javaで処理した内容をErlangで渡したい場合、標準で用意されているjinterfaceを用いることで実装できる。Java側でErlangとメッセージのやり取りをできるノードを作成することができるようだ。 Java側のコードを以下のように書く。Erlangライブラリ(lib/jinterface-1.5.8/prevにある)の中にある「OtpErlang.jar」にクラスパスを通しておく必要がある。 上記のjinterfaceのリンク先にあるリファレンスを見ると、Erlangの型に対応したクラス例が記載されている。 public class Sample { public static void main(String[] args) throws IOException { // ノード名の設定 OtpNode node = new OtpNode("bar"); //メールボック

    sh19910711
    sh19910711 2013/08/17
    jinterface
  • Mock と Stub と Spy を調べてみた - I'm still growin' up ...

    Spock 0.7 から、これまでの Mock に加えて Stub と Spy も使えるようになったので今回調べてみました。 ぶっちゃけ Mock だけ使えれば事足りるんじゃないかと思ってました。 (調べてみた後も若干そう思ってます) テストダブル(Test Double) テストダブルは、テストする対象が依存しているオブジェクトを置き換える代役です。 モック、スタブ、スパイはテストダブルになります。 テスト関連だと、当然のように「ダブル」って言葉が出てきますが、 ちゃんと理解していないと混乱する用語だと思います。 テストダブルについては『JUnit 実践入門』の第11章に詳しく書かれています。 私はこれを読んで、理解ができました。 JUnit実践入門 ~体系的に学ぶユニットテストの技法 (WEB+DB PRESS plus)posted with ヨメレバ渡辺 修司 技術評論社 201

    Mock と Stub と Spy を調べてみた - I'm still growin' up ...
  • サービス提供終了のお知らせ

    日頃より、アレスネットをご愛顧いただきまして誠にありがとうございます。 「ホームページサービス」のサービス提供は2016年1月31日をもちまして終了させていただきました。 これまで長らくご利用いただき、誠にありがとうございました。 今後も、皆様によりよいサービスをご提供させていただけるよう、サービス品質向上に努めて参りますので、何卒、ご理解いただけますようお願 い申し上げます。 <アレスネットをご契約のお客様へ> 後継サービスとして「userwebサービス」を提供させていただいております。 詳しくは、以下のリンクをご参照ください。 ▼「userwebサービス」のご案内 http://www.ejworks.info/userhp/alles/index.html 今後ともアレスネットをご愛顧いただけますようお願い申し上げます。 株式会社イージェーワークス アレスネット カスタマーサポート

  • Ooharabucyou

    詳しくは投稿をご覧ください。

    Ooharabucyou
  • 定義的プログラミング - 谷本 心 in せろ部屋

    定義的プログラミングっていう言葉を思いついたから、メモしとく。 イメージ的にはこんなん。 Before: 普通の処理コード public Dto process(Map<String, String> input) { Dto dto = new Dto(); dto.userName = input.get("ユーザ名"); dto.password = input.get("パスワード"); ValidateUtils.checkRequired(dto.userName); ValidateUtils.checkLength(dto.userName, 0, 24); ValidateUtils.checkRequired(dto.password); ValidateUtils.checkLength(dto.password, 8, 24); ValidateUtils.chec

    定義的プログラミング - 谷本 心 in せろ部屋
  • J2SE 5.0 Tiger 虎の穴 環境変数

    public class EnvironmentVariableTest1 { public static void main(String[] args) { String java_home = System.getenv("JAVA_HOME"); System.out.println("JAVA_HOME = " + java_home); } } C:\examples>javac EnvironmentVariableTest1.java 注: EnvironmentVariableTest1.java は推奨されない API を使用またはオーバーライド しています。 注: 詳細については、-deprecation オプションを指定して再コンパイルしてください。 C:\examples>java EnvironmentVariableTest1 Exception in thr

  • 内部から見たVert.xとNode.jsとの比較 - uehaj's blog

    socket.ioがJavaやGrailsから扱えるかを調べている関係でvert.xを調べていて興味深かったので、こちらにあるVert.xの記事を翻訳してみました。JGGUG G*Workshopにおける杉浦さんのVert.x資料もお奨めです。 Vert.xは急速に発達つつあるサーバ・フレームワークです。 世にあまたあるサーバ・フレームワークのいずれもが、多様なプロトコルをサポートし、高速であることが特長であると主張していますが、Vert.xはそれらよりも一歩抜きん出ています。例えば、Vert.xは、サーバサイドのネットワーク環境の確立と操作も対象としています。言いかえれば、Vert.xは、単一サーバ上のデーモン実行だけでなく、クラスタリング環境での複数サーバデーモンの実行を考慮しているのです。 したがって、Vert.xを調査するにあたっては、どのように高性能を実現しているかだけではなく、

    内部から見たVert.xとNode.jsとの比較 - uehaj's blog
  • 多分、==と=の話をしているんだと思う。 比較に使うはずのif文の中でも代入..

    多分、==と=の話をしているんだと思う。 比較に使うはずのif文の中でも代入できるのはバグの元だよねーって話。ちなみにjavaでもCでもif文の中に代入は存在できるので、そういった意味でどっちも優れてない。 あと、俺が思うに比較の順番とかがフリーダムだとかなりバグ混入しやすいじゃん。 Javaの場合、エラーにならないのはbooleanを代入した場合だけ。つまり、condというboolean変数があったとして、 if (cond == true) {} if (cond == false) {} のような書き方をしたときだけが代入にしてしまうミスが発生するわけ。 でもそんな書き方はありえない。condがbooleanの場合の通常の判定文は if (cond) {} if (!cond) {} のように書く。だからJavaでifの条件式に代入を書いてしまってミスることはまずない。Cと比べて一緒

    多分、==と=の話をしているんだと思う。 比較に使うはずのif文の中でも代入..
  • Java8のlambda構文がどのようにクロージャーではないか - きしだのHatena

    Java8にlambda構文が入りましたが、これはクロージャーではない、とされています。 では、どのように「クロージャーではない」のか、ちょっと見てみます。 まず、lambdaを返すメソッドを定義します。 public static Supplier<String> createMessenger(String name, String address){ return () -> { return String.format("私は%s、%sに住んでる", name, address); }; } 呼び出すと、こんな感じでSupplierを受け取ります。 Supplier<String> messenger = createMessenger("きしだ", "ふくおか"); このSupplierを実行すると、次のようになります。 System.out.println(messenger.

    Java8のlambda構文がどのようにクロージャーではないか - きしだのHatena
  • よろしい。ならばソースコードリーディングだ。 - 低学歴エンジニアの戯言。

    こんにちわ。世間は七夕です。 短冊に願いことを書けといわれたら真っ先に 性的なお付き合いを前提としてあずにゃんと結婚したいです。 もっと技術力がほしいです。明日にもっていけなくなりそうなんです。 と、ガチで書いてしまいそうな俺です。 単純に技術力とをつける…言っても様々ですが、個人的に一番力がつくのはソースを読むことではないかと思っております。 自分はメインプロダクトがJavaなのでヒマなときはよくJava関連のソースをよく読んでいます。 Javaは元々OSSの毛色が強いので色々あります。 Webフレームワークに興味のある人はStrutsあたりを読むとServletの扱いやTemplate Methodパターンについて理解できるかもしれません。 DIやAOPに興味のある人はSeaser2をオススメします。 書いているのが日人なので几帳面なソースの書き方をされています。 GAE/Jに興味

    よろしい。ならばソースコードリーディングだ。 - 低学歴エンジニアの戯言。
  • 文字列でswitchするときはif-else switchイデオムを使うほうが安全 - きしだのHatena

    Java SE 7から、switch構文で文字列が使えるようになりました。 public void hoge(String s){ switch(s){ case "a": System.out.println("AA"); break; case "b": System.out.println("BB"); break; default: System.out.println("Other"); } } ところが、残念なことに、sがnullの場合はdefaultには飛ばず、ぬるぽが発生します。 そこで、null判定は事前にif文で行うことになるので、次のようなif-else switchイデオムを使うと便利です。 if(s == null){ System.out.println("Null!"); }else switch(s){ case "a": System.out.printl

    文字列でswitchするときはif-else switchイデオムを使うほうが安全 - きしだのHatena
  • InfoQ: Modular Java:動的なモジュール化

    これからの当然の結果として、同じ名前の異なった Classオブジェクトを持つVM中に、複数のクラスローダを持つことができる、ということである。com.infoq.example.Appという名前のクラスを、同じVM上のバンドルcom.infoq.exampleのバージョン1とバージョン2の両方によってエクスポートできる。バージョン1にバインドされたクライアントバンドルは、バージョン1のクラスを得る。バージョン2にバインドされたクライアントバンドルは、バージョン2のクラスを得る。このことは、モジュールシステムにかなり普通に起きることである。同じVM上で、あるコードは、ライブラリの古いバージョンをロードする必要があり、一方(他のバンドルにある)新しいコードは、ライブラリの新しいバージョンが必要な場合である。幸いにも、OSGiは、そのような推移的な依存性を管理し、非互換なクラスに起因する問題がな

    InfoQ: Modular Java:動的なモジュール化
  • Codespell – Java言語がそのまま呪文となる教育用3Dゲーム

    カリフォルニア大学サン・ディエゴ校の計算機科学者達が開発した Codespell は、一人称視点の3Dゲームなのですが、その一番の特徴は、プレイすることでJavaプログラミングを身につけられるという点です。 Codesp […] カリフォルニア大学サン・ディエゴ校の計算機科学者達が開発した Codespell は、一人称視点の3Dゲームなのですが、その一番の特徴は、プレイすることでJavaプログラミングを身につけられるという点です。 Codespellでは、プレイヤーは小動物ノーム(gnome)たちが住む土地にやってきた魔法使いです。ノーム達は過去に魔法を使って生活していたのですが、今は魔法をうまく使えなくなっています。魔法の呪文はJava言語プログラムで、物体を浮遊させるとか火を起こすといった7つの手持ちの呪文を使って、ノーム達を助け、火を消したり川を渡ったりといったクエストを解き、バッ

    Codespell – Java言語がそのまま呪文となる教育用3Dゲーム
  • bitbucketの使い方

    With best-in-class Jira integration, and built-in CI/CD, Bitbucket Cloud is the native Git tool in Atlassian’s Open DevOps solution. Join millions of developers who choose to build on Bitbucket.

    bitbucketの使い方
  • ブール値を返すメンバー関数の命名規則

    関数の名前の付け方は人それぞれですが、使う単語が同じなら、関数の名前はほぼ同じものになると思います。例えば、サイズをセットする関数の名前を、「set」と「size」という単語を使って考えると、ほぼ全員が「SetSize」と答えるでしょう。「SizeSet」「SizeToSet」「SizeSetted」「SettingSize」といった名前を考える人は、ほとんどいないと思います。 ところが、真か偽かのブール値を返す関数の名前は、混乱することが多いようです。 ここでは、Java言語で採用されている命名規則と、その解釈の仕方を紹介します。 関数名が混乱する例 ブール値を返す関数では、「Is○○」という名前を良く見かけます。例えば、中身が空っぽかどうか、の判定をする関数には、IsEmptyという名前が良く使われます。MFCのCStringクラスや、JavaのListインターフェースなどにも、IsE

  • JavaとC++の比較 - Wikipedia

    C++においてconst修飾されたメンバ関数は、関数内でメンバ変数を変更することができなくなる(mutable指定された変数を除く)。Javaには相当機能はない。 Javaにおいてfinal修飾されたメソッドは派生クラスでオーバーライドできなくなる。また、final修飾されたクラスは派生クラスを定義できなくなる。なお、C++11ではJavaのようにメンバ関数のオーバーライドや派生クラスの定義を禁止するfinal修飾子が追加された。 C++goto文をサポートする。Javaはサポートしないが、ラベル付break文とラベル付continue文で、構造上ややgotoライクな機能を提供する。実際には、Javaは、コードを読みやすくするため、構造化制御フローを強要する。 C++Javaが持たないやや低レベルな機能を提供する。C++には、特有のメモリ記憶位置や低レベルオペレーティングシステムコンポ

  • ゆとりなJavaプログラマが読むといいかもしれないオープンソースソフトウェア - wyukawa's diary

    Java出来ますって言ってるのにOpenJDKのコードをチェックアウトした事も無いようならモグリである可能性は高い。 一歩先行くJavaプログラマが読むべきオープンソースソフトウェア10選 - 設計と実装の狭間で。 OpenJDKのコードをチェックアウトした事も無いモグリです。こんにちは。 ま、それはともかくw 上記はいいエントリだし参考になります。ただまあモヒカンなのは事実だと思うのでゆとり路線でどういうオープンソースソフトウェアを読むと良いかもしれないって言うのを書いてみたいと思います。かもしれないって書いてるのがすでにゆとりですね。サーセンw JUnit すでに語り尽くされているとは思いますが、これは外せない。 僕自身は下記のJUnit3.8.2を読解する記事を読んでからJUnit3.8.2を読んでみましたね。 Java World (ジャバ・ワールド) 2005年 9月号 出版社/

    ゆとりなJavaプログラマが読むといいかもしれないオープンソースソフトウェア - wyukawa's diary
  • 単体テストを“神速”化するQuick JUnitとMockito

    単体テストを“神速”化するQuick JUnitMockito:ユカイ、ツーカイ、カイハツ環境!(16) Quick JUnitプラグインの3つの大きな特徴 近年、JUnitとHudsonを利用した継続的インテグレーション(CI)によるテストの自動化や、テスト駆動開発(TDD)の普及などにより、ユニットテスト(単体テスト)のテストコードの作成が重要視されています。 今回紹介する「Quick JUnit」プラグインは、JUnitによるテストコードの作成と実装を支援するEclipseプラグインです。Quick JUnitプラグインは石井勝さんにより開発されていましたが、石井さんが不慮の事故により死去後、Quick JUnitプラグインプロジェクトにより開発が継続されています。優れたオープンソースプロジェクトの模範のようなプロジェクトです。 訂正のお知らせ 故人のお名前について間違いがあり、修

    単体テストを“神速”化するQuick JUnitとMockito