Mantenere le classi vagamente accoppiate è un aspetto importante della scrittura di codice che è facile da capire, modificare e eseguire il debug. Come novizio, però, quasi ogni volta che vado oltre gli esempi più semplici, faccio fatica.Loose Coupling e OO Practices per principianti
Capisco, più o meno, come posso incapsulare stringhe, numeri interi e tipi di dati semplici in classi proprie. Quando inizio ad occuparmi di informazioni come la formattazione di rich text, tuttavia, le cose si complicano molto - a meno che non utilizzi solo i vari metodi già presenti in un componente. Per continuare questo esempio, supponiamo che stavo scrivendo qualcosa che includeva un componente memo RTF nell'interfaccia utente. In Delphi, il componente ha metodi integrati per fare cose come salvare il testo formattato. Inoltre, a volte sembra che l'unico (o almeno il migliore) modo di lavorare con il testo RTF sia tramite metodi ancora incorporati nel componente.
Come (o perché) dovrei fare tutto il lavoro di salvataggio, caricamento e formattazione del testo in un'altra classe quando ho già un componente che fa tutto questo per me?
Da solo, di solito finisco per (a) fare qualcosa che sembra molto più complicato del necessario, reinventare metodi già presenti, o (b) creare classi scarsamente fatte che sono ancora strettamente accoppiate l'una con l'altra. Come si dice nell'informatica, "ci deve essere un modo migliore!"
Sono semplicemente perso concettualmente su come quella "via migliore" funzioni. qualche idea?
No, in Delphi è molto più probabile che l'ingegnere non funzioni –