To Hungarian or not to Hungarian



We are re-thinking our Delphi coding standards to match closer to the
standard found at:
http://www.econos.de/delphi/cs.html

A 'heated' discussion ensued over the use of Hungarian notation on
components. The argument (from one person) was "Hungarian notation is no
longer the recommended practice".

His recommendations were:

(Type -> Example name)
TDataSource -> DataSourceVendors
TQuery -> QueryInvoices
TADOQuery -> AdoQueryCustomers
TADODataSet -> AdoDataSetProducts
TwwDBLookUpCombo -> WwDbLookUpComboCustomerTypes

etc and so on.

My arguments were, Why all the extra typing? Why is the type more relevant
than the functionality (I'm fetching data from the database, why do I care
if it is a TADOQuery vs. a TADODataSet)? How does adding all the extra
characters enhance readability and maintainability?

Is Hungarian notation really dead? What standards do you use?

Thanks for any feedback,
krf


.



Relevant Pages

  • Re: Naming Conventions?
    ... So there are no standards in SQL for naming? ... there are hungarian notation, Camel Case, Pascal ... Naming conventions are all about applied human psychology and are more closely related to information architecture than database theory. ...
    (comp.databases.theory)
  • Re: Newbie: How to extract year from a Date object
    ... >>Not that I or anyone else around here have blind personal preferences. ... I love Hungarian notation. ... I adopted it early using a home-grown version in ... Like all standards it depends on one to actually use the 'standard' - I ...
    (microsoft.public.vb.general.discussion)
  • Re: Naming Conventions?
    ... So there are no standards in SQL for naming? ... there are hungarian notation, Camel Case, Pascal ...
    (comp.databases.theory)
  • Re: Naming Convention for Web service method name
    ... Hungarian notation would be ugly... ... Yucks! ... Gaurav Vaish | http://www.mastergaurav.org ... Is there any standards to be followed for method name while writing Web ...
    (microsoft.public.dotnet.framework.webservices)