  | Mailing List | | Home | | Forum Home | | JBoss - Java Application Server | | Struts - A MVC web framework | | Tomcat - JSP/Servlet container | | iText - An open source PDF Java Library | | JDOM - JDOM XML Parser | | J2EE - A mailing list for Java(tm) 2 Platform, Enterprise Edition | | J2EE Pattern - An interest list for Sun Java Center J2EE Pattern Catalog | | Servlet - A mailing list for discussion about Sun Microsystem's Java Servlet API Technology | | JSP - A mailing list about Java Server Pages specification and reference | |
Struts & Hibernate
|
|
|
  | | | Association vs Dependency (Offbeat) | Association vs Dependency (Offbeat) 2003-12-30 - By ashraf galal
Back <html><div style='background-color:'><P>ShriKant; </P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">Dependency relates the model elements themselves and does not require a set of instances for its meaning.<?xml :namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /><o:p></o :p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">Dependency indicates a situation in which a change to the supplier may require a change to or indicate a change in meaning of the client in the dependency. <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso -list: l1 level1 lfo3; tab-stops: list .5in"><FONT face="Times New Roman"><SPAN style="COLOR: black"><FONT size=3>1-</FONT><SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN><SPAN style="COLOR: black"><FONT size=3>has a reference to an object directly.<o:p></o:p></FONT></SPAN></FONT>< /P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"><SPAN style="COLOR: black" ><FONT size=3><FONT face="Times New Roman">InstanceOf and<SPAN style="mso -spacerun: yes"> </SPAN>abstraction are example of this type.<SPAN style= "mso-spacerun: yes"> </SPAN><o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in; TEXT-INDENT: -0.25in; mso -list: l1 level1 lfo3; tab-stops: list .5in"><FONT face="Times New Roman"><SPAN style="COLOR: black"><FONT size=3>2-</FONT><SPAN style="FONT: 7pt 'Times New Roman'"> </SPAN></SPAN><SPAN style="COLOR: black"><FONT size=3>has a reference to an object indirectly via some operation parameters:<o :p></o:p></FONT></SPAN></FONT></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"><SPAN style="COLOR: black" ><FONT size=3><FONT face="Times New Roman">A template class is an example of this type.<o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"><SPAN style="COLOR: black" ><FONT size=3><FONT face="Times New Roman">You can not use a template directly, you have to instantiate it first.<o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"><SPAN style="COLOR: black" ><FONT size=3><FONT face="Times New Roman">Instantiation involves binding these formal template parameters to actual ones. <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"><SPAN style="COLOR: black" ><FONT size=3><FONT face="Times New Roman">The result is a concrete class hat can be used as any ordinary one. <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"><SPAN style="COLOR: black" ><FONT size=3><FONT face="Times New Roman"><SPAN style="mso-spacerun: yes">  ;</SPAN>Dependency between packages is another example. <o:p></o:p></FONT></FONT ></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt 0.5in"><SPAN style="COLOR: black" ><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN ></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">Also I would like to keep your attention that association and generalization fit within the general definition of dependency, but they have their own model representation and notation and are not usually considered to be dependency (UML).<o:p></o:p></FONT></FONT></SPAN>< /P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman"> <o:p></o:p></FONT></FONT></SPAN></P> <P class=MsoNormal style="MARGIN: 0in 0in 0pt"><SPAN style="COLOR: black"><FONT size=3><FONT face="Times New Roman">So we need to make explicit relationship between UML and J2EE. <o:p></o:p></FONT></FONT></SPAN></P> <P><BR> </P><BR><BR><BR> <DIV>Ashraf Galal <BR>(416)804-8359</DIV>>From: ShriKant Vashishtha <SHRIKANT.VASHISHTHA@(protected)>>Reply-To: An interest list for Sun Java Center J2EE Pattern Catalog <J2EEPATTERNS-INTEREST@(protected)>>To: J2EEPATTERNS-INTEREST@(protected) >Subject: Re: Association vs Dependency (Offbeat) >Date: Tue, 30 Dec 2003 09:01:54 -0600 > >Hi Ashraf, > > ;I am quite clear regarding unidirectional and bidirectional association. > ;But could you please elaborate the following points more, may be with some > ;examples. > >- has a reference to an object directly. >- Has a reference to an object indirectly via some operation >parameters. > > ;Thanks >-ShriKant > > > > >ashraf galal <ASHRAFWG@(protected) >>Sent by: An interest list for Sun Java Center J2EE Pattern Catalog > <J2EEPATTERNS-INTEREST@(protected)> >12/29/2003 11:22 PM >Please respond to An interest list for Sun Java Center J2EE Pattern >Catalog > ; > > To: J2EEPATTERNS-INTEREST@(protected) > cc: > Subject: Re: Association vs Dependency (Offbeat) > > >Actually, these concepts is UML not a java. You are quite well >understanding but I would like to illustrate the difference between them >and give an example. > /> > ;Dependency : >Anytime a class uses another class in some fashion, a dependency exists >between the two. >A dependency exists of a class: > - has a reference to an object directly. >- Has a local variable based on another class. >- Has a reference to an object indirectly via some operation >parameters. >- Uses a class's static operation >Also there are dependency between packages. > >Association: >There is two types of association, unidirectional and bi-directional >associations. > ;Unidirectional association implies that an object of the class may invoke > ;methods on the other class. >In java, this manifest itself as an instance variables on the class that >may invoke methods. > >Example: > ;Public class customer > { > ?. > Public Address homeAddress; > > ?? > } > >public class Address { >?.. >} > >bi-directional association means that either object in the association may >invoke methods on other. >In java, this results in an instance variable on each class based on the >type of the other class. > >Example; >Public class Team > ; { > LinkedList teamPlayers = new LikedList(); > teamPlayers.add(new teamPlayer(?)); > ??? } > > public class teamPlayer { > Team memberOf; > ?. > } > >Ashraf Galal >(416)804-8359 > >From: ShriKant Vashishtha >Reply-To: An interest list for Sun Java Center >J2EE Pattern Catalog >To: J2EEPATTERNS-INTEREST@(protected) >Subject: > ;Association vs Dependency (Offbeat) >Date: Sun, 28 Dec 2003 14:17:03 -0800 > > >Hi All, > >I am slightly confused in finding the difference between >association and dependency. > >For me, whenever the variable is intialized >at a local scope or passed as a parameter in a method, its denoted as >dependency. However, for association, I believe, the object needs to be on >global scope (as an instance variable) . However, I rarely use any object >at a global scope, unless I know that it is used for maintaining the state >of class or need to be used across different methods. So most of the time, >I end up with dependency . > > ;Am I missing something over here. > >Thanks > >-ShriKant > > >-- ---- --- -- ---- ---- ---- ---- >Do you Yahoo!? > >Protect your identity with Yahoo! Mail AddressGuard > > >========================== =========================================== > >Companion Site: http://www .corej2eepatterns.com >J2EE BluePrints: http://java.sun.com/blueprints /corej2eepatterns >List Archive: http://archives. java.sun.com/archives/j2eepatterns-interest.html >Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to >listserv@(protected) > >MSN 8 helps ELIMINATE E-MAIL VIRUSES. Get 2 months FREE*. >======================= ============================================= >Companion Site: http://www .corej2eepatterns.com J2EE BluePrints: http://java.sun.com/blueprints /corej2eepatterns List Archive: http://archives.java.sun.com/archives /j2eepatterns-interest.html Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to >listserv@(protected) > > >==================================== ================================ >Companion Site: http://www.corej2eepatterns .com >J2EE BluePrints: http://java.sun.com/blueprints/corej2eepatterns > ;List Archive: http://archives.java.sun.com/archives/j2eepatterns-interest.html >Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to listserv@(protected) .com </div><br clear=all><hr>Add photos to your e-mail with <a href="ht tp://g.msn.com/8HMAENCA/2746??PS=">MSN 8. </a> Get 2 months FREE*. </html> ==================================================================== Companion Site: http://www.corej2eepatterns.com J2EE BluePrints: http://java.sun.com/blueprints/corej2eepatterns List Archive: http://archives.java.sun.com/archives/j2eepatterns-interest.html Unsubscribing: email "signoff J2EEPATTERNS-INTEREST" to listserv@(protected)
|
|
 |