--- title: Web 개발 학습하기 slug: Learn tags: - Beginner - CSS - HTML - Index - Intro - Landing - Learn - Web - 웹 - 초보자 - 학습 translation_of: Learn ---
{{LearnSidebar}}

환영합니다! 이곳에서 다루는 문서들은 웹개발을 처음 접하는 초보자를 대상으로 합니다. 그리고 간단한 웹사이트를 만들기 위해 필요한 모든 것들을 담고 있습니다.

여기에서는 여러분을 "초보자"에서 "전문가"로 이끄는 걸 목표로 하지 않습니다. 다만, 여러분을 "초보자"에서 "익숙한 단계"로 이끄는 걸 목표로 합니다. 그 이후에는 자신만의 스타일을 찾아야만 합니다. 그리고 그때 보게 될 MDN의 나머지 문서들이나 다른 문서들은 많은 사전지식을 필요로 할 것입니다.

코딩을 처음 접하는 분들에게 웹개발은 어려울 수 있습니다(그렇지만 저희가 최선을 다해 설명해드릴께요!). 그렇지만 당신이 웹 개발을 배우고 싶은 학생이든, 수업 자료를 찾는 선생님이든, 그리고 취미로 웹기술을 알고 싶은 사람이든 상관없이 편하게 공부할 수 있도록 하겠습니다.

새로운 콘텐츠?

이 곳의 내용은 정기적으로 추가되고 있습니다. 변경점을 추적하기 위해 Learning area release note를 관리하기 시작했으니, 정기적으로 확인해주세요!

원하는 주제나 빠진 것 같은 부분에 대한 질문은 저희의 Discourse 포럼에 남겨주세요.

어디서 시작해야 하나

참고: 기술 정의에 대한 용어집를 제공합니다. 

{{LearnBox({"title":"Random glossary entry"})}}

다루는 주제

다음은 MDN 학습 영역에서 다루는 모든 주제의 목록입니다.

웹 개발 시작하기
초보자가 쉽게 따라할 수 있도록 웹 개발을 간단히 소개합니다.
HTML — 웹 구축하기
HTML은 웹사이트에 들어갈 내용을 작성하고, 해당 내용이 의미나 목적을 정의할 때 사용하는 언어입니다. 이 곳에서는 HTML을 자세히 설명합니다.
CSS — 웹 스타일링 익히기
CSS는 웹을 꾸미는 데 사용합니다. 애니메이션과 같은 동작을 추가하거나 웹 컨텐츠의 스타일을 지정할 때 사용할 수 있습니다. 이 곳을 통해 CSS 활용법을 알 수 있습니다.
JavaScript — 동적인 클라이언트 사이드(혹은 프론트 엔드) 언어
JavaScript는 동적 기능을 웹 페이지에 넣을 때 사용하는 스크립트 언어입니다. 이  문서는 JavaScript를 이해하고 작성하는데 익숙해지는데 필요한 핵심적인 내용을 모두 가르쳐줍니다.
Web forms — 사용자 데이타로 작업하기
Web forms는 사용자와 정보를 주고받기 위한 강력한 도구입니다 — 주로 사용자의 정보를 수집하거나, 유저 인터페이스를 제공하기 위해 사용됩니다. 관련 문서에서 web 폼을 구성하고, 꾸미고, web form과 통신하기 위해 필요한 핵심적인 내용을 모두 다룹니다.
접근성 — 모두를 위한 웹사이트
접근성은 신체적인 장애나 지역과 장비및 기타 개인간 차별을 유발하는 요소에 상관없이 누구나 웹에 접근할 수 있도록 하기 위한 코드 작성법을 다룹니다. 이 문서를 통해 필요한 모든 내용을 학습할 수 있습니다.
Web 성능 — 웹사이트를 빠르고 즉시 반응하도록 만들기 
Web 성능은  사용자의 인터넷 대역이나, 화면 크기, 네트워크나 장비의 능력에 관계없이, 웹 어플리케이션의 다운로드를 빠르게하고 사용자의 조작에 즉시 반응하도록 하는 기술입니다. 
도구와 테스트
크로스 브라우징(cross browsing) 도구처럼 개발자가 개발을 하는 데 도움을 주는 도구를 설명합니다.
서버 사이드(혹은 벡 엔드) 웹 프로그래밍
클라이언트측 웹 개발에 집중해도 서버가 작동하는 방식을 파악하는 것이 여전히 유용합니다. 이 곳에서는 서버측의 작동 방식 간단히 알려주고, 두가지 유명한 프레임워크인 Django(Python)과 Express (node.js)를 사용하여 서버측 응용 프로그램을 빌드하는 방법을 알려줍니다.

코드 예제 얻기

학습 영역에서 만날 수 있는 코드 예제는 모두 GitHub에서 사용할 수 있습니다. 코드 예제를 컴퓨터로 복사하고 싶다면, 가장 쉬운 방법은 가장 최신의 master 코드 브랜치를  ZIP으로 다운로드 (<-클릭하면 zip 파일이 다운로드됨) 받는것입니다.

