From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,FREEMAIL_FROM, INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 1108a1,9a0ff0bffdf63657 X-Google-Attributes: gid1108a1,public X-Google-Thread: fac41,9a0ff0bffdf63657 X-Google-Attributes: gidfac41,public X-Google-Thread: 103376,4b06f8f15f01a568 X-Google-Attributes: gid103376,public X-Google-Thread: f43e6,9a0ff0bffdf63657 X-Google-Attributes: gidf43e6,public From: sureshvv@hotmail.com Subject: Re: Software landmines (loops) Date: 1998/09/01 Message-ID: <6sh6ic$o8p$1@nnrp1.dejanews.com>#1/1 X-Deja-AN: 386792034 References: <902934874.2099.0.nnrp-10.c246a717@news.demon.co.uk> <6r1glm$bvh$1@nnrp1.dejanews.com> <6r9f8h$jtm$1@nnrp1.dejanews.com> <6renh8$ga7$1@nnrp1.dejanews.com> <6rf59b$2ud$1@nnrp1.dejanews.com> <6rfra4$rul$1@nnrp1.dejanews.com> <35DBDD24.D003404D@calfp.co.uk> <6sbuod$fra$1@hirame.wwa.com> <35f51e53.48044143@ <904556531.666222@miso.it.uq.edu.au> <6sf87j$47n$1@hirame.wwa.com> X-Http-Proxy: 1.0 x9.dejanews.com:80 (Squid/1.1.22) for client 207.71.79.77 Organization: Deja News - The Leader in Internet Discussion X-Article-Creation-Date: Tue Sep 01 16:15:08 1998 GMT Newsgroups: comp.lang.eiffel,comp.object,comp.software-eng,comp.lang.ada X-Http-User-Agent: Mozilla/4.5b1 [en] (WinNT; I) Date: 1998-09-01T00:00:00+00:00 List-Id: In article <6sf87j$47n$1@hirame.wwa.com>, "Robert Martin" wrote: > > Matthew Heaney wrote in message ... > > > > >Would the implementation be better by not using multiple returns? > > Yes. Imagine that you had to change the function to make it thread safe; > and that the way to do that was to sieze and release a mutex while the > function was executing. As written you would have to add the release in > three separate places. But if you had avoided the multiple returns, you > would have had a single release. In C++, you could use the Resource Allocation is Initialization idiom to deal with such cases. 1. Early returns aid in limiting the amount of code that has to be processed and understood. 2. Understandability is the most important criterion for maintainability. Making the code as simple as possible in order to solve the problem at hand is more important than trying to make it easier to change against some imaginary future changes. suresh -----== Posted via Deja News, The Leader in Internet Discussion ==----- http://www.dejanews.com/rg_mkgrp.xp Create Your Own Free Member Forum