12
---------- 1 GO TOUR 공부하면서 정리 https://fb.com/me.adunhansa https://twitter.com/arahansa http ://adunhansa.tistory.com/ ABOUT CONTACT SOURCE 1

프로그래밍 go투어 정리

  • Upload
    -

  • View
    566

  • Download
    2

Embed Size (px)

Citation preview

---------- 1

GO TOUR 공부하면서정리

https://fb.com/me.adunhansahttps://twitter.com/arahansahttp://adunhansa.tistory.com/

ABOUT

CONTACT

SOURCE

1

1. 작성자 소개 2

아라한사

-----------------------

--------------------------------------------

국내에도 브로그래머문화가확산되기를바라며 이것저것.. 관심만 많음-.-

슬라이드로 정리를 즐겨하나, 하나의 템플릿으로돌려쓰기하고있다..;;

1. 왜 이걸 만들게 되었나?! 3

Before) 오우? 이거 뭐야..그냥 새로운 언어는 한번 배워보고싶은데..이걸 해볼까?!

자주 안 쓰는 새로운 언어를 배우다 보면 이런 일이 생기곤 하였다.

After)이거 어떻게 했더라…컴파일도 안되네..

뭐…-_- 그래서 만들어보았다. 사실 Go같은가벼운 언어가 손에잘 안 익기도해서…;;정리하면서 두고두고보려고;;

Go Tour – 1 에서 10까지 4

1. 헬로, 안녕2. 투어설명3. 투어설명4. 패키지 구조5. 임포트

6. 익스포트(외부 라이브러리 대문자로 시작 유의)7. 함수(1) –자료형이 뒤에8. 함수(2) – 같은 형 생략가능9. 다중값 리턴 가능10. 리턴 값 이름지정

리턴값에 x,y 를 적었고return 문에 아무것도없어서 알아서 찾아 리턴

Go Tour – 11 에서 20까지 5

11. 변수12. 변수 초기화(자료형생략 가능) 13. := 으로 var도생략(함수 내에서)14. 상수 설정(문자열, 숫자, bool)15. 숫자형상수(이런식으로 정밀한 숫자값 가질수도있다)

(참고로 << 100은 2의 100승)

16. 유일한for반복문. 괄호생략됨.17. for(2) 조건문만 넣어도됨.18. 윗거와똑같음. While 과같이 쓴다.이 말임.19. 조건문생략으로 for문 무한루프20. IF 문 () 생략 {} 는 반드시

Go Tour – 21 에서 30까지 6

21. IF 문 조건문앞에잠시 짧은 문장실행

22. 앞서 짧은 문장은 else까지 사용가능

23. 연습문제(알아서풀자)

24. 기본 자료형 (여긴 링크(<=클릭)를 직접 보자)

25. 구조체 선언(type 선언후 struct)

26. 구조체 필드는 . 으로 접근

27. 포인터(요렇게 p의 값 변환) 포인터값은 있어도 포인터 연산은 안된다함)

28. 구조체 리터럴 – 특정 필드만 값 주기

29. New 함수는 모든 필드 0인 T타입의 포인터 반환

30. 슬라이스(배열느낌) []T 는 T타입의 배열값

Go Tour – 31 에서 40까지 7

31. 슬라이스 자르기32. 슬라이스 만들기(len, cap 속성 입력)33. 빈 슬라이스(nil이라 불림) 만들기34. Range 문. 슬라이스나 맵 순회35. Range는 인덱스나 값만 골라쓸 수 있다

36. 연습:슬라이스37.맵. 슬라이스와 비슷. Key값 들어감

38. 맵 리터럴 – 구조체 리터럴과 비슷하나 key값 줌. 소스생략함

39. 맵 리터럴2 – 상위타입같으면 타입명 생략 가능

40. 맵 다루기

Go Tour – 41 에서 50까지 8

41. 연습: 맵42. 함수 값 : 함수도 변수다43. 함수 클로저44. 연습 : 피보나치 클로저45. switch(자동 break)

46. 스위치 동작순서(간단해서 생략. 여기 나온 Time은 좀 신기)

47. 조건을 생략한 스위치도 가능48. 연습 심화: 복소수 세제곱근49. 메소드와 인터페이스:빈 내용50. 메소드 : 고에는 클래스가 없지만 메소드를 구조체에 붙일 수 있다.

인자값에포인터 리시버를붙인 것 잘보자

Go Tour – 51 에서 60까지 9

51. 메소드(2) : 아무 타입에나메소드를 붙일 수 있다

52. 포인터리시버의 그냥 리시버의 차이 ( 주소값 복사차이 정도? 포인트방식이 좋다. 이말임)

53. 인터페이스54. 인터페이스의 암시적 충족(좀 더 이해 필요)

55. 에러

56. 연습:에러57. 웹서버58. 연습 : http핸들러59. 이미지(당장 안쓸거므로 패스)60. 연습 : 이미지

Go Tour – 61 에서 70까지 10

61. 연습 : Rot13 Reader62. 동시성 (빈칸) : 난 아직 동기화가 익숙치않다. 잘 보자63. 고루틴(고루틴은4번 hello는 5번 나온다.)

64. 채널(Type존재) –채널은 따로 적겠다.

65. 버퍼링 채널(채널은 버퍼링가능)

66. Range와 close. 송신측을 더 이상 없단 것을 명시하기 위해 close 사용. 소스 생략

67. 셀렉트 다수의 고루틴이 케이스선택

68. 셀렉트 디폴트 케이스69. 연습: 동등 이진트리70. 연습 : 동등이진트리2

Go Tour – 끝^^ 11

채널. 지금까지 거의 순도 90% 자바 유저인지라.

고의 채널, 고루틴 개념이 좀 익숙치가 않았다.

채널은 에..그러니까.. 주고받는 탁구개념일랄까.

고투어에서 소스 고쳐가보면서 몇번 보면 알 것이다. 지금 옆자리에서 비키라는 압박이와서 이만 줄입니다.; 즐고요~

12

THANK YOU !

arahansa------

------

페북 : https://fb.com/me.adunhansa트위터 : https://twitter.com/arahansa블로그: http://adunhansa.tistory.com/