좋은 테스트 코드를 위한 고민
경험에 따라 다르겠지만 테스트 코드는 아마도 주니어 레벨에서는 대부분 생소하기도 하고 간과하기 쉬운 것 같다. 다행이도 나는 이전 실무 경험을 통해 테스트 코드를 접해볼 수 있었고 심지어 꽤 많이 작성해보았다. 하지만 그럼에도 불구하고 좋은 테스트코드를 작성했다고는 감히 말할 수 없을 것 같다. 오늘은 좋은 테스트 코드를 어떻게 하면 작성 할 ...
경험에 따라 다르겠지만 테스트 코드는 아마도 주니어 레벨에서는 대부분 생소하기도 하고 간과하기 쉬운 것 같다. 다행이도 나는 이전 실무 경험을 통해 테스트 코드를 접해볼 수 있었고 심지어 꽤 많이 작성해보았다. 하지만 그럼에도 불구하고 좋은 테스트코드를 작성했다고는 감히 말할 수 없을 것 같다. 오늘은 좋은 테스트 코드를 어떻게 하면 작성 할 ...
DB 에서 조건 검색을 하면 어떻게 될까? SELECT * FROM my_table WHERE name = "Brian"; 보통 이런식의 검색은 테이블안에 있는 모든 레코드/row 를 훑어서 찾는다. 이런식의 검색을 full scan 이라고 하고 테이블 안에 레코드의 개수가 늘어날수록 검색시간도 선형적으로 늘어난다. 검색시간을 줄이고 더 효율적...
REST API 웹개발자라면 REST API 를 이미 알고 있거나 사용해보았을것이다. 사실 개발자가 아니더라도 우리는 REST API 를 거의 매일 사용할 것이다. REST API 는 네트워크 통신상에서 두 주체가 자원을 (resource) 주고 받는 방식을 정의한다. 서버와 클라이언트 또는 서버와 서버사이에서 사용할 수 있다. 리소스는 사진, ...
정의 쿠키, 세션 스토리지, 로컬 스토리지 모두 브라우저에서 관리하고 사용하는 key-value 저장소이다. 비슷하면서도 몇가지 차이점이 존재한다. 이미지 출처 stackoverflow 데이터를 담을수 있는 용량 사용기한 (expiry) 서버/클라이언트 사이드 접근성 HTTP 요청 포함 여부 애초에 브라우저에 저장소가 왜...
하루 하나씩 정리해보는 지식노트 프로세스와 스레드 프로세스 프로세스는 실행중인 프로그램으로 볼 수 있고 하나 이상의 스레드로 구성이 된다. 스레드 스레드는 프로세스 안에서의 하나의 실행 흐름이다. 프로세스와 스레드 메모리 영역 구성 text segment - 프로그램을 구성하는 코드/명령들이 load 되는 영역. data segment...
2024년 말, 고민 끝에 복합적인 이유로 인해 나는 스프링을 공부해보기 시작했다. 일단 가장 걱정은 자바랑 친숙하지 않다는 것이었다. -> 그래도 대학교 수업때 사용해던 경험이랑 안드로이드 프로그래밍을 열심히 해보았던 경험이 있어서 완전히 백지상태는 아니였다. 그리고 요즘은 추세가 Java 에서 Kotlin 으로 많이...
SSL/TLS 인증서 웹사이트에서 HTTPS 를 사용한 통신은 거의 필수이다. HTTPS 는 HTTP 위에 SSL/TLS 프로토콜을 사용하고 이 프로토콜의 핵심 부분중 하나는 인증서 (certificate) 이다. 인증서는 certificate authority (CA) 로부터 발급이되며 CA 로부터 서명이된 공개키이다. CA 는 공개키 소유자 (웹...
토스 Next Developer 공채에 Python developer 포지션이 흥미있어보여서 지원하게 됬다. 채용 프로세스 1차는 과제 전형으로 주어진 시간 안에 사전에 공유된 기술스택을 배이스로한 과제를 해결해 제출하는 방식이다. 기술스택은 Django 가 메인인데 써본적이 없다. 시간이 많이 없었기 때문에 이 친구의 핵심만 빠르게 익힐수 있도록 ...
웹 프레임워크 배우다 보면 보안과 관련된 여러 약자를 마주하게 된다. 보통 요청이나 응답 헤더에서 볼 수 있는데 정확히 이해하고 있지 않아서 좀 더 알아보는 시간을 가졌다. CORS - Cross Origin Resource Sharing CORS 는 서로 다른 origin 을 가지는 클라이언트와 서버가 자원을 공유 할 수 있게 해준다. 여기서 o...
What is HTTP? HTTP (Hypertext Transfer Protocol) 는 어플리케이션 계층에 있는 통신 규약이다. 클라이언트-서버 모델을 따르고 데이터 (hypermedia documents) 를 주고 받기 위해 사용된다. 클라이언트가 요청을 보내면 서버는 해당 요청에 대한 응답을 제공한다. 대표적으로는 인터넷이다. 인터넷상에서의 대...