PHP 板


LINE

看板 PHP  RSS
※ 引述《hialan (You are dead.)》之铭言: : ※ 引述《shrimp0427 (shrimp)》之铭言: : 3. 跨平台。跨平台应该不是他们关注的焦点,但是因为使用技术的关系, : 在平台上还是有限制。 : 而因为 Apache 在各种机器上都有版本,所以 PHP 应该也可以在所有机器上执行。 : 如果今天在 Win32 上面没有 Apache , PHP 也可以直接支援 IIS ,让 IIS 跑 PHP : 而 ASP.NET 几乎不可能在 IIS 以外的伺服器上跑, : 虽然他的 .Framework 号称跨平台,但我认为他所跨的是 Windows 32bits : 和 Windows 64bits,当然这不较跨平台啦。 : JSP 在两个平台上应该都可以跑,因为 Java 在任何机器上也都可以跑。 理论上, open source 就足以让你跨平台 -- 只要 depending package / library 都存在 : 4. 语法近似 C 语言,适合熟悉 C 语言开发环境的人。 : ASP.NET 是使用 VB.NET : JSP 是使用 Java : 不过 C 语言还是最基本的语言,这也是优势。 php 的变数型态非常弱, 这能够让我们快速的开发, 但也能让我们写出很难想见的 bug. : 1. 没有搭配好的元件以及所见即所得的开发工具。 : 例如 ASP.NET 使用 Visio Studio 或是新的 Web Developer, : 左边有帮你写好的一些工具,像是日历之类的东西,一拖过去就好了。 : JSP 在这方面也是输给新的 ASP.NET 就 ASP.Net 的新观念来看, 我觉得他们有点想打破 server-client 间的藩篱 (虽然还是透过 page reloading / form, 而非其他帅气的技术啦 XD) 在观念上, 我会觉得这些套件没太多了不起的, 至少万变不离其宗, 而且自己写出这些东西 (喔,或写成套件, 如 form-gen) 也不是太困难, 要修改更是容易. 别忘了我们有物件导向技术... 什麽, 大家都有啊 XD : 2. 物件化。这或许与 PHP 一直想要支援物件导向有关。 : 我使用 ASP.NET 编辑,假设要连线资料库,只要拖一个连线 SQL 的物件上去。 : 在原始码看到的只是一个标签。 : 这有甚麽好处? 假设今天连线资料库的这个地方有问题,我不必修改原始码, : 只要该语言的发展人员放上更新就可以解决问题,而已经设计好的网页都不用动到。 : 但是今天 PHP 是把连线资料库这些动作写在程式里面,如果今天函式因为安全性 : 修改,那网站维护人员可能就要头大了。 : 如果 PHP 支援物件导向,而且开放社群自行撰写物件,我们以後如果要写程式 : 也只是引入几个物件,把参数打好。这样一来不只可以解决这个问题,也可以提供 : 比 ASP.NET 更多的类别使用。 当然可以. try PEAR::DB 我在 src code 所使用的, 也只有 $mydb =& new DB ; 而已. 如果你想把资料放在自己的设定档里, 那麽也可以如此产生 DSN 如果你会动态改变资料库帐号, 甚至可以 extend 你自己的 DB class. : 3. 语言的规格化。 : 有的人跟我说, ASP.NET 可以提供验证甚麽什麽的,发展起来比较安全, : 架构也比较大。当然我个人非常不以为然,但是这或许也是 PHP 的一个缺点。 : 怎麽说呢? 应该说是 PHP 这个语言本身太自由了,所以今天你可能写出来的程式 : 可以跑,但是并不安全,而学习 PHP 的使用者也并没有被教导要如何才能写出安 : 全的网站。 验证 ? 在 server side 重新检查使用者的输入资料, 应该是安全性的第一步吧. php 也能透过 addslashes / htmlspecialchar 函数来做到既有, 已知的替换 你也能使用 POSIX or Perl regular expression replace 来做到其他事 : 我觉得这主要是在推广的问题而不是语言本身的问题。 : 在这方面, ASP.NET 和 JSP 就比 PHP 好。 : 在语言方面,就提供了很多很多大企业用的功能。 : 例如表单验证,伺服器资料快取之类的功能。 Server side cache ? 我以为这是 coder 的责任 XD 你应该要知道你需要快取哪些资料, 或是为使用者先抓哪些资料进来, 或者对静态页面, 直接从 apache 做到 cache. 就我的感觉, ASP.Net 对 PHP 最大的优势在於程式码的重复利用率较高. 并且整个 .Net Framework 也提供了许多高效能的资料结构型态, 或甚至某些运算的演算法. 这使得程式码执行效能上, ASP.Net 可以高过PHP 另外, 由於 ASP.Net 使用 code-behind 的概念, 我可以直接引入方案 (Workspace) 中的其他元件, 如此能够帮助横跨 server-ap, service, web-app 之间程式的开发. 对 PHP 想做到这样的事情, 难度可就高许多了. 即使能做出这样的 "功能" (透过 socket / php-executables), 效能也会是种巨大的问题. 并且当专案长的够大时, 缺少一些较严谨的特性如型别检查, 宣告, 以及目前仍未有完整 开发/文件 的 app schema generator (like javadoc) 也会造成某种程度的阻碍. Visual SourceSafe ? 这什麽东西啊, cvs / svn 都是更开放的协定. -- 鬼压床怎麽办 骑上去啊 --



