タグ

Javaに関するtakuya5455のブックマーク (15)

  • 5年後に後悔しないJavaプログラムの書き方 - L'eclat des jours(2009-07-02)

    _ 5年後に後悔しないJavaプログラムの書き方 ここ数日、死ぬほど後悔しまくっているので、あらためて(というのは、数年前にも一度後悔しまくって、そのときの知見はあらかた処方箋とかコーディングの掟に書いているからだが)後悔しないための書き方をいくつか紹介する。 とにかく、ファクトリメソッドパターンを使うこと。 これは当に重要。しかも簡単でありながら効果は絶大。 だめな例。 public class FooBar { private Connection conn; ... protected void setup() { ... conn = DriverManager.getConnection(url); ... } urlを指定することや、DriverManagerの実装を交換すれば良いだろうと想定していても(というか、Connectionならそういう方法もあり得るが、そうはいかな

    takuya5455
    takuya5455 2009/07/03
    他にもたった一つのfinalメソッドのために、クラスをまるまるコピー&ペーストして別クラスを作らざるを得ないというような例もある。というわけでfinalも極めて刹那的なインターフェイスだ。
  • Google Android用携帯アプリ作成のための基礎知識 (1/5) - @IT

    Android”って何? 人造人間のこと? Androidは、Googleが発表した携帯電話のプラットフォームです。発表と同時にいろいろな媒体で紹介されましたから、ご存じの方も多いことでしょう。まだ、ご存じでない方は、ニュース記事「グーグルが「アンドロイド」SDK公開——動画デモも〜エミュレータも提供〜」が参考になるでしょう。 Linux 2.6カーネルをベースとしていて、アプリケーションの開発にはJavaを使うことができます。早速、SDK(ソフトウェア開発キット)をダウンロードして試用してみました。 携帯電話アプリ向けのJava MEとの互換性がない ところで、携帯電話などで動作するアプリケーション向けのJava Platformといえば、SunのJava ME(Java Platform, Micro Edition)があるわけですが、Androidで動作するJavaアプリケーション

    Google Android用携帯アプリ作成のための基礎知識 (1/5) - @IT
    takuya5455
    takuya5455 2009/06/19
    携帯電話などで動作するアプリケーション向けのJava Platformといえば、SunのJava ME(Java Platform, Micro Edition)があるわけですが、Androidで動作するJavaアプリケーションは、現時点ではJava MEとの互換性が保証されていません。この
  • Android入門

    AndroidGoogle 社が提供する携帯電話向けの OS です。ここでは Android を使ったアプリを開発される方を対象として、開発環境である Android Studio のインストール方法やプログラミング方法、そして作成したアプリの公開方法まで解説します。

    Android入門
    takuya5455
    takuya5455 2009/06/19
    AndroidはGoogle社が提供する携帯電話向けのプラットフォームです。ここではAndroidプラットフォーム上で動作するアプリケーションをWindows上で開発する方法について学習していきます。
  • プログラマー面接時の技術的な質問事項(アプレッソ版) - 解答編 : 小野和俊のブログ

    昨日、プログラマー面接時の技術的な質問事項(アプレッソ版)を書いたところ、「自分ならこう答える」というエントリを書いてくれた人が何人かいて、個別にコメントしようかとも思ったのだが、昨日のエントリだけだと質問の投げっぱなしになってしまうところもあるので、解答編を書くことにした。 なお、「面接の質問項目を公表しちゃっていいの?」という指摘もあったが、ブログに書いたのはあくまでも質問項目の一例だし、解法を検討する過程を見れば普段どんな風に開発しているのかはだいたいわかるので、特に問題ない。 for (int i = 0; i < list.getLength(); i++) {}の潜在的パフォーマンスボトルネック list.getLength()がlist.getLength()回評価されてしまう。具体例としては、JREに標準で付属するDOMのライブラリのNodeListの実装はlist.get

    プログラマー面接時の技術的な質問事項(アプレッソ版) - 解答編 : 小野和俊のブログ
    takuya5455
    takuya5455 2009/05/16
    list.getLength()がlist.getLength()回評価されてしまう。
  • プログラマー面接時の技術的な質問事項(アプレッソ版) : 小野和俊のブログ

    技術者・SE・プログラマ面接時の技術的な質問事項というエントリをはてブで見かけたのだが、私もjavaプログラマーの面接を割とよくやっているので、よく質問する内容をまとめてみた。 (ちなみに、基的にコーディング面接の形態を取っている) プロジェクトの性質にもよると思うが、私の場合には、情報処理技術者試験的に基礎が満遍なく抑えられているかどうかよりも、 すぐ答えが見つからないような課題に対して、きちんと自分でやり方を考え、対応することができるか 「変な」コードをコミットしたりしないか(見つけにくいバグを混入させるとか、汚いとか、遅いとか)といった点を重視している。 まず、何を知っているかよりも、どんなものを作れるか、どんなことができるか、という質問。 ここで強烈な回答が来る人は、たいていここより下の質問は「あー、はいはい」という感じでサラッと答えてくることが多い。 これまでに携わってきた開発

    プログラマー面接時の技術的な質問事項(アプレッソ版) : 小野和俊のブログ
    takuya5455
    takuya5455 2009/05/16
    クラスとインスタンスの違いの説明 。インターフェースと抽象クラスをどんな基準で使い分けているか。継承とコンポジションをどんな基準で使い分けているか。
  • 時刻の扱い方

    時刻の基 Javaの時刻の扱い方はUNIXのそれに似ています。 UNIXではグリニッジ標準時(GMT)の1970年1月1日午前0時(UNIX元年の元旦)からの秒数を int 型で数えています。 グリニッジ標準時は正式には世界時(Universal Time)と呼ばれ,天体の運行を基準に定められているので,進み方が一定ではなく,現在では原子時計に基づく協定世界時(UTC,Coordinated Universal Time)を基準にすることが一般的です。 協定世界時はときどき「うるう秒」(23時59分60秒)が入ります。 UNIXの方式は,秒単位なので粗いだけでなく,21世紀のうちに int 型(32ビット整数)の範囲をはみ出してしまいます。 Javaでは System.currentTimeMillis() というメソッドで現在の協定世界時を得ます。 起点はやはり1970年元旦0時ですが

    takuya5455
    takuya5455 2009/04/29
    MEDIUM 2002/05/26 21:51:34
  • Java 言語 コーディング規約 9 - ネーミング規約

    [目次] [前のページ] [次のページ ] 9 - ネーミング規約 ネーミング規約は,可読性を上げることによってプログラムをより理解しやすいものにする.それが定数であるか,パッケージであるか,クラスであるかといったネーミング対象の機能についての情報をプログラマに与えることができるので,コードの理解を助けることができるのである. ネーミング対象の種類 ネーミングのルール 例 ユニークなパッケージ名のプリフィクス(接頭辞)は,常に小文字だけの ASCII 文字で書かれ,トップレベルのドメイン名(現在は com,edu,gov,mil,net,org,あるいはISO標準規格の3166と1981において規定される2文字のアルファベットで表される国コード)であるべきである. 続く部分は,プログラミングを行う組織の独自のネーミング規約に応じて変化する.それらの規約では,たとえば,ディレクトリ名の部分

    takuya5455
    takuya5455 2009/04/27
    ネーミング規約は,可読性を上げることによってプログラムをより理解しやすいものにする.それが定数であるか,パッケージであるか,クラスであるかといったネーミング対象の機能についての情報をプログラマに与える
  • http://www.makino-style.org/education/jed06.html

    takuya5455
    takuya5455 2009/04/23
    一般的にはtry/catch文とthrows句を利用して以下のようなコードを記述することが多いです。
  • Javadoc用のコメントの書き方

    Version 1.0, 1997年9月18日, 川口 浩司 前書き JDKに付属している Javadoc というツールは、ソースリスト上のコメントから、自動的にドキュメントを作成してくれます。作成される書式は、APIのマニュアルと同じものです。 Javadocについては、Javasoftから以下のようなドキュメントが公開されています。(詳しくは Javadoc Home Page を参照してください) JDK付属の Javadocオンラインマニュアル How to Write Doc Comments for Javadoc The Java Language Specification (JLS) CHAPTER 18「Documentation Comments」 ここでは、これらのドキュメントを元に、日語での応用例を含めて、コメントの書き方について自分なりにまとめてみました。 コ

    takuya5455
    takuya5455 2009/04/22
    説明文の1行目は概要として扱われるので、機能を簡潔に記述すること。半角ピリオドで終わっているかどうかで文として認識しているので、日本語で記述する場合にも、全角の「。」「,」は使えない。
  • Apache Commons Lang 2.4 API

    takuya5455
    takuya5455 2009/04/22
    org.apache.commons.lang.time.DurationFormatUtils
  • Apache Download Mirrors

    We suggest the following location for your download: https://dlcdn.apache.org/ Alternate download locations are suggested below. It is essential that you verify the integrity of the downloaded file using the PGP signature ( .asc file) or a hash ( .md5 or .sha* file). HTTP ¶ https://dlcdn.apache.org/ Backup Sites ¶ https://dlcdn.apache.org/ Verify the integrity of the files ¶ It is essential that y

    takuya5455
    takuya5455 2009/04/21
    時刻と時刻の差を表示するときとかに。
  • ObjectClub - コーディング規約の会

    ここでは、コーディング規約を公開しています。当規約をより良いものにするため、ディスカッション用としてメーリングリストをご用意しました。メーリングリストへの 入会方法は、このページの末尾にあります。 コーディング規約に関する情報をご紹介します。 ■株式会社電通国際情報サービス版 Javaコーディング規約2004(04/09/30) ・PDF(約430KB) Javaコーディング規約の担当者へのご意見はjava-coding-info at ObjectClub.jpまでお寄せください。Javaコーディング規約は、(株)電通国際情報サービス様の『Javaコーディング規約2004』をもとにしております。 『Javaコーディング規約2004』の改版として、『Javaルールブック ~読みやすく効率的なコードの原則』が出版されております。 ■オブジェクト倶楽部版 Javaコーディング規約(04/0

    takuya5455
    takuya5455 2009/04/20
    株式会社電通国際情報サービス版 Javaコーディング規約2004(04/09/30)
  • ステートメントの高速化

    この連載では、Javaのデータベース・アクセスAPIである「JDBC」の機能を、サンプルコードを交えて解説していきます。また、J2EEにおけるJDBCの位置付けや、JDBCを利用するさまざまなテクノロジについても解説していく予定です。前提知識としては、Javaとリレーショナル・データベースに関するベーシックな知識があれば十分です。 第2回「JDBCによるDBへの接続と検索の実行」では、select文の実行を、そして第3回「JDBCによる更新処理の実行」では、DDL文やDML文の実行を取り上げました。第4回の今回は、SQL文をプリコンパイルするプリペアド・ステートメントの利用方法、そして、ストアド・プロシージャの実行方法を紹介しましょう。 プリペアド・ステートメントを利用する プリペアド・ステートメントとは ここでは、SQL文をプリコンパイルするために使用するプリペアド・ステートメントについ

    ステートメントの高速化
    takuya5455
    takuya5455 2009/04/19
    PreparedStatement と通常の Statement の速度比較。
  • MySQL :: MySQL 5.1 リファレンスマニュアル :: 24.4.5.1 JDBC の基本コンセプト

    24.4.5.1.1. DriverManager インターフェイスを使用して MySQL に接続する アプリケーション サーバの外で JDBC を使用している場合、DriverManager クラスは Connections の確立を管理します。 DriverManager は、Connections をどの JDBC ドライバ で作成するべきかの指示を必要とします。この最も簡単な方法は、java.sql.Driver インターフェイスを実装するクラスで Class.forName() を使用することです。MySQL Connector/J では、このクラスの名称は com.mysql.jdbc.Driver になります。このメソッドで、外部構成ファイルを使用して、データベースへの接続に使用するドライバ クラス名とドライバ パラメータを供給することが可能です。 次のセクションの Java

    takuya5455
    takuya5455 2009/04/19
    MySQLへの接続。SQLの実行。
  • javaの文字列の中にダブルクォーテーションを格納する方法を教えてください。…

    javaの文字列の中にダブルクォーテーションを格納する方法を教えてください。 たとえば文字列の中にcsvの1行を格納するために String str = ”””+hoge変数+””,””+hoge変数2+””,””+.......;のように書くとエディターの修正部分が赤くエラー表示になってしまいます。

    takuya5455
    takuya5455 2009/04/12
    ¥”と書けばOKですよ。¥記号が続く文字のエスケープをしますので。
  • 1