전체 글(408)
-
(TIL) 20220518, 데이터 중심 애플리케이션 설계
🏴Facts(한 것) 데이터 중심 애플리케이션 설계 스터디 알고리즘 문제 운동하기 🏴Findings(배운 것) 알고리즘 문제를 풀다가 재밌는 파이썬 문법이 있어서 TIL에 남겨 놓으려 한다. 집합과 관련한 문법으로, 파이썬의 경우 set 자료구조를 지원하기 때문에 set을 통해서 합집합과 차집합, 교집합을 구할 수 있다. 잠시 문법을 보자면 #합집합 list1 = [1, 2, 3, 4] list2 = [3, 4, 5, 6] union = list(set().union(list1, list2)) # union = list(set(list1) | set(list2)) #교집합 intersection = list(set(list1) & set(list2)) #intersection = lis..
2022.05.19 -
(TIL) 20220517
🏴Facts(한 것) golang - TCP chat 만들기 프로그래머스 문제풀기 🏴Findings(배운 것) 학교 네트워크 수업 과제로 golang을 활용한 TCP Chat 구현이 나왔다. 제출하기 4시간 전부터 시작해서 다 완성하진 못했지만 통신은 가능하게 구현했다. 구현하는 과정에서 TCP에 대한 이해도가 조금 더 높아져서 그걸로 만족하고 있다. 데이터 중심 어플케이션 책을 구매했다. 코드숨 다음 스터디에 사용되는 책인데, 기대가 된다. 많은 분들이 추천하는데는 이유가 있지 않겠는가. 🏴Affirmation(자기선언) 매일 알고리즘 문제 1문제 이상 풀기 -> 성공 수업 공부한 것은 일주일 내에 포스팅하기 -> 실패 자바 8버전에 익숙해지기 -> 실패 🏴여담 좋아요
2022.05.18 -
(TIL) 20220515
🏴Facts(한 것) 디자인 패턴 스터디 - 어댑터 패턴, 퍼사드 패턴, 템플릿 메서드 패턴 알고리즘 문제 풀기 자바 공부하기 🏴Findings(배운 것) 어댑터 패턴과 퍼사드 패턴, 템플릿 메서드 패턴에 대해서 공부했다. 어댑터 패턴의 경우 한 클래스에서 다른 클래스를 참조하고 싶은데, 자료형이 달라서 사용하지 못하는 경우 유용하다. 말 그대로 '어댑터'의 역할을 하는 인터페이스 어댑터를 생성해주고, 이 어댑터를 구현하는 구현체를 만들어, 두 클래스를 연결하여 사용이 가능하다. 모든 패턴을 정리해서 따로 포스팅 하겠다. --- 자바 인터페이스에 대해서 공부했다. 자바 인터페이스는 '서비스 공급자와 자신의 객체를 이 서비스에 사용하고 싶은 클래스 간의 계약을 기술하는 메커니즘이다. 위처..
2022.05.16 -
(TIL) 20220513
🏴Facts(한 것) 알고리즘 문제 풀기 자기소개서 작성하기 코어 자바 읽기 학교 강의 듣기 🏴Findings(배운 것) 학교 네트워크 강의를 들으면서 TCP의 구조에 대해 공부했다. TCP가 2-way handshake를 하지 않고 3-way handshake를 하는 이유에 대해서 공부했는데, 2-way의 경우 client가 연결을 요청하고 server가 요청에 대한 ack을 보냈을 때, ack이 유실되면, 클라이언트 입장에서 연결이 되었는지 확인할 방법이 없다는 것이 주된 이유이다. 그렇기 때문에 요청에 대한 ack을 서버가 클라이언트에게 보내고, 클라이언트는 ack에 대한 응답을 잘 받았다는 신호인 synack을 다시 서버에게 보낸다. 이로써 두 기기간의 연결이 완성되는 것이다. ..
2022.05.13 -
<실용주의 프로그래머> 서평
이 책을 처음 받아 들고 든 생각은 '프로그래머에게 실용적인 것이 무엇인가'라는 생각이 들었다. 일상 생활에서 실용적인 것은 실생활을 편리하게 해주는 것이 아니겠는가? 이런 관점에서 를 바라본다면, 프로그래머가 행동을 함에 있어서 편리하게 혹은 프로그래머로서의 행동에 도움을 줄 만한 것들이 있을 것이라 생각했다. 그럼 어떤 것이 실용적일까? 1장 실용주의 철학에서 '실용주의 프로그래머는 직면한 문제 너머를 고민한다.' 라는 말이 있다. 큰 맥락에서 더 큰 그림을 보려고 노력하는 것이 실용주의 핵심이라는 것이다. 노력이라는 관점에서 볼때 "왜 직접 바꾸지 않습니까?"라는 p.3에 있는 구절이 와닿았다. 2장 실용주의 접근법에서는 좋은 코드 작성에 대한 접근법에 대해 얘기한다. 그중에서 "ETC는 규칙이 아..
2022.05.11 -
(네트워크) 간단한 TCP의 특징과 역사
연결 지향 통신 : TCP 먼저 연결 지향에 대해 얘기하기 이전에 TCP는 RFC 793, 1122, 1323, 2018, 2581의 인터넷 표준 통신 방식이다. 현재 98%라고 말해도 과하지 않을 정도로 전 세계 대부분의 통신이 TCP를 사용하고 있다. 그렇다면 왜 모두 TCP를 사용할까? 아래 TCP의 특징에 대해서 알아보자. > "연결 지향" TCP는 연결 지향 통신이다. 그렇기 때문에 반드시 수신자와 송신자 간의 연결이 되어 있어야 통신을 한다. TCP는 어떻게 수신자와 송신자가 연결되었는지 확인을 할까? 이는 3-way handshaking이라는 방식을 사용해서 송/수신자간 확인을 한다. 3-way handshaking을 진행하면서 송신자와 수신자의 상태 파라미터를 실행시킨다. 그럼 '연결'은 ..
2022.05.02