首頁 > 頭條 > 主體

2017年php發展趨勢及PHP程式設計師發展方向的十點建議

PHPz
發布: 2019-12-05 15:49:32
原創
10437 人瀏覽過

今天我們再來談談下2017年的php發展趨勢,以及身為一個php程式設計師的職涯發展方向,並給了十點建議,做一個與時俱進的php程式設計師!

開課通知:php中文網《第10期PHP線上訓練班》正在報名中!

PHP 從誕生到現在已經有20多年歷史,從Web時代興起到行動網路退潮,網路領域各種程式語言和科技層出不窮, Node.js 、 GO 、 Python 不斷在挑戰PHP 的地位。這些技巧的推動者非常熱衷於唱衰 PHP , PHP 語言的未來在哪裡? PHP 程式設計師當如何因應未來的變革?

2017年php發展趨勢及PHP程式設計師發展方向的十點建議

作為老牌的Web後端程式語言,PHP 在全球市場佔有率非常高,僅次於Java ,從各個招募網站的數據上來看PHP 開發的職位非常多,薪資水準也非常不錯。實際在中小企業、網路創業公司PHP的市場地位是高於 Java 的。 Java 在超大型企業、傳統軟體產業、金融領域優勢更大。目前來看 Node.js、 GO 、 Python 、 Ruby 等語言還難以企及PHP和Java。

PHP 語言之所以能有今天的地位,得益於PHP語言設計者一直遵從實用主義,將科技的複雜性隱藏在底層。 PHP 語言入門簡單,容易掌握,程式健全性好,不容易出現像 Java 、 C++ 等其他語言那樣複雜的問題,如記憶體洩漏和 Crash ,追蹤偵錯相對輕鬆很多。 PHP 官方提供的標準函式庫非常強大,各種功能函數都能在官方的標準函式庫中找到,包括MySQL、Memcache、Redis、GD圖形函式庫、CURL、XML、JSON等等,免除了開發者到處找函式庫的煩惱。 PHP 的文檔非常棒,每個函數都有詳細的說明和使用範例。第三方類別庫和工具、程式碼、專案也很豐富。開發者可以快速、有效率地使用 PHP 編寫開發各類軟體。到目前為止市面上仍然沒有出現比 PHP 更簡單易用的程式語言。所以 PHP 的前景還是很廣闊的,與其糾結於程式語言的選擇,不如好好地深入學習使用 PHP 。

身為一個資深的 PHP 開發者,在技術上給各位 PHP 程式十點未來的建議,希望對大家有幫助。

1. Composer

第一點就要提 Composer ,自從 Composer 出現後,PHP 的依賴管理可以變得非常簡單。程式內依賴一些類別庫和框架,直接使用 Composer 引入即可,透過使用 <span style="font-size: 16px;">composer update</span> 安裝所依賴的套件。解決了過去載入外部庫的各種難題。 Composer 也有國內鏡像,速度非常快。現在絕大部分PHP開源的專案都提供了 Composer 的支持,建議大家在專案中使用 Composer 來解決 PHP 程式碼套件管理的問題,不要再使用下載原始碼、手工 include 的原始方法。

2. PHP7

