1. Advertising
    y u no do it?

    Advertising (learn more)

    Advertise virtually anything here, with CPM banner ads, CPM email ads and CPC contextual links. You can target relevant areas of the site and show ads based on geographical location of the user if you wish.

    Starts at just $1 per CPM or $0.10 per CPC.

why is ASP.net gaining the momentum over PHP ?

Discussion in 'C#' started by naveenmosaic, Apr 13, 2006.

  1. #1
    HI all ,

    Why is ASP.NET gaining the momentum over PHP language ?
    please any one from expert , kindly let me know the benefits and advantage for end user perspective in short and long run .

    Naveen Gupta
     
    naveenmosaic, Apr 13, 2006 IP
  2. Perrow

    Perrow Well-Known Member

    Messages:
    1,306
    Likes Received:
    78
    Best Answers:
    0
    Trophy Points:
    140
    #2
    In my experience php is the more stable environment. I've managed to crash servers a few times running c# scripts.

    I would say that .net gains a lot from MS marketing activities. The fact that php is free to use makes some ppl nerveous but should make for a strong selling point.
     
    Perrow, Apr 13, 2006 IP
  3. Will.Spencer

    Will.Spencer NetBuilder

    Messages:
    14,789
    Likes Received:
    1,040
    Best Answers:
    0
    Trophy Points:
    375
    #3
    Is ASP.NET gaining momentum over PHP?

    I see PHP much more often than I see ASP.NET.

    See the two Google Fight. :D

    PHP also gets more searches than ASP on both Overture and Wordtracker.
     
    Will.Spencer, Apr 13, 2006 IP
  4. naveenmosaic

    naveenmosaic Banned

    Messages:
    5
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    0
    #4
    Thanks Perrow for promt replies.
    fact is that I am a software marketing professional , and my clients always ask me for asp.net technology , kindly can i get the comparatively advantage and disadvantage of php and asp.net technolgy . so that I can use them as MY marketing USP . kindly so being an software expert , support and let me know .

    Thanks and Regards
    Naveen gupta
     
    naveenmosaic, Apr 13, 2006 IP
  5. Will.Spencer

    Will.Spencer NetBuilder

    Messages:
    14,789
    Likes Received:
    1,040
    Best Answers:
    0
    Trophy Points:
    375
    #5
    Will.Spencer, Apr 13, 2006 IP
  6. benjymouse

    benjymouse Peon

    Messages:
    39
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #6
    Disclaimer: I am a convert from the ASP.NET camp.

    One reason could be that ASP.NET is a much more mature and productive technology, especially with the lastest 2.0 release (nov. 2005).

    Regrettably a lot of PHP developers has not kept up with the advances in ASP.NET. Many still believes that ASP.NET is just the "next" version of ASP.

    And boy, are they wrong. ASP.NET has completely left the "stream oriented" approach of ASP.OLD, PHP, JSP etc. It is now an object oriented, component-based technology for rapidly building high performance, scalable websites.

    1) It may fit organizations better. If they already develop using .NET technologies (e.g. for webservices, windows apps, integration), using ASP.NET on the web-tier may position them leverage those investments.

    2) ASP.NET is backed by a large company which reacts in a somewhat more predictable manner. Backward compatibility is not lost in a point release, like we've experienced with PHP several times.

    3) Security record. MS has done a remarkable job on this front. PHP has done an equally shitty job. IIS 6 came out around the same time as Apache 2.0, but IIS has got a much better track record, despite being a much more advanced product. Do a search on secunia. Also while at secunia, compare ASP.NET with PHP. On the security front some of the early hacks of the PHP language has invited exploits in the applications written in PHP. Think "register_globals". ASP.NET has taken the opposite approach and designed for security from the start. One example is that trying to fill in textboxes with SQL injections or XSS attacks are blocked by the framework by default.

    4) ASP.NET is simply better technology. Your customers may be aware of this, even if the die-hard PHP'ers are not. I can not give you an exhaustive list, but this is some of the important points:

    Performance. ASP.NET is compiled all the way to machine instructions on the target machine before first execution. Subsequent executions (in the same process) will use the compiled code. This gives ASP.NET a performance advantage at the lowest level.

    Scalability. ASP.NET is designed to be used in a web farm or web garden. Facilities like profiles/personalization means that many applications can be written without session state. But even with session state, this can be shared among the servers. You can use a speciel session state server (included), use a SQL server (provider included), or build your own provider. The latter is simply an implementation of an interface.

    Built-in templating. PHP may have a range of competing templating frameworks, but none of them can match ASP.NET, not in functionality nor in performance.

    Output Caching. Entire pages can be automatically cached for all users, single users, depending on URL parameters etc. It is as simple as a @directive (one line) on the page. Even parts of a page may be cached (pagelet caching) by caching usercontrols.

    MasterPages. This is "page templates" which ensures a consistent layout across several or all of pages of your site. In PHP this must be accomplished by using a complex, centralizing architecture of front controllers or app controllers. In ASP.NET a masterpage is simply a page with a special "contentplaceholder" tag. Content pages defines a reference to the masterpage and merely defines the content to replace the contentplaceholder(s).

    WebControls. From simple controls like textbox'es over complex control for building on-page wizards, paging lists/grids.

    ViewState. Lets the programmer set a property of a control which will then retain that value across multiple postbacks.

    UserControls. Page parts which are reusable in multiple pages, complete with templating, model-view-controller etc. Also helps seperating concerns and define sub-page output caching.

    Theming/skinning. Lets you declaratively change "theme". Themes may redefine properties such as columns in a grid, paging/no paging, paging size, column ordering, sorting, css classes, css styleshets etc. Themes work declaratively and does not complicate the original code.

    Internationalization/localization. Lets you use the same code for multiple cultures/languages. Language resources are specified in external xml based resource files, one for each language/culture.

    Authorization/authentication built in. All files in a directory/location can be protected declaratively. No need for code in the actual pages, which means no "forgotten" validations.

    Membership controls and providers. Lets you build sites with login, logout, conditional content based on login status and/or roles, password retrieval, create user wizards. Alle the controls are pre-built but fully customizable. The backing store can be in any form or medium. ASP.NET comes with 2 providers: active directory and SQL server. More can be downloaded, or you can develop one yourself. Its merely implementing an interface.

    Site structure controls and providers. Standard controls for menus, sitemaps, breadcrumbs which works with sitemaps. One built-in provider for a site structure in an xml file. Or implement your own (4 methods of an interface).

    WebParts. Also called "portlets". Lets users personalize pages. Rich client side functionality based on JavaScript.


    I'm sure that there's PHP frameworks for many of the above features. But in ASP.NET they come integrated. Internationalization works with theming works with personalization works with membership. And if you don't use it, it's not taking of any code or complexity.

    BTW the PHP and ASP.NET go head-to-head article on OTN is a joke. Sean Hull is the prototype of an ignorant PHP zealot. He hasn't got a clue.
     
    benjymouse, May 12, 2006 IP
  7. ServerUnion

    ServerUnion Peon

    Messages:
    3,611
    Likes Received:
    296
    Best Answers:
    0
    Trophy Points:
    0
    #7
    I'm with benjy, even though I enjoy writing the old style of code, I love asp.net.

    It is really nice using an object oriented, event driven development suite. I do have to state that I use PHP for all my content sites though. Just is quicker to write and more portalble since most begining prgrammers can pick it up.
     
    ServerUnion, May 12, 2006 IP
  8. SaN-DeeP

    SaN-DeeP Well-Known Member

    Messages:
    590
    Likes Received:
    12
    Best Answers:
    0
    Trophy Points:
    140
    #8
    are these your own personal comments or specified somewhere officially ?
     
    SaN-DeeP, May 12, 2006 IP
  9. jfilley

    jfilley Peon

    Messages:
    18
    Likes Received:
    1
    Best Answers:
    0
    Trophy Points:
    0
    #9
    Its not a matter of cool prebuilt controls skinning, theming, and all that stuff that .NET can do you you, even though those are nice features and can make for quicker development, but the fact is .NET and PHP are not even in the same class. .NET is a compiled language and PHP is a script. The power and programability of .NET is in another league, only comparible to JAVA. Here is a link to some info I posted on another thread

    http://www.promoteware.com/Module/Article/ArticleView.aspx?id=10
     
    jfilley, May 19, 2006 IP
  10. articlebazar

    articlebazar Peon

    Messages:
    505
    Likes Received:
    4
    Best Answers:
    0
    Trophy Points:
    0
    #10
    My thought is that PHP is more popular than ASP.NET. I gain this thought from the fact that there are much more PHP projects than ASP.NET projects out there and there are more hosting companies providing PHP hosting rather than ASP.NET hosting. However, I'm a pure ASP.NET guy, I have used it for more than 3 years now. All of the web projects I've done is in ASP.NET and I think it's OO feture, Code Behind, high performance etc.

    PHP is definitely catching up in the language features. My thought over these two is that both will have its own place on the INTERNET.
     
    articlebazar, May 24, 2006 IP
  11. Software_outsourcing

    Software_outsourcing Peon

    Messages:
    298
    Likes Received:
    5
    Best Answers:
    0
    Trophy Points:
    0
    #11
    The main reason u see PHP all over is because it is free . Most of the small timers do need a free application to give them same results as that of the paid one. If i compare the application which I seen been bulit around , I conclude that ASP is always used by people who can afford it .
     
    Software_outsourcing, Oct 16, 2006 IP
  12. MattUK

    MattUK Notable Member

    Messages:
    6,950
    Likes Received:
    377
    Best Answers:
    0
    Trophy Points:
    275
    #12
    From what I've seen ASP.NET is the better language, though PHP has the advantage as the majority of open source software is written in PHP and hosting is cheaper and more plentiful.
    It's a complete generalisation, but custom written professional solutions tend to be in .NET and OS and hacked scripts will usually be written in PHP.
     
    MattUK, Oct 16, 2006 IP
  13. ccoonen

    ccoonen Well-Known Member

    Messages:
    1,606
    Likes Received:
    71
    Best Answers:
    0
    Trophy Points:
    160
    #13
    it's all about the IDE, integration into windows itself, and the seperation of model and view. It's too good not to use ;)

    PHP has some advantages (cough... rendering/compiling time)
     
    ccoonen, Oct 17, 2006 IP
  14. carlinhos

    carlinhos Member

    Messages:
    49
    Likes Received:
    0
    Best Answers:
    0
    Trophy Points:
    41
    #14
    Well, I don't know if that is true :D I really love ASP.NET for many reasons (someone already posted a big list with every kind of goodies :cool: )

    But I think that PHP is more popular today. There are MANY, MANY more open source projects in PHP than in ASP.NET. For example, there are more blogging, forums, CMS's and every type of free applications writen for PHP.

    By the way, ASP.NET is also multi-platform. I ran it over a Suse Linux with the help of Nono Project. Wasn't easy but was possible :confused:

    Far more easier using Windows Server + IIS
     
    carlinhos, Oct 19, 2006 IP
  15. rooneydavid

    rooneydavid Guest

    Messages:
    67
    Likes Received:
    2
    Best Answers:
    0
    Trophy Points:
    0
    #15
    First off, PHP is a scripting language where VB.net and C#.net are programming languages. So to try and compare PHP and ASP.NET is foolish.

    PHP can not be expanded where ASP.NET can. ASP.NET can be compiled into a dll which makes ASP.NET faster then PHP. The reason PHP was so popular was because of the costs involved in running it. PHP is cheap! and has a lot of limits.

    When you look into the uses with the .NET Framework you will see it has far more uses then PHP. With PHP all you can do is write scripts, with ASP.NET you can connect with the OS and any program that is installed on the machine.

    Simply ASP.NET is gaining momentum over PHP because,
    1. PHP is a scripting language with no programming language behind it
    2. .NET can be expanded
    3. ASP.NET is more of a Web 2.0 platform where PHP is not.

    And to clear up ASP.NET is an enviorment, and PHP is a scripting language! So I dont know how people could even think that a Scripting Enviorment could be compaired to a Scripting Language!
     
    rooneydavid, Oct 20, 2006 IP
  16. jimrthy

    jimrthy Guest

    Messages:
    283
    Likes Received:
    13
    Best Answers:
    0
    Trophy Points:
    0
    #16
    For someone who isn't really familiar with asp.net, this really isn't very informative.

    And, BTW, scripting languages are programming languages, too.

    I think I'm mis-understanding you here. It would be a lot easier to expand the open-source PHP language than the MS-controlled asp.net platform.

    OTOH, being able to derive classes from any binary created in a CLS-compliant language opens up a new world of possibilities (that's in c# and vb.net, for people who don't know).

    I've done those things in PHP. It wasn't fun, but it can be done. Then again, PInvoke and com interop (from dotnet) are painful too.

    Funny...I haven't noticed ASP.NET being anymore "Web 2.0" than PHP. If/when MS ever gets an Atlas release that supports good cross-browser compatibility, then, sure, that will be a huge step forward in that particular arena.

    But Web 2.0 is going to mean a whole lot more that AJAX. If the marketing people don't convince everyone that they've been doing it for years before the standards are even defined.

    Sorry if I seem a little disagreeable. I think we probably do agree, for the most part, on some level. But I don't think we're agreeing about the meanings of certain words.

    Now, here's my take on this:

    ASP.NET is more of a paradigm than anything else. You have the part that's "really" asp.net: the layout and "design." Then that integrates seamlessly with some dot net language where you put all the "actual code"--most (or all) of which you'd put into the middle of your markup in a PHP environment.

    You *can* do this with pretty much any other modern scripting language. But, for the most part, you're restricted to C for the back-end language. That might not be a bad thing...the only real reason to move from an interpreted scripting language to a compiled one is speed. C is (and pretty much always will be) the king when it comes to speed.

    OTOH...the integration with asp.net and its back-end languages is seamless. You don't have to jump through a lot of hoops. C# (and vb.net) aren't as quick and easy to write software in as most scripting languages, but they're tons easier than C (assuming you can get your mind around OOP).

    And, as languages, they are designed so much better than PHP that it's not worth comparing.

    With all that being said, to get back on-topic and the original question.

    For a quick & dirty web-site, esp. on a tight budget, I would choose PHP hands-down. There are just fewer hoops you have to jump through. (And, OTOH, a lot of those hoops are there to encourage developers to do a better job designing).

    I don't think I'll ever [try to] use PHP on a large, complicated project ever again, though.

    As far as customers who are pressuring you to use asp.net, I have very mixed opinions about that. I prefer to take jobs where I get the requirements, and then I choose the appropriate tool for the job. The salesman should not be telling me what language to use, and the person who uses the software really shouldn't care about my coding conventions.

    OTOH, someone will have to maintain that software. From a company's perspective, someone there has every right to insist that you use their current tool du jour.

    And there is a definite perception in the corporate world that asp.net is a serious, enterprise-level paradigm (I hate that word, but I haven't been able to come up with another one I like). They are correct in this.

    They also mostly perceive that any open-source language must, by definition, be something for the script kiddies who aren't talented enough to scrape together enough money to purchase Visual Studio. They are wrong about this, but there is a certain degree of justification. (The sheer number of PHP projects mean that a lot of them have contributors who...lack experience).

    Anyway, I'm feverish and probably babbling. I hope this wasn't too incoherent.

    Regards,
    James
     
    jimrthy, Oct 21, 2006 IP
  17. Will.Spencer

    Will.Spencer NetBuilder

    Messages:
    14,789
    Likes Received:
    1,040
    Best Answers:
    0
    Trophy Points:
    375
    #17
    Another point to consider is the short lifespans of many single-vendor languages. The product division has a bad quarter and the whole language is suddenly unsupported.

    That doesn't happen with industry standard development languages.
     
    Will.Spencer, Oct 23, 2006 IP