반응형

프로그래밍언어 10

switch문『Tucker의 Go 언어 프로그래밍#10』

본글은 『Tucker의 Go 언어 프로그래밍』 스터디 요약 노트입니다. Switch 문 if 문이 조건에 따라 다른 로직을 수행하는 것이라면 switch문은 값에 따라 다른 로직을 수행할 때 사용한다. 형식은 거의 조건문과 같다. 초기문을 사용할 수 있고 비교값으로 true를 사용하면 if문과 비슷하게 사용할 수 있다. switch 비굣값 { // 비굣값에는 true, false를 적을 수도 있다. true와 false로 사용하면 조건문과 같다. case 값1: 문장 case 값2: 문장 default: //모두 다 해당하지 않을 때 default 실행한다. 문장 } //해당하는 값을 만나면 문장을 수행하고 스위치문을 빠져나간다. 스위치 문은 복잡하게 얽혀있는 if else문을 비교적 간단하게 만들 수 ..

if문『Tucker의 Go 언어 프로그래밍#9』

본글은 『Tucker의 Go 언어 프로그래밍』 스터디 요약 노트입니다. 기본적인 IF 사용법 만약에 ~~한다면 ~~한다. 영어와 표현이 같다. 바로 예제 20대 판별기를 통해서 알아보자. package main import "fmt" func main () { age := 22 if age >= 10 && age 30 || age < 20 { //20대가 아닌 경우 fmt.Println("20대가 아니네") } else { fmt.Println("오 너는 20대 구나") } }쇼트서킷 if문에서 중요한 성질은 &&연산에서 좌변이 false이면 우변은 실행하지 않고 넘어간다. ||연산에서 좌변이 true라면 우변은 무시되고 결과가 true가 된다. package main import "fmt" var cn..

상수『Tucker의 Go 언어 프로그래밍#8』

본글은 『Tucker의 Go 언어 프로그래밍』 스터디 요약 노트입니다.상수선언상수선언의 규칙은 변수선언의 규칙과 같다. const number int = 10 하지만 상수는 한번 선언하면 그 값을 변경할 수 없다.그래서 상수는 변하지 않아야하는 값이 있을 때 쓰인다. 코드값으로 사용하기 상수는 컴파일 과정에서 숫자로 바뀐다. 그래서 컴퓨터는 그저 숫자로 인식한다. 상수로 코드값으로 사용하면 메모리 측면에서 유리하다. 예를 들자면 아스키코드는 A를 숫자 65로 저장하고 http 200번은 ok를 의미한다. 우리가 화면에서 a라는 글자를 보는 것은 65라는 숫자값이 들어오면 화면에 a라는 도트를 찍어라 라는 명령의 결과다. 사용자는 프로그램에서 a,b,d 등등으로 인식하겠지만 컴퓨터는 a,b,c를 숫자로 인..

함수『Tucker의 Go 언어 프로그래밍#7』

함수 ex.1func Add(a int, b int) int { return a+b } 하나하나 풀어쓰면 이런 뜻이다. func : 함수 키워드 (함수를 이제부터 정의한다. ) Add : 함수의 이름을 뜻한다. (a int , b int ) : 매개변수를 이름과 타입을 함께 적어준다. 컴마로 구분하고 여러개 받을 수 있다. int : 반환값 (return값) 함수를 호출하면 생기는 일 함수는 중복 코드를 제거하는데 아주 유용하다. 그런 배경에서 탄생하기도 했다. ex.1 에서 함수를 한번 정의하고 나면 함수를 정의하지 않고 사용할 수 있다. package main import "fmt" func Add(a int, b int) int { return a+b } func main() { c := Add(4..

연산자『Tucker의 Go 언어 프로그래밍#6』

본글은 『Tucker의 Go 언어 프로그래밍』 스터디 요약 노트입니다. 산술 연산자 산술연산자는 숫자 연산을 하는 연산자이다. 연산의 결과 타입은 각항의 타입과 항상 같아야한다. var a int64 = 10 var b float64 = 32.2433 var c float64 c = a + b // 각항의 타입이 달라서 계산 불가 비트연산자 비트 단위로 연산하는 비트 연산자다. 정수로만 연산이 가능하다. 각 비트마다 논리연산을 하는 것이다. & ( AND 연산자) 만약 0101과 0001을 &연산한다고 하자 두 비트 모두 1일 될때만 결과값이 1이된다. ^(XOR 연산자) 비트의 값이 서로 다르면 1을 반환한다. ^는 단독으로 사용가능하다. (반전으로 쓰인다.)^(0011)이라면 반전되어 (1100)이 ..

fmt 패키지를 이용한 텍스트 입출력 / Tucker님의 Go 언어 프로그래밍 #5

본글은 『Tucker의 Go 언어 프로그래밍』 스터디 요약 노트입니다. 표준입출력 프로그램과 사용자는 입력과 출력을 통해 상호작용한다. 보통 입력은 키보도와 마우스로한다고 생각할 수 있지만 네트워크를 통해 입력할 수 있고 파일을 통해서도 입력할 수 있다. 이런 입출력을 모두 구현해야한다면 프로그램은 복잡해질 것이다. 따라서 이때에는 운영체제가 제공하는 표준 입출력 스트림을 사용한다. fmt패키지 표준출력함수는 fmt라는 패키지로 제공이 된다. 각각을 살펴보자. print() : 입력값들을 출력함 println(): 입력값들을 출력하고 개행한다.(다음줄로 넘어간다는 뜻, enter누른다는 뜻) printf() : 서식(format)에 맞추어서 출력함 예를 들면 package main import "fmt"..

변수 / Tucker님의 Go 언어 프로그래밍 #4

본글은 『Tucker의 Go 언어 프로그래밍』 스터디 요약 노트입니다. 변수 프로그램이란 데이터를 연산/조작하는 일이다. 비디오,소리,글자는 모두 데이터라고 할 수 있는데 컴퓨터에게는 숫자에 불가하다. 그 숫자들을 저장하는 것이 메모리이다. 💡 데이터에 접근하려면 어떻게 해야할까? 메모리에는 각각 메모리 주소가 존재한다. 컴퓨터는 메모리 주소를 이용해 데이터에 접근할 수 있다. 메모리주소는 0X00A3FC00 이런식으로 우리가 인지하기 어려운 16진수로 되어있다. 따라서 사람이 코드로서 편하게 메모리에 접근하기위해서는 변수가 필요하다. 변수의 4가지 속성 var a int = 10 다음의 코드로 변수의 속성을 살펴보자면 이름 : var a int = 10 (변수가 a라는 이름을 가진다.) 값 : a의 메..

Go mod,build,실행 (Tucker의 Go언어 #3)

본글은 Tucker님의 Go 언어 프로그래밍 학습 글입니다. Go를 만든 사람들 문자 인코딩 Go의 특징 Hello World! 실행파일 만들기 Go를 만든 사람들 Go언어는 구글에서 일하는 로버트 그리즈머, 롭 파이크 , 켄 톰슨이 개발한 프로그래밍 언어이다. 개발자들의 스펙이 정말 근본 그 자체이다. 왼쪽이 켄 톰슨이다. 우선 모두 구글 개발자이고 켄 톰슨은 무려 C언어의 모체가 된 B언어, 유닉스 , UTF-8의 개발자이다. 롭 파이크도 UTF-8의 개발에 참여했다. 근본 그 자체인가.. 문자 인코딩 켄톰슨과 롭파이크가 UTF-8의 개발자여서 그런지 Go는 UTF-8을 기본 인코딩 방식으로 채택했다. 문자 인코딩은 무엇을 뜻할까? 컴퓨터는 0과 1밖에 모른다. 저번 강의에서는 고수준의 언어가 결국 ..

프로그래밍 언어 / Tucker님의 Go 언어 프로그래밍 #2

본글은 『Tucker의 Go 언어 프로그래밍』 스터디 요약 노트입니다. 프로그램 프로그램은 명령이 적혀있는 문서이다. 그런데 명령이 무슨 언어로 이루어져있을까? 바로 프로그래밍 언어로 이루어져있다. 컴퓨터는 0과 1밖에 모르는데 이상태에서 어떻게 명령을 하지? 초기 프로그램 오래전에는 근성으로 0과 1로만 코딩을 했다고 한다. 이정도면 나는 안할거같다. 요즘 세상에 태어난게 얼마나 다행인지 앞의 4개의 숫자는OP코드로써 ADD 같은 명령을 뜻한다. 그리고 그 외의 숫자들은 각각 명령을 수행할 때 필요한 데이터들이다. 근데 0011이 ADD인지 어떻게 알지? 0011이 입력되면 멀티플랙서(먹스)가논리소자로 처리후 add쪽 전기신호가 열리면서 연산을 처리한다. 천공카드에 구멍을 뚫어서 프로그래밍을 했다. 구..

컴퓨터의 원리 Tucker의 go언어 #1강

본글은 『Tucker의 Go 언어 프로그래밍』 스터디 요약 노트입니다. www.youtube.com/watch?v=CIyLurz-Ius 굳 0과 1 컴퓨터는 이진법으로 데이터를 읽고 쓴다. 이진법은 예전 컴퓨터부터 이어지는 컴퓨터의 중요한 특성이다. 컴퓨터는 이진법을 트랜지스터를 통해서 구현 한다. 그런데 그 이전에는 진공관이 있었다. 진공관 초기 컴퓨터는 진공관을 통해서 이진법을 구현했는데 많은 단점들이 존재했다.. 부피가 크고 무겁다. 가격이 비싸다. 전기를 많이 먹는다. 고장이 잘 난다. 이런 단점들 때문에 컴퓨터의 발전은 지금과는 달리 다소 느렸는데 트랜지스터가 등장하면서 컴퓨터는 폭발적으로 발전하게 된다. 트랜지스터 트랜지스터는 성질이 다른 두가지 실리콘을 겹쳐서 만든 것이다. 그 종류로는 n형..

반응형