본문 바로가기

TIL

[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)이다.

 

인자로 받는 함수가 없으면 문자열로 반환한 뒤 유니코드 순서로 비교하기 때문에

0, 200, 800이 아니라 200, 800, 9와 같은 식으로 정렬하게 되는 문제가 생긴다.

말하자면 숫자를 단순히 abc순서로 정렬하는것이다.  

 

map();

sort는 원본 배열을 조작한다.

map은 새로운 배열을 반환한다.

원본 배열을 순회하며 인자로 받는 함수의 결과값들을 새로운 배열로 반환한다.

const array = [1,2,3];
const newArray = array.map(x => x*2);

console.log(array); // [1,2,3]
console.log(newArray); // [2,4,6]

 

코드숨 Spring 

 

OutputStream

바이트기반 출력 스트림의 최상위 클래스

추상클래스인데 말 그대로 요청에 따라 Output되는 데이터 흐름이다.

develop-im.tistory.com/54

 

JSON

JavaScript Object Notation 자바스크립트객체표기법?

클라이언트가 서버가 데이터를 교환할 때 이 형식을 사용한다.

 

Jackson

Java 데이터를 JSON형식으로 처리할 수 있게 해준다.

JSON 말고도 XML, YAML 등 여러 데이터 형식을 처리할 수 있다.

 

Future Action Plans

Keep Going

객체지향의 사실과 오해 집중해서 읽기

Feedback

물 흐르듯 조급함을 가지지 않고 공부하니 괄목할만한 성과를 보였다!
지난 날의 나와 비교했을 때 공부를 굉장히 많이 했다 ㅎㅎ 이 느낌을 기억하고 유지해야겠다.

반응형