web前端開發和web後台開發兩者中PHP分別處於什麼位置? 微博系統的後台開發需要了解什麼? 整個微博體系架構都是怎樣的?
作為一個在讀大學生,希望以後做web的後台開發,要怎麼走這條路?
前端開發里,PHP主要用來生成前端可用的數據格式,比如HTML/XML/JSON
後台開發里,PHP主要用來做設計模式、邏輯處理、資料庫訪問、其它應用程序介面調用及處理返回數據等操作。但是不得不說的是,海量級別的後台開發,一般不用PHP,而是用C/C++做底層開發,再以CGI或是其它方式調用。PHP只是個中間層,或者說是「前台」層。說到底,後台開發玩的都不是這些語言細節,而是演算法、資料庫、設計模式、系統底層。這些基礎更重要。
至於語言,立志學後台的話我建議還是用PYTHON/C/C++好點,少很多限制,對系統的訪問能力也強很多。而PHP更多只是用來做些網頁內容的處理,內容之外的東西比如多媒體、分散式之類的用它就比較慘了。
至於說微博的體系架構,其實最好獨立一個問題,太范了,大致User Timeline設計邏輯上有分PULL和PUSH兩種:- PULL: 輪巡用戶的好友列表獲取每個的Timeline組合為一個;- PUSH:每當用戶有新廣播或添加好友時,把這個用戶的消息推送給所有好友
別的地方的架構就更多了,尤其涉及到分層、具體業務、性能、分散式等等問題問的問題邏輯性有點問題或者說對編程缺乏了解。一般來講前端開發包括但不限於HTML CSS JS(和JS庫類)和FLASH,後台開發語言包括但不限於PHP C# Java Python,還有存儲信息的資料庫包括但不限於MySQL Microsoft SQL Oracle
PHP是一種開發網站的腳本編程語言,所以如果是以PHP為開發語言的網站不管是前台和後台都佔有重要的位置。
微博只是一個web產品,任何web產品基本架構都是 前台表現層 後台腳本 和資料庫。
如果對開發網站有興趣,職業方向有三個 前台表現層:交互設計師,後台腳本:編程工程師 資料庫:DBA
最後一點 就是你要選擇一門編程語言web 技術其實沒什麼秘密可言大家分享得越多技術差距就會逐步縮小。
Web前端的工作除了與交互設計師、視覺設計師協作,根據設計圖用HTML和CSS完成頁面製作。同時,在此基礎之上,對完成的頁面進行維護和對網站前端性能做相應的優化。
後台程序員更多是與數據打交道,這點無論是PHP、http://ASP.Net、JSP等語言,都是實現數據的處理的。在這個基礎上,才有了針對高並發、可擴展的系統架構。至於微博系統,就實現上其實和其它的系統沒有本質性的。2011PHPChina技術高峰論壇上,騰訊的潘少寧帥哥講了講騰訊微博的架構,你可以關注一下。
我覺得現階段還是學好js,以後js會有較大發展
推薦閱讀: