"Alexander" <[email protected]> wrote in message news:[email protected]... > On 16.05.2011 01:21, Robert Clipsham wrote: > >> I can't be bothered collecting lots of references, but having done web >> development both professionally (not as much as Nick) and >> non-professionally, I can tell you that it *is* widely accepted as bad >> practice. > > Accepted as bad practice by whom? Looks like there is very small fraction > of "real" web developers, who is deciding what is "bad practice", as > almost anything which is public widely using it. >
The vast majority of web developers *are* very, very, poor coders. Being correct and being in the majority have absolutely *nothing* to do with each other. > Times change, and something was considered as "good practice" may change > to "bad practice" in few years, and vice versa - I've seen that enough in > last 20 years. > That's an enormous oversimplification. >> ...but you now have 3 developers with varying experience with the web >> telling you it's not the right thing to do. > > I am sorry, but I didn't see any works of those web developers (I mean - > the code), so I couldn't make my mind - what is *good* practice, and why > it is better than anything else (again - *if done properly*). > > Good practice, from my point of view, is something that: > > - Easy to understand; > - Easy to maintain; > - Easy to extend; > - Does its job well (according to specifications); > - Has good performance; > - Doesn't have any holes. > > So, it doesn't matter, how exactly specific solution is implemented, as > long as all of those point are met. I can mix code with data or use DOM > templates - as long as I fulfill the above stated requirements, it really > doesn't matter. > > It is like my recent question about class member declaration order - I > find it harder to understand the code, when members are not declared > before use, though, others (on this list) tend to disagree with me. Who is > right here? > When you're not doing trivial stuff, the traditional mix-code-and-html approach fails miserably at: - Easy to maintain; - Easy to extend; - Doesn't have any holes. And it also causes this to become a bigger and bigger problem as a project progresses: - Easy to understand; All of that, in turn, makes this MUCH, MUCH harder than it would otherwise be: - Does its job well (according to specifications);
