728x90

🌳 DOM Tree (Document Object Model)

DOM은 웹 문서를 트리(Tree) 형태로 표현한 구조야. **HTML 문서 안의 모든 요소(태그, 텍스트, 속성)**를 객체처럼 다룰 수 있게 해주지.


DOM Tree 예시 다이어그램

HTML 예시

 
<!DOCTYPE html>
<html>
  <head>
    <title>My Page</title>
  </head>
  <body>
    <h1>Hello</h1>
    <p>Welcome!</p>
  </body>
</html>

나무 모양 다이어그램:


DOM 이해 비유

  • document → 전체 나무
  • html → 큰 가지
  • head, body → html 아래 두 갈래 큰 가지
  • 태그들 → 잎사귀
  • 텍스트 → 잎사귀에 적힌 글자

🌐 BOM (Browser Object Model)

DOM은 “문서”를 다루고, BOM은 브라우저 자체를 다루는 개념이야.

  • BOM은 DOM보다 더 “바깥쪽”에 있음
  • 웹 페이지가 아닌, 브라우저 환경 자체를 다루는 객체들이 BOM에 포함됨
  • 대표적인 BOM 객체:
    • window
    • navigator
    • screen
    • history
    • location

✅ 주요 BOM 객체 설명

1. window

  • 최상위 객체 (DOM, BOM 둘 다 포함)
  • 비유: 브라우저 창 전체
  • 예시:
window.alert("Hello!");
console.log(window.innerWidth);

2. document

  • DOM의 진입점
  • HTML 문서를 표현
  • 예시:
     
document.getElementById("title");

3. navigator

  • 브라우저 정보
  • 예시:
console.log(navigator.userAgent);
console.log(navigator.language);

4. screen

  • 사용자 화면 해상도 정보
  • 예시:
console.log(screen.width);
console.log(screen.height);

5. location

  • 현재 URL 정보 + 이동 기능
  • 예시:
console.log(location.href);
location.href = "https://www.google.com";

6. history

  • 사용자가 방문한 페이지 이력
  • 예시:
history.back();
history.forward();

✅ DOM vs BOM

구분DOMBOM
역할 문서(HTML)를 객체로 표현 브라우저 환경 자체를 다룸
최상위 객체 document window
예시 document.getElementById window.alert, location.href
 

✅ 비유로 정리

  • DOM → 웹페이지의 설계도
  • BOM → 브라우저라는 집 전체의 컨트롤러
  • window → 집 전체
  • document → 집 안의 설계도
  • navigator → 집의 신분증
  • screen → 집의 창문 크기
  • location → 집 주소
  • history → 집 방문 내역
728x90
728x90

💡 프론트엔드란? – 사용자와 만나는 첫 화면

프론트엔드는 사용자가 직접 보는 웹·앱의 UI를 구성하고, 버튼 클릭, 입력창 등 사용자 행동에 반응하는 기능을 구현하는 분야입니다. 화면을 꾸미는 것을 넘어, 사용자 경험을 설계하는 핵심 역할을 합니다.

🛠 어떤 일을 하나요? – UI 구성, 반응형 설계, API 연동

  • UI 구성: HTML, CSS로 화면 구조와 스타일 구성
  • 인터랙션 개발: JavaScript로 버튼, 모달 등 기능 구현
  • API 연동: 서버에서 가져온 데이터를 화면에 표시

🔧 사용하는 기술들 – HTML, CSS, JavaScript, React 등

  • HTML/CSS: 화면 구조와 디자인을 구성하는 기본 언어
  • JavaScript: 동적인 기능과 로직 처리 (ex. 클릭 이벤트)
  • React/Vue: 효율적인 UI 구성 도구
  • Git, Figma: 협업 및 디자인 도구

🗺 프론트엔드 입문 로드맵 (2025년 기준)

1. 웹 기초 학습
- HTML/CSS로 정적 웹페이지 만들기

2. JavaScript 기본 문법 익히기
- 변수, 함수, 조건문, DOM 조작 등

3. 인터랙션 구현
- 이벤트 처리, API(fetch) 활용

4. React 기초 학습
- 컴포넌트, 상태 관리, 라우팅 등

5. 실전 미니 프로젝트
- 투두 앱, 영화 검색, 날씨 앱 등

6. 포트폴리오 제작 & 배포
- GitHub Pages, Netlify 활용

📚 추천 자료 & 공부법

🚀 나에게 맞는 진로 고민 + 포트폴리오 전략

  • 사용자 중심의 직관적인 설계에 관심 있다면 프론트엔드에 적합
  • UI/UX에 민감하고, 시각적 표현을 좋아하는 성향도 잘 맞음
  • 포트폴리오는 직접 만든 앱과 사이트를 중심으로 구성 (GitHub, Notion 링크 활용)

✅ 마무리

프론트엔드는 웹과 앱에서 사용자와 서비스가 만나는 접점입니다. 직접 눈에 보이는 결과물이 나오기 때문에 성취감도 높고, 실전 프로젝트도 빠르게 경험할 수 있어요. 오늘부터 하나씩 따라하며 나만의 서비스에 도전해보세요!

728x90

+ Recent posts