タグ

programmingとjavaに関するjo-taroのブックマーク (14)

  • java.util.ScannerクラスでCSVパーサを作ってみた Vol.1

    普段考えている事やら、何やら特定のトピックは設定せずに、将来読み返す自分に向けて何か書いてゆくためのスペースです。 とはいえ書くからには再利用しやすいものを目指します。 コメントは各記事への投稿か、Google Groups "Yasundial/Yadiary Forum"へどうぞ この記事の背景 動機 参考資料 CSVパーサの機能 CSVパーサの処理ルール 区切り文字はカンマとして、必ずしもダブルクォートで囲む必要はない 文字としてダブルクォート、カンマ、改行を含む場合には必ずダブルクォートで囲む ダブルクォートを文字として含める場合には、ダブルクォートを一つ置いてエスケープする カンマで始まる行は空の文字列を直前に含んでいる、カンマだけで終る行は空の文字列を改行前に含んでいる 文字コードや改行は厳密には定義しない。でもUTF-8が基 CSVパーサが想定する処理方法 処理概要の疑似コ

  • 事例で学ぶデザインパターン 第1回 | オブジェクトの広場

    事例で学ぶデザインパターン 第1回 デザインパターンの概要と理解のポイント デザインパターンを理解し、よりよい設計の知恵を得よう! (株)オージス総研 福田 直樹 デザインパターンの解説は、ここ数年書籍や雑誌の記事などで多く目にします。しかし、デザインパターンというと小難しいイメージだったり、一部のマニアックな設計者だけが使うものだ、というような感覚を持たれている方もいらっしゃるのではないでしょうか。また、何となくは理解できた気はするけれども、効果が実感できずに適用に二の足を踏んでいるという方もいらっしゃると思います。 今回は、ケーススタディにデザインパターンを適用した設計を検討し、主にデザインパターンを適用しない場合と適用した場合の違い、メリット、考慮点を示すことによって各デザインパターンを理解をしていただくような形で進めたいと思います。読んでいただく方のデザインパターン学習の動機付けに

  • Decoratorパターン

    機能拡張におけるDecoratorパターンの利点 クラスの持つ機能を拡張する方法としては、一般には継承か委譲が使われる。しかし、これらの方法では、拡張の順序によって、クラスどうしに不要な従属関係が生じてしまう、という問題がある。 例えば、ファイルの読み書きをするFileクラスがあるとしよう。ここで、 圧縮されたファイルの読み書きもできるようにする。 暗号化されたファイルの読み書きもできるようにする。 という、2つの機能を追加することにする。 圧縮されたファイルの読み書きをするクラスをCompressedFile、暗号化されたファイルの読み書きをするクラスをCipheredFileとする。 まず、Fileクラスを拡張して、圧縮機能を持ったCompressedFileクラスを作ったとしよう。問題は、CipheredFileクラスである。 Fileクラスを拡張してCipheredFileクラスを

  • デザインパターン[モデリング] -TECHSCORE-

    オブジェクト指向プログラミングにおいてデザインパターンを利用することは、開発者に様々なメリットを与えてくれます。 ここでは、「デザインパターンとは何か」というようなデザインパターンの基事項と、GoFの23個のデザインパターンをJavaを利用してわかりやすく解説します。 デザインパターン INDEX

  • Java講座 > 2.1. ユーティリティクラス

    Java講座 1. ケアレスミスを減らす章 1.1. while ループより for ループ 1.2. 配列を返すメソッド 1.3. チェーンコンストラクタ 1.4. キャッチした例外は必ず使う 1.5. リテラルの比較 1.6. 列挙型の定義 2. 堅牢性を獲得する章 2.1. ユーティリティクラス 2.2. フィールドの可視性 2.3. メソッドの可視性 2.4. クラスの可視性 2.5. 配列フィールド定数 3. 拡張性/柔軟性を獲得する章 3.1. ファクトリーメソッド 3.2. 怠惰な初期化 3.3. 継承はカプセル化を壊す 3.4. 継承の悪い例 3.5. 継承の良い例 3.6. インターフェースの不要な修飾子 3.7. インターフェースで定数定義 3.8. 改行コード 3.9. データの入れ物として使わない 4. 知っていると便

  • 「基礎から学ぶサーブレット/JSP」

    サーブレット/JSPの役割を理解する [連載]基礎から学ぶサーブレット/JSP(1) サーブレットの基からJSP、カスタムタグまで、実践的なサーバサイドJavaプログラミングの基礎を1からから学びます

  • 連載記事 「Strutsを使うWebアプリケーション構築術」

    Strutsプログラミングの準備 Strtusを使うWebアプリケーション構築術(1) ステップ・バイ・ステップの解説で誰にも分かるStruts講座。効率の高いWebアプリケーション開発をマスターしよう

  • Amazon.co.jp: Effective Java 第2版 (The Java Series): Joshua Bloch (著), 柴田芳樹 (翻訳): 本

    Amazon.co.jp: Effective Java 第2版 (The Java Series): Joshua Bloch (著), 柴田芳樹 (翻訳): 本
  • バイブルというか、良書および必読の書 - ぐるぐる~

    寝ようと思っていたら、その言語で「バイブル」と呼ばれる書籍を教えてくださいなんて質問を見つけてしまい、書いてたら長くなる長くなる・・・ 言語バイブル - Strategic Choiceが元らしく、いくつかかぶってるけど気にしない方向で。 Java Java言語仕様 第3版 (The Java Series) 何かと便利 Java仮想マシン仕様 (The Java series) 同上 Effective Java 第2版 (The Java Series) Effective なのに Java やるなら必読 Java Puzzlers 罠、落とし穴、コーナーケース Java の落とし穴にはまりたくなければ読むべき Javaプログラミングの処方箋 (Programmer’s foundations) 今となっては内容がちょっと古いけど、十分通用する。Effective の次に読むような

    バイブルというか、良書および必読の書 - ぐるぐる~
  • Plain Old Java Object - Wikipedia

    Plain Old Java Object (POJO) は、あるJavaオブジェクトがEJB(特にEJB 3より前のEJB)のように特殊なものではなく、ごく普通のJavaオブジェクトであることを強調した名称。設計はシンプルであればあるほど良いと主張する人たちが好んで使用する。 概要[編集] 2000年9月にマーティン・ファウラーとレベッカ・パーソンズ、ジョシュ・マッケンジーがこの用語を使い始めた。「システムに普通のオブジェクトを使うことに強い抵抗を持つ人が多いのはなぜかと考えたとき、それは単純なオブジェクトに良い名前がついていないのが原因だという結論に達した。そこで我々が名前をつけたら、それがとても流行りだした。」[1] この命名法は、テレフォニーにおけるPOTS (Plain Old Telephone Service) や、C++で書かれているがC言語の機能しか使わないPODS (P

  • @IT:Spring Frameworkで理解するDI(1)

    DI:依存性の注入とは何か?:Spring Frameworkで理解するDI(1)(1/3 ページ) Javaエンジニアであれば最近、「Dependency Injection」や「DIコンテナ」「Spring」、または「Seaser2」といった名前を目にしたことがあるのではないでしょうか。これらは次世代のEJB(EJB 3.0)に取り込まれる動きがあるなど、最近非常に注目されているキーワードであり、今後のJava開発を語るうえで避けては通れない概念の1つになるとされています。 この連載は、「Spring」というフレームワークを利用して、J2EE開発における「Dependency Injection(DI)」というデザインパターンから得られるメリットを紹介し、J2EEの今後の方向性を理解する助けとしていただくことを目的としています。 Dependency Injection:依存性の注入

    @IT:Spring Frameworkで理解するDI(1)
  • Log4J徹底解説~概説

    目次 サンプルパッケージ Log4J はロギングのためのクラス・ライブラリである。開発元は言わずと知れた Apache のサブプロジェクトの一つである。開発ホームページは http://logging.apache.org であり、そこからダウンロードできる。現在のバージョンは 1.2.8 であり、これを使って以下の解説は書いていく。 とはいえ、最新バージョンは 1.2.13 になった。これは 1.3 に向けた 1.2 系の最終リリースである、とアナウンスされている。なので、今回(2006/3)のこのテキストのバージョンアップでは、1.3-alpha-8 に従って、1.3 を先取りしちゃおう!というのが大きな修正になっている。実際、広く使われた 1.2.8 から 1.2.13 までのバージョンアップはバグ修正に近いものばかりである。それでも若干影響のあるものとしては、Category クラ

  • デバッグのヒント教えます(1) - @IT

    時の過ぎるのは早いもので、年が明けたと思っていたら、気が付けばもう5月になってしまいました。新社会人の皆さんであればこれからエンジニアの仲間入りをしていろいろな知識を習得していこうと張り切っていらっしゃることでしょう。 この連載ではJavaエンジニアの皆さんが必ずぶつかるデバッグについて実例を挙げながらその具体的な対処法について解説していきます。コンパイルエラーのメッセージは、現在よく使われているEclipse 3.1.x(の「問題」ビュー)で表示されるメッセージを基に解説していきます。コンパイルに用いるJDKのバージョンは、5.0を想定しています。 Javaプログラムにおけるデバッグのパターンは? Javaプログラムにおけるデバッグの対象となりうるものには、大きく3つのパターンがあります。 (1)コンパイルエラー Javaのプログラムを書いていて最初にやるデバッグは、おそらくコンパイル

    デバッグのヒント教えます(1) - @IT
  • Life with Cygwin

    沖ソフトウェア株式会社は、沖通信システム株式会社および株式会社沖インフォテックと平成22年10月1日をもって合併いたしました。新会社名は、株式会社OKIソフトウェアとなります。3社が行っております事業は新会社にて従来通り継続いたします。

    jo-taro
    jo-taro 2009/03/11
  • 1