इस लाइन पर विचार करें:सुन्दरता जावा
if (object.getAttribute("someAttr").equals("true")) { // ....
जाहिर है इस लाइन एक संभावित बग है, गुण null
हो सकता है और हम एक NullPointerException
मिल जाएगा।
पहले विकल्प:
if ("true".equals(object.getAttribute("someAttr"))) { // ....
दूसरा विकल्प:
String attr = object.getAttribute("someAttr");
if (attr != null) {
if (attr.equals("true")) { // ....
पहला विकल्प को पढ़ने के लिए अजीब लेकिन अधिक संक्षिप्त है तो हम दो विकल्पों में से एक करने के लिए इसे refactor करने के लिए की जरूरत है , जबकि दूसरा इरादा स्पष्ट है, लेकिन verbose।
पठनीयता के मामले में आप कौन सा विकल्प पसंद करते हैं?
मैं भी नहीं लगता है कि यह अधिक पढ़ने के लिए मुश्किल है की एक impl हो सकता है। –