プライム無料体験をお試しいただけます
プライム無料体験で、この注文から無料配送特典をご利用いただけます。
非会員 | プライム会員 | |
---|---|---|
通常配送 | ¥410 - ¥450* | 無料 |
お急ぎ便 | ¥510 - ¥550 | |
お届け日時指定便 | ¥510 - ¥650 |
*Amazon.co.jp発送商品の注文額 ¥3,500以上は非会員も無料
無料体験はいつでもキャンセルできます。30日のプライム無料体験をぜひお試しください。
¥2,860¥2,860 税込
発送元: Amazon 販売者: 高松物販
¥2,860¥2,860 税込
発送元: Amazon
販売者: 高松物販
¥138¥138 税込
配送料 ¥240 5月29日-31日にお届け
発送元: バリューブックス 【防水梱包で、丁寧に発送します】 販売者: バリューブックス 【防水梱包で、丁寧に発送します】
¥138¥138 税込
配送料 ¥240 5月29日-31日にお届け
発送元: バリューブックス 【防水梱包で、丁寧に発送します】
販売者: バリューブックス 【防水梱包で、丁寧に発送します】
無料のKindleアプリをダウンロードして、スマートフォン、タブレット、またはコンピューターで今すぐKindle本を読むことができます。Kindleデバイスは必要ありません。
ウェブ版Kindleなら、お使いのブラウザですぐにお読みいただけます。
携帯電話のカメラを使用する - 以下のコードをスキャンし、Kindleアプリをダウンロードしてください。
Effective Java プログラミング言語ガイド 単行本 – 2001/12/3
{"desktop_buybox_group_1":[{"displayPrice":"¥2,860","priceAmount":2860.00,"currencySymbol":"¥","integerValue":"2,860","decimalSeparator":null,"fractionalValue":null,"symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"vR0iU3jIlGFEv6gRm%2FIL3VpaFGFCFNLoCgiggDURg3mm57UEr3Y0tIj6%2BlqPAGPCn%2Fm8qrBouTsIEd7T2dIPZNgro1kjueG9jVmbFKwEB9br1C3t08tSuYx0plFEOhs4mab2iAj26%2FHL7dtboZvFm%2Fx1cMSkKO0dZTvztHkXVfAsSvtxhH1I5wU%2FdDA1si5D","locale":"ja-JP","buyingOptionType":"NEW","aapiBuyingOptionIndex":0}, {"displayPrice":"¥138","priceAmount":138.00,"currencySymbol":"¥","integerValue":"138","decimalSeparator":null,"fractionalValue":null,"symbolPosition":"left","hasSpace":false,"showFractionalPartIfEmpty":true,"offerListingId":"vR0iU3jIlGFEv6gRm%2FIL3VpaFGFCFNLoNFPZ0irTMFZjwfz6DduNrPfxQNVpixHyThca5sXOHzAELwZkBcQEbukPiP10Slhtk%2FeDSZg4R%2FMIPB%2BK64T%2FGBZP%2BIrWx9mXKN2fcUigVZFUnKyZmCjTb0NHjQCKYDKjay2EY3lB6J7TcYnMiIWS4g%3D%3D","locale":"ja-JP","buyingOptionType":"USED","aapiBuyingOptionIndex":1}]}
購入オプションとあわせ買い
- 本の長さ236ページ
- 言語日本語
- 出版社ピアソン・エデュケーション
- 発売日2001/12/3
- ISBN-104894714361
- ISBN-13978-4894714366
この商品をチェックした人はこんな商品もチェックしています
ページ 1 以下のうち 1 最初から観るページ 1 以下のうち 1
商品の説明
出版社からのコメント
Javaを効果的に使うポイントを凝縮して読みやすくコンパクトに解説しており、多くのプログラマが間違えやすい箇所を取り上げて、回避する方法を紹介しています。また、基本ライブラリであるjava.lang, java.utilやjava.ioを詳しく取り上げ、他の解説書では取り上げられることが少ないシリアライゼーションについて詳しく解説しています。
内容(「MARC」データベースより)
Javaを効果的に使うポイントから多くのプログラマーが間違えやすい箇所を取り上げて、回避する方法を紹介。また、基本ライブラリーであるjava.langやシリアライゼーションについても解説。
登録情報
- 出版社 : ピアソン・エデュケーション (2001/12/3)
- 発売日 : 2001/12/3
- 言語 : 日本語
- 単行本 : 236ページ
- ISBN-10 : 4894714361
- ISBN-13 : 978-4894714366
- Amazon 売れ筋ランキング: - 1,165,016位本 (本の売れ筋ランキングを見る)
- カスタマーレビュー:
著者について
著者をフォローして、新作のアップデートや改善されたおすすめを入手してください。
九州工業大学情報工学科で情報工学を学び、1984年同大学大学院で情報工学修士課程を修了。パロアルト研究所を含む米国ゼロックス社での5年間のソフトウェア開発も含め、Unix(Solaris/Linux)、C、Mesa、C++、 Java、Goなどを用いたさまざまなソフトウェア開発に従事してきた。現在もソフトウェア開発に従事し、個人的な活動として技術教育やコンサルテーションなどを行っている。2000年以降、私的な時間に技術書の翻訳や講演なども多く行っている。
-
トップレビュー
上位レビュー、対象国: 日本
レビューのフィルタリング中に問題が発生しました。後でもう一度試してください。
2007年1月16日に日本でレビュー済み
Amazonで購入
JAVAを一通り学んだ人にとって非常に良いサプリメントになると思います。J2SE5での言語仕様の拡張は「effective java」のJoshua Bloch氏の設計哲学を多く垣間みられます。ただJ2SE5のジェネリックプログラミングに関してはC++のものとはまったく設計が異なるので注意して下さい。C++は静的(プレコンパイル)に対してJ2SE5のは、Object型への動的キャストをサポートするものです。私はこの本とTigerの言語仕様を解説した「Java2 Standard Edition 5.0 Tiger」(ともに柴田氏翻訳)を併読してTigerへの理解が深まりました。
2013年9月25日に日本でレビュー済み
Amazonで購入
普通に学習しただけでは知ることができない、熟練の技術者だからこそ教えられるJavaの問題解決テクを凝縮した本だが、もともと文章主体で図やサンプルが少ない上に、一文あたりが恐ろしく長い原文を忠実に翻訳しており、日本語として読みやすくしていないので、この修飾語がどこにかかるのか、主語はどこまでなのか、どこまでは形容詞なのか、文の主題は何なのかなどがパッと読むだけではよくわからない。日本語と英語の性質の違いを考慮していない翻訳で、ひどく頭が疲れる。原文を英語で読んだほうがわかりやすいという哀しい結果に。JAVAの知識はもちろんだが、日本語力が試される本。
レイアウトにも不満がある。段落ごとの行間がないのだ。原本からしてそうなのだが、アルファベット自体の視認性が高い上に、段落の頭のインデントが4文字分とってあるので、どこから段落が始まるかがひと目でわかる。こちらはそうではない。読んでいて余計なストレスがかかる。
しっくり来ない翻訳が多いのだが、どうやら誤訳も多分にある。Can(あり得る)を(できる)と訳しているのはかわいいものだ。問題なのは例えば”項目16 抽象クラスよりインターフェースを選ぶ”(P80)の「その抽象クラスが両方のクラスの先祖のサブクラスとなるような・・・」という文章だが、抽象クラスが具体的なクラスのサブクラスになることは不可能なのでおかしいと思い、原文を読むと「it subclasses an ancestor of both classes」であり、これはsubclassesを他動詞として使っていて「両方のクラスの先祖”を”サブクラスと”する”ような」という意味だと思われる。そうしないと次に続く文章も意味が通らない。(ちなみにclassは動詞として使うのは他動詞のみで「を分類する」「~を位置づける」といった意味になる。)
また、”項目14 継承よりコンポジションを選ぶ”で、急に「計測機能」という言葉が出てきて、そのようなプログラミング・タームがあるのかと困惑するのだが、そうではないらしい。サンプルコードのInstrumentedSetが要素の追加作業の回数をカウントする実装で、そのカウント作業のことを「計測機能」と読んでいるようだ。どちらかと言えば「記録する機能」「計測する機能」というように日常的な言葉に置き換えれば混乱は起きないだろう。またtheがついているので、既に本文で触れているものを指しているのだから「サンプルで示されている」などと言った補足をつければより意味が伝わる。
そもそもこの文章の原文は「In essence, the class transforms one Set into another, adding the instrumentation functionality.」で、この本では「基本的にInstrumentedSetクラスは、計測機能を追加して、1つのSetを他のSetへ変換します」と訳されているが「本質の話をすれば、InstrumentedSetクラスは、あるSetに(サンプルで示されている)計測する機能を追加して、新しいSetに変換しています」のほうがわかりやすくなるだろう。少なくともIn essenceを「基本的に」と訳すのは誤訳だと思う。
同じ項目の後半にも非常にわかりにくい。p73の三段落目、ラッパークラスの欠点についての部分。「1つの注意事項としては、オブジェクトが自分自身を呼び出してもらう(コールバック)ために、他のオブジェクトに渡すコールバックフレームワークで使用するには、ラッパークラスは向いていないことです」。という部分ですが、何を”渡す”のかわからないし、一文が長くてどこがどこにかかるかわからない。
さらに続く部分は「ラップされたオブジェクトは、そのラッパーを知りませんから、自分自身(this)への参照を渡し、そして、コールバックはラッパーを回避してしまします」となっています。これも何が起きているのかわかりにくい。
原文をわかりやすく翻訳すると「注意事項が一つあります。ラッパークラスはコールバックフレームワークには向きません。コールバックフレームワークでは、あるオブジェクトが他のオブジェクトに対して自分自身への参照を渡し、後ほど呼び出して(コールバック)もらいます」。この部分で”自分自身への参照”という言葉が原文にはちゃんとあるのです。そして続き。「ラップされたクラスは、それを包むラッパーのことを知らないので、自分自身への参照(this)を{直接、他のオブジェクトに}渡します。コールバックはラッパーのことを無視{して動作}します。」{}内は補足ですが、このほうがわかりやすいと思います。
僕が持っているのは第七刷だが、そこまで修正されていないのを見ると、みんな案外ちゃんと読んでないのかもしれない。
とにかく翻訳が直訳で気が利かないし、本人の理解が曖昧なのか、ちょっとした誤訳があり、ときどき意味不明になる。一度読むだけで理解するのは不可能だと思うので、一項目ごとに一回さらっと読み流してから読み直すという読み方をおすすめします。できれば原文と比較しながら読んだほうがいいです。
ていうか・・・次に出す時はわかりやすく噛み砕いた超訳版か、翻訳者を変えるかしてほしいです。
レイアウトにも不満がある。段落ごとの行間がないのだ。原本からしてそうなのだが、アルファベット自体の視認性が高い上に、段落の頭のインデントが4文字分とってあるので、どこから段落が始まるかがひと目でわかる。こちらはそうではない。読んでいて余計なストレスがかかる。
しっくり来ない翻訳が多いのだが、どうやら誤訳も多分にある。Can(あり得る)を(できる)と訳しているのはかわいいものだ。問題なのは例えば”項目16 抽象クラスよりインターフェースを選ぶ”(P80)の「その抽象クラスが両方のクラスの先祖のサブクラスとなるような・・・」という文章だが、抽象クラスが具体的なクラスのサブクラスになることは不可能なのでおかしいと思い、原文を読むと「it subclasses an ancestor of both classes」であり、これはsubclassesを他動詞として使っていて「両方のクラスの先祖”を”サブクラスと”する”ような」という意味だと思われる。そうしないと次に続く文章も意味が通らない。(ちなみにclassは動詞として使うのは他動詞のみで「を分類する」「~を位置づける」といった意味になる。)
また、”項目14 継承よりコンポジションを選ぶ”で、急に「計測機能」という言葉が出てきて、そのようなプログラミング・タームがあるのかと困惑するのだが、そうではないらしい。サンプルコードのInstrumentedSetが要素の追加作業の回数をカウントする実装で、そのカウント作業のことを「計測機能」と読んでいるようだ。どちらかと言えば「記録する機能」「計測する機能」というように日常的な言葉に置き換えれば混乱は起きないだろう。またtheがついているので、既に本文で触れているものを指しているのだから「サンプルで示されている」などと言った補足をつければより意味が伝わる。
そもそもこの文章の原文は「In essence, the class transforms one Set into another, adding the instrumentation functionality.」で、この本では「基本的にInstrumentedSetクラスは、計測機能を追加して、1つのSetを他のSetへ変換します」と訳されているが「本質の話をすれば、InstrumentedSetクラスは、あるSetに(サンプルで示されている)計測する機能を追加して、新しいSetに変換しています」のほうがわかりやすくなるだろう。少なくともIn essenceを「基本的に」と訳すのは誤訳だと思う。
同じ項目の後半にも非常にわかりにくい。p73の三段落目、ラッパークラスの欠点についての部分。「1つの注意事項としては、オブジェクトが自分自身を呼び出してもらう(コールバック)ために、他のオブジェクトに渡すコールバックフレームワークで使用するには、ラッパークラスは向いていないことです」。という部分ですが、何を”渡す”のかわからないし、一文が長くてどこがどこにかかるかわからない。
さらに続く部分は「ラップされたオブジェクトは、そのラッパーを知りませんから、自分自身(this)への参照を渡し、そして、コールバックはラッパーを回避してしまします」となっています。これも何が起きているのかわかりにくい。
原文をわかりやすく翻訳すると「注意事項が一つあります。ラッパークラスはコールバックフレームワークには向きません。コールバックフレームワークでは、あるオブジェクトが他のオブジェクトに対して自分自身への参照を渡し、後ほど呼び出して(コールバック)もらいます」。この部分で”自分自身への参照”という言葉が原文にはちゃんとあるのです。そして続き。「ラップされたクラスは、それを包むラッパーのことを知らないので、自分自身への参照(this)を{直接、他のオブジェクトに}渡します。コールバックはラッパーのことを無視{して動作}します。」{}内は補足ですが、このほうがわかりやすいと思います。
僕が持っているのは第七刷だが、そこまで修正されていないのを見ると、みんな案外ちゃんと読んでないのかもしれない。
とにかく翻訳が直訳で気が利かないし、本人の理解が曖昧なのか、ちょっとした誤訳があり、ときどき意味不明になる。一度読むだけで理解するのは不可能だと思うので、一項目ごとに一回さらっと読み流してから読み直すという読み方をおすすめします。できれば原文と比較しながら読んだほうがいいです。
ていうか・・・次に出す時はわかりやすく噛み砕いた超訳版か、翻訳者を変えるかしてほしいです。
2017年4月26日に日本でレビュー済み
Amazonで購入
日本語訳が読み辛い点があったため減点はしていますが、現在でも通用し且つ確実に抑えておくべきポイントは詰まっています。
意識せずに書いてると身に付かないネタが多いので、斜め読みでも読む価値はありかと。
意識せずに書いてると身に付かないネタが多いので、斜め読みでも読む価値はありかと。
2004年12月22日に日本でレビュー済み
Amazonで購入
Javaの文法を知っていてJavaでコーディングができるというだけの人を指してJava技術者と言うことに疑問を感じる。
大抵できあがってくるプログラムはC言語をJavaに単純変換したようなものがほとんどだ。
やはり「Javaを使える」と言う以上、最低この本の内容は理解し、実践的に使えるようになって欲しい。
Java初心者から中級者へステップアップするには必須の本であると断言できる。
大抵できあがってくるプログラムはC言語をJavaに単純変換したようなものがほとんどだ。
やはり「Javaを使える」と言う以上、最低この本の内容は理解し、実践的に使えるようになって欲しい。
Java初心者から中級者へステップアップするには必須の本であると断言できる。
2002年11月22日に日本でレビュー済み
Amazonで購入
そこそこJavaがプログラムできるようになった人には、非常にお勧めです。
我流でコーディングしていると、知らない間に良くないコーディングの
くせがついてしまうものですが、この本はそれを矯正してくれます。
例えば、しばしばimplementsするjava.io.Serializableインタフェースの
適切なimplementsの方法。equalsメソッドとhashCodeメソッドの関係。
などなど、私には非常に有用だと感じました。
我流でコーディングしていると、知らない間に良くないコーディングの
くせがついてしまうものですが、この本はそれを矯正してくれます。
例えば、しばしばimplementsするjava.io.Serializableインタフェースの
適切なimplementsの方法。equalsメソッドとhashCodeメソッドの関係。
などなど、私には非常に有用だと感じました。
2005年10月21日に日本でレビュー済み
入門編も終わって、とりあえずJavaはかけるけど
何かうまくいかない。
次に基礎固めに何やろうかなというときには
この本がお勧めです。
Javaの基礎がきっちり身につくんじゃないでしょうか。
リファクタリングとはまた違う観点で、
プログラムを良くするための本、
Java言語をさらによく知る為の本 だと思います。
インタフェースで定数を宣言しちゃってるような人
読んだほうがいいですよ。
何かうまくいかない。
次に基礎固めに何やろうかなというときには
この本がお勧めです。
Javaの基礎がきっちり身につくんじゃないでしょうか。
リファクタリングとはまた違う観点で、
プログラムを良くするための本、
Java言語をさらによく知る為の本 だと思います。
インタフェースで定数を宣言しちゃってるような人
読んだほうがいいですよ。
2007年12月17日に日本でレビュー済み
外語っぽいな翻訳でしたので、ちょっと分かり難かった。
ただ、最初、分からなくても、理解するために何回でも読み直す値すると思っております。
ただ、最初、分からなくても、理解するために何回でも読み直す値すると思っております。
2007年2月28日に日本でレビュー済み
Java開発においてクラス設計を行う技術者については必ず読むべき1冊だと思います。この本に書いてある内容を知らない技術者には設計させたくないです。新人プログラマーには難しい内容だと思いますが、上級レベルを目指すのであれば早めに手に入れ、分からない点は有識者に聞くなどして理解を深めていけばよいと思います。