Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.java.programmer > #11120

Re: Best Way to Pass Info Between Objects?

Date 2012-01-08 15:56 -0800
From Patricia Shanahan <pats@acm.org>
Newsgroups comp.lang.java.programmer
Subject Re: Best Way to Pass Info Between Objects?
References <Xns9FD47717636DCjpnasty@94.75.214.39> <4dWdnRF6pOQcUJTSnZ2dnUVZ_vidnZ2d@earthlink.com> <Xns9FD4882D25253jpnasty@94.75.214.39> <54qdnTd-nYZBj5fSnZ2dnUVZ_q2dnZ2d@earthlink.com> <jed608$j13$2@localhost.localdomain>
Message-ID <qMudnaJsDvKGsJfSnZ2dnUVZ_s-dnZ2d@earthlink.com> (permalink)

Show all headers | View raw


Martin Gregorie wrote:
> On Sun, 08 Jan 2012 14:04:05 -0800, Patricia Shanahan wrote:
> 
>> On 1/8/2012 10:22 AM, Novice wrote:
>>> Patricia Shanahan<pats@acm.org>  wrote in
>>> news:4dWdnRF6pOQcUJTSnZ2dnUVZ_vidnZ2d@earthlink.com:
>>>
>>>> On 1/8/2012 8:41 AM, Novice wrote:
>>>>> Sorry, that's probably not the best of subject lines but I'm having
>>>>> trouble coming up with a concise one....
>>>>>
>>>>> I'm trying to reason out the best way to pass information from an
>>>>> instantiating class to an instantiated class. So, let's say class Foo
>>>>> invokes class Bar to do something. Bar needs some specific
>>>>> information from Foo to do its job. What is the best way to pass this
>>>>> information from Foo to Bar?
>>>> ...
>>>>> I'm not sure if there is a generally agreed-upon formula here or
>>>>> whether it is more a case of individual style and preference. I'd be
>>>>> very interested in your comments on this subject. Right now, I feel
>>>>> like I'm being pretty inconsistent in my techniques and would like to
>>>>> standardize them along the best possible lines.
>>>>>
>>>>>
>>>> Here is one programming process approach that often simplifies these
>>>> questions: Write the Bar unit tests in parallel with designing Bar.
>>>>
>>>> If the Bar design works well for both unit testing and use by a Foo,
>>>> it will probably be a reasonably robust module that does not need to
>>>> be changed too often because of changes to other modules.
>>>>
>>>> Patricia
>>>>
>>>>
>>> Thanks everyone for the suggestions. Obviously, I'm going to need to
>>> increase the size of my Java library and allocate some time for reading
>>> all all of these things....
>>>
>>> But in the meantime, are there any general rules I can use to make
>>> these decisions for code I am developing now? Or do I really need to
>>> master several books first?
>>>
>>>
>> That is why I suggested unit test during design, as a complement to the
>> book recommendations. I have no problem with the books that have been
>> proposed, but it will take time to read, absorb, and apply them. You can
>> apply unit test during design immediately.
>>
> +1
> 
> ..but don't forget that the unit tests *must* be written from the 
> specifications and *NEVER* from looking at the code. A good half-way 
> house, which I use a lot, is to write what's effectively an abstract 
> class with the entire class specification spelled out in the class- and 
> method-level comments, with just enough meat in the methods, i.e. return 
> statements, to allow the resulting source file to be compiled. Then I 
> generate the javadocs and use only these as the basis for writing the 
> unit tests.
> 
> Actually, I've usually completed and compiled the class before I write 
> the unit tests, but I'd suggest you write the tests first until you get 
> into the required 'no peeking' frame of mind needed for writing the tests 
> from the specifications and only the specifications. There are two 
> additional benefits: (1) you get into the habit of writing worth-while 
> class and method documentation and (2) this forces you to think about how 
> your new class will actually be used. This will probably improve both the 
> design and documentation if you alter the design to overcome usability 
> problems as you find them. 
> 
> 

+1

I actually typed a paragraph along these lines, but decided to stick to
the idea of unit tests as a way of encouraging good module design.

Patricia

Back to comp.lang.java.programmer | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

Best Way to Pass Info Between Objects? Novice <novice@example..com> - 2012-01-08 16:41 +0000
  Re: Best Way to Pass Info Between Objects? Patricia Shanahan <pats@acm.org> - 2012-01-08 09:08 -0800
    Re: Best Way to Pass Info Between Objects? Novice <novice@example..com> - 2012-01-08 18:22 +0000
      Re: Best Way to Pass Info Between Objects? markspace <-@.> - 2012-01-08 10:45 -0800
      Re: Best Way to Pass Info Between Objects? Lew <noone@lewscanon.com> - 2012-01-08 11:49 -0800
      Re: Best Way to Pass Info Between Objects? Patricia Shanahan <pats@acm.org> - 2012-01-08 14:04 -0800
        Re: Best Way to Pass Info Between Objects? Martin Gregorie <martin@address-in-sig.invalid> - 2012-01-08 22:40 +0000
          Re: Best Way to Pass Info Between Objects? Patricia Shanahan <pats@acm.org> - 2012-01-08 15:56 -0800
            Re: Best Way to Pass Info Between Objects? Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-01-09 06:34 -0400
              Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-09 12:39 -0500
                Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-09 12:42 -0500
                Re: Best Way to Pass Info Between Objects? Lew <lewbloch@gmail.com> - 2012-01-09 13:43 -0800
                Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-09 17:26 -0500
                Re: Best Way to Pass Info Between Objects? Lew <noone@lewscanon.com> - 2012-01-10 06:47 -0800
                Re: Best Way to Pass Info Between Objects? Patricia Shanahan <pats@acm.org> - 2012-01-09 14:26 -0800
                Re: Best Way to Pass Info Between Objects? Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-01-09 19:06 -0400
                Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-09 18:46 -0500
                Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-09 19:52 -0500
                Re: Best Way to Pass Info Between Objects? Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-01-10 06:43 -0400
              Re: Best Way to Pass Info Between Objects? Martin Gregorie <martin@address-in-sig.invalid> - 2012-01-10 02:11 +0000
              Re: Best Way to Pass Info Between Objects? Gene Wirchenko <genew@ocis.net> - 2012-01-09 20:17 -0800
              Re: Best Way to Pass Info Between Objects? Lew <noone@lewscanon.com> - 2012-01-10 06:43 -0800
                Re: Best Way to Pass Info Between Objects? Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-01-10 19:13 -0400
      Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-09 14:30 -0500
        Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-09 17:28 -0500
          Re: Best Way to Pass Info Between Objects? Martin Gregorie <martin@address-in-sig.invalid> - 2012-01-10 02:24 +0000
            Re: Best Way to Pass Info Between Objects? Arved Sandstrom <asandstrom3minus1@eastlink.ca> - 2012-01-10 06:35 -0400
              Re: Best Way to Pass Info Between Objects? Martin Gregorie <martin@address-in-sig.invalid> - 2012-01-10 22:48 +0000
  Re: Best Way to Pass Info Between Objects? v_borchert@despammed.com (Volker Borchert) - 2012-01-08 17:17 +0000
  Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-08 13:43 -0500
    Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-08 19:01 -0500
  Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-08 14:10 -0500
    Re: Best Way to Pass Info Between Objects? Jeff Higgins <jeff@invalid.invalid> - 2012-01-08 14:41 -0500
  Re: Best Way to Pass Info Between Objects? Roedy Green <see_website@mindprod.com.invalid> - 2012-01-09 04:13 -0800

csiph-web