Advantages of ASP.NET – This is sequel to the last post Advantages of PHP over ASP .NET DotNet has got its own merit over PHP. Both of them are appropriate for different types of websites, so use the right tool for the job.
- 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.
- 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 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 user controls.
- 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.
- 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.
Im grateful for the post.Thanks Again.