65.9K
CodeProject 正在变化。 阅读更多。
Home

PHP 和 ASP.NET - 功能列表

starIconstarIconstarIconstarIcon
emptyStarIcon
starIcon

4.74/5 (52投票s)

2010年8月18日

CPOL

5分钟阅读

viewsIcon

190646

这只是一篇辅助文章,可能有助于您决定选择哪种技术。

引言

我不想称之为比较,而是一份同等功能的列表。如果您在互联网上搜索“哪个好,哪个不好”,会找到很多链接。在这里,我想给这两种技术同等的权重,因为它们都有各自的优缺点。

背景

好吧,我在考虑我最新需求时制作了这份列表。我想为我的架构设计工作中的一个演示文稿制作一些内容。

列表来了……

技术选择完全取决于需求。影响选择的因素基于以下几点:

  • 业务逻辑的复杂性
  • 内容的密度
  • 预期访问量(如果是网站)
  • 预算
  • 项目规模等。

许多功能有多种选择。列出了主要的选项,它们是我的建议。

ASP.NET PHP 注释
最新稳定版本 4.0 5.3.3 截至 2010 年 8 月 19 日
许可证 MS EULA PHP 许可证 v3.01
价格
  • ASP.NET - .NET Framework 免费,因此 ASP.NET 也免费
  • Web 服务器 – IIS – 不免费。操作系统成本适用
  • 操作系统 – Windows Server – 不免费
  • PHP – 免费
  • Web 服务器 – 免费
  • 操作系统 – Linux 免费,Windows 昂贵
PHP 可以安装在任何操作系统和 Web 服务器上。但 ASP.NET 仅推荐用于 IIS(尽管有移植到少数 Web 服务器的可用版本)
第三方托管价格 涉及的成本 涉及的成本 两者都不贵,但如果比较的话,PHP 会稍微便宜一些
开发成本 涉及的开发人员成本 Visual Studio Express 版本是免费的 快速应用程序开发模型。因此开发耗时更少 涉及的开发人员成本 有免费/开源 IDE 涉及大量编码 两者相同,但 ASP.NET 更侧重于快速应用程序开发,而 PHP 更侧重于编码
跨平台 无论您使用哪种服务器端语言,浏览器最终都只渲染 HTML。但开发并非跨平台,尽管 ASP.NET 有 Linux 的移植版本
代码可移植性 部分 对于 PHP,在 Linux/Apache 上编写的代码可以在 Windows 或任何 OS/Web 服务器上运行。但 .NET,即使我们有移植版本,您也需要进行一些调整才能使其运行。
云可行性 可能 可能 此外,对于 ASP.NET,还有 SQL Azure 可用于数据库托管。
来源模式 闭源 开源 应用程序开发人员无论闭源还是开源都没有任何好处 **更新:** Microsoft 也开放了 .NET framework 的代码供参考。请注意,这只是供参考。您除了阅读什么都不能做。真正的开源必须能够下载、修改、重新编译。您不能创建自己的 .NET 版本。
推广者 Microsoft PHP 社区
所有者提供的客户支持
安全修复 自动更新 – 作为操作系统的一部分 需要单独更新可用时 双方都立即发布 bug 和安全问题的修复程序
开发者帮助 社区 社区 这两种技术都有全球的粉丝。他们将通过论坛、邮件列表、新闻组等提供帮助和指导。
语言
  • C#
  • VB.NET
  • Jscript 等。
PHP
数据库 任何数据库 适合:Microsoft SQL Server 任何数据库 适合:MySQL 支持大多数数据库
框架/面向对象 有一个内置框架(称为 Web Forms 框架),它会强制开发人员使用面向对象 您可以编写过程式和面向对象的代码
MVC Microsoft ASP.NET MVC Symfony
开发 IDE
  • 推荐:Microsoft Visual Studio
  • 任何 IDE
  • 推荐:Zend Studio
  • 任何 IDE
甚至记事本都可以用于编码。PHP 在这方面更容易,但如果您能负担得起 Visual Studio,那么 ASP.NET 也可以。
ORM
  • ADO.NET Entity Framework
  • NHibernate
Doctrine
模板化 NVelocity Smarty
可扩展性
  • ASP.NET 使用 Microsoft.NET framework。因此,您可以使用 .NET framework 中提供的任何功能
  • HTTPHandlers
  • HTTPModules
  • ISASP 扩展等。
PECL – PHP 扩展社区库
易于学习 我个人发现 PHP 对初学者来说更容易学习编程
推荐用于大型系统? 根据我的分析,PHP 推荐用于中小型项目,而 ASP.NET 和 JSP 推荐用于中大型应用程序 **更新:** 如果您想到 Facebook,请理解
  1. 它使用了一个重写的 PHP 和一个
  2. 转换器+编译器,称为 HipHop,它将 PHP 代码转换为高度优化的 C++ 代码,然后使用 gcc 进行编译。我们这里讨论的是我们从 PHP.NET(原样)获得的应用程序开发人员使用的 PHP。
内容管理系统
  • DotNetNuke
  • SharePoint
  • N2CMS …
  • Typo3
  • Joomla
  • Magento …
种类繁多的选择
进步 发展非常快 发展速度有限 微软团队热衷于开发和集成新功能。但由于 PHP 是由社区推广的,因此达到那个水平需要时间
向后兼容性 旧代码在新框架版本上无需更改即可运行 旧代码可能需要调整才能在新版本上运行
安全 IIS 必须比过去有所改进,如今它是最安全的 Web 服务器之一 主要的 Web 服务器是安全的 ASP.NET、PHP、Oss 及其服务器大多是安全的。现在开发者需要确保他们的编码是安全的。
性能 更快 小程序速度快,中大型程序速度慢 非常基础的老论点 – ASP.NET 是编译的,PHP 是解释的(逐行编译和执行)
部署 提供多种方法,例如:发布、XCopy、MSI 您需要将代码复制/粘贴到服务器(例如:FTP)
一些有用的功能
  • WCF (Windows Communication Foundation)、Web Service、.NET Remoting 等。
  • ASP.NET AJAX
  • 内置缓存功能
  • Web服务
  • 第三方 Ajax 库
  • 第三方缓存库

我不敢保证以上所有内容都属实,但所有我都相信是真的。此外,这份列表绝非详尽无遗。构建一个完整的列表非常耗时,所以我只包含了主要几点。

如果我说的有错误或遗漏了任何重要点,请纠正我。

历史

  • 2010 年 8 月 19 日:初始版本
© . All rights reserved.