※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.112.121.97







like.gif 您可能会有兴趣的文章
icon.png[问题/行为] 猫晚上进房间会不会有憋尿问题
icon.pngRe: [闲聊] 选了错误的女孩成为魔法少女 XDDDDDDDDDD
icon.png[正妹] 瑞典 一张
icon.png[心得] EMS高领长版毛衣.墨小楼MC1002
icon.png[分享] 丹龙隔热纸GE55+33+22
icon.png[问题] 清洗洗衣机
icon.png[寻物] 窗台下的空间
icon.png[闲聊] 双极の女神1 木魔爵
icon.png[售车] 新竹 1997 march 1297cc 白色 四门
icon.png[讨论] 能从照片感受到摄影者心情吗
icon.png[狂贺] 贺贺贺贺 贺!岛村卯月!总选举NO.1
icon.png[难过] 羡慕白皮肤的女生
icon.png阅读文章
icon.png[黑特]
icon.png[问题] SBK S1安装於安全帽位置
icon.png[分享] 旧woo100绝版开箱!!
icon.pngRe: [无言] 关於小包卫生纸
icon.png[开箱] E5-2683V3 RX480Strix 快睿C1 简单测试
icon.png[心得] 苍の海贼龙 地狱 执行者16PT
icon.png[售车] 1999年Virage iO 1.8EXi
icon.png[心得] 挑战33 LV10 狮子座pt solo
icon.png[闲聊] 手把手教你不被桶之新手主购教学
icon.png[分享] Civic Type R 量产版官方照无预警流出
icon.png[售车] Golf 4 2.0 银色 自排
icon.png[出售] Graco提篮汽座(有底座)2000元诚可议
icon.png[问题] 请问补牙材质掉了还能再补吗?(台中半年内
icon.png[问题] 44th 单曲 生写竟然都给重复的啊啊!
icon.png[心得] 华南红卡/icash 核卡
icon.png[问题] 拔牙矫正这样正常吗
icon.png[赠送] 老莫高业 初业 102年版
icon.png[情报] 三大行动支付 本季掀战火
icon.png[宝宝] 博客来Amos水蜡笔5/1特价五折
icon.pngRe: [心得] 新鲜人一些面试分享
icon.png[心得] 苍の海贼龙 地狱 麒麟25PT
icon.pngRe: [闲聊] (君の名は。雷慎入) 君名二创漫画翻译
icon.pngRe: [闲聊] OGN中场影片:失踪人口局 (英文字幕)
icon.png[问题] 台湾大哥大4G讯号差
icon.png[出售] [全国]全新千寻侘草LED灯, 水草

请输入看板名称,例如:Boy-Girl站内搜寻

TOP