2015년 7월 21일 화요일

GO 언어 기본 문법 - 9

--------------정렬 활용하기------------
func Sort(data Interface)  //데이터를 오름차순으로 정렬
func Reverse(data Interface) Interface //데이터를 내림차순으로 정렬
type IntSlice []int //int 정렬 인터페이스
type Float64Slice []float64 //float64 정렬 인터페이스
type StringSlice []string //string 정렬 인터페이스

----------컨테이너 사용하기------------
Go언어는 기본 자료구조를 패키지로 제공한다.
연결리스트: 각 노드를 한 줄로 연결한 자료구조
힙: 이진 트리를 활용한 자료구조
링: 각 노드가 원형으로 연결되 자료구조

연결 리스트 사용하기 - container/list 패키지
func New() *List   //연결 리스트 생성
func (L *List)PushBack(v interface{}) *Element  //연결 리스트의 맨 뒤에 데이터 추가
func(L *List)Front() *Element  //연결리스트의 맨 앞 데이터를 가져옴
func(L *List)Back() *Element   //연결리스트의 맨 뒤 데이터를 가져옴

힙 사용하기 - container/heap 패키지
func Init(h Interface)  //힙 초기화
func Push(h Interface, x interface{})  //힙에 데이터 추가

링 사용하기 - container/ring 패키지
func New(n int) *Ring  //링 생성
func (r *Ring) Do(f func(interface{}))  //링의 모든 노드 순회
func (r *Ring) Move(n int) *Ring  //링을 회전시킴. 매개 변수로 양수를 넣으면 시계방향, 음을 넣으면 반 시계 반향으로 회전

----------TCP 프로토콜 사용하기------------

서버 작성하기 -net 패키지

func Listen(net, laddr string)(Listener, error) //프로토콜, IP주소, 포트 번호를 설정하여 연결 대기
func(I *TCPListener)Accept() (Conn, error) //클라이언트가 연결되면 TCP 연결
func(I *TCPListener)Close() error //TCP 연결 대기를 닫음
func(c *TCPConn)Read() (b []byte)(int, error) //받은 데이터 읽기
func(c *TCPConn)Write() (b []byte)(int, error) //데이터 보내기
func(c *TCPConn)Close() error  //TCP 연결을 닫음

클라리언트 작성하기 - net 패키지

func Dial(network, address string)(Conn, error) //프로토콜, IP주소, 포트 번호를 설정, 서버에 연결
func(c *TCPConn) Close() error //TCP 연결을 닫음
func(c *TCPConn) Read(b []byte)(int, error) //받은 데이터를 읽음
func(c *TCPConn) Write(b []byte)(int, error) //데이터를 보냄


댓글 없음:

댓글 쓰기