2018-12-26 分類: 網(wǎng)站建設
其實現(xiàn)在網(wǎng)站的后端開發(fā)語言有很多,列出來普及一下知識!
1、.net/java
龐大,復雜。但Java的優(yōu)點就是適合處理特別大的數(shù)據(jù)量,如果你的項目會很快實現(xiàn)大爆發(fā),需要處理海量的請求,那么Java是一個不錯的選擇。
2、PHP
可以快速上手,相比其他語言,可以更快的為應用添加各種新功能。當然,可維護性就另當別論了。
3、Ruby
非常接近自然語言,基本上即使不懂編程,也能看明白70% 或80%。04年出現(xiàn)了一個用Ruby編寫的Web開發(fā)框架Rubyon Rails,當時的效果是非常震撼的,以前需要一個團隊才能搞定的事情,使用Ruby on Rails后1個人就可以勝任了,所以Ruby on Rails在極短的時間內就成為了Ruby的代名詞,也成為了新手學習Web開發(fā)的不二選擇,但是Ruby語言也并非十全十美,快的同時,他的大短板就是性能。Twitter最早就是使用Ruby on Rails開發(fā)的,但是隨著用戶數(shù)的逐步增長,Twitter的宕機開始變得非常頻繁,后來他們迫不得已將整個系統(tǒng)從Ruby遷移到到了一個從Java派生出來的語言Scala。
4、node.js
簡單來說,可以把node.js理解為跑在服務器上的javascript,再直白一點,就是一個跑在服務器上的瀏覽器,因為node.js最早就是從chrome瀏覽器的Javascript引擎V8中剝離出來的。相比Ruby,Node.js程序可以獲得更高的并發(fā)性能,這在一些高并發(fā)的場景下(比如群聊,多人協(xié)作等)會很有優(yōu)勢。
5、其它(python,closure 等)
6、無后端(leancloud)
無后端編程是最近的一個新趨勢,但她并非說是真的沒有后端,而只是把后端交給一些第三方的云平臺,比如 Leancloud,F(xiàn)irebase等。如果你開發(fā)一個手機App,這樣的好處就是你可以在早期沒有后端程序員的情況下快速開工,像Leancloud這樣的云平臺已經可以勝任大部分的應用場景,如果后期業(yè)務邏輯復雜之后再尋找合適的后端工程師遷移也不遲。
7、最強編程語言 Lisp
如果要評選一個最強的編程語言,該是哪個呢?答案就是Lisp。為什么是Lisp?Lisp的作者在很早以前就從數(shù)學的層面總結了一個好的編程語言應該具備的9種能力,而Lisp就是為了配合他的這個理論而產生出來的語言。Hacker News 是由YC的創(chuàng)始人Paul Graham開發(fā)的,而Paul Graham本身就是一個Lisp程序員,他為了開發(fā)Hacker News,專門發(fā)明了一種新語言叫做Arc,但因為它是基于Lisp的,所以也被歸為了Lisp的方言之一。
數(shù)據(jù)庫
我們平常訪問的大部分網(wǎng)站都是需要登錄操作的,登錄之后我們看到的就是只和自己相關的那部分內容。這些用戶信息是保存在什么地方的呢?這就需要用到數(shù)據(jù)庫。關于數(shù)據(jù)庫,代表性的有兩個:
1、MySQL
2、MongoDB
MySQL 是最常用的結構化數(shù)據(jù)庫,也是大多數(shù)創(chuàng)業(yè)公司的選擇。為什么是結構化的?就是說它的表的結構是固定的,比如我們常見的 User 表在 MySQL 中就是這樣的:
id name email password
1 一元 y@modao.io $2a$10$ZxNhLyDTdagtUc...
2 產品集小妹 xiaomei@36kr.com$2a$10$zK7TnBXYYFz...
如果我們需要取得一條用戶記錄來檢查他輸入的密碼是否正確,這時我們就需要使用 SQL,SQL 就是結構化查詢語言。
簡單來說,SQL 數(shù)據(jù)庫保存的是結構化數(shù)據(jù),NOSQL 數(shù)據(jù)庫則可以保存非結構化數(shù)據(jù)。舉個例子,還拿上面的用戶表來舉例,如果我們現(xiàn)在想要給產品集小妹增加一些額外的屬性,比如她給某個產品點贊可以效果 x2,那么如果是 SQL 數(shù)據(jù)庫,我們就需要給數(shù)據(jù)庫增加一個新的字段來保存這個屬性:
id name email x2
1 一元 y@modao.io false
2 產品集小妹 xiaomei@36kr.com true
但是如果是 MongoDB 這樣的 NOSQL 數(shù)據(jù)庫,我們就不需要給所有用戶都增加一個x2的屬性,只需要給產品集小妹單獨增加就可以了,NOSQL 中保存到數(shù)據(jù)是如下這個樣子的:
{id: ‘1’, name: ‘一元’, email: 'y@modao.io’, password: ‘…’}
{id: ‘1’, name: ‘產品集小妹’, email: 'xiaomei@36kr.com’, password: ‘…’, x2: true}
Cookie 和 Session
服務器要處理成千上萬用戶的請求,那么他是如何區(qū)分每個用戶,并返回給每個用戶他所需要的內容的 ?這就要涉及到 Cookie 和 Session。我們可以將 Cookie 理解為是服務器給每個用戶分配的唯一 ID,這個 ID 由用戶瀏覽器保存,而 Session 則是服務器為了維護這個會話在服務器端保存的與 cookie 對應的用戶數(shù)據(jù)。
本文標題:網(wǎng)站的后端開發(fā)語言。
文章出自:http://m.newbst.com/news45/78895.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供小程序開發(fā)、云服務器、定制網(wǎng)站、虛擬主機、自適應網(wǎng)站、營銷型網(wǎng)站建設
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內容