原创 go 實現並操作單鏈表

實現部分在linkedList包裏面,具體實現的功能有: 1.判斷是否爲空的單鏈表 2.單鏈表的長度 3.獲取頭節點 4.從頭部添加元素 5.從尾部添加元素 6.在指定位置添加元素 7.刪除指定元素 8.刪除指定位置的元素 9.判斷是否包

原创 鏈表分組反轉

題目 這其實是一道變形的鏈表反轉題,大致描述如下 給定一個單鏈表的頭節點 head,實現一個調整單鏈表的函數,使得每K個節點之間爲一組進行逆序,並且從鏈表的尾部開始組起,頭部剩餘節點數量不夠一組的不需要逆序。(不能使用隊列或者棧作爲輔助)

原创 Go 實現RESTful

RESTful,是目前最爲流行的一種互聯網軟件架構。因爲它結構清晰、符合標準、易於理解、擴展方便,所以正得到越來越多網站的採用。本小節我們將來學習它到底是一種什麼樣的架構?以及在Go裏面如何來實現它。 什麼是REST REST(REpre

原创 設計模式--7種面向對象設計原則

軟件設計模式的產生背景 1995 年,艾瑞克·伽馬(ErichGamma)、理査德·海爾姆(Richard Helm)、拉爾夫·約翰森(Ralph Johnson)、約翰·威利斯迪斯(John Vlissides)等 4 位作者合作出版

原创 Golang構建HTTP服務(一)--- net/http庫

實現一個最簡單HTTP server需要多少代碼?只需要一行,Python2的python -m SimpleHTTPServer,ruby的ruby -run -e httpd . -p 8888。對於Golang,實現一個最簡單的ht

原创 go mod 與 goproxy 的使用

go modules 是 golang 1.11 新加的特性,Modules官方定義爲: 模塊是相關Go包的集合。modules是源代碼交換和版本控制的單元。 go命令直接支持使用modules, 包括記錄和解析對其他模塊的依賴性。mo

原创 Golang構建HTTP服務(二)--- Handler,ServeMux與中間件

Golang標準庫http包提供了基礎的http服務,這個服務又基於Handler接口和ServeMux結構的做Mutilpexer。實際上,go的作者設計Handler這樣的接口,不僅提供了默認的ServeMux對象,開發者也可以自定義

原创 如何設計Web API?

大多數現代的Web應用程序都公開了客戶端可以用來與應用程序交互的API。精心設計的Web API應該旨在支持: 平臺獨立性。無論內部如何實現API,任何客戶端都應該能夠調用API。這需要使用標準協議,並具有一種機制,使客戶端和Web服

原创 設計模式--創建型模式--單例與多例模式

  上一篇文章我們介紹了設計模式的七種面向對象設計原則,本篇文章我們將介紹設計模式中創建型模式的單例與多例模式。在瞭解單例模式之前我們先來了解一下設計模式的分類有哪些呢? 設計模式的分類有哪些? 設計模式是在軟件開發中,經過驗證的,用於

原创 每日一道 Go 編程題

 非常非常有意思的一道編程題 package main import ( "fmt" "sync" "time" ) var mu sync.RWMutex var count int func main() { go A()

原创 golang實現RPC的幾種方式

原文鏈接:https://studygolang.com/articles/14336 什麼是RPC 遠程過程調用(Remote Procedure Call,縮寫爲 RPC)是一個計算機通

原创 Linux CentOS7 安裝 Chrome

下載   wget https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm 安裝依賴包   yum install -y lsb

原创 Linux CentOS7 下安裝 Mysql5.7 並設置自啓動

安裝軟件:mysql5.7 說明:使用官方編譯好的二進制文件進行安裝 1.檢查操作系統是否自帶mysql [root@localhost local]# rpm -qa|grep mysql mysql-libs-5.1.73-8.el

原创 Centos7 防火牆 firewalld 實用操作

一.前言 Centos7以上的發行版都試自帶了firewalld防火牆的,firewalld去帶了iptables防火牆。其原因是iptables的防火牆策略是交由內核層面的netfilter網絡過濾器來處理的,而firewalld則是交

原创 Linux CentOS7 安裝 Nginx PHP7 並設置開機啓動

所有操作需要在root用戶下 安裝路徑:/usr/local/php 先安裝如下依賴包: yum install -y gcc gcc-c++  make zlib zlib-devel pcre pcre-devel  libjpeg