TIL - 20220620
2022. 6. 21. 00:21
TIL
핑계지만 월요일이라 그런지 시간 분배를 제대로 못한 것 같다. 원래 목표했던 양을 못 채운 감도 있고, 늦게까지 공부해서 내일 컨디션에도 영향이 있지 않을까 싶은데 시간 분배에 좀 더 신경 써야겠다. Git 오늘은 다음과 같은 내용들을 공부했다. Git 이전의 VCS에서 많이 쓰이던 Delta 방식과 Git에서 사용하는 Snapshot 방식의 차이 Working Directory(Untracked, Tracked) - Staging Area - Repository HEAD fetch와 pull의 차이 config JavaScript 자바스크립트의 동작 원리에 대해 공부하다가 자바스크립트는 왜 프로토타입을 선택했을까라는 글을 읽었다. 다른 프로그래밍 언어와 구별되는 자바스크립트의 가장 큰 특징인 프로토타입..
[모든 개발자를 위한 HTTP 웹 기본 지식] 07. HTTP 헤더1 - 일반 헤더
2022. 6. 20. 19:43
Network/모든 개발자를 위한 HTTP 웹 기본 지식
본 문서는 모든 개발자를 위한 HTTP 웹 기본 지식 강의를 보고 제 주관대로 정리한 글입니다. HTTP 헤더 개요 header-field = field-name ":" OWS(띄어쓰기 허용) field-value OWS field-name은 대소문자 구분 없음 HTTP 전송에 필요한 모든 메타 데이터 HTTP 헤더 분류 - RFC2616 (과거) 헤더 분류 General 헤더: 메시지 전체에 적용되는 정보 Request 헤더: 요청 정보 Response 헤더: 응답 정보 Entity 헤더: 엔티티 바디 정보 HTTP 바디 - RFC2616 (과거) HTTP/1.1 200 OK Content-Type: text/html;charset=UTF-8 Content-Length: 3423 ... ... 부분이 ..
[어서와! 자료구조와 알고리즘은 처음이지?] 01. 선형 배열
2022. 6. 20. 02:52
자료구조와 알고리즘/어서와! 자료구조와 알고리즘은 처음이지?
본 문서는 어서와! 자료구조와 알고리즘은 처음이지? 강의를 보고 제 주관대로 정리한 글입니다. 선형 배열 (Linear Array) 같은 종류의 데이터 줄지어 늘어놓은 것 각각의 원소는 인덱스라는 번호가 있는데, 일반적으로 0부터 시작함 파이썬에서는 리스트(list)라는 데이터 타입으로 배열 사용 일반적인 배열보다 여러 추가 기능이 있음 일반적인 배열과 달리 여러 데이터 타입 사용 가능 파이썬 리스트의 연산들 리스트의 길이와 무관하게 상수 시간 O(1)에 실행할 수 있는 연산 원소 덧붙이기 .append() 끝에서 꺼내기 .pop() 리스트 길이에 비례하는 선형 시간 O(n)이 걸리는 연산 원소 삽입하기 .insert() 원소 삭제하기 .del() 원소 탐색하기 .index() 정렬 sorted() 파이..
[모든 개발자를 위한 HTTP 웹 기본 지식] 06. HTTP 상태 코드
2022. 6. 20. 02:28
Network/모든 개발자를 위한 HTTP 웹 기본 지식
본 문서는 모든 개발자를 위한 HTTP 웹 기본 지식 강의를 보고 제 주관대로 정리한 글입니다. 상태 코드 (Status Code) 클라이언트가 보낸 요청의 처리 상태를 응답에서 알려주는 기능 1xx (Informational): 요청 처리 중, 거의 사용되지 않음 2xx (Successful): 요청 정상 처리 3xx (Redirection): 요청을 완료하려면 추가 행동이 필요 4xx (Client Error): 클라이언트 오류 5xx (Server Error): 서버 오류 상태 코드를 위와 같이 나눔으로써 클라이언트가 모르는 상태 코드를 서버가 반환해도 상위 상태 코드로 해석해서 처리, e.g., 299 -> 2xx (Successful) 2xx (Successful) 클라이언트의 요청을 성공적으로..
[코드숨] 리액트 2주 차 회고
2022. 6. 19. 18:21
교육/코드숨
코드숨의 소프트웨어 개발의 지혜 9기 과정을 시작한 지 벌써 2주가 지났다. 아직 과제를 진행하면서 구현의 어려움을 느낀 적은 크게 없지만, 코드 품질에 대해 많이 고민하게 되는 2주였다. 특히 공부 또는 개발에 대한 습관이나 태도의 변화가 컸던 2주가 아니었나 싶다. 지난 회고 때 무엇을 배웠나 보다는 무엇을 할 수 있게 되었나를 작성해 보라는 피드백을 받았는데 코드숨을 시작하면서 바뀐 부분 위주로 적어 보려 한다. 블로그 코드숨을 시작하면서 나에게 가장 큰 변화는 블로그를 시작했다는 것이다. 그동안 개발 블로그를 운영할 생각을 갖고는 있었지만 어떻게 운영할지 정하지 못했다는 핑계로 막상 시작은 못 하고 있었다. 그러던 중 코드숨 회고와 TIL을 많은 사람들이 볼 수 있는 곳에 작성해야겠다는 동기로 그..
[모든 개발자를 위한 HTTP 웹 기본 지식] 05. HTTP 메서드 활용
2022. 6. 19. 17:48
Network/모든 개발자를 위한 HTTP 웹 기본 지식
본 문서는 모든 개발자를 위한 HTTP 웹 기본 지식 강의를 보고 제 주관대로 정리한 글입니다. 클라이언트에서 서버로 데이터 전송 정적 데이터 조회 GET 사용 이미지, 정적 텍스트 문서 등 동적 데이터 조회 GET 사용 검색, 게시판 목록에서 정렬 또는 필터에 주로 사용 쿼리 파라미터로 데이터 전달 HTML Form 데이터 전송 POST 전송 Content-Type: application/x-www-form-urlencoded 사용 Form의 데이터를 메시지 바디로 전송(key=value 형식) 전송 데이터는 url encoding 처리 GET 전송 GET으로 요청하면 쿼리 파라미터로 데이터가 전송 리소스 변경에는 사용하면 안 되고, 조회에만 사용! Content-Type: multipart/form-..
[모든 개발자를 위한 HTTP 웹 기본 지식] 04. HTTP 메서드
2022. 6. 18. 08:56
Network/모든 개발자를 위한 HTTP 웹 기본 지식
본 문서는 모든 개발자를 위한 HTTP 웹 기본 지식 강의를 보고 제 주관대로 정리한 글입니다. API URI 설계 가장 중요한 것은 리소스 식별 회원 관련 API를 설계한다고 했을 때, 등록, 수정, 조회는 리소스가 아니다. 회원이라는 개념 자체가 리소스 -> 회원 리소스를 URI에 매핑 등록, 수정, 조회 같은 기능들은 메서드를 이용 회원 기능 API URL 설계 회원 목록 조회 /members 회원 조회 /members/{id} 회원 등록 /members/{id} 회원 수정 /members/{id} 회원 삭제 /members/{id} 계층 구조상 상위를 컬렉션으로 보고 복수단어 사용 권장(member -> members) HTTP 메서드 종류 주요 메서드 GET: 리소스 조회 POST: 요청 데이터..
TIL - 20220617
2022. 6. 17. 23:56
TIL
Controlled Component vs Uncontrolled Component 코드숨 과제를 진행하면서 처음 작성했던 코드를 useRef()를 사용한 코드로 수정하려다가 useRef()가 어느 케이스에 사용되는지 정확히 알고 있는가란 질문을 받았다. 처음 작성했던 코드는 다음과 같이 상태를 이용해서 input 엘리먼트의 value를 관리하던 코드다. // Controlled Component const TodoForm = ({ onSubmit }) => { const [title, setTitle] = useState(''); const handleChange = (e) => { setTitle(e.target.value); }; const handleSubmit = (e) => { e.preven..
TIL - 20220616
2022. 6. 17. 00:49
TIL
Flutter Clean Architecture 현재 실무에서 Flutter로 개발 중인 어플에 꽤 큰 규모의 업데이트가 필요한데, 보다 좋은 구조를 갖게 하기 위해서 클린 아키텍처에 대해 공부했다. 현재의 구조도 나름 클린 아키텍처를 적용한 거지만, 오랜만에 다시 공부해보니 또 새로운 인사이트가 있었다. 관심 있으면 다음 링크를 참고 바란다. https://github.com/devmuaz/flutter_clean_architecture GitHub - devmuaz/flutter_clean_architecture: A flutter clean architecture series, the way we build clean apps. A flutter clean architecture series, th..
[모든 개발자를 위한 HTTP 웹 기본 지식] 03. HTTP 기본
2022. 6. 16. 20:42
Network/모든 개발자를 위한 HTTP 웹 기본 지식
본 문서는 모든 개발자를 위한 HTTP 웹 기본 지식 강의를 보고 제 주관대로 정리한 글입니다. HyperText Transfer Protocol 모든 것이 HTTP HTML 문서나 텍스트뿐만 아니라 이미지, 음성, 영상 등의 파일, API에 주로 쓰이는 JSON, XML까지 거의 모든 형태의 데이터 전송이 가능 서버 간에 데이터를 주고 받을 때도 대부분 HTTP를 사용 HTTP 역사 HTTP/0.9 1991년: GET 메서드만 지원, HTTP 헤더 X HTTP/1.0 1996년: 메서드, 헤더 추가 HTTP/1.1 1997년: 가장 많이 사용, 우리에게 가장 중요한 버전 RFC2068 (1997) -> RFC2616 (1999) -> RFC7230~7235 (2014) HTTP/2 2015년: 성능 개..