大數據方向發(fā)展更有前景,首先5G馬上就要普及,5出現(xiàn)之后,數據量將會大大增加,大數據的需求,就會隨之增加。
net的開發(fā),感覺公司用的還是比較少,python, 很少做后端,后端有很多語言Java和p HP, python一般做一些爬蟲工作,最后的也可以,但很少使用它專門做這個。
看你做啥了,做web還是做winform做web的話,你首先要熟悉html、css、javascript,這些是做web都必須懂得,不管是用.net 、java還是php都一樣其次你要選擇開發(fā)方式,.net開發(fā)web有兩種方式,一種是webform,一種是mvc,前者是.net獨有的,目前用的比較多;后者主要是為了方便從java平臺轉過來的同志,是向java借鑒了部分思想再次是數據庫相關知識,最起碼會簡單的數據庫操作,會寫sql語句(或者會Linq,這個也是.net獨有的,為了方便不會使用sql的人)
最后是比較高級的東西,比如各種網絡協(xié)議(一般web開發(fā)用http協(xié)議)、網站安全、數據庫性能、web請求機制等等會前三項就可以開發(fā)一般的小網站了
現(xiàn)在通過我的經驗,來給你講一講前端和后端如何完成集成。
前端和后端都會遵照一套數據模型定義。前段在開發(fā)的時候,會利用模擬數據進行開發(fā)。前端在開發(fā)的時候就不需要依賴后端的API。
這些模擬數據一般來自于內存數據庫,就是使用真正的API接口來獲取數據,只不過這個數據不是從遠程服務器上獲取,而是通過本地的內存數據庫來獲取。
這樣子開發(fā)出來的前端,幾乎可以無縫的與后端API進行集成。
當然需要一個參數變量,或者環(huán)境變量來設置是開發(fā)環(huán)境還是生產環(huán)境。如果是開發(fā)環(huán)境,就直接獲取本地內存數據庫。如果是生產環(huán)境,則調用遠程數據接口。
接下來說一下后端。
后端開發(fā)要與前端完全分開,最好要使用rest API。這樣子可以使每個接口不存在狀態(tài)的記錄,屬于無狀態(tài)API。
這樣的API可以讓任何的終端調用。
因此測試這樣的API,可以使用任何程序。一般常用的比如,一些瀏覽器插件postman,rest client。也可以使用一些獨立的程序。只要可以進行HTTP的get,post ,patch, delete, put等操作就可以了。
一般過程是這樣子的,裝好插件或者程序以后,如果需要的話,設定輸入參數, 然后進行相關的HTTP操作。再查看返回結果。根據返回結果進行調試。
這樣子后端就開發(fā)完成了。
在這個過程中,不需要前端的參與。
假設前端的開發(fā)任務已經完成,后端的開發(fā)任務也已經完成。兩者需要真正的集成測試一下。
那么前端這一部分只需要打開生產環(huán)境變量就可以了。
現(xiàn)在的前后端開發(fā)一般都是這么一個流程。
如果你用的比較老的開發(fā)模式,比如ASP dot net mvc或者spring mvc這種前后端,放在一起的。那就邊開發(fā)邊集成。不存在前后端分開的問題。
后面這種模式,開發(fā)起來比較麻煩。如果一個程序員,只懂的后端,比如c sharp或者Java。他只能等著一個懂JavaScript, html, css的程序員來做頁面部分。在頁面部分要對API進行調用。
這個調用的框架準備好以后,后端才可以放開手腳,進行開發(fā)和測試。
這里面會造成一些時間上的浪費,和工作上的瓶頸。開發(fā)效率不是很高。
除非團隊里的程序員都是全棧的程序員。既可以寫頁面,也可以寫后端編程和數據庫訪問交互。這樣子對程序員的要求有點高。一般來說不太現(xiàn)實。
總的來說,現(xiàn)在業(yè)界比較推崇前端和后端分開的方式來進行開發(fā)。這樣子開發(fā)的好處就是,前端工程師和后端工程師,分的比較開,招人的成本和花的時間都還過得去。
但是有一點,整個項目必須有一個既懂前端又懂后端的架構師或者首席程序員來把握全局。否則會比較麻煩。關于這一點,我們在以后的討論中可以進行深入探討。
好,這個問題就先說這些吧,可以給我留言,我們可以深入討論,歡迎關注丁哥開講,謝謝。