Web程式設計想要徹底搞懂,這幾點需清楚!
有人說,剛開始學web程式設計,不知道如何開始,重點不知道怎麼做?今天,我們就從新手的角度聊聊web程式設計。首先Web程式設計想要徹底搞懂,這幾點需清楚!
1.理解瀏覽器/伺服器結構(B/S)
B/S是從90年代的客戶端/伺服器端發展而來,共同點都是由一個(或一組)伺服器來服務多個客戶端。
差別在於:首先,C/S結構的客戶端可能是由不同語言編寫的,B/S結構中瀏覽器成為了一個通用的客戶端,程式以Web的方式呈現,不需要安裝,伺服器端的升級就意味著所有客戶端的升級,這和C/S相比是個翻天覆地的變化。
其次B/S的訪問協議也標準化為HTTP(s) ,而不是原來各種各樣的私有協議。最後B/S結構中的伺服器面向全球使用者訪問,而不像C/S那樣僅僅是區域網,所以壓力更大,挑戰更大。
2.Web頁面是怎麼組成的?
簡單來說就是HTML+CSS+Javascript ,我們看到的Web介面就是由這三者組成。HTML負責結構,CSS負責展現,而Javascript負責行為。
我們說的前端開發也主要是做這一塊,對於前端工程師,需要能理解DOM模型,以及如何透過javascript(例如JQuery等框架)來操作DOM模型。
3.瀏覽器和伺服器是怎麼打交道的?
當然是HTTP!HTTP說穿了就是瀏覽器和伺服器聊天是的一種約定,這個約定確保雙方互相理解。
其實我們最常用,也是最重要的也就那麼幾點:
(1)GET和POST。GET從伺服器端獲取資料,POST向伺服器端傳送資料(由此引出圖片上傳問題)
(2)HTTP是個沒有狀態的協議,需要透過額外的機制來維持狀態(例如登入狀態),常用的方法就是cookie。
(3)理解HTTP狀態碼
(4)理解同步vs非同步(由此引出AJAX,以及JQuery等框架)
4.URL和 程式碼的對映理解url和程式碼之間的關聯
這樣的規則是在哪裡定義的? 用程式碼、註解還是配置檔案?
後端的業務程式碼該如何組織? 相信現在不會有人把業務邏輯都寫到Servlet當中了, 所以需要很多MVC 框架像Struts , SpringMVC 來組織程式碼,讓系統清晰易懂。
5.資料的驗證、轉換和繫結
如何保證瀏覽器發過來的資料是符合要求的?例如不能為空、不超過8個字元、兩個密碼必須相等.... ,出錯了得給出錯誤提示。
瀏覽器發過來的資料都是簡單的文字, 但是後臺程式卻有著豐富的資料型別,什麼String, Date ,Integer等等。 所以需要把文字變成指定語言的型別。
型別轉換以後, 後端的業務程式碼怎麼才能有效的使用呢?高階一點的可以把頁面發來的資料直接繫結到物件的屬性上, 並且支援陣列,巢狀等複雜的結構。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69902581/viewspace-2641840/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 搞懂了這幾點,你就學會了Web程式設計Web程式設計
- 徹底搞懂徹底搞懂事件驅動模型 - Reactor事件模型React
- 徹底搞懂 RxJavaRxJava
- 這一次,徹底搞懂 Go CondGo
- 徹底搞懂https原理HTTP
- 徹底搞懂JavaScript作用域JavaScript
- 徹底搞懂Bean載入Bean
- 徹底搞懂 Git-RebaseGit
- 不就是分散式事務,這下徹底清楚了?分散式
- 深入JavaScript系列(四):徹底搞懂thisJavaScript
- 徹底搞懂 Channel 實現原理
- 徹底搞懂 RxJava — 基礎篇RxJava
- 徹底搞懂 RxJava — 中級篇RxJava
- 徹底搞懂 RxJava — 高階篇RxJava
- 5個點徹底搞清楚SpringBoot註解Spring Boot
- 徹底搞懂JavaScript中的繼承JavaScript繼承
- 徹底搞懂Python中的類Python
- 看完讓你徹底搞懂Websocket原理Web
- 兩萬字長文,徹底搞懂Kafka!Kafka
- 徹底搞懂JavaScript原型和原型鏈JavaScript原型
- 如何成為合格的web前端程式設計師?只要學會這幾點!Web前端程式設計師
- 徹底搞懂小程式登入流程-附小程式和服務端程式碼服務端
- Java的程式設計思想太抽象?3小時帶你徹底搞懂!(附思維導圖)Java程式設計抽象
- 徹底搞懂原型、原型鏈和繼承原型繼承
- 從原理到實戰,徹底搞懂NginxNginx
- Flutter(五)之徹底搞懂Dart非同步FlutterDart非同步
- 徹底搞懂瀏覽器Event-loop瀏覽器OOP
- 徹底搞懂Scrapy的中介軟體(三)
- 徹底搞懂Scrapy的中介軟體(二)
- 徹底搞懂Scrapy的中介軟體(一)
- 徹底搞懂HTTPS的加密機制HTTP加密
- 徹底搞懂Object和Function的關係ObjectFunction
- 這項技術:華為、BAT要力捧!程式設計師:我徹底慌了... BAT程式設計師
- 這篇文章讓你徹底搞懂ES6中的Class(全面解析)
- 實踐這一次,徹底搞懂瀏覽器快取機制瀏覽器快取
- 一文徹底搞懂Raft演算法,看這篇就夠了!!!Raft演算法
- 一文徹底搞懂ZAB演算法,看這篇就夠了!!!演算法
- 兩張圖徹底搞懂MyBatis的Mapper原理!MyBatisAPP