Path: csiph.com!usenet.pasdenom.info!weretis.net!feeder4.news.weretis.net!newsreader4.netcologne.de!news.netcologne.de!fu-berlin.de!uni-berlin.de!individual.net!not-for-mail From: Robert Klemme Newsgroups: comp.lang.java.programmer Subject: Re: About java program. Date: Mon, 08 Jul 2013 20:50:28 +0200 Lines: 43 Message-ID: References: <324f929f-772e-4004-81e1-6b454cdae794@googlegroups.com> <19wnriq53qxel.u9rt8wy6z52g.dlg@40tude.net> <1lvu4yv8sxe73$.n4o05ixuag9y.dlg@40tude.net> <85GdncWZdo04-lzMnZ2dnUVZ8mydnZ2d@bt.com> <51d6396c$0$295$14726298@news.sunsite.dk> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-Trace: individual.net ieeAgREmG1/hxcV11y0XuwELL8eSRKaFjChA6U0iIZQ67qqsM= Cancel-Lock: sha1:he+SUW/qgBNhLxX5qpZuiKKAkzg= User-Agent: Mozilla/5.0 (Windows NT 6.0; WOW64; rv:17.0) Gecko/20130620 Thunderbird/17.0.7 In-Reply-To: X-Antivirus: avast! (VPS 130708-0, 08.07.2013), Outbound message X-Antivirus-Status: Clean Xref: csiph.com comp.lang.java.programmer:24713 On 08.07.2013 00:07, Eric Sosman wrote: > On 7/7/2013 2:43 PM, Robert Klemme wrote: >> On 06.07.2013 14:22, Eric Sosman wrote: >>> On 7/6/2013 7:14 AM, Robert Klemme wrote: >>>> [...] >>>> Well, you can forget the logging on *any* level of the application. >>>> There is no really a difference between asking the author of this >>>> method >>>> to do proper error handling or asking the author of some other code to >>>> do it. >>> >>> The caller has more context. When Integer.parseInt() is >>> unable to make sense of the input string, it has no way of knowing >>> whether the failure is fatal, unusual, or expected. Do you think >>> it should log all such failures in addition to throwing up? >> >> No. That is exactly my point. > > Okay, you've confused me. I maintain that the caller has more > context than the callee, and is therefore (often) in a better position > to make wider-scope decisions in handling errors. That, it seems to > me, is a distinct and notable difference in how the errors are handled. Absolutely. > Yet you say "there is really no difference" in handling an error Here > or There (or maybe even Elsewhere). I don't get it. I just said above that errors by developers happen on every level of an application. If you ask that (error) conditions should be logged on a low level (callee) you can as well ask that errors are handled / logged at the upper level (caller). In light of human beings writing the code they can forget here or there. I said that because the argument was that the logging should be done in the low level method because the caller author may forget it. Does that help to get rid of the confusion? Cheers robert -- remember.guy do |as, often| as.you_can - without end http://blog.rubybestpractices.com/