본문 바로가기

전체 글

(35)
레벨 1 - 레벨 로그 자동차 경주 단위 테스트를 작성하는 이유 내가 작성한 코드가 생각한대로 잘 동작하는지 확인하기 위해 출력을 해서 눈으로 확인할 필요가 없다 코드가 복잡해지면 기능 하나하나 확인하기 쉽지 않다 테스트 케이스를 생각하는 과정에서 코드 예외처리를 어떻게 진행할지 생각할 수 있다 리팩토링 시 테스트 코드가 따로 작성되어있으면 수정 후 기능 확인 시 테스트 코드를 실행시켜보면 된다 개발 및 테스트에 대한 시간과 비용 절감 가능 MVC 패턴 하나의 애플리케이션, 프로젝트를 구성할 때 구성요소를 세가지의 역할로 구분한 패턴 비즈니스 로직과 화면을 구분한다 모델과 뷰는 서로를 몰라야 한다. (컨트롤러가 중재) domain 은 view 에 의존하지 않도록 한다 view 는 domain 에 의존하지 않도록 한다 toStr..
나는 LINE 개발자입니다 - LINE Developer Relations 팀 원래 구글엔지니어입니다 라는 책을 읽으려고 찾다가 책장에서 눈에 띄어서 읽게 된 책이다. 라인 내 개발자들이 각각의 이력이나 라인에서의 생활 및 느낀 점에 대한 짧은 글들을 모아두었다. 라인은 글로벌한 서비스를 제공하는 회사라 가고 싶은 회사 리스트에도 있는데 내부 인원들이 보는 회사의 모습은 어떨지가 궁금했다 물론 회사에서 출간하는 책인 만큼 나쁜 말은 담지 않았겠지만 전체적으로 회사에 다들 만족하고 있었고 개발 문화가 잘 잡혀있다는 것이 느껴졌다. 파트별로 나눠서 내용이랑 느낀 점에 대해 간단히 정리를 해보았다. [10~20년 시니어 개발자] 1. 이직을 평균 3번 정도 하셨다 2. 밤새고 주말에도 하고 열심히 살았다 - 보람을 느꼈다. 힘들었지만 재밌었음 3. 다들 라인 문화에 만족한다 - 소통과 ..
[우테코 프리코스] 5기 합격 이번 주 수요일 5기 결과가 나왔다. 최종 코테 이후로 계속 불안했었고 풀리퀘 코드만 계속 들락날락 거렸는데 정말 감사하게도 좋은 결과가 나왔다. 자소서, 프리코스 과정, 최종 코테를 기준으로 선발기준을 잡으셨었는데 세가지 각각 중점을 뒀던 부분들을 정리해보았다. 자소서 사실 자소서가 가장 중요한 factor 가 되지 않았었나 싶다. 5기 설명회에서도 거듭 말씀하셨듯이 컴퓨터 프로그래밍 공부를 접할 기회가 적던 분들에게 더 기회를 준다고 말씀하셨었다. (그래서 전공자보다는 비전공자가, 또 다른 부트캠트나 교육기관을 경험한 사람들보다는 경험 안했던 사람들에게 좀 더 우선순위를 줄 수 있을 거라 하셨다) 내 상황을 말해보자면 나는 비전공자이고 프로그래밍 교육기관에서 1년 동안 공부를 하고 있는 상태였다. 교..
[우테코 프리코스] 최종 코딩 테스트 결과는 내손을 떠났으니 미련을 두지 말자고 생각하다가도 계속 생각이 머릿속에서 떠나지 않아서 글로 쓰면서 마음 정리를 해본다 1차 발표가 난뒤엔 사실 프리코스 끝나고 개인적인 만족감과 성취감과는 별개로 큰 기대는 하지 않고 있었다 왜냐면 인원이 너무 많았으니까.. 그래서 미련을 갖지 않기 위해 일부러 템플스테이도 갔다오고 일부러 정신을 딴데 쏟지 못하도록 몸을 혹사시키면서 공부했었다 그리고 대망의 수요일 ! 발표난다는 건 알고 있었지만 진짜 큰 기대가 없어서 해야 하는 일 끝내고 저녁 5시? 6시? 쯤에 메일함 들어가봤더니 1차 통과 메일이 와있어서 어리둥절하면서도 기쁘고 또 걱정되었다 왜냐면 그동안 자바 코드를 치는 건 약간 소홀히 했었던터라(...) 코드 작성보다는 객체 지향을 너무 멋모르고 코드 작..
[우테코 프리코스] 4주차 과제하면서 공부한 것들(중요 포인트!) 인터페이스 기본으로 제공된 BridgeNumberGenerator 가 인터페이스이고 BridgeRandomNumberGenerator 은 그 인터페이스를 상속받는다. 인터페이스는 무엇일까 출처 : https://life-with-coding.tistory.com/488 인터페이스는 추상 메서드만을 가질 수 있고 구현메서드는 가질 수 없는 일종의 추상 클래스입니다. 위의 추상 클래스와 다른 점은 자식 클래스들의 기능 유사도인데요. 추상클래스는 서로 비슷한 기능을 하는 클래스들을 묶을 때 사용하며, 인터페이스는 서로 다른 기능을 하는 클래스들을 묶을 때 인터페이스를 사용합니다. 인터페이스는 100% 다형성 보장 부모 클래스가 인터페이스이면 자식 클래스가 무조건 구현되어..
[우테코 프리코스] 3주차 숫자 야구 자바 기초 영상 도메인 : 내가 실제 다루고자 하는 서비스의 비즈니스 로직이 들어있는 영역 package baseball.domain baseball 패키지의 비즈니스 로직이 들어있음 패키지를 나눠줌으로써 동일한 일을 하는 클래스들을 묶어주고 클래스들이 어떤 일을 하는지를 쉽게 알아볼 수 있다. 클래스 변수(static), 인스턴스 변수 불변 변수 선언 : 수정 불가라고 지정. final 키워드 사용 객체 지향 프로그래밍 1. 기능을 가지고 있는 클래스를 인스턴스화(=객체) 한다. 2. 필요한 기능을 역할에 맞는 각 인스턴스가 수행하게 한다. 3. 각 결과를 종합한다. List : 자바에서 제공하는 collection. 필요한 기능을 미리 만들어서 제공해주고 있다. 배열을 사용해서 사용할 기능..
[우테코 프리코스] 2주차 AssertJ library import import static org.assertj.core.api.Assertions.*; 사용법 예시 1) object assertion either to determine equality of two objects or to examine the fields of an object. public class Dog { private String name; private Float weight; // standard getters and setters } Dog fido = new Dog("Fido", 5.25); Dog fidosClone = new Dog("Fido", 5.25); assertThat(fido).isEqualTo(fidosClone); assert..
[우테코 프리코스] 1주차 intelij 설치사용법 익히기 vscode 만 썼었는데 자바 하시는 분들은 intelij 를 써서 자바 유저로써 공부를 시작하고자 intelij 설치를 했다. vim 이랑 vscode만 쓰다가 다른 IDE 는 처음 써보는 거라 아직 어색하다. 근데 자동완성이 잘 되있어서 편했다. 그래서 다들 자바 프로그래밍하면 인텔리제이를 쓰나보다. lldb 쓸 때 디버깅 for 문에서 돌릴 때 i = 50 번 돌리면 i = 39 일 때 값 확인하려고 무한 n 값 눌러가면서 눈물을 흘리면서 디버깅 했었는데 intelij 는 바로 i=39 넣어서 값 확인 할 수 있는거 보고 감동했다.. lldb 도 해당 기능 있는데 내가 못하는걸수도.. 또 evaluate 기능이 있어서 바로 변수 값 바꿔보고 추가해보고 하면서 확인할 ..