자동 업데이트가 되는 좀더 유연한 방법으로 저장소(repo)를 복사하고 싶다면, 다음과 같이 좀 더 복잡한 과정을 따라하면 됩니다.

  1. 컴퓨터에 Git을 설치합니다. 이것은 GitHub가 사용하는 버전 관리 소프트웨어 입니다.
  2. 명령 프롬프트 (윈도우) 혹은 터미널(리눅스, 맥OSX)의 컴퓨터에서 엽니다.
  3. 명령 프롬프트/터미널이 가리키는 현재 폴더에 learning area 저장소를 복사하려면 다음 명령어를 사용하십시오:
    git clone https://github.com/mdn/learning-area
  4. 해당 위치에 learning-area 폴더가 생성된 것을 확인할 수 있습니다.

만약 learning-area를 받은지 오래됐다면, 아래 단계를 거쳐 GitHub에서 earning-area에 대한 최신 정보를 업데이트 받을 수 있습니다:

  1. 명령 프롬프트/터미널에서, cd명령어를 사용하여 learning-area 디렉토리로 이동하십시오.  예를 들어 만약 상위 디렉토리에 있다면:
    cd learning-area
  2. 아래의 명령어를 사용하면 저장소에 있는 정보를 최신 상태로 업데이트합니다:
    git pull

연락처

질의 사항이 있는 경우 메일링 리스트IRC 채널를 통해 메세지를 보내주실 수 있습니다. 내용 오류나 새로운 학습 주제 요청, 이해가 되지 않는 사항에 대한 질의 등 무엇이든 환영합니다.

이 모든 학습 과정은 재능 기부자들의 도움으로 만들 수 있었습니다. 컨텐츠의 개발, 개선에 대해 도움을 주실 것에 관심이 있는 경우, 도움을 주는 방법을 한번 봐주시어 메일링 리스트IRC 채널을 통해 소통하신다면 큰 힘이 될 것입니다. 저희는 여러분들이 필요합니다. 이 학습 플랫폼을 개선하는데 열정을 가지신 분이라면 누구든지 환영합니다.

관련 정보

** 이곳에 있던 한국어 사이트는 새로 개정되어 승인된 English (US) 버전과 동기하여 비교하기 쉽도록 아래쪽 사용자 추천 사이트 로 내렸습니다.**

영어 원문에 있는 사이트

Mozilla Developer Newsletter
모든 웹 개발자를 위한 모질라 재단의 뉴스레터
JavaScript 배우기
Web 개발자 지망생을 위한 훌륭한 자료  — 짧은 강좌와 대화형 테스트, 자동화된 평가로 지도하는 인터랙티브 환경에서 JavaScript를 배웁니다. 처음 40개 강좌 는 무료이며, 한번의 작은 금액 지불로 전체코스를 수강할 수 있습니다.
Web Demystified 
Jérémie Patonnier가 만든 웹 개발을 초보자가 기본을 쌓기에 좋은 강의
Codecademy
처음으로 프로그래밍 언어를 공부하고 바로 실습할 수 있음
BitDegree
게임화를 적용한 과정으로 기초 코딩 이론을 배울수 있음. 초보자를 대상으로 함
Code.org 
기초 코딩 이론과 연습. 주로 아이들이나 완전 초보자를 대상으로 함
EXLskills
정보 기술을 배우는 무료 강의를 제공. 프로젝트 기반의 학습 제공되며 멘토들에게 직접 조언을 구할수도 있음
freeCodeCamp.com
웹 개발을 배우기 위한 튜토리얼과 프로젝트가 있음
Web Literacy Map
초보자가 웹을 활용하고 최신 기술을 배울 수 있는 사이트로 학습 활동을 위한 자료도 제공함
Edabit
다양한 코딩 문제를 접할 수 있음

영어 원문에 없는 사용자 추천 사이트 

프로그래머스
프로그래밍의 기초와 실습을 동시에 할 수 있음
생활코딩
웹에 대한 기초를 쌓기에 유익함
edwith
부스트 코스를 통해 웹 개발을 심도 있게 배울 수 있음
Baekjoon Online Judge
다양한 코딩 문제를 풀어볼 수 있음
Teaching activities
모질라 재단이 운영하는 학습 플랫폼으로 기본적인 웹 활용 방법과 개인 정보 보호부터 JavaScript와 Minecraft 해킹까지 배울 수 있음
w3schools 
세계에서 가장 큰 웹 개발자 사이트가 모토이며, 모질라와는 달리 설명하는 문장이 길지않고 짤막한 단문으로 이해하기 쉬우며 예제 중심으로 설명하고 있음. 또한 사이트 메뉴가 원하는 주제를 찾기 쉽게 구성 되어 있음