PHP7 版本對Zend 引擎做了大量修改,大幅提升了PHP 語言的效能,使用PHP7 可以讓你的程式性能瞬間翻倍。即使是 WordPress 這樣重量級的軟體運行在 PHP7 都能有上千 QPS ,相當於一台伺服器每天就能處理 8,000 萬次請求。使用 PHP7 ,做好 MySQL 最佳化,使用 Memcache 和 Redis 進行加速,這套技術架構完全可以應付相當大規模的系統。除了某些億級用戶的平台之外,一般規模的系統完全沒有壓力。 (相關推薦:php自學指南,php從入門到精通自學路徑

#3. PSR

PSR 是php-fig.org 組織制定的PHP語言開發規範,約定了許多方面的規則,如命名空間、類別名稱規範、編碼風格標準、Autoload、公共介面等。現在已經成為PHP技術社群事實上的標準了。很多知名的 PHP 框架和類別函式庫都遵守了 PSR 規範。 PHP 開發者應當學習掌握 PSR 規範,在開發程式時應盡量遵循 PSR 規範。

4. Swoole

2017 年 PHP 還侷限在做 Web 網站嗎? No ,如果你還不知道 Swoole ,趕快去了解一下吧。 Swoole 的口號是重新定義 PHP 語言,Swoole 是一個非同步並行的通訊引擎,作為 PHP 的擴充來運作。 Node.js 的非同步回呼 Swoole 有,Go語言的協程 Swoole 也有,完全顛覆了對 PHP 的認知。使用 Swoole PHP 可以實現常駐記憶體的 Server 程序,可以實現 TCP 、 UDP 非同步網路通訊的程式開發。過去PHP只能做一個 Web 網站,現在使用 Swoole 可以做 Java 、C++ 才能實現的通訊服務,例如 WebSocket 即使通訊、聊天、推播伺服器、RPC 遠端呼叫服務、網關、代理、遊戲伺服器等。如果你想用 PHP 做點 Web 系統以外的東西,Swoole 是最好的選擇。

5. Laravel

最近幾年最火熱的PHP 框架,官網號稱是為Web 藝術家設計的框架,可見這套框架有多優雅。 Laravel 提供的功能模組豐富,API 設計簡潔,表達力強。而且它的社群非常活躍,程式碼貢獻者眾多,第三方的插件非常多,生態系統相當繁榮。 Laravel 底層使用了許多 symfony2 元件,透過 composer 實現了依賴管理。如果還在糾結使用什麼PHP框架,不如選擇 Laravel 。 Laravel 提供的命令列工具基於 symfony.console 實現,功能強大,整合了各種專案管理、自動生成程式碼的功能。 (相關推薦:Laravel5.2部落格實戰影片教學#)

6. Phar

#PHP5.3 之後支援了類似Java 的jar 包,名為phar。用來將多個 PHP 檔案打包為一個檔案。這個特性使得 PHP 也可以像 Java 一樣方便地實作應用程式打包和元件化。一個應用程式可以打成一個 Phar 包,直接放到
PHP-FPM 中運作。配合 Swoole ,可以在命令列下執行 
<span style="font-size: 16px;">php server.phar</span> 一鍵啟動伺服器。 PHP 的程式碼包可以用 Phar 打包成元件,放到 Swoole 的伺服器容器中去載入執行。

7. C/C++/GO

任何技術有優點都有缺點,PHP 作為動態腳本語言,優點是開發方便效率高。缺點就是性能差。在密集運算的場景下比 C 、 C++ 相差幾十倍甚至上百倍。另外 PHP 不可以直接操作底層,需要依賴擴充函式庫來提供 API 實作。 PHP 程式設計師可以學習靜態編譯語言作為補充實作動靜互補,C/C++/Go 都是不錯的選擇。而且靜態語言的程式設計體驗與動態語言完全不同,學習過程可以讓你得到更大的提升。 (相關推薦: C++影片教學

掌握C/C++ 語言後,還可以閱讀PHP 、 Swoole 、 Nginx 、Redis 、 Linux核心等開源軟體的原始碼,了解其底層運作原理。

現在最新版本的Swoole提供了C++擴充模組的支持,封裝了Zend API,用C++操作PHP變得很簡單,可以用C++實作PHP擴充函式和類別。

8. HTML5

作為 Web 前端新世代標準,HTML5 未來前景非常廣闊,市場需求非常大。從 PC 網站、B/S 企業軟體、行動網頁、APP,這些領域都在擁抱 HTML5,掌握了 HTML5 才能在下一波網路科技大潮中存活下來。 (相關推薦: Html5影片教學

9. Vue.js

############################################# #####PHP 程式設計師除了寫後台程式之外,還有很大一部分工作在展現層,和瀏覽器前端打交道。 2017 年你還在用 jQuery 操作 DOM 實作介面渲染嗎?已經完全 out 了。現在用 Vue.js 可以非常方便地實作資料和 DOM 元素的綁定。透過 Ajax 請求後台介面返回資料後,更新前端資料自動實現介面渲染。 2017 年再不學 Vue 就太晚了。 ######

如果你不光要寫 Web 程序,同時也希望兼顧 Android 、IOS 、PC 用戶端等平台,React Native 是個不錯的選擇。

10. 深度學習/人工智慧

網路的未來屬於人工智慧,如果你還不了解機器學習、深度學習、人工智能這些概念,那你需要盡快學習了解一下。現在網路巨頭們都在佈局人工智慧,包括 Google 、 Facebook 、微軟、亞馬遜 和國內的百度。雖然現在還處於科學研究的階段,但未來網路的各個領域都會應用到人工智慧,包括自動駕駛、大數據分析、網路遊戲、圖像辨識、語言處理等。當然現在普通的工程師可能還無法參與到人工智慧產品中,但至少應該要理解深度學習/人工智慧的基本概念和原理。

【相關推薦】

#1. 學習php有前途嗎? php未來發展前景如何?

2. 2017年最該學習的程式語言是php?

3. PHP「金錢景」如何?看看內行人怎麼說?

4. 我的php學習之路,一位php高手的學習感悟

5. 學好php能做什麼?哪些人群適合學習php?

#
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!