PHP和Node.js哪個更爽?
看到你這個問題像吃了屎一樣難受
我想題主身邊應該有個美女
問他 你有沒有什麼辦法今天讓知乎的人都吵起來,如果吵起來了我就跟你走。看來你找到了。滑稽node做後端坑太多,謹慎,一個長度超過500的數組循環處理都能讓服務掛掉,各種坑,語言較強的問題處理能力,後端php還是比node好。
沒意義的話題,能讓自己賺到錢的語言,就是爽的。
node前端開發者寫起來爽些。
這問題好比在問戰士:魔法加100的法杖好?還是物理攻擊加50的菜刀好。。。
題主沒說你自身需求,如果題主只考慮一兩個語言如果沒有基礎,那php要好些,php相對js好學點,如果會寫前端,那就用node,畢竟會js了,如果是個人寫著玩,那也是node,node可以寫頁面,客戶端,app,
PHP沒用過,但是就JS來說:沒有比JS更糟糕的語言了:
你學會了JS,你就學會了一系列糟糕的東西然後你就需要一些補丁,官方的,微軟的,社區的各種各樣的工具來幫你提供一些大部分現代需要都內置的功能。
與其說你學會了JS,還不如說你學會一大堆工具,解決了一些其他語言中不存在的問題。php不適合做大項目,代碼管理是一個問題。
nodejs則是一個玩具,還不如php呢。
這兩門語言天生就存在缺陷
誕生初期都是倉促上馬的產物。
不過畢竟php的定位很明確,就是為了做web的。
所以問題也很明顯。php也就I能寫簡單的網頁,複雜點功能寫不了。
nodejs的問題更大,因為javasacript本身就是一種問題極多的東西。
這兩種東西真的還不如java呢,畢竟java也算是一門嚴肅的語言。
目前nodejs在我看來,唯一的用途就是方便對js代碼測試。
可以使用後端的工具來測試前端的代碼。
根本不是適合伺服器端開發。
使用nodejs開發web服務,就是一個笑話
perl&>php&>nodejs&>shell, 用這四種東西開發伺服器,都是笑話,可笑程度依次遞增。
perl起初也是領域特定語言,屬於awk和sed功能不足的產物,主要處理文本資料庫。
php也是領域特定語言,早期和html混在一起的寫法,可以參加混亂代碼大賽。
java這東西不是嵌入語言,但是也是為嵌入式系統開發的。起初性能慢的要死,後來被商業公司看中,拿出來糊弄錢的東西,竟然流行起來了,優化了10000遍,好不容易趕上了C的1/100的性能,就吹噓性能出眾。
有人說了,語言不重要巴拉巴拉,不重要你用dos的bat來寫幾個重量級程序啊。
Node + MongoDB,
php+mysql,
java+oracle,
python+pg都是標配。
另外,吐槽一下mongodb簡直就是一個垃圾桶,扔進去就不知道去哪裡找了。這玩意,哎呀,垃圾桶。本來10件東西,扔進去之後佔用100件垃圾的空間。簡直太符合垃圾桶這個比喻了
mysql也是一個破爛。
從這兩個標配的資料庫也能看出來配合他們的語言如何。
還要吐槽下前端框架angular,在前端搞mvc框架,笑死人。記得原來有一個extjs的,都做到了一個效果,就是把客戶端卡死。連企業應用都不敢這麼搞,你一個互聯網應用竟然敢用這玩意?
說完了缺點,再說說優點。
php的優點是上手快。node的優點是做高並發的中間層。不過話說回來,我感覺用lua做可能更合適。直接在nginx裡面用lua寫就是了,不強過node?
我認為openresty要比node更適合這個場景。
人云亦云罷了,重要的是要有自己的思考,自己寫點程序去跑一個試試,誰說計算機這個行業沒有民科的啊?我看也不少
這種東西用來做一個頁面,只是用來給人看的那種也就算了,做服務提供介面那就是找死
我就是從PHP轉node的,論開發環境目前肯定node爽!
node開發環境優於PHP的地方:1.composer很多phper都不用,包的數量也是堪憂。npm活躍度高太多了,只有達到一定量級才能真正解放生產力。而npm做到了,反觀composer自認差十萬八千里。2.這就涉及到代碼提示了,很多IDE對PHP都不是很友好。雖然有些集成好的,但都是重型開發框架,就算要單步調試,也要配置很多選項。node不一樣,代碼追蹤,補全,報錯,單步調試都簡單出了一個量級。
3.node的開發環境撘起來不要太簡單,下個node安裝一下就完事。PHP則要安裝ng或A
pache還要配置等一堆屁事。而且安裝PHP還要關心需要哪些擴展。如果純自己搭建node1分鐘,PHP半小時。PHP開發環境優於node的地方:
node,其實文件改變了不會立刻生效,用插件監聽到文件變化,再重新編譯一下。不用插件則手動重新編譯。而PHP文件一改變,刷新頁面立刻生效。總結:你覺得呢?node不是用來寫編譯器的嗎?斜眼
寫es6,ts的轉換器,webpack各種花式打包,至於其它方面嘛,hehehehe
想寫一個自己玩的伺服器?那都可以.想開發個大型的應用後端,還是乖乖上java吧,php不適合大型的開發,node做個處理高並發的中間層
推薦閱讀:
※Node.js新手在哪兒找小項目練手?
※前端小白迷茫,求指導?
※Node.js被高估了嗎?
※Process.nextTick 和 setImmediate 的區別?
※如何評價 Node.js 的koa框架?