목록개발 (14)
LALA's blog
벌써.. 3주차, 그리고 프리코스가 끝이 났다. 😱 이번 과제는 이전 과제들에 비해 난이도가 확실히 높아졌음을 느꼈고, 그만큼 더 많은 생각과 고민을 하며 과제를 진행하게 됐다. 과제는 난이도가 높아졌는데, 이번 과제 기간동안은 하필 시험, 병원, 일 등 때문에 너무 바빴어서 시간이 많이 부족해서 아쉬움이 너무 남는다. 그래도 과제가 끝나고 꼭 더 리팩토링하고 적용해봐야겠다! 어려웠던 점 설계 과정은 여전히 쉽지 않았다. 🙃 처음 보는 enum 클래스를 사용해야 했다. getter를 지양하고 객체에 메세지를 보내는 방식으로 구현했다. 비즈니스 로직과 UI 로직을 분리하려 노력했다. enum 클래스 이번 과제에서는 enum 클래스를 사용해서 구현해야하는 요구사항이 있었다. enum 은 단지 타입이 같은 값..
벌써 프리코스 2주 차도 끝이 났다. 😱 이번 과제에서 주신 피드백을 적용하기 위해 많은 고민을 하고, 조금이라도 더 확신이 드는 코드를 작성하기 위해 노력했다. 어려웠던 점 설계 과정은 여전히 쉽지 않았다. 🙃 클래스를 분리하고, 어떠한 책임을 부여할지 결정하는 부분이 어려웠다. 의도가 드러나는 변수, 클래스, 함수명을 짓는데 많은 고민을 했다. 1차보다 README.md 문서를 자세하게 작성하려고 노력했다. Stream을 적용해 보았다. 클래스 분리 JAVA에서 지향하는 OOP를 고려하여 클래스를 다음과 같이 설계했다. Car 이름과 위치를 저장한다. 전진 혹은 정지한다. 가장 앞선 위치에 있는지 체크한다. CarRepository 입력받은 차들을 저장한다. 난수를 발생시킨다. 우승자를 계산한다. G..
프리코스 1주 차를 끝마쳤다. 🥶 처음 과제를 봤을 땐 어렵지 않은 것 같다고 느꼈는데, 계속 수정해 나갈수록 부족함도 느끼고 어려움도 느꼈던 과정이었다. 부족했던 점 JAVA 개발이 처음이라 문법이나 IntelliJ 사용이 익숙하지 않아 삽질하는 시간이 꽤 있었다. 기능 구현 목록을 정할 때 눈에 보이는 것들만 작성하기 바빴다. 설계를 먼저 하지 않고 기능을 구현하는데 집중했다. 모든 코드를 class 하나에 다 넣었다. 즉, 모든 데이터와 입력, 출력, 계산 수행을 한 class에서 하도록 했다. 자료구조를 비교해보지 않고 선택했다. 아래 코드를 보시다시피 제일 처음 기능을 모두 완성했을 땐 한 Class에 모든 기능을 구현했다. 사실 최근에 알고리즘 문제를 많이 풀다 보니 해당 과제를 알고리즘 문제..
C 언어로 작성된 프로그램은 세 가지 종류의 메모리 영역을 가진다. 정적 메모리 프로그램이 실행하면서 프로그램에서 사용될 전역 변수/정적 변수를 메모리에 할당한 후 프로그램이 종료될 때 해제하는 영역이다. 따라서 잊어버리게 되더라도 큰 문제가 되지 않는다. 자동 메모리 자동 메모리는 스택 구로졸 이루어져 있다. 이곳에 저장된 변수는 코드 블록('{'와 '}'의 괄호로 이루어진 블록)이 종료됨에 따라 4차원의 세계로 사라진다. { /* 코드 블록 시작 */ int a = 43; double b = 1.1; } /* 코드 블록 끝. 여기에서 a와 b는 자동 메모리에서 제거된다.*/ int Plus(int a, int b) /* a와 b도 자동 메모리에 저장 */ { int c = a + b; /* c도 자동..