데브 코스/TIL

[TIL] Day 1

마데카솔라 2021. 8. 3. 00:48
반응형

오늘(8월 2일)부터 그토록 고대하던 데브 코스를 시작했다.

교육과정 소개 중 눈길을 끌었던 것들이 많이 있었다. 그중 하나인 TIL을 오늘부터 작성해보려고 한다.

개인적으로 TIL은 꾸준함이 굉장히 중요하다고 생각하다.

지금은 이렇게 밤늦게라도 작성하지만, 나중에 나는 나태해질 수 있으니 이 글을 보고 정신 차려 12월까지 쭈욱 진행해나갔으면 좋겠다.

 

 

 

TIL이란?

Today I Learned의 약자로 오늘 내가 공부하거나 배운 것을 기록하는 용도다.

강의를 들으면서 나에게 부족하고 추가로 공부해야 할 필요성을 느낀 부분을 중점으로 적겠습니다.

 

 

TIL

1. Build Tool

현재 사용하는 Framework가 나오기 전까지 개발자분들은 직접 코드를 빌드하고 실행시켰다고 한다.

이것은 매우 불편하고 귀찮은 과정이기 때문에 자동으로 빌드와 실행해주는 툴이 필요해졌다.

그래서 Build Tool(빌드 도구)가 생기게 되었다.

 

- Build Tool : 빌드 자동화(컴파일 -> binary -> 패키징 -> 테스트 -> 배포)를 시켜주는 실행이 가능한 프로그램을 만드는 역할

 

나는 프로그래밍을 시작할 때부터 IDE를 사용했기 때문에 아무 생각 없이 Run 버튼만 눌러 코드를 실행시켰다.

하지만, Run이 실행되는 과정은 단순 실행이 아니다. '컴파일 + 빌드'의 과정을 거친다.

빌드 도구에는 대표적으로 maven, Gradle이 있다.

이전에 maven을 사용하며 굉장히 고생했던 경험이 있는데, 최근 트렌드는 Gradle이라고 한다.

 

 

2. Reference

자바를 배울 때 가장 많이 들었던 말 중에 하나가 'Call by Value' vs 'Call by Reference'이다.

자바에는 포인터가 없기 때문에 그냥 넘겨왔었는데 중요한 개념이다.

- Call by Value : 값을 복사해 사용한다.

- Call by Reference : 주소를 복사해 사용한다.

 

예를 들자면, 메서드에 매개변수로 value 값을 보내면 해당 메서드에서 무엇을 하든 기본 값은 변하지 않는다.

하지만, reference를 보내면 같은 주소를 사용하기 때문에 값이 변하게 된다.

 

자바는 기본 타입과 참조형 타입 모두 Call by Value방식으로 받는다.

그래서 기존에는 다 값을 받아 사용하는 줄 알았지만, 참조형 타입은 값의 Reference(주소)가 저장되기 때문에 해당 값의 주소가 복사된다.

 

 

3. String

자바에서는 String을 Constant 취급한다.

new 연산자를 사용하지 않고, ""으로 String 객체를 생성하면 같은 주소로 Constant Pool에 담긴다.

문자열에 +연산을 사용하면 기존 문자열에 덧붙이는 것이 아니라 계속 새로운 Constant를 만든다.

그렇기 때문에 +연산에서 굉장히 비효율적이다.

효율적인 문자열 사용을 위해서는 StringBuilderStringBuffer을 사용하는 것을 추천한다고 한다.

 

자세한 내용은 따로 포스팅하겠다.

https://hidelookit.tistory.com/248

 

[Java] StringBuilder vs StringBuffer

Java로 코딩 테스트를 준비하다 보면 문자열 문제를 많이 마주한다. 이때, 기본 String을 사용하기도 하지만 StringBuilder와 StringBuffer를 사용하는 경우도 많다. 이 두가지에 대해 알아보도록 하자! Stri

hidelookit.tistory.com

 

 

느낀 점

오늘의 느낌을 한 문장으로 말하자면 '나는 정말 대충 공부했구나!'이다.

앞 단계의 강의임에도 불구하고 제대로 아는 게 하나도 없었다..

강의가 진행될수록 점점 기초에 관한 내용을 다뤘고, 정확하게 무엇이다!라고 말이 나오지 않았다.

갈 길이 멀지만 차근차근 해나가고 싶다.

 

 

반응형