第3版前言


正本は基本的に自分で翻訳して、翻訳は绝対に间违いがあって、このように自信があって、见る时、自分で注意して、もし文が通じないと感じたら、それは私の翻訳の问题が现れたかもしれなくて、自分で原文を探して比较することができます.
その中の自分の見解は、脚注に書いてあります.1997年、James Gosling(javaの父)は、誕生したばかりのjavaをブルーカラー言語1として記述し、非常に簡単である.一方、C++の父Bjarne Stroustrupは、C++がマルチモデル言語であることを記述し、設計の構想は、単一の方法でプログラムを実現するだけをサポートする言語2とは故意に異なる.Stroustrup警告:javaの相対的な簡単さは大部分の新しい言語と同じで、その簡単さ、一部は幻覚で、一部は機能の不完全さなので、比較的簡潔で、簡単に見えます3.時間が経つにつれて、javaの規模と複雑さは著しく増加する.今後javaの規模は2倍または3倍に増加し、その依存の実現と拡張が増加する.
今、20年が過ぎて、公平に言えば、James GoslingBjarne Stroustrupの言うことはすべて正しいです.javaが多くのものに対する抽象的な表現を追加するにつれて、並列実行、反復器の追加、時間と日付クラスの再構築が追加され、javaは大きくて複雑になった.javaプラットフォームの発展に伴い、私の情熱は少し減退しましたが、私は依然としてjavaが好きです.javaのますます増加する複雑さと規模を考慮すると、最新のベストプラクティスに対する需要はさらに鋭くなる.私はできるだけ皆さんにベストプラクティスを提供しました.《effective java》第3版です.私は第3版が引き続き需要を満たすことを望んで、同時に前の2版の精神を継承します.
Small is beautiful, but simple ain’t easy .
ブルーカラーはけなす意味ではなく、主にjavaが誕生した当初、James Goslingjavaの敷居の低いイメージを確立したいと思っていました.誰が自分の子供が出世することを望んでいないのか、しかし出世する前に、まず大衆に受け入れられなければならない.↩︎
マルチモードとは、プログラミング言語が複数の書き方をサポートすることを意味し、例えばCは単一のプロセス向け言語であり、javaは純粋なオブジェクト向け言語であり、それらはいずれも単一のモードをサポートし、C++はプロセス向け、オブジェクト向けプログラミング方式をサポートし、ここではそのマルチモードの意味である.↩︎ javaの簡単さは偽物で、幻覚で、それは現在の簡単さで、ただ機能の不完全さで、後でjavaも同様に複雑になります.↩︎