devlog of ShinJe Kim

[TIL] 2019-08-28 (수)

|

Today I Learned

  • 리눅스/유닉스: 모든 것은 파일이다. 다형성(polymorphism)(파일로 모든것을 처리). 장점은 일관된 양식. 단점은 각 장치?모듈? 들의 특성이 다름.
  • 윈도우: 모든 것이 다름. 각자의 api가 있음. 모두 형식이 다르다는 것이 단점이기도 하지만 각 모듈들의 특성에 맞게 변환해준다는 것이 장점임.
  • 직렬화(serializtion): 원래는 객체를 바이트스트림 형태로 변환해서 저장하는 것을 의미함(반대는 역직렬화/unserialization) 그런데 요즘에는 꼭 바이트스트림이 아니더라도 JSON이나 xml등의 다양한 형태로 객체를 변환하는 것을 말함. marshalling/unmarshalling, coding/decoding 이라고도 함.
  • 순수 함수: (함수형 프로그래밍) 동일한 인자를 넣었을 때 동일한 결과가 나오는 것을 의미함.
  • 내부클래스는 함부로 쓰면 안된다. 내부 클래스는 항상 바깥 클래스를 참조하기떄문에 누수의 영역이 될 수 있다. 내부 클래스를 써야 할 때는 중첩 클래스를 써야한다. 중첩 클래스는 바깥쪽 클래스를 참조하지 않는다.
  • TODO: 캐시/쿠키/세션 정리해서 글 쓰기

Comments