<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">On Fri, Jul 17, 2015 at 11:24 AM, Graeme Geldenhuys <span dir="ltr"><<a href="mailto:mailinglists@geldenhuys.co.uk" target="_blank">mailinglists@geldenhuys.co.uk</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><span>On 2015-07-17 15:08, silvioprog wrote:<br>
> Using the generics I could do a generic<br>
> DAO that could be used by any class, avoiding TPersonDAO, TProductDAO,<br>
> TOtherMyEntityDAO and providing a simple and useful CRUD layer: just<br>
<br>
<br>
</span>I fully appreciate that there could be some uses, but I don't agree it<br>
makes the language any better - in the contrary, it makes it much harder<br>
to read. Pascal used to pride itself by being an easy to read and<br>
understand language [by a human].<br></blockquote><div><br></div><div>I agree with Michael too, but a nice thing to allow other programmers to make new libraries could be adding new features in the language, making it more productive. I'm working in a new lib and I'm having several problems to keep compatibility betten FPC and Delphi, so I'm using a lot of IFDEFs, even using mode delphi.</div><div><br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
As for you DAO example. It comes down to what Michael said - more<br>
frameworks need to be created. eg: I use the tiOPF framework for all<br>
data persistence and more. I can simply call MyPerson.Save or<br>
MyProduct.Save and the framework takes care of everything for me (CRUD,<br>
transactions, object ID's etc). I can even switch between database<br>
systems, database components or even to a 3-tier system without changing<br>
a single line of code in my software. Simply change a compiler define in<br>
the Project Settings and recompile my project. All without generics. ;-)</blockquote><div><br></div><div>Me too, in any universe (Delphi/ObjFPC, Java, JS, PHP, TypeScript, C# ...) that I'm working currenctly. =)</div><div><br></div></div>-- <br><div>Silvio ClĂ©cio<br>My public projects - <a href="http://github.com/silvioprog" target="_blank">github.com/silvioprog</a></div>
</div></div>