[Cuis-dev] Quantitative finance in Cuis-Smalltalk

Ignacio Sniechowski 0800nacho at gmail.com
Sun Oct 1 07:19:51 PDT 2023


So here is the first attempt at a mediocre OO design.
I suspect that accessors should be that: accessors, and should not perform
any additional operations....
Also, there is likely some redundant or unneeded code (i.e., not sure about
the initialization method).
Here is where I need help: OO design and implementation...
I really appreciate any help you can provide.
Nacho


*Ignacio Sniechowski*



















On Sun, Oct 1, 2023 at 10:17 AM Hilaire Fernandes via Cuis-dev <
cuis-dev at lists.cuis.st> wrote:

> Hi Ignacio,
>
> 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.
>
> I don't think your candidates can be elected as classes, more as states
> (instance variable)
>
> 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.
>
> CGAccountsAnalysis.class
> CGAddress.class
> CGAddressFrance.class
> CGAmortizationConstantSchedule.class
> CGAmortizationFlexSchedule.class
> CGAmortizationSchedule.class
> CGAmortizationTerm.class
> CGAppData.class
> CGBankAccountFr.class
> CGBankAgencyFr.class
> CGBankFinalOffer.class
> CGBankPosting.class
> CGBankPostingExpense.class
> CGBankPostingExplanation.class
> CGBankPostingIncome.class
> CGBankPostingLoan.class
> CGBankPostings.class
> CGBirthplace.class
> CGChild.class
> CGCivilStatus.class
> CGClerk.class
> CGClient.class
> CGClientDebt.class
> CGClientLoan.class
> CGClientLoanFixedRate.class
> CGClientLoanFloatingRate.class
> CGClientLoanRevolving.class
> CGComment.class
> CGConnectedEntity.class
> CGCurrency.class
> CGDepartment.class
> CGDocumentList.class
> CGDonator.class
> CGEntity.class
> CGEuribor.class
> CGExpense.class
> CGFinancedProject.class
> CGFinancialContractAbstractProxy.class
> CGFinancialContract.class
> CGFinancialContractDeathProxy.class
> CGFinancialContractProxy.class
> CGFinancialPackage.class
> CGFinancialPackageOne.class
> CGFinancialPackageSteps.class
> CGFinancialPackageTwo.class
> CGFinancialSituationAbstractProxy.class
> CGFinancialSituation.class
> CGFinancialSituationDeathProxy.class
> CGFinancialSituationProxy.class
> CGGuaranteedLoan.class
> CGHousing.class
> CGIncome.class
> CGIncomeExpense.class
> CGInsurance.class
> CGInterBankRate.class
> CGMessage.class
> CGMoney.class
> CGMonthAnalysis.class
> CGMoralPerson.class
> CGMortgageCaution.class
> CGOAT.class
> CGOrganisation.class
> CGParticipant.class
> CGPhone.class
> CGPhysicalPerson.class
> CGProspect.class
> CGRealestate.class
> CGReports.class
> CGRole.class
> CGSuretyCaution.class
> CGSwap.class
> CGTemplate.class
> CGTools.class
> CGUser.class
> CGUserClient.class
> CGUserManagement.class
> CGValidators.class
> ChronologyConstants.extension
> Cofilair.class
> Collection.extension
> DateAndTime.extension
> Date.extension
> Dictionary.extension
> Month.extension
> monticello.meta
> Number.extension
> Object.extension
> properties.json
> String.extension
> UndefinedObject.extension
> WAComponent.extension
>
> --
> GNU Dr. Geohttp://drgeo.euhttp://blog.drgeo.eu
>
> --
> Cuis-dev mailing list
> Cuis-dev at lists.cuis.st
> https://lists.cuis.st/mailman/listinfo/cuis-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20231001/b6b90fee/attachment.htm>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: Finance.st
Type: application/octet-stream
Size: 2343 bytes
Desc: not available
URL: <http://lists.cuis.st/mailman/archives/cuis-dev/attachments/20231001/b6b90fee/attachment.obj>


More information about the Cuis-dev mailing list