<div dir="ltr"><div class="gmail_default" style="font-family:monospace;font-size:large">Hi Joseph,</div><div class="gmail_default" style="font-family:monospace;font-size:large">Thanks. Yes, I already downloaded most of them.</div><div class="gmail_default" style="font-family:monospace;font-size:large">What I was looking for is more of a conceptual book on OO design.</div><div class="gmail_default" style="font-family:monospace;font-size:large">A friend recommended these two:</div><div class="gmail_default" style="font-family:monospace;font-size:large"><br></div><div class="gmail_default" style="font-family:monospace;font-size:large">+ "Object Thinking" by David West<br></div><div class="gmail_default" style="font-family:monospace;font-size:large">+ "Designing Object-Oriented Software" by Rebeca Wirfs-Brock<br></div><div class="gmail_default" style="font-family:monospace;font-size:large"><br></div><div class="gmail_default" style="font-family:monospace;font-size:large">So I will try to get those.</div><div class="gmail_default" style="font-family:monospace;font-size:large">Thanks!</div><div class="gmail_default" style="font-family:monospace;font-size:large">Cheers</div><div class="gmail_default" style="font-family:monospace;font-size:large">Nacho</div><div class="gmail_default" style="font-family:monospace;font-size:large"><br></div><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><b><font size="2">Ignacio Sniechowski</font></b><b><br></b></div><div><br></div><div><b><br></b></div><div><br></div><div><b></b></div><div><b><br></b></div><div><b><br></b></div><div><b><br></b></div><div><b><br></b></div><div><b></b><br></div><b><div><b><br></b></div><div><b><br></b></div><div><b><br></b></div><br></b><b><br></b><b><br></b><div><br><br><div style="text-align:left"><br></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Oct 2, 2023 at 5:55 AM Joseph Turco <<a href="mailto:joseph.turco.1990@gmail.com">joseph.turco.1990@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex"><div dir="auto">Good day,<div><br></div><div>There are books Stephane ducasse has hosted on his website that cover smalltalk in a general sense, though dated, might help you </div><div><div style="display:block"><div style="display:inline-block" role="link"><a style="border-radius:10px;font-family:-apple-system,Helvetica,Arial,sans-serif;display:block;width:300px;overflow:hidden;text-decoration:none" rel="nofollow" href="http://stephane.ducasse.free.fr/FreeBooks.html" dir="ltr" role="button" width="300" target="_blank"><table style="table-layout:fixed;border-collapse:collapse;width:300px;background-color:rgb(233,233,235);font-family:-apple-system,Helvetica,Arial,sans-serif" cellpadding="0" cellspacing="0" border="0" width="300"><tbody><tr><td><table bgcolor="#E9E9EB" cellpadding="0" cellspacing="0" width="300" style="font-family:-apple-system,Helvetica,Arial,sans-serif;table-layout:fixed;background-color:rgb(233,233,235)"><tbody><tr><td style="padding:8px 0px"><div style="max-width:100%;margin:0px 16px;overflow:hidden"><div style="font-weight:500;font-size:12px;overflow:hidden;text-overflow:ellipsis;text-align:left"><a rel="nofollow" href="http://stephane.ducasse.free.fr/FreeBooks.html" style="text-decoration:none" target="_blank"><font color="#000000" style="color:rgb(0,0,0)">Stéphane Ducasse :: Free Online Books</font></a></div><div style="font-weight:400;font-size:11px;overflow:hidden;text-overflow:ellipsis;text-align:left"><a rel="nofollow" href="http://stephane.ducasse.free.fr/FreeBooks.html" style="text-decoration:none" target="_blank"><font color="#A2A2A9" style="color:rgba(60,60,67,0.6)">ducasse.free.fr</font></a></div></div></td><td style="padding:6px 12px 6px 0px" width="36"><a rel="nofollow" href="http://stephane.ducasse.free.fr/FreeBooks.html" target="_blank"><img style="display: inline-block; width: 36px; height: 36px; border-radius: 3px;" width="36" height="36" alt="favicon.ico" src="cid:1C81BC41-850E-44F6-A0ED-76CE79CC46F5"></a></td></tr></tbody></table></td></tr></tbody></table></a></div></div><br><br><div dir="ltr">Joseph Turco</div><div dir="ltr"><br><blockquote type="cite">On Oct 1, 2023, at 10:20 AM, Ignacio Sniechowski via Cuis-dev <<a href="mailto:cuis-dev@lists.cuis.st" target="_blank">cuis-dev@lists.cuis.st</a>> wrote:<br><br></blockquote></div><blockquote type="cite"><div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-family:monospace;font-size:large">So here is the first attempt at a mediocre OO design.<br clear="all"></div><div class="gmail_default" style="font-family:monospace;font-size:large">I suspect that accessors should be that: accessors, and should not perform any additional operations....</div><div class="gmail_default" style="font-family:monospace;font-size:large">Also, there is likely some redundant or unneeded code (i.e., not sure about the initialization method).</div><div class="gmail_default" style="font-family:monospace;font-size:large">Here is where I need help: OO design and implementation...</div><div class="gmail_default" style="font-family:monospace;font-size:large">I really appreciate any help you can provide.</div><div class="gmail_default" style="font-family:monospace;font-size:large">Nacho</div><div class="gmail_default" style="font-family:monospace;font-size:large"><br></div><div class="gmail_default" style="font-family:monospace;font-size:large"><br></div><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div dir="ltr"><div><b><font size="2">Ignacio Sniechowski</font></b><b><br></b></div><div><br></div><div><b><br></b></div><div><br></div><div><b></b></div><div><b><br></b></div><div><b><br></b></div><div><b><br></b></div><div><b><br></b></div><div><b></b><br></div><b><div><b><br></b></div><div><b><br></b></div><div><b><br></b></div><br></b><b><br></b><b><br></b><div><br><br><div style="text-align:left"><br></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div></div><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, Oct 1, 2023 at 10:17 AM Hilaire Fernandes via Cuis-dev <<a href="mailto:cuis-dev@lists.cuis.st" target="_blank">cuis-dev@lists.cuis.st</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-style:solid;border-left-color:rgb(204,204,204);padding-left:1ex">
  
    
  
  <div bgcolor="#FFFFFF">
    <p><font size="4">Hi Ignacio,</font></p>
    <p>You need to think on what are the involved actors. In your case
      it is financial entities. It is also possible it is too early to
      know about the different entities or your domain is not complex
      enough yet. In that case, you can just have one class
      FianancialTools with several method doing your computation. It can
      be just class methods if you don't need state (instance
      variables), so you will pass the arguments.<br>
    </p>
    <p>I don't think your candidates can be elected as classes, more as
      states (instance variable)<br>
    </p>
    <p>Find below examples of classes of a financial application I wrote
      (for loans consolidation). It could give idea about the level of
      complexity of the involved objects.<br>
    </p>
    <p>CGAccountsAnalysis.class<br>
      CGAddress.class<br>
      CGAddressFrance.class<br>
      CGAmortizationConstantSchedule.class<br>
      CGAmortizationFlexSchedule.class<br>
      CGAmortizationSchedule.class<br>
      CGAmortizationTerm.class<br>
      CGAppData.class<br>
      CGBankAccountFr.class<br>
      CGBankAgencyFr.class<br>
      CGBankFinalOffer.class<br>
      CGBankPosting.class<br>
      CGBankPostingExpense.class<br>
      CGBankPostingExplanation.class<br>
      CGBankPostingIncome.class<br>
      CGBankPostingLoan.class<br>
      CGBankPostings.class<br>
      CGBirthplace.class<br>
      CGChild.class<br>
      CGCivilStatus.class<br>
      CGClerk.class<br>
      CGClient.class<br>
      CGClientDebt.class<br>
      CGClientLoan.class<br>
      CGClientLoanFixedRate.class<br>
      CGClientLoanFloatingRate.class<br>
      CGClientLoanRevolving.class<br>
      CGComment.class<br>
      CGConnectedEntity.class<br>
      CGCurrency.class<br>
      CGDepartment.class<br>
      CGDocumentList.class<br>
      CGDonator.class<br>
      CGEntity.class<br>
      CGEuribor.class<br>
      CGExpense.class<br>
      CGFinancedProject.class<br>
      CGFinancialContractAbstractProxy.class<br>
      CGFinancialContract.class<br>
      CGFinancialContractDeathProxy.class<br>
      CGFinancialContractProxy.class<br>
      CGFinancialPackage.class<br>
      CGFinancialPackageOne.class<br>
      CGFinancialPackageSteps.class<br>
      CGFinancialPackageTwo.class<br>
      CGFinancialSituationAbstractProxy.class<br>
      CGFinancialSituation.class<br>
      CGFinancialSituationDeathProxy.class<br>
      CGFinancialSituationProxy.class<br>
      CGGuaranteedLoan.class<br>
      CGHousing.class<br>
      CGIncome.class<br>
      CGIncomeExpense.class<br>
      CGInsurance.class<br>
      CGInterBankRate.class<br>
      CGMessage.class<br>
      CGMoney.class<br>
      CGMonthAnalysis.class<br>
      CGMoralPerson.class<br>
      CGMortgageCaution.class<br>
      CGOAT.class<br>
      CGOrganisation.class<br>
      CGParticipant.class<br>
      CGPhone.class<br>
      CGPhysicalPerson.class<br>
      CGProspect.class<br>
      CGRealestate.class<br>
      CGReports.class<br>
      CGRole.class<br>
      CGSuretyCaution.class<br>
      CGSwap.class<br>
      CGTemplate.class<br>
      CGTools.class<br>
      CGUser.class<br>
      CGUserClient.class<br>
      CGUserManagement.class<br>
      CGValidators.class<br>
      ChronologyConstants.extension<br>
      Cofilair.class<br>
      Collection.extension<br>
      DateAndTime.extension<br>
      Date.extension<br>
      Dictionary.extension<br>
      Month.extension<br>
      monticello.meta<br>
      Number.extension<br>
      Object.extension<br>
      properties.json<br>
      String.extension<br>
      UndefinedObject.extension<br>
      WAComponent.extension<br>
    </p>
    <pre cols="72">-- 
GNU Dr. Geo
<a href="http://drgeo.eu" target="_blank">http://drgeo.eu</a>
<a href="http://blog.drgeo.eu" target="_blank">http://blog.drgeo.eu</a></pre>
  </div>

-- <br>
Cuis-dev mailing list<br>
<a href="mailto:Cuis-dev@lists.cuis.st" target="_blank">Cuis-dev@lists.cuis.st</a><br>
<a href="https://lists.cuis.st/mailman/listinfo/cuis-dev" rel="noreferrer" target="_blank">https://lists.cuis.st/mailman/listinfo/cuis-dev</a><br>
</blockquote></div>
<div><Finance.st></div><span>-- </span><br><span>Cuis-dev mailing list</span><br><span><a href="mailto:Cuis-dev@lists.cuis.st" target="_blank">Cuis-dev@lists.cuis.st</a></span><br><span><a href="https://lists.cuis.st/mailman/listinfo/cuis-dev" target="_blank">https://lists.cuis.st/mailman/listinfo/cuis-dev</a></span><br></div></blockquote></div></div></blockquote></div>