最近看了一個知乎上的一個話題
「在工作中,為什麼Java 程式設計師常常瞧不起PHP 程式設計師?」
個人從事多年,用過的後端語言ASP、ASP.NET、Java、PHP、Node.js、Python,如果你必須讓我說哪種語言好,我會說「凡是宏哥說的都是對的,凡是宏哥提倡的都要堅持。只有真正的理解了宏哥思想才可以洞穿一切,走出空谷。」話不閒聊,咱們先說說我對Java 的看法。
Java 在我看來好比重型武器,而且武器種類如王牌特工裡,那位老特工給新特工展示的武器庫一樣豐富,就 Github 上的開源項目來說,遠不止這些。
那麼背後說明了什麼?讓我們引申出幾個問題。
為什麼 Java 這麼重?為什麼 Java 思想開闊?
其實一開始Java 就是以大型的伺服器得解決方案而存在的,所以面對的都是企業級比較重型的需求(典型的銀行項目、房產項目),對比一下淘寶和ECShop,雖然最底層需求都是商城類整站,但是後者明顯需求單薄很多。那麼也可以說 Java 是變相解決了更多的問題,自然可以說 Java 思想就開闊了。
Java 在團隊協作中我的直覺感覺就是函式庫和標準。 Java 有著數不清的現實標準函式庫和標準。而且一個很多人不認為是要害的問題就是 Java 有好的 IDE,在如 Eclipse 上寫出程序,錯誤會及時爆出,運行不了基本編譯時就會報告出絕大多數錯誤。而 PHP 早年的學習基本上只是記事本,DW 等工具,而且早年的 PHP 同樣也不支持複雜的 OO 特性,從而在工程質量上 Java 就略勝一籌。
此時你要說那是早年了,現在PHP 很多OO 特性都支持,PHP 是世界上最好的語言並且沒有之一,但是從人的角度上講,從業時間長的大多數老兵還停留在早年PHP 的狀態,所以團隊和新人的水平也大多得不到整體得提升(大牛和天才畢竟是少數)。到目前為止我也沒有看過誰非要在PHP 圈推行什麼標準,推行什麼框架(Java 圈基本上天天都在喊,如果你趕上JavaEye 崛起的時刻你能更明顯得感覺到),大家都是拿全能「鷹架」在用,大家都是找快速實現需求得CMS 類程式在用。
那麼 PHP 就一無是處嗎?自然不是,如果你使用過 SSH 開發過,看看 ThinkPHP 的實作機制你會覺得只要都是 WEB 框架,要解決得問題總是有限。早年ThinkPHP 的控制器為Action 後綴命名,連作者都直言是藉用Struts,模板中的變數屬性輸出可以用.
來表示,PHP中.
字元其實是字串連接符,表示屬性的話是 ->
(PHP 很多原語都是類別C 的)。
那我們用 ThinkPHP 就可以快速解決開發中的問題了嗎?當然不能。
雖然ThinkPHP 中提供了很強的DEBUG 輸出,更有G 方法計算輸出運算時間以性能調試,但這依然不夠,試想一下我們每天要調用多少外部接口(短信發送,微信集成,地圖類等API輸出),用戶數量劇增時,又要接取多個MySQL來負載(ThinkPHP 有軟負載支援),如何一鍵輸出所有的錯誤和效能問題呢?你沒聽錯,就是一鍵,而且不管是測試還是生產環境,不管是出遊還是辦公室內,你隨時可以拿起手機診斷這一切(我是在百度中真正搜索到這種平台才敢這麼說) 。
如果你總是關注開源中國等IT 社群你一定知道有很多這樣的平台了,但很多產品,安裝上以後遇到了的第一個問題就是,不能免費,連最基本的測試都不能免費,只有最基本的功能。那有沒有免費的可以用呢?不用去申請了,因為你可以選擇使用OneAPM提供的SaaS 產品,目前,使用 Java 做業務處理後端語言的項目,已經可以和 PHP等展示端語言一起進行效能診斷了。
我們也可以對比分析國外的產品,首先在安裝過程OneAPM 已經非常自動化了,而且接入過程中,技術支援還會對所在的環境進行了一鍵遠端排查,很快就可以診斷了環境中的問題。
下面為大家介紹如何使用 OneAPM 線上診斷代碼中的各種問題
既然解決了快速性能分析,是不是就可以高枕無憂了呢?對了,問題才剛開始,解鈴還得繫鈴人,讓我們看看如何面對自己挖的坑,當然我要先介紹幾款好的武器。
此時你還在乎被其他語言鄙視嗎?如果是的話,你一定沒有仔細看本文的開頭。另外很期待下次可以與大家一同參加極客社區,分享更多極客程式設計體驗! ! !
OneAPM 是應用效能管理領域的新興領導企業,能幫助企業用戶和開發者輕鬆實現:緩慢的程式碼和 SQL 語句的即時抓取。想閱讀更多技術文章,請造訪 OneAPM 官方部落格。
以上就介紹了PHPer 為什麼會被 Javaer 鄙視? ,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。