今天主要學(xué)習(xí)了4個(gè)東西
1.Go函數(shù) 2.mysql-zool 練習(xí) 3.linux認(rèn)知 4.http協(xié)議學(xué)習(xí)
一苗分、Go函數(shù)
- Go函數(shù)表現(xiàn)類型是 func (arguments 形參)(results 返回結(jié)果) { /******/}
2.Go函數(shù)可以返回多個(gè)結(jié)果,Go函數(shù)形參如果不是指針類型數(shù)據(jù)結(jié)構(gòu)(slice、
map、chan、指針類型、function)就是值拷貝,并不能改變傳入進(jìn)來的值內(nèi)
容覆劈,否則就能改變。
3.Go函數(shù)被看作第一類值沛励,也就是說Go函數(shù)可以被當(dāng)成變量用進(jìn)行函數(shù)傳遞或者返回责语。
例如:func square(n int) int { return n * n }
func negative(n int) int { return -n }
func product(m, n int) int { return m * n }
f := square
fmt.Println(f(3)) // "9"
f = negative
fmt.Println(f(3)) // "-3"
fmt.Printf("%T\n", f) // "func(int) int"
f = product // compile error: can't assign func(int, int) int to func(int) int
注:Go函數(shù)被看多第一類值時(shí)候,是不能進(jìn)行相等比較目派,賦值操作時(shí)候一定要賦值同等類型的函數(shù)(形參和返回結(jié)果類型一樣的函數(shù))坤候,否上會(huì)拋出異常,例如上面企蹭。
4.函數(shù)類型的零值是nil白筹。調(diào)用值為nil的函數(shù)值會(huì)引起panic錯(cuò)誤:
var f func(int) int
f(3) // 此處f的值為nil, 會(huì)引起panic錯(cuò)誤
5.Go函數(shù)可以匿名函數(shù),也就是不用聲明函數(shù)名字谅摄,在一個(gè)函數(shù)里面還可以聲明一個(gè)函數(shù)徒河,并且匿名函數(shù)可以引用外層函數(shù)的變量。
二送漠、mysql 練習(xí)
之前一段時(shí)間mysql基礎(chǔ)已經(jīng)熟悉顽照,現(xiàn)在需要練習(xí)和實(shí)戰(zhàn)。實(shí)戰(zhàn)有自己的服務(wù)器和Go項(xiàng)目螺男,目前我做的Go項(xiàng)目是一個(gè)視頻社區(qū)項(xiàng)目棒厘。
今天練習(xí)的是:
- BETWEEN a AND b (一個(gè)值范圍在兩個(gè)值中間)
2.其它沒什么說的 挺基礎(chǔ)簡(jiǎn)單的纵穿。下隧。。
三谓媒、Linux學(xué)習(xí)
Linux有很多版本淆院,今天開始學(xué)習(xí)的是shell命令。
1.main 命令 main命令就是查看一個(gè)命令的手冊(cè)句惯,也就是用法土辩。我的服務(wù)器是centos7 ,我就在這上面練習(xí),mac電腦這個(gè)命令行不通
2.有個(gè)通用的命令抢野,也就是我們經(jīng)常用到的 那就是 ... --help拷淘。這個(gè)命令可以幫助同學(xué)直接看到中文用法,例如上面的 main mv ,出來的是英文用法手冊(cè)指孤,而 mv --help 出來的是中文手冊(cè)启涯,其實(shí)大部分命令的用法計(jì)算機(jī)都告訴你了贬堵。
四、HTTP學(xué)習(xí)
當(dāng)你瀏覽了一個(gè)網(wǎng)站结洼,這個(gè)過程其實(shí)是TCP/IP協(xié)議在幫你實(shí)現(xiàn)和完成的黎做,Http只是Tcp/Ip協(xié)議里面的應(yīng)用層協(xié)議。Tcp/Ip協(xié)議總共分為四層松忍,
1.應(yīng)用層:主要是http ftp Dns 等
2.傳輸層:tcp蒸殿、udp 主要是把應(yīng)用層傳輸過來的報(bào)文數(shù)據(jù)進(jìn)行分割成一小段一小段進(jìn)行編號(hào),然后在頭部加上TCP標(biāo)識(shí)
3.網(wǎng)絡(luò)層: ip協(xié)議 鸣峭,主要是把數(shù)據(jù)包在網(wǎng)絡(luò)上傳輸?shù)綄?duì)方那里宏所,數(shù)據(jù)包是網(wǎng)絡(luò)傳輸數(shù)據(jù)的單位。
4.數(shù)據(jù)鏈路層:主要是跟硬件打交道叽掘,通過網(wǎng)卡等把數(shù)據(jù)接收楣铁,然后傳輸?shù)骄W(wǎng)絡(luò)層、傳輸層更扁、應(yīng)用層盖腕。