본문 바로가기

반응형

TIL

(185)
[TIL] 2021.01.28 Facts Spring 과제 업데이트 코딩테스트 짝프로그래밍 Feelings Very Good 코딩 테스트 공부법을 찾았다 ㅎㅅㅎ Findings 비즈니스 로직 유저의 눈에는 보여지지 않지만 유저가 바라는 결과를 도출할 수 있게 짜여진 코드 로직 LinkedHashMap HashMap과 사용법은 같은데 생성된 order대로 핸들링이 가능하다. @Autowired Spring의 기능이다. 의존성을 주입하여 nullPointerException을 예방해준다. join() string들을 하나로 붙여준다. sort(); sort((a, b) => a - b); a - b가 양수이면 b, a 순서대로 정렬 음수이면 a, b 순서대로 정렬한다(오름차순) sort((a, b) => `${b}${a}` - `${a}..
[TIL] 2021.01.27 인터페이스, 오리 타입 Facts Feelings Findings 4.2 인터페이스 정의하기 퍼블릭 인터페이스: 메뉴판, 바깥을 향한 클래스의 얼굴, 쉽게 변경x 프라이빗 인터페이스: 부엌 안의 메시지, 세부 구현, 언제든 변경 가능 책임, 의존성, 그리고 인터페이스: 퍼블릭은 안정적인 부분, 프라이빗은 불안정한 부분이라는 뜻을 내포. 퍼블릭 인터페이스와 프라이빗 인터페이스를 구분하는 이유 - 내부를 마음대로 변경하기 위해서 4.3 퍼블릭 인터페이스 찾아내기 - 예술적 작업, 정해진 법칙이 없다. 요구사항: 유스케이스 의도를 구성하기 - 도메인 객체가 아니라 그들의 메시지에 집중 시퀀스 다이어그램 사용하기 - 과도한 의존성을 조심해라, 각자에게 최소의 책임만 No How, But What -----v 주어진 맥락에서 독립적일 ..
[TIL] 2021.01.26 JavaScript 입력값 받기 Facts 루비로 배우는 객체지향 디자인 3장 읽기 어떻게 문제를 풀 것인가 1p 읽기 코딩테스트 연습 코드숨 spring 과제 업데이트 Feelings 피곤해서 몸과 뇌를 가누지 못하겠다. 힘이 없다. Findings 백준에서 JavaScript로 입력값을 받을 때는 이렇게 한다. let fs = require('fs'); let input = fs.readFileSync('/dev/stdin').toString(); string끼리 비교할 때는 localeCompare()라는 메소드를 사용한다. 문제를 풀 때에는 아이디어를 여러 방면으로 생각해본 후 문제를 풀기 시작해야 한다. Future Action Plans 충분히 많이 자기 Feedback 수면 부족인건가, 컨디션이 최악이다. 일 나가서도 꾸벅..
[TIL] 2021.01.25 클래스의 경로 문제 Facts 코딩테스트 연습 짝프로그래밍(백준 단어 개수 세기) 스프링 강의 훑기 스프링 과제 업데이트 Feelings 매우 좋음 그러나 피곤함 Findings 클래스의 경로문제 자바는 다른 경로에 있는 클래스를 어떻게 접근하나 항상 궁금했었다. 오늘 삽질을 한시간 정도 한 후에 IntelliJ IDEA가 항상 import를 자동으로 해주었기 때문에 다른 경로에 있는 클래스에 아무런 오류없이 한 번에 접근할 수 있었던 것임을 깨달았다. 그리고 org.springframework.scheduling.config 경로에 있는 클래스는 실제로 쓰일 수 없는? 설명서 같은 존재인 것이다. 라는 가설도 얻게 되었다. 오늘은 왜 삽질을 하게 되었는가? 나는 아직 구현되지 않은 클래스의 method를 사용하는 코드를 ..
[TIL] 2021.01.22 HttpExchange, getRequestBody(), InputStreamReader, Charset, Unicode, BufferedReader, JSON을 java object로 바꾸는 방법 Facts 코드숨 Spring 과제 업데이트 코딩테스트 연습 짝프로그래밍 (어제 것 리팩토링) Feelings OK Findings InputStream requestBody = exchange.getRequestBody(); String body = new BufferedReader(new InputStreamReader(requestBody)) .lines() .collect(Collectors.joining("\n")); 위의 코드를 뜯어보자! HttpExchange client의 요청과 반응을 보내거나 핸들링하기 위해 사용하는 클래스. getRequestBody() HttpExchange의 메소드 InputStream requestBody가 읽혀지는 Stream을 반환한다. InputStreamR..
[TIL] 2021.01.20 객체지향의 사실과 오해 스터디 마무리 Facts 객체지향의 사실과 오해 스터디 마무리 코드숨 Spring 과제 업데이트 코딩테스트 짝프로그래밍 Feelings exhausted Findings 도메인 사람들의 머릿속에 있는 공유된 멘탈 모델 객체지향 설계를 평가하는 세 가지 관점 개념 관점 도메인 안에 존재하는 개념과 개념들 사이의 관계 실제 도메인의 규칙을 최대한 유사하게 반영한다. 명세 관점 객체의 책임, 즉 인터페이스를 바라본다. 인터페이스와 구현을 분리하는 것이 가장 중요하다. 구현 관점 인터페이스와 클래스를 구현한다. 공용 인터페이스는 명세 관점을 반영하고 클래스의 속성과 메서드는 구현 관점을 반영한다. Future Action Plans 일찍 자기.. Feedback 잠이 부족하니 뇌의 성능저하가 씨게 온다. 일찍 자야지
[TIL] 2021.01.19 객체지향의 사실과 오해 - 메시지, 메서드, 다형성, filter(), sort(), map(), OutputStream, JSON, Jackson Facts 객체지향의 사실과 오해 독서 코딩테스트 k번째수 통과시킴 spring 과제 업데이트 Feelings O.K Findings 객체지향의 사실과 오해 메시지 객체에 미션을 보내는 것. 김태호.TIL작성하라(2021.01.19); 메서드 메시지를 받은 객체가 자율적으로 선택하는 미션수행방법 다형성 동일한 메시지라도 메시지를 수신하는 객체에 따라 그것을 처리하는 메서드는 달라질 수 있다는 것. 객체지향이 강력한 이유이다. 다형성을 통해 객체간에 유연한 협력을 가능케하기 때문이다. 코딩테스트 연습 filter(); 조건을 만족하는 배열의 요소들을 새로운 배열로 반환시켜주는 배열 메소드 sort(); 배열을 정렬하는 메소드. big O notation은 O(n^2)이다. 인자로 받는 함수가 없으면 문자열..
[TIL] 2021.01.17 자바 스터디 마무리, 짝 프로그래밍 Facts - git training - java 프로그램 만들기 시도 - javascript 코딩테스트 문제풀이 - 자바 스터디 마무리 docs.google.com/spreadsheets/d/1s4c4V-Kr_DHucSn_XjEoUcuBC6ukqbQK9ZWpz1YJJaI/edit?usp=sharing Feelings very good! 😊 Findings 짝프로그램은 겁나 재밌다..! 혼자 솔플하는 것보다 같이 게임하는 게 재밌는 거랑 똑같은 이치. 진짜 같이 게임하는 것만큼 재밌다. javascript는 string에 +=도 가능하다! let string = "안녕하"; string += "세요"; //string == "안녕하세요"; Future Action Plans Spring 풀리퀘 만들기! ..

반응형