목록WHAT I LEARN/TIL (79)
Nonamed Develog
text는 나중에 작성https://docs.github.com/ko/pull-requests/collaborating-with-pull-requests/working-with-forks/about-forks
어떤 문제가 있었나?예전 프로젝트를 진행할 때, Bootstrap을 처음 사용하는 과정에서 그리드 시스템을 이해하기 어려웠다. 특히 화면 크기에 따라 레이아웃이 어떻게 변화하는지 명확하지 않았다.무엇을 시도했나?기본 HTML 설정Bootstrap을 프로젝트에 포함시키기 위해 CDN 링크를 사용하여 기본 HTML 템플릿을 작성하였다.그리드 시스템- 2개와 3개의 열로 구성된 레이아웃을 만들어 봤고, 화면 크기에 따라 레이아웃이 어떻게 변하는지 확인하기 위해 브라우저 개발자 도구를 사용했다. Column 1 Column 2 Column 3 구성 요소 사용다양한 스타일의 버튼, 네비게이션 바, 카드, 폼 등을 만들어 Bootstrap의 기본 구성 요소를 익혔다..
어떤 문제가 있었나?프로젝트에서 사용자 정보 업데이트 및 비밀번호 변경 기능을 구현하다가 막히는 부분이 있었다. Django의 기본 제공 Form인 UserChangeForm과 PasswordChangeForm을 사용하면 되지만, 기본 동작을 커스텀할 필요가 있었었다. 회원정보수정 부분은 너무 많은 권한이 주어지기 때문에 수정할 부분을 지정해줘야 했고, 특히 비밀번호에 사용자에게 안내 텍스트를 추가하고 링크도 내가 원하는 경로로 설정해야 했다.무엇을 시도했나?CustomUserChangeForm 오버라이딩- Django 기본 UserChangeForm을 상속받아 사용자 정보 업데이트 기능을 커스텀했다. 비밀번호 필드의 도움말을 수정하여 사용자가 비밀번호 변경 페이지로 쉽게 이동할 수 이도록 링크를 추가하..
어떤 문제가 있었나?지난 프로젝트에서 팀 프로젝트에서 Git을 사용해 협업해봤지만 git push, git pull 같은 간단한 명령어만 사용했었다. 여러 명이 동시에 작업하면 코드 충돌이 발생할 수 있어 팀 프로젝트에 어려움을 느꼈다. 브랜치 사용이나 충돌 해결에 대한 지식이 부족해 프로젝트 관리가 비효율적이었다.무엇을 시도했나?이번과 지난 Git & Github 특강을 통해 팀 프로젝트에 필요한 다양한 Git 명령어와 Github 활용법을 배우고 실제로 시도해봤다.브랜치 생성git checkout {branch name} # 브랜치 생성# 브랜치 생성 및 이동git checkout -b {branch name} git switch -c {branch name} # MZ 명령어# 브랜치 이동git..
ERD란?ERD는 Entity Relationship Diagram의 약자로 데이터베이스 설계 과정에서 사용되는 모델링 기법중 하나이다.데이터베이스에 저장될 데이터 엔터티(Entity) 간의 관계(Relationship)를 시작적으로 표현한다.데이터베이스 설계 초기 단계에서 개념적 모델을 만드는데 사용된다.*데이터베이스 설계 단계: 개념적 모델링 ➡️ 논리적 모델링 ➡️ 물리적 모델링데이터베이스 구조를 시각화하여 개발자와 설계자 간 소통을 원활하게 하고, 데이터베이스 구조의 논리적 모순을 조기에 발견할 수 있다.Entity란?Entity: 현실에 존재하는 개별적으로 식별할 수 있는 물리적/추상적인 개체를 의미한다. 각 Entity는 특징을 나타낼 수 있는 Attribute 들을 가지고 있다. 그림과 같이..
그림 한장과 비유로 이해하는 웹 서버의 구조1. Web Server Engine 웹 서버(Web Server)웹 서버는 클라이언트(주로 웹 브라우저)에서 요청한 웹 콘텐츠(HTML 페이지, 이미지, 동영상 등)를 제공하는 소프트웨어/하드웨어다. 주로 HTTP(S) 프로토콜을 사용하여 클라이언트의 요청을 수신하고, 요청된 콘텐츠를 찾아 클라이언트에게 응답한다.*마치 레스토랑의 웨이터와 같다. 고객(클라이언트)이 메뉴(웹 콘텐츠)를 요청하면, 웨이터는 주방(서버 컴퓨터)에서 해당 메뉴를 가져와 고객에게 제공한다. 주로 사용하는 메뉴판(HTTP 프로토콜)을 통해 고객과 소통하며, 요청된 메뉴를 전달한다.웹 서버의 주요 구성 요소웹 서버는 웹 애플리케이션의 출입구와 같다. 모든 클리아언트 요청은 웹 서버를 통해..
그림 한 장(?)으로 웹 구조를 이해해 보자!(A) 클라이언트 → 브라우저사용자가 웹 브라우저를 통해 특정 URL(www.google.com)을 입력하면, 브라우저는 해당 URL에 대한 웹 리소스를 요청하기 위한 작업을 시작한다.클라이언트는 이 과정에서 사용자의 역할을 하며, 브라우저를 통해 인터넷과 상호작용한다.이때 브라우저는 URL을 해석하고 프로토콜(HTTP/HTTPS), 도메인 이름, 경로, 쿼리, 매개변수 등을 분리해 각 요소를 사용하여 다음 단계를 준비한다.요청 메서드(GET 데이터 요청): 사용자가 웹 브라우저에 https://www.example.com을 입력하면 브라우저는 해당 웹 페이지를 서버로부터 가져오기 위해 GET 요청을 보낸다.(B) 브라우저 - DNS(Domain Name Sy..
어떤 문제가 있었나?오늘 Django의 Template System을 이해하고 활용하는 내용을 배웠다. 그중 HTML 파일 내에서 동적인 데이터를 표현하기 위해 DTL(Django Template Lanuage)을 사용하는 방법이 어려웠다. 처음 접하는 DTL 문법이 익숙하지 않아 변수를 출력하거나 반복문을 사용할 때 올바르게 작성하지 못해 예상대로 동작하지 않는 문제가 있었다.무엇을 시도했나?먼저 DTL 문법의 기본적인 규칙들을 학습하기 위해 강의 노트와 튜터님의 말씀대로 Django 공식 문서를 참고했다. 이를 통해 변수를 출력하는 방법과 반복문을 작성하는 기본적인 구조를 익히고, 간단한 예제를 따라 해봤다. 변수를 Template에 전달하고, 그 변수를 올바르게 출력하는 것을 위주로 연습해 봤다.어..