Should I start learning ASP.NET? Is it hard if you already know ASP?
If you know ASP you have the benefit of knowing how to develop client-server
applications, but not much more than that. There are some similarities
between ASP and ASP.NET, but not very much considering how large the .NET
framework is. Also you should try to learn the ASP.NET way of building pages
and not stick to ASP practises.
> Also you should try to learn the ASP.NET way of building pages
> and not stick to ASP practises.
> Why not?
Because you can completely separate the HTML markup from the executable code
in ASP.NET. This means that all the code can be compiled and type safe.
When converting from ASP to ASP.NET it's usual to see <%=...%> tags in the
markup (I have been there myself). Code like that is harder to follow and
harder to maintain.
This still occurs in ASP.Net, especially in databound objects:
<asp:TextBox id="TextBox1" runat="server"
Text='<%# DataView1(0)("au_lname") %>'>
Microsoft MVP - ASP/ASP.NET
Please reply to the newsgroup. This email account is my spam trap so I
don't check it very often. If you must reply off-line, then remove the
Exactly what Bob said. And the bit about making it easier for
designers and coders to work on the same project? Every designer I
know who has seen what VS produces has shrieked in horror at the
thought of ploughing through all those server control tags,
For the vast majority of web applications, an OOP approach is overkill.
A web page typically executes in about half a second or less, and then
dies happily. You can use sessions, databases, text files or cookies
to maintain some kind of state between pages, but web applications are
not all about RAM-resident objects that might need to live for hours or
days, undergoing all kinds of changes in state.
Good programmers who are used to <%=...%> or <?php...?> don't find well
crafted ASP or PHP files difficult to follow or maintain, any more than
those who are used to Public Class Whatever ...End Class will be
comfortable with Code Behind.
And the bit about code being compiled and type safe? So what? So an
aspx page might run a few microseconds faster than an interpreted
script-based page. No one except the sysadmin will notice in the vast
majority of cases. Please note, I'm not talking about Yahoo or Ebay.
I'm talking about the huge number of B2B sites that have niche
audiences and page impression counts of less than 1 million a year,
which probably make up about 70% of all web sites.
Not that I have anything against ASP.NET. I'm learning it myself, but
if ASP is ever dumped by Microsoft, PHP is an equally valid alternative
for the kind of work I do.
Time to clamber off the soap box now..... :-)
> Guffa wrote:
> > "Mike Brind" wrote:
> >> Why not?
> > Because you can completely separate the HTML markup from the
> > executable code in ASP.NET. This means that all the code can be
> > compiled and type safe.
> > When converting from ASP to ASP.NET it's usual to see <%=...%> tags
> > in the markup (I have been there myself). Code like that is harder to
> > follow and harder to maintain.
> This still occurs in ASP.Net, especially in databound objects:
> <asp:TextBox id="TextBox1" runat="server"
> Text='<%# DataView1(0)("au_lname") %>'>
Yes, it can be done that way. It can also be done from code-behind, keeping
that mess out of the markup.
A matter of taste, I give you. I like it clean, compiled, type checked,
layered and having as few surprises as possible.
I didn't say that, and I don't believe that either. Microsoft seems to be
coming with something that really could work in that respect, but so far I'd
like to keep the designers far away from the code.
Separating the code from the markup is for keeping the code easy to develop
> Good programmers who are used to <%=...%> or <?php...?> don't find well
> crafted ASP or PHP files difficult to follow or maintain, any more than
> those who are used to Public Class Whatever ...End Class will be
> comfortable with Code Behind.
That works fine when all the code is in the same file, but when half of the
code is in the html and half of it is in code-behind, it gets worse...
> And the bit about code being compiled and type safe? So what? So an
> aspx page might run a few microseconds faster than an interpreted
> script-based page.
It's not for the speed but for the stability.
I've been developing applications in ASP for several years, and moved on to
ASP.NET about two years ago. I find working with compiled code a dream
compared to script programming. It's so much easier to write stable and
Actually, the best advice I could offer would be to refactor it all in
PHP over Apache using PostgreSQL. The performance is awesome as in
~superior to asp~, the conversion time is minimal, and the cost is
nothing (FREE) but your time in order to see that I speak the ~truth~.
This posting is provided "AS IS" with no warranties and no guarantees either express or implied.
Well that's true. But HTML IS code. Designers shouldn't be let near it
> Separating the code from the markup is for keeping the code easy to
> and maintain.
There's nothing in ASP that prevents this either. For example I often see
'---- Large chunk of code delivering content of TD
That can be hard to read however the same is easy enough to do this way:-
> > Good programmers who are used to <%=...%> or <?php...?> don't find well
> > crafted ASP or PHP files difficult to follow or maintain, any more than
> > those who are used to Public Class Whatever ...End Class will be
> > comfortable with Code Behind.
> That works fine when all the code is in the same file, but when half of
> code is in the html and half of it is in code-behind, it gets worse...
Not if good code contstruction principles are being applied. Concepts such
as cohesive modules which are as old as programming itself still apply.
> > And the bit about code being compiled and type safe? So what? So an
> > aspx page might run a few microseconds faster than an interpreted
> > script-based page.
> It's not for the speed but for the stability.
> I've been developing applications in ASP for several years, and moved on
> ASP.NET about two years ago. I find working with compiled code a dream
> compared to script programming. It's so much easier to write stable and
> efficient code.
ASP applications of sufficient complexity where the above becomes true are
being developed in combination with VB6.
ASP script is also compiled. This has been noted about a million times
on these newsgroups, so it won't hurt to say it one more time:
On the first request for an ASP page, the ASP code is compiled to
p-code, the p-code cached in IIS memory and executed. The cached p-code
is (usually) used on subsequent page requests.
Here's a post that contains a sample of the p-code (bytecode) to which
ASP is compiled:
There's an explanation of the ASP compiling process in Appendix 3, "ASP
Unfortunately the word 'compiled' is overloaded.
It is true that the p-code for a parsed ASP pages is cached. However this
p-code is still interpreted every time the page is executed.
With ASP.NET the page is complied first to IL. However the IL is further
compilied to native code and this native code is cached.
Have you ever actually used Microsoft product support for anything
I view ASP technology as something you can use for as long as you want to,
or can. For example, let's say you have a 1988 Corolla. It is clearly no
longer covered by Toyota's warranty, but you are free to drive it for as
long as you want, as long as you can maintain it and that it continues to
meet the oh-so-rigid safety standards in the US. When it becomes too
expensive to maintain, you dump it.
Similarly with ASP, even if some future version of Windows drops support for
ASP (which I doubt), there is no reason to immediately move to that platform
if you are using ASP and wish to continue to do so.
However, my guess is that they will continue to support ASP for as long as
they continue to ship IIS. Since they are not making any changes to that
side of the codebase, I can't think of anything they would gain by ripping
out the ASP support (except maybe save some lines of code, but we know that
isn't a priority over at Microsoft). Especially because of the backlash
from all of these customers who have deployed this technology and are using
> Should I start learning ASP.NET?
If you have the time to invest, sure, it's definitely an advantage to have
it in your toolbox, especially in today's job market. And it is a much more
comprehensive platform that will give you more benefits in the long run. In
the short term, however, if you are on a tight deadline, I'm not sure that
switching mid-stream is going to be a very good thing.
> Is it hard if you already know ASP?
My suggestion when learning ASP.NET is to forget everything you learned
about ASP (aside from the peripheral stuff, which is still important, like
though the name remains similar and IIS is still processing the server-side
I would also like to add that I have dragged my feet on really learning
ASP.net these past 4 years. I have worked with it and given up in the past.
I knew enough to be dangerous. It was not until recently that I really
understand it and have become very very good with it.
All it took was 3 weeks, a lot of reading, and about 100 hours with visual
studio.net. Most of the help I needed was on the web. I could kick myself
for not spending the time to get familiar with things before now. There is
some really cool stuff. That being said I still love classic asp and wil
always use it I am sure. At least now though I don't feel like I am behind
I recently made an elaborate authentication control that works with
formsauthentication and roles and its just so cool now that I understand
enough to do things like that.
Unlike classic ASP.NET ASP.NET is probably one of those things your will
never know everything about. There is just so much, but that also makes it
very exciting. In the classic ASP world there is only so much to learn and a
lot of us in these newsgroups have it 99% covered.
I will agree with Aaron.. dont give up on classic asp and I too think it
will around as long as IIS as we know it is, but don't be afraid to spend
some serious time with .NET when you have time. Once you become friends
you'll be glad to took the time to get acquated.
"Aaron Bertrand [SQL Server MVP]" <ten...@dnartreb.noraa> wrote in message
There's not a lot preventing classic ASP developers using tools like VB6 to
access significant chunks of the functionality of the windows API that .NET
exposes directly in the framework. It's this 'all in one tool box' approach
which makes the learning it appear difficult. In reality we're not likely
need all of it just as very few 'classic' applications use all aspects of