2020-05-21 TIL

Facts

  • S3 에 이미지를 업로드할때 필요한 Access Key ID와 SecretAccessKey를 환경변수로 만들어서 환경변수 파일을 GitHub에 올리지 않아서 발생했던 문제를 해결했습니다.
  • 자동배포 기능 구현을 끝냈습니다.
  • 가장 빨리 만나는 코어 자바 9 책 1장을 쳐보면서 정독했습니다.
  • jshell을 들어가는 방법과, 간단한 코드를 쳐서 확인해보면서 손에 익숙해지도록했다.
  • 자바로 TodoList를 만들었다. ArrayList로 만들어서 그런지 어려움없이 빠른시간에 구현했다.

Feelings

  • 배포자동화를 하기전에는 일일히 도커허브에 이미지를 올리고 Ec2 인스턴스에서 새로 이미지를 받아와서 도커 컨테이너를 띄워주는 형식으로 배포했는데, 이제는 편하게 git push 만으로도 쉽게 구현이 가능하니, 정말 자동화라는 것이 중요하다는 것을 깨달았다.
  • 6개월만에 자바를 만져보니 감회가 새롭다. 망나니 코딩할때 공부했던거라 지금 다시 보니 그전보다 더 이해가 빠른 것 같다.

Findings

  • EC2 인스턴스환경에서 환경변수를 설정해주는 방법, workflows에서 빌드할때 환경변수를 설정해주는 방법을 알게되었습니다.
  • intellij 에서 so 를 입력후 tab을 누르면 System.out.printf가 자동완성된다.
  • 자바는 객체 지향 언어이므로 프로그램에서 객체를 조작해 일을 시킨다. 각 객체는 특정 클래스에 속하며, 그 객체를 클래스의 인스턴스라고 한다. 클래스에는 객체 상태와 할 수 있는 일을 정의한다. 자바는 모든 코드를 클래스 안에 정의한다.
  • main 메서드는 프로그램을 실행할 때 첫 번째로 호출되는 메서드다. static을 선언하면 객체가 없어도 메서드가 작동한다, void는 값을 반환하지 않을때 사용된다.
  • 패키지는 관련 있는 클래스를 모아놓은 집합이다, 자바는 모든 것을 클래스 안에 선언한다.
  • System.out은 객체이며, PrintStream 클래스의 인스턴스다. PrintStream 클래스에는 println, print 등 메서드가 있다. 이런 메서드는 해당 클래스의 객체에서 작동하므로, 인스턴스 메서드라고 한다.
  • final 키워드는 한번 할당하면 변경할 수 없는 값에 사용한다. 다른 언어에서는 이 값을 상수라고 한다. 보통 상수 이름은 대문자로 선언한다. static을 사용해서 상수를 메서드 외부에 선언할 수도 있다.

Future Action Plan

  • todolist-java 로직 분리하기
  • 코딩 컨벤션 적용해보기