본문 바로가기
반응형

분류 전체보기110

클린 아키텍쳐 - 소개 설계는 무언가를 만들기 위해 기초를 마련하는 일을 말합니다. 건물을 지을 때는 기둥을 어떤 식으로 배치해서 하중을 적절히 분산할 것인지 고려해야 합니다. 그래야 건물이 무너지지 않을 테니까요. 프로그램을 만들 때도 프로그램이 앞으로 어떻게 사용될 것인지 어떻게 변화해갈 것인지를 고려한 적절한 아키텍쳐의 설계가 필요합니다. 그래야 우리의 멘탈이 무너지지 않게 지켜낼 수 있습니다. 제 MBO에는 분석/설계가 들어있지만 설계를 어떤 식으로 해야한다는 설명은 들은 적은 없었습니다. 다른 사람들을 봐도 특별히 무언가를 하는 것 같지 않고 그냥 ‘이렇게 하면 되겠지?’ 라고 생각하는 과정을 설계라고 부르는 듯 했습니다. 그리고 그런 식으로 만들어진 프로그램에 새로운 개발 요청이 들어오면 우리 프로그램의 구조상 그것.. 2023. 4. 6.
쿠키와 세션, 그리고 토큰 웹 서비스는 대부분 사용자별로 맞춤형 서비스를 제공합니다. 사용자의 정보를 담을 수 있는 '계정'을 만들기 위해 먼저 회원가입을 요구하고, 해당 계정의 활동내역을 차곡차곡 저장해서 나중에 활용할 수 있도록 합니다. 시청 내역을 가지고 새로운 영상을 추천해 주거나, 쇼핑할 때마다 적립해 주었던 포인트를 가지고 새로운 상품을 구입할 수 있도록 해주는 것이죠. 사용자는 자신이 계정의 소유자임을 인정받기 위해 서버에 가입할 때 기재했던 아이디와 패스워드 정보를 넘겨줘야 합니다. 이 행위를 로그인이라고 합니다. 좀 더 포괄적인 의미에서 인증(Authentication)이라고 할 수도 있습니다. 서버에서는 사용자가 제출한 아이디와 패스워드 정보를 DB에 저장된 것과 대조합니다. 두 가지 정보가 서로 일치한다면 사용.. 2023. 4. 5.
HTML&CSS 작성 치트키, Emmet 에밋 사용법 Emmet은 HTML, CSS 를 간편하게 작성할 수 있도록 도와주는 툴킷입니다. 1. 도구 VSCode에 내장되어 있어 별도의 설치없이 Tab 키만 누르면 사용할 수 있습니다. 인텔리제이 역시 에디터에서 기본적으로 Emmet을 지원하며, 에밋을 작성한 뒤 Tab 키를 누르면 HTML로 변환됩니다. setting > editor > emmet 에서 Tab 대신 다른 키로 변경이 가능합니다. 2. 뼈대 만들기 ! + Tab !를 입력한 뒤 Tab키를 누르면 위와 같은 html 기본 골격과 메타태그를 만들어줍니다. 3. 살 붙이기 아래 HTML은 기본적인 웹 페이지의 구조를 나타낸 것입니다. HTML은 기호도 많이 들어가고 양도 많아 직접 타이핑하는 것이 굉장히 귀찮습니다. 하지만 Emmet을 사용하면 축약.. 2023. 3. 21.
TCP/IP 4계층 모델은 어떻게 사용될까? OSI 7계층과의 차이 학교에서는 여전히 OSI 7 계층을 가르치고 시험에도 자주 나옵니다. 하지만 실제로는 TCP/IP 계층을 더 많이 사용합니다. 연구 시기는 비슷하지만 TCP/IP가 먼저 발표되기도 했고, 4계층에 불과해 유연하고, 구현하기도 쉽기 때문입니다. TCP/IP 4계층이 표준으로 자리잡으면서 OSI 7 계층은 학교에서만 배우는 모델이 되어버렸습니다. 하지만 OSI 7 계층 역시 여전히 이론적, 교육적 용도에서는 가치가 있다고 할 수 있습니다. 비교해보면, OSI 7계층 TCP/IP 4계층 Application 응용 Application Presentation 표현 Session 세션 Transport 전송 Transport Network 네트워크 Internet DataLink 데이터링크.. 2023. 3. 16.
2023.3 원티드 프리온보딩 챌린지(FE) 후기 "2주 간의 강의" "4주 간의 취업 지원" "총 1000만원의 상금" 을 걸고 진행되는 원티드 프리온보딩 챌린지에 참가하게 되었습니다. 비용이나 자격 제한이 없기 때문에 관심있는 사람이라면 누구나 참여할 수 있습니다. 프리온보딩 pre (free가 아님) + onboarding이 무슨 뜻인지 몰라서 찾아봤는데 '온보딩'이 신입 직원이 잘 적응할 수 있도록 돕는 것을 의미한다고 하네요. pre가 '이전'을 의미하는 접두어이니 취업을 목표로 하는 여러분들을 잘 도와주겠다 뭐 그런 의미겠죠? 프론트엔드 외에도 백엔드나 iOS, 데이터와 디자인까지 총 5가지 분야로 지원할 수 있습니다. 강의는 저녁 7시부터 10시까지 총 3시간이며, 1시간의 이론 강의, 1시간 실습을 진행하고 마지막 1시간은 개발 관련 토크.. 2023. 3. 16.
타입스크립트와 자바스크립트의 차이 타입스크립트는 자바스크립트의 모든 기능을 지원하며 단지, 자바스크립트 위에 타입 시스템이라는 추가적인 레이어를 추가한 것입니다. 즉, 여러분이 작성한 자바스크립트 코드는 타입스크립트라고 할 수 있습니다. 타입스크립트의 주요 이점은 여러분이 예상하지 못한 돌발 상황을 쉽게 발견할 수 있게 해 주고, 버그의 가능성을 낮춰준다는 점입니다. 자바스크립트와의 차이 자바스크립트를 사용하다보면 자주 undefined를 마주하게 됩니다. 자바스크립트는 타입을 엄격하게 따지지 않기 때문에 '이 값이 왜 여기서 나와?' 하는 경우에는 그냥 undefined로 취급해 버립니다. 이것은 어떻게 보면 장점이라고 할 수도 있습니다. 개발자가 작성한 코드에 사소한 문제가 있더라도 자바스크립트는 최대한 성실하게 코드를 실행하기 위해.. 2023. 3. 13.
반응형