Friday, July 06, 2007

Minimum for 8 techniques (i.e., totally bottom-up)

Minimum for the 8 techniques (i.e., if/when it is really a small project)

1. Ad hoc ado wrapper: for logging database access
2. Just use trace or debug, not log4net
3. Just Façade: this is crucial for later anonymous delegate
4. Entity (no dataset): this is crucial.
5. Use "pure Ajax" or "native Ajax" (i.e., use webservice; the page is really just a skeleton -- note: this style makes wpf/silverlight and "native ajax" almost the same!)
---- It is not just web, it is web2!!!!!!!, it is RIA!!!!!
---- Ya, since silverlight is still alpha, most of the time, we cannot affort to go through silverlight-ajax-wpf cycles. Sometimes, I like Ajax more than Silverlight, because Ajax is closer to flash -- it is javascript based. Ya, the real difference between silverlight and ajax is C# and java ;-) –---------- OK, seriously, it is javascript replication of the C# entity classes. Now, it can do the data part automatically (databinding!); for logic (methods) we have to do it manually. As a result, before silverlight, we should keep the logic part minimum: let’s do most of the validation at the façade level, what the hack, users sometimes do not like validate two times, they want it one time! (if we do client side validation, we have to do it more than one time, because client side validation is inevitably not sufficient) – it is a trade-off for users also, why we make it more difficult than necessary!

6. Always very short eventhandlers
7. Standardize page flow calls
8. Wrap new and always virtual

-----------Update: you may say, not big deal. It is a big deal! Now, I cannot use the 2.0 build in objectdatasource anymore, because of “always new”!

the build-in objectdatasource is a typical M$ brain-dead joke and not really usable anyway, see:

-----------Just to clarify. It seems that we should not do build-in datdabinding for both WPF and ASP, we need to use databinding for silverlight and ajax.


Post a Comment

Subscribe to Post Comments [Atom]

Links to this post:

Create a Link

<< Home