본문 바로가기

👩‍💻TIL/기술면접14

클린코드와 코드 리팩토링 클린코드와 리팩토링 “컴퓨터가 이해할수 있는 코드는 어느 바보나 다 짤 수 있다. 좋은 프로그래머는 사람이 이해할 수 있는 코드를 짠다.” Martin Fowler 프로젝트를 하게되면 여러 명의 개발자가 투입되어 소스를 공유하며 코드 작업을 한다. 그리고 프로젝트가 완성되면 유지보수를 하게 될 개발자가 쉽고 빠르게 코드분석을 할 수 있도록 해야한다. 따라서 개발자에게 있어 클린코드와 리팩토링은 필수 사항이다. 📌그래서, 클린코드란? 클린코드는 가독성이 높은 코드를 말한다. 가독성을 높이려면 다음과 같이 구현해야 한다. 네이밍이 잘 되어야 함 오류가 없어야 함 중복이 없어야 함 의존성을 최대한 줄여야 함 클래스 혹은 메소드가 한가지 일만 처리해야 함 얼마나 코드가 잘 읽히는 지, 코드가 지저분하지 않고 정.. 2020. 2. 13.
[web] 쿠키(cookie)와 세션(session)의 개념/차이/용도/작동방식 [web] 쿠키(cookie)와 세션(session)의 개념/차이/용도/작동 쿠키와 세션을 이해하기 위해서는 먼저 http의 특징에 대해 이해하면 도움이 됩니다. 비연결성(Connectionless) HTTP(Hypertext Transfer Protocol)는 인터넷상에서 데이터를 주고 받기 위해 서버/클라이언트 모델을 따르는 통신규약을 말합니다. 이 HTTP 프로토콜에는 비연결성(Connectionless)과 비상태성(Stateless)이라는 특징이 있습니다. 이는 서버의 자원을 절약하기 위해 모든 사용자의 요청마다 연결과 해제의 과정을 거치기 때문에 연결 상태가 유지되지 않고, 연결 해제 후에 상태 정보가 저장되지 않는다는 것입니다. 하지만, 이로 인해 사용자를 식별할 수 없어서 같은 사용자가 요청.. 2020. 2. 11.
[자료구조] 스택 (STACK), 큐(QUEUE) 개념/비교 /활용 예시 [자료구조] 스택 (STACK), 큐(QUEUE) 개념/비교 /활용 예시/ 실생활 활용 스택 (STACK)이란? 📌 스택의 개념 스택(stack)이란 쌓아 올린다는 것을 의미한다. 따라서 스택 자료구조라는 것은 책을 쌓는 것처럼 차곡차곡 쌓아 올린 형태의 자료구조를 말한다. 📌 스택의 특징 스택은 위의 사진처럼 같은 구조와 크기의 자료를 정해진 방향으로만 쌓을수 있고, top으로 정한 곳을 통해서만 접근할 수 있다. top에는 가장 위에 있는 자료는 가장 최근에 들어온 자료를 가리키고 있으며, 삽입되는 새 자료는 top이 가리키는 자료의 위에 쌓이게 된다. 스택에서 자료를 삭제할 때도 top을 통해서만 가능하다. 스택에서 top을 통해 삽입하는 연산을 'push' , top을 통한 삭제하는 연산을 'po.. 2020. 2. 1.
[OS]프로세스(Process)와 스레드(Thread)의 차이/멀티 프로세스와 멀티 스레드의 개념 ,특징, 장단점 [OS] 프로세스(Process)와 스레드(Thread)의 차이/멀티 프로세스와 멀티 스레드의 개념 , 특징, 장단점 1. 프로세스(Process)와 스레드(Thread) 먼저, 프로세스(process)란 무엇일까? 프로세스는 단순하게 말하면 일을 처리하는 일련의 과정을 말합니다. 예를 들어, 아침에 일어나 학교에 가는 과정도 하나의 프로세스라고 할 수 있습니다. 아침에 일어나서 씻고 준비를 한다. 역으로 걸어간다 지하철을 탄다 역에서 내려 학교로 간다. 💡 컴퓨터에게는 프로세스란 운영체제로부터 시스템 자원을 할당받는 작업의 단위 컴퓨터에서 연속적으로 실행되고 있는 프로그램 메모리에 올라와 실행되고 있는 프로그램의 인스턴스를 말합니다. 💡 하나의 프로세스는 크게 코드영역(code), 데이터 영역(date.. 2020. 1. 30.