alexdresko wrote:
Otis wrote:
Aren't asp.net providers some sort of runtime code generators? (I haven't read up, as you might notice )
No.. the providers allow you to plug in different functionality and not break the existing application. For example, the built in asp.net login control, by default, looks up user information in a table in your SQL database called aspnet_users. What you can do is create a new provider (aka, a class that implements the membership provider interface). This new provider could instead access an Oracle database with a table called "Users".. All you have to do to force the login control to use the new provider is make some simple changes in your web.config. You don't have to recompile the app or anything. The provider model uses reflection to instantiate types based on the information in the web.config.
I hope that makes sense..
ah thanks.
Though I don't see the gain, the advantage: it's just a move of where the complex stuff is defined: instead of a code behind file, it's moved to a code file in app_bin or somewhere else, all for the sake of being able to do 'declarative' programming.
take for example datasourcecontrol based controls. You can free your code behind code from glue code to setup binding. But it's not gone, it's just moved to another place and not less complex also, it's more complex. The gain? A person who can't program is now able to setup the control. Though is this reality? I dare people to challenge me in this. Especially if you see the pile of docs to explain all the code you have to write to get things to work (and the uselessness of some of them)
Don't underestimate this. The complexity developers are now faced with isn't small, and won't be helped either by the fact that MS didn't released documentation to get a lot of things done easily.
Add to that the shift in paradigm when you go from BL to PL, and I think a lot of developers don't really know what to do. I'm for example seriously confused. I know how it should work though I seriously dont understand why this was all necessary, because the complexity isn't lower, on the contrary, it's just moved to a different place, and if you're the guy who has to deal with that different place, you're not going to be happy. Also, teams who have written asp.net sites in .net 1.x, will be faced with a dillema: what will everyone do? They now have to do 2 things instead of one: first write the classes, then the declarations to use them, but they're not in the same project, they've to go back and forth.
Perhaps I'm sceptical, but I don't see the advantage for now. Ok, I do see how a non-technical webdesigner now suddenly can build webpages, but I think the tools are now simply too crappy to make it possible. They need this shift of course for WinFX, which is build on this concept, but the tools for WinFX will be better than we have now, (special editors for presentation work).
I mean: today shifting from html to design will re-initialize all controls and vice versa. Tiny details you have to live with when writing the code which does all the work behind the declaration. Was it enough to write some little glue code to get controls to do what you want in .net 1x, you've to do much more now (IMHO) in some areas in .net 2.0, unless you want to use what's offered to you.
But perhaps I don't get all this declarative programming hype, as I've been frustrated for days now by the lack of serious docs on datasourcecontrol based controls, designers and what to do WHEN and WHERE, while this system they created is meant to be extended by developers.