node和php區塊鏈
Ⅰ node.js與php相比有哪些優缺點
您好,寫了兩年多的PHP,當時使用的框架是laravel
後來我放棄了PHP,轉戰Nodejs,然後就是各種爽,先不說node性能遠高於PHP,node的各種npm包和模塊遠比composer多和方便,模塊化的開發和維護輕鬆了很多;
PHP只是為web伺服器編程而生,而nodejs可以做的事情可遠不止這點,有至少最明顯的時又很多開發工具和cli是用node寫的,grunt,gulp,yomen,bower,cordova等等一大堆,有人還把nodejs應用到了硬體項目中,開發桌面軟體?咋們有node-webkit還是跨平台的。
原來Node.js是一門語言,PHP是世界上最好的語言。
++這么多人罵了這么多年也沒被取代,
VB也沒有我們想像的那樣消亡,反而每次都在前十,
不用擔心PHP會死,PHP不死也不會影響NodeJS火爆。
Ⅱ php 和nodejs 的各自優勢有哪些,如果無基礎開始,要學那個好
作者:MiseryLee
鏈接:http://www.hu.com/question/35117771/answer/61377174
來源:知乎
著作權歸作者所有,轉載請聯系作者獲得授權。
PHP 獨特的語法混合了 C、Java、Perl 以及 PHP 自創新的語法。
以上這句話摘於網路。PHP的語法是公認的比較獨特的語法了,集百家之長,再加以創新。學習過OO的同學們一定會對此倍感親切。不過對於我並不長的PHP編碼經歷,讓我無法忍受的一點就是PHP的變數名必須在前面加一個$符號了。
至於Nodejs,Node本身就是Javascript語言,對於Web前端腳本開發者來說,學習Node簡直是如魚得水。Javascript作為腳本語言,在代碼的編寫上有極大的自由(畫外音:PHP也是腳本語言好么!),但是Javascript的非同步編碼風格確實是讓以學習同步編碼風格的語言入門的同學Hold不住。
在語法方面,我更傾向於Nodejs(畢竟人家是寫Javascript出身的233333)。PHP對於臣妾來說寫的實在太累啦~
2.效率
這一點其實沒有必要比較了,
Web語言效率問題,PHP還是Nodejs
看一下這里一樓的大大說的。
Nodejs憑借高效的V8引擎和它非阻塞非同步I/O的特性,在其執行效率上遠遠超過了其他的腳本語言。
Node.js比PHP快14倍!
這里這位大大在效率方面分析的更加到位。當然我並不是在追捧Nodejs,就像這位大大說的
這不是簡單語言細節之爭,而是語言框架之爭。將Node.JS這種非同步機制從Javasctipt搬移到其他語言PHP .NET Java其實都會取得比原來堵塞方式有數十倍提高。
3.使用場景
毋庸置疑,這兩種語言都是為Web開發而生。PHP多樣化的內置方法和庫,讓Web開發變得極其的方便和高效,成熟的語言框架也給開發者提供了足夠高的健壯性和穩定性。而Nodejs以其強大的特性吸引了大量的開發者為其貢獻擴展庫,Nodejs項目雖然還很年輕,但是已經聚集了大量的開發資源。
4.小結
畢竟對PHP了解的較少,所以以上言論中難免有點偏向於Nodejs,但是PHP發展多年屹立不倒肯定是有它的道理的,網路還用的PHP呢。
至於Nodejs,作為一門新興(並不新啊,Javascript可比PHP老多了)語言來講,它獨特的設計特性足夠吸引開發者向它看了。
最終回到題主的問題,不知道題主說的沒有基礎是指完全沒有編程基礎還是沒有伺服器開發基礎?
如果完全沒有編程基礎的話,我建議題主還是先去學習C語言,先入了這一行,再選工具吧~
如果有編程基礎的話,如果之前是學習OO的,建議先從PHP入手,畢竟更容易過渡,並且網路上對於PHP的資料要比Nodejs多得多。
如果之前學習過Javascript,我還是建議先從PHP入手,就像上面說的,先入了這一行,再選工具。伺服器開發也算一個小行了,如果對伺服器開發不了解,對網路機制不了解的話,先從PHP著手,把這些相關知識補充起來。
如果實在是被Nodejs的優勢吸引住了的話,我建議先好好學習Javascript高級編程,深入理解一下異原型鏈和回調機制,這會對入手Nodejs有極大的幫助。
如對您有幫助,望採納,謝謝
Ⅲ node.js php差別大嗎
1.PHP的優勢在於:老牌開發語言,資料又多又全,使用PHP的企業也比較多,無論是自學還是找人問都很方便;常用的幾個PHP框架文檔也好的不行,包括wordpress也是用的PHP;學會之後,找個免費的虛擬主機,做個一個個人站,簡直不要太方便。
2.Nodejs的優勢在於:社區非常活躍,語法就是JS,最常用的後端框架express非常簡單好用,文檔清晰有中文翻譯。同時Nodejs可以做很多前端工程化的工具,非同步也是一個很優秀的特點(仁者見仁吧)
3.總的來說:
如果公司在應用某一門後端語言,不妨就學這一門,遇到不懂的地方,還可以在身邊找到同事咨詢。從自己長遠的職業角度考慮,建議學Nodejs,畢竟除了用來做後端,還能提高日常開發效率。
Ⅳ Node.js和PHP哪個好
我不覺得node.js有什麼不適合新手的,畢竟你從0開始學PHP一樣要對網頁編程有個學習的過程,所以從上手程度來說兩者幾乎等價。一樣要了解MVC,資料庫連接等等。
直接比較一下上手時的優劣,你可以自己衡量一下
Node.js
優點:js語法,對會用js的人來說看懂代碼不難。
簡化了配置伺服器的過程,自帶一個web伺服器,不像php要安裝配置apache
缺點:相比PHP學習資料較少
PHP
優點:學習資料多,框架多,工具包多
缺點:對於語法有個熟悉過程
我覺得這應該是你搭的第一個網站,語言的重要性其實不那麼大,優缺點可能在你學習的過程中也不會體現,而且都是一些外在外因。當然你也可以這么考慮,現在搞PHP的一抓一大把,而且主要以輕量級公司用的居多。node被很多大公司所推崇,越早接觸機會機會越多。
Ⅳ node.js比php會不會取代php
不會的。
1、Swoole從底層用C實現了HTTP/WebSocket/MQTT(物聯網)等協議,因為Swoole服務運行在PHP-CLI下,所以不同於PHP-FPM/MOD_PHP,Swoole服務是內存常駐的,也就是服務啟動時PHP程序定義的函數和類以及量(如常量,全局變數,函數和類的靜態變數)都是內存常駐的.
2、PHP只是為web伺服器編程而生,而nodejs可以做的事情可遠不止這點,有至少最明顯的時又很多開發工具和cli是用node寫的,grunt,gulp,yomen,bower,cordova等等一大堆,有人還把nodejs應用到了硬體項目中。
3、國內的PHP框架,有必要同時適配PHP-FPM和Swoole,也就是支持運行在PHP-FPM或Swoole下,因為Swoole不會像PHP-FPM在每次請求後都釋放資源,所以大型PHP框架跑在Swoole下能大幅提升性能,就算是用同步的編程方式.
Ⅵ 微信小程序後台 node.js 和php哪個好
看你擅長哪個。
只要你用得好,都可以。
Ⅶ 寫後端 Python,nodejs和php哪個更好一些
Node.js相優於Python的地方:快:這個快有兩方面,第一是V8引擎快,第二是非同步執行,Node.js功能上是一個基於V8引擎的非同步網路和IOLibrary,和Python的Twisted很像,不同的是Node.js的eventloop是很底層的深入在語言中的,可以想像成整個文件在執行的時候就在一個很大的eventloop里;npm:npm可以說是用起來最順手的packagemanagement了,npm作為Node.js的官方packagemanagement,匯集了整個社區最集中的資源;不像Python經歷過easy_install和pip,還有2to3的問題;Windows支持:Node.js有微軟的加持,Windows基本被視為一等公民來支持,libuv已經可以很好的做到統一跨平台的API;而Python雖然也對Windows有官方的支持,但是總感覺是二等公民,時不時出些問題。Python優於Node.js的地方:語言:就單純從語言的角度來說,Python寫起來要比Javascript舒服很多;Javascript設計本身有許多缺陷,畢竟當時設計的時候只是作為在瀏覽器中做一些簡單任務的script,所以代碼一旦龐大,維護還是有困難(不過Node.js的mole很大的改善了這個問題),不過用Coffeescript可以很大的改善Javascript,幾乎可以和Python等同;成熟:成熟包括語言本身已經成熟,還有Framework和ecosystem也很龐大。Node.js的絕大多數framework都很新,有的API一直在變,有的感覺已經不在維護,總之沒有一個像Django那種百足之蟲感覺的framework。Python的主流ORMSQLalchemy也很成熟。Python和Node.js很難分高下的地方:非同步Style:Node.js的非同步Style是CPS,也就是層層callback,基於event,和瀏覽器中的Javascript很像。CPS好處是讓熟悉瀏覽器Javascript的人能很快上手,學習難度也不大。缺點是邏輯一復雜,就變得很難維護,基本上需要通過async.js這種library,或者用promise。Python的非同步除了和Node.js很像的Twisted之外,也有基於coroutine的gevent,coroutine讓非同步代碼維護起來更容易,不過學習曲線陡;應用場景:如果是一個CRUD的app,那麼想都不想直接是Python,Node.js本身不擅長CRUD的app(絕大多數Node.js都是直接裸在外面的,而不是有一個Nginx在前面,否則websocket就不能用了,不過新版nginx開始支持websocket),代碼又不好維護,而Python的WSGI很適合,成熟的stack也有很多。如果更偏向於real-time,比如一個chatroom,那麼Node.js實現更容易。這兩個應用場景還是有差別的。
Ⅷ node.js和php哪個簡單
單論做網站,應該是php簡單。。但node.js也不算太難,而且能做到的事情,比php多很多。
php是個過時的技術,和ASP是同代的產物(asp.net的前身)那時候名叫C- -,後來改名才叫PHP的。就和windowsXP一樣。技術上沒有任何優勢。但市場還在,盡管早晚是要被淘汰的,但由於學習門檻低,又確實有市場需求。所以淘汰速度並不快
JAVASCRIPT是個90後,按說也算是比較老了,但NODE卻是門新興技術。。由於非阻塞非同步io實現,導致node的io效率非常高。。。實際測試,node的效率,大約比php高出70-100倍左右。。而且node除了做網站之外,還可以搞嵌入式,樹莓派,甚至網游伺服器。。
簡單概括,如果只是做網站,php簡單些。。。但個人還是推薦node。。一個是夕陽技術,一個是朝陽技術。。。其實很容易判斷
不過把范圍再擴大一些的話,我覺得兩個的學習價值都不高。因為都是動態語言,在編寫中型以上項目時,都會不可避免的受限於動態語言天生的劣根性,導致各種問題。學習性價比最高的應該是.NET CORE。學習比node難不了太多,而性能卻是頂級的。或者Java,崗位多需求大,屬於最四平八穩的選擇。如果要長期做程序,轉向靜態語言是遲早的事兒。無論Node,還是php,都只是過渡之下的產物,而不是最終選擇。
Ⅸ node.js比php更好嗎會不會取代php
轉自segmentfault:
請允許我說一句話:Why JavaScript?
設計隨意,坑要多少有多少,修修補補多年照樣還是亂七八糟,語言本身沒有版本管理,寫下的代碼多年之後的環境就跑不了了的語言,本身有什麼優越可言?
其實php被取代掉,不是Javascript的功勞,而是Node非同步化模型的貢獻。是新的程序設計方法取代舊的程序設計方法,而不是新的語言取代舊的語言。思想是主力軍,語言只是副產品。
請允許我說一句話:Node的優越並不在於JS,而是在於Node本身非同步架構的設計。JS只不過是「前後端一體化」這種宣傳上的噱頭。在
JavaScript和Node的關系中,JS吃了瀏覽器客戶端語言難以更新、難以代換,這個本來是技術落後點的甜頭,也藉助了Node與
Javascript混為一談的現實來給自己鍍了鍍金。這甚至有點寄生生態和「劣幣驅逐良幣」的意味在里邊。
要我看Node.js早晚被其他語言作為核心的Node.***自己超越掉。因為JS對Node,甚至對整個非同步化編程模型來說,在很大程度上真的是可有可無。
學里子,不要學樣子。
看透思想,不要迷惑於表象!