방문을 환영합니다.

컴퓨터 언어 코딩 – HMTL, CSS, Javascript, Python, MATLAB, C#

HTML, CSS 로 만드는 웹페이지 그리고 Javascript

인터넷은 요즘 세상을  살아가는 데 있어서 필수적인 요소라는 것은 그 누구도 부정할 수 없을 것입니다. 

웹페이지는 정보에 편리하게 접근할 수 있고 그 정보의 양이 많을 뿐만 아니라 검색 또한 원활하게 할 수 있기 때문에 아주 편리하고 유용한 수단입니다. 

그리고 대부분의 검색과 정보 습득은 웹페이지를 통해서 진행하게 됩니다. 

우리가 일상생활에서 보는 웹페이지는 단순한 텍스트부터 움직이는 요소 등 다양한 방식으로 우리에게 표출됩니다. 그래서 누구나 한 번쯤은 만들어 보고 싶은 생각이 들게 합니다. 하지만 웹페이지는 파워포인트처럼 그리듯이 만드는 것이 아니라 언어를 입력해서 만들어야 합니다. 물론, 워드프레스나 그와 유사한 각종툴들이 많이 존재합니다. 그래서 쉽게 웹페이지를 근사하게 만들 수 있습니다. 하지만 그렇게 쉬운 툴을 이용했을 때에 더 자신만의 웹페이지로 특화해서 만들기 위해서는 결국 코드를 입력하거나 수정해야 할 것입니다. 

코드를 입력하고 수정하는 것은 처음에 복잡하게 느껴질 수도 있습니다. 그리고 코드를 입력해서 작업하는 것은 전문 개발자들이나 하는 것으로 오해하기 쉽습니다. 

하지만 HTML과 CSS를 입력하거나 수정하는 것은 불가능 하지 않습니다. 오히려 익숙해 지면 더 재미있게 느껴질 수도 있습니다. 물론, 웹페이지에 여러 가지 기능을 추가한다면 백엔드도 알아야 하고, 그에 따라서 숙지해야 할 것이 많을 것입니다. 

하지만 웹페이지는 아주 전문적인 웹사이트를 제외하고 간단하게 프론트엔드만 구성하여도 웹페이지를 방문하는 사람들에게 거의 모든 것을 피력할 수 있습니다. 이런 경우 HTML, CSS의 일부만 숙지하여도 웹페이지 만드는 것이 가능합니다. 추가적으로 웹페이지를 동적으로 구성하려면 Javacsript를 숙지하면 됩니다.    

웹페이지를 만들기 위해서 필요한 언어

웹페이지를 간단하게 구성하기 위해서 필요한 언어

<간단하게 웹페이지를 구성하기 위해서 필요한 언어>

  • HTML(Hyper Text Markup Language) – 필수
  • CSS(Cascading Style Sheets) – 필수
  • Javascript – 선택적

그렇다면 필요한 것은?

웹페이지를 만든다는 것은 정말 흥미로운 일입니다. 이렇게 흥미로운 웹페이지 만드는 작업을 위해서는 어떤 것들이 필요할까요? 

혹시 비용이 많이 필요하다고 생각하는 것은 아닐까요? 하지만 전혀 그렇지 않습니다. 

웹페이지를 만들고 인터넷상에서 나타내기 전이라면 부가적인 비용은 전혀 필요하지 않습니다. 부가적인 비용이 필요한 경우는 자신이 만든 파일을 웹호스팅에 FTP(File Trasfer Protocol)를 통해서 업로드 해야 하는데, 이 때 웹호스팅 비용이 필요합니다. 이 비용은 비싸지 않습니다. 그리고 웹페이지에 알기 쉬운 주소를 부여해 주는 것에는 도메인(Domain)이 필요한데 도메인 구입 비용이 필요합니다. 이는 가격이 저렴한 것부터 존재하는데 일반적으로 이 역시 비싸지 않습니다. 

아무튼, 웹페이지를 만드는 것을 시작하기 위해서 초보자라면 웹호스팅이나 도메인을 먼저 구매하기 보다는 자신의 컴퓨터에서 먼저 어느 정도 작성을 하고 웹호스팅에 업로드하는 것을 추천합니다. 부가적인 비용은 다시 말하지만 그 때부터 필요합니다.

그렇다면 어떤 것들이 필요한지 생각해 보겠습니다. 

우선 컴퓨터가 무조건 필요합니다. 노트북이든 데스크톱이든 필요합니다. 당연한 얘기겠지만 데스크톱의 경우 모니터, 키보드, 마우스도 있어야 합니다. 

그리고 코드를 입력하는 곳이 필요할 것입니다. 아주 예전에는 ‘메모장’에 입력했었던 시절도 있었으나 지금은 비쥬얼 베이직 코드(Visual Basic Code)를 사용하는 것이 대부분입니다. 

비쥬얼 베이직 코드는 SDK(Software Development Kit)의 한 종류로써 웹페이지 제작 뿐만이 아니라 아주 다양한 언어로 개발을 할 수 있는 도구라고 생각하시면 됩니다. 비쥬얼 베이직 코드를 사용하면 단순한 메모장을 사용하는 것 보다 편리한 점이 아주 많습니다. 예를 들어 <html> 이라는 입력 코드를 입력하면 자동으로 종료 코드인 </html> 이 입력 됩니다. 이렇게 자동으로 입력되는 것은 “” 라는 표시, {} 기호 등 입력하면 자동으로 반대 기호가 입력되기도 합니다. 그리고 코드를 입력하기 위해서 알파벳 1개 또는 1개 이상을 입력했을 때 자동으로 추천되는 명령어가 나타나기 때문에 각종 명령어를 모두 정확하게 알지 못해도 추천해주는 명령어 들에서 선택하여 입력할 수 있습니다. 이 부분이 매우 편리한 부분인데 이 기능 덕분에 코드를 입력하는 속도가 매우 빨리질 수 밖에 없습니다. 그 밖에 들여쓰기나 기타 많은 편리함이 존재합니다. 그 부분은 앞으로 사용하면서 자연스럽게 자동적으로 느끼게 될 것입니다.  아무튼, 웹페이지를 만들기 위해서는 비쥬얼 스튜디오 코드(Visual Studio Code)를 다운로드 받아야 합니다. 

아래 다운로드 링크를 추가해 두었으니 클릭하여 다운로드 받으실 수 있습니다. 비쥬얼 베이직 코드(Visual Studio Code)는 무료입니다. 그리고 Window, Linux, Mac 등 모두 사용 가능합니다.

아래 이미지를 클릭하시면 비쥬얼 스튜디오 코드(Visual Studio Code) 다운로드  페이지로  이동합니다.

Visual Studio Code 다운로드를 안내하는 버튼 스타일의 이미지

Python

컴퓨터를 효율적으로 사용할 수 있는 방법 중에서 Python은 정말 좋은 수단이라고 생각됩니다. Python은 초보자도 비교적 접근하기 용이하게 문법을 이해하 쉽습니다. 그리고 {}와 같은 중괄호 대신에 들여쓰기 만으로도 코드의 구조를 표현하기 때문에 간편함이 있을 수 있다고 할 수 있습니다.

처음 HTML 파일을 만들 때 꼭 알아야 할 기본 구조를 설명하는 제목과 HTML 기본 코드가 포함된 한국어 디자인 이미지
처음 HTML 파일을 만들 때 꼭 알아야 할 기본 구조
HTML은 웹페이지의 뼈대를 구성하는 언어입니다. 웹사이트를 만들기 위해 첫 번째로 작성하게 되는 것이 바로 HTML 파일이며, 그 구조를 이해하는 것이 웹 개발의 출발점입니다. 이 글에서는 HTML 파일의 가장 기본적인 구조와 각 태그의 역할을 이미지와 함께 쉽게 설명합니다. HTML 기본 구조 요약표 번호 태그 이름 간략한 설명 1 <!DOCTYPE html> 문서가 HTML5로 작성되었음을 선언 (표준 모드로 해석됨) 2 <html lang=”ko”> HTML 문서의 시작을 나타내며, 언어를 한국어로 설정 3 <head>…</head> 메타데이터와 설정을 담는 영역 (브라우저에 표시되지 않음) 4 <meta charset=”UTF-8″> 문자 인코딩을 UTF-8로 설정 (한글 포함 다양한 문자 지원) 5 <meta name=”viewport” …> 모바일 화면 대응을 위한 반응형 설정 6 <title>…</title> 웹페이지의 제목을 지정 (탭 이름이나 즐겨찾기에 표시됨) 7 <body>…</body> 사용자에게 실제로 보이는 콘텐츠를 포함하는 영역 <!DOCTYPE html> 이 선언은 이 문서가 HTML5 문서라는 것을 웹브라우저에 알려주고 표준 모드로 해석되도록 선언을 하는 역할을 합니다. 이러한 선언이 존재하는 이유는 예전에 HTML 4.01, XHTML 등 HTML도 다양한 문서 유형으로 존재하고 발전해왔습니다. 하지만 결국 HTML5로 통일 되었고, 그 명령을 선언하는 것이 <!DOCTYPE>입니다. 이 선언은 대소문자 구별이 없으나, 대문자로 표현하는 것이 일반적입니다. <html lang=”ko”> … </html> HTML 문서의 시작과 끝을 나타내며 문서의 가장 바깥쪽을 감싸는 루트 요소(root element)이며 HTML 문서 내 모든 코드의 부모 요소입니다. 그리고 같이 사용되는 속성인 lang=”ko”는 언어를 기본적으로 한국어로 설정한다는 의미이고, 웹브라우저, 검색엔진, 음성 낭독기 등에서 콘텐츠를 이해하고 처리하는데 도움을 주게 됩니다. 특히 시각장애인이 스크린 리더를 통해 이 페이지를 읽을 경우에 한국어로 읽어지도록 언어 환경이 자동 설정되는 기능을 하게 됩니다. 더불어 웹페이지를 다국어 페이지로 만들 경우에 lang 속성을 언어마다 다르게 설정하므로써 웹의 접근성을 높일 수 있습니다. <head> … </head> 문서의 정보를 설정하는 영역입니다. 메타데이터를 정의하는 곳인데 이는 사용자가 보는 화면에는 직접 보이지는 않지만 중요한 설정들이 포함됩니다.예를 들어 기본 정보, 설정, 외부 자원 연결을 하는 데 사용이 됩니다. 상세하게는 문자 인코딩 설정, 반응형 디자인 설정, 웹페이지 제목 설정, 외부 Style Sheet의 연결, 외부 Javascript 파일 연결, 같은 문서에 포함되는 CSS의 연결 등에 사용됩니다.<head> </head> 안의 내용은 브라우저의 검색 결과, SNS 공유할 때 보여지는 정보 등에도 영향이 있고, SEO와 같은검색엔진 최적화 측면에서도 매우 중요한 역할을 합니다. 일종의 뇌와 같은 부분으로 이해하면 좋겠습니다. <meta charset=”UTP-8″> 인코딩하는 방식을 UTF-8로 설정하여 한글을 포함한 다양한 문자를 정상적으로 표시할 수 있게 해줍니다. 이 선언이 포함되지 않는 경우에는 글자가 깨지거나 나타나지 않는 현상이 나타날 수 있습니다. 특히 가장 중요한 것은 이 선언이 한글을 정상적으로 출력하는 데 있어서 필수적이라는 것입니다. 예전에는 EUC-KR, ISO-8589-1 등의 다른 인코딩 방식도 사용되었지만 현재는 UTF-8로 전 세계적으로 통합하여 사용하는 추세입니다. <meta name=”viewport” content=”width=device-width, initial-scale=1.0″> 컴퓨터와 같은 PC(Personal Computer) 뿐만 아니라 모바일 기기에서도 웹페이지가 해당 기기의 너비에 맞게 보이도록 설정하는 선언 입니다.content=”width=device-width 라는 선언은 기기 화면의 너비에 맞게 표시하게 해주는 선언이며, initial-scale=1.0 라는 선언은 기본 확대/축소 비율을 1로 설정하는 선언입니다. 이 선언이 없다면 반응형 웹 디자인(responsive web design) 구현할 수 없습니다. 기기가 다양하고 화면의 크기가 다양한 요즘 시대에는 이 코드가 정말 필수적인 코드라고 할 수 있겠습니다. <title> … </title> 웹브라우저 탭 이름이나 즐겨찾기 제목에 표시되는 웹페이지의 제목을 설정하는 부분입니다.이 안의 텍스트는 사용자가 현재 어떤 페이지를 보고 있는지 식별하는 역할을 하며, 검색엔진 최적화(SEO)에서도 중요한 요소로 작용합니다. 주의할 점으로는 <title></title>태그는 반드시 <head>와 </head> 사이에(안에) 위치해야 합니다. <body> … </body> 사용자에게 실제로 보이는 콘텐츠를 담는 영역으로 본문의 내용, 이미지, 버튼, 링크 등이 보여지는 화면 입니다.실제로 우리가 웹페이지를 볼 때 보여지는 화면이 이 <body>와 </body> 사에 작성되어진 것을 보는 것이며 이곳이 정보의 주요한 핵심 위치라고 할 수 있습니다. 그래서 이 부분에 각종 디자인이 부여되고 각종 콘텐츠와 글들이 기록됩니다. 더불어 CSS를 통해서 이 부분에 작성되고 보여지는 내용이나 디자인을 변경하는 것이 가능합니다. 마무리 <!DOCTYPE html><html lang=”ko”><head><meta charset=”UTF-8″><meta name=”viewport” content=”width=device-width, initial-scale=1.0″><title></title></head><body></body></html> 이 글에서 설명 드린 코드는 위 코드이며 복사하여 Visual Studio Code에서 사용할 수 있습니다. 물론, CSS 설정이나 header, main, footer 등의 분할이나 그 밖에 기타 요소들이 포함되는 기본 HTML 코드가 있을 것입니다. 하지만 이 글에서는 HTML 파일을 처음 만들 때 꼭 알아야 할 기본 태그와 구조를 이미지와 함께 살펴보았습니다. 왜냐하면 처음 사용자 분들이나 초보자 분들을 위해서 작성된 글인만큼 가장 기본적인 태그의 역할을 이해할 수 있도록 가장 기본적인 태그를 위주로 설명을 하였습니다. 각 태그의 역할을 정확히 이해하면, HTML 작성은 생각보다 훨씬 쉽고 체계적으로 느껴질 것입니다. 다음 단계에서는 body 내부에 들어가는 요소들을 소개하는 글을 통해서 이 글을 통해 여러분이 하나씩 실습해보는 좋은 연습이 될 수 있도록 할 예정입니다.
💬 댓글 0개
Visual Studio Code에서 HTML 파일을 처음 만드는 과정을 설명하는 대표 이미지 – 코드 창과 안내 텍스트가 포함된 2D 디지털 그래픽
Visual Studio Code(비주얼 스튜디오 코드)로 처음 만드는 HTML 파일
처음 HTML을 작성해보시나요? 이 글은 Visual Studio Code(VS Code)를 처음 사용하는 분들을 위해 준비한 HTML 파일 작성 입문 가이드입니다. 단계별로 이미지와 함께 따라 할 수 있도록 구성되어 있어, 누구나 어렵지 않게 자신의 첫 HTML 파일을 만들 수 있습니다.  만약 비주얼 스튜디오 코드를 컴퓨터에 설치하지 않으셨다면 아래를 클릭하시면 다운로드 받으실 수 있습니다. Microsoft Visual Studio Code Download(비쥬얼 스튜디오 코드 다운로드) 클릭하여 바로가기 이 글의 내용과 목적은 비주얼 스튜디오 코드를 처음 사용하시는 분들을 위하여 비주얼 스튜디오를 설치한 이후에 HTML 파일을 처음 만들어 보는 과정의 설명으로 구성하였습니다. 이 글의 내용은 이해하기 쉽고 누구나 따라할 수 있습니다. 그리고 향후 복잡한 내용의 코드를 작성하더라도 이 글의 내용과 같이 파일을 만들고, 코드를 입력하고 브라우저에서 확인하는 방법은 동일합니다. 그래서 이 글의 내용은 항상 사용되는 과정이기 때문에 꼭 숙지하셔야 하는 내용입니다.   전체 과정 요약표 단계 제목 간략한 설명 1단계 Visual Studio Code 실행 VS Code를 처음 실행하여 시작 화면을 확인합니다. 2단계 File 클릭 후 New File 선택 상단 메뉴에서 새 파일을 만들기 위한 경로를 선택합니다. 3단계 새 파일 팝업 상자 나타남 파일 형식을 지정하거나 파일 이름을 입력할 수 있는 창이 뜹니다. 4단계 index.html 입력 후 Enter 새 HTML 파일 이름으로 index.html을 입력하고 Enter로 확정합니다. 5단계 저장할 경로 선택 후 Create File Windows 탐색기에서 저장 위치를 지정하고 파일을 생성합니다. 6단계 index.html 탭 생성됨 새로 생성된 파일이 VS Code 내에서 탭으로 열립니다. 7단계 1번 줄 클릭하여 커서 위치 지정 HTML 코드를 입력할 위치에 커서를 두기 위해 1번 줄을 클릭합니다. 8단계 `<` 입력 시 자동완성 제안 확인 `<`를 입력하면 태그 자동완성 기능이 나타납니다. 9단계 !DOCTYPE 자동완성 확인 자동완성 목록에서 !DOCTYPE을 선택하거나 직접 입력합니다. 10단계 Enter 키로 줄 추가 Enter 키를 눌러 다음 줄(2번 줄)을 생성합니다. 11단계 `<html></html>` 입력 HTML 문서의 루트 요소인 <html> 태그를 입력합니다. 12단계 HTML 기본 구조 전체 입력 <head>, <body> 포함 전체 기본 구조를 작성합니다. 13단계 title과 body 태그에 내용 입력 제목과 본문에 표시될 내용을 입력합니다. 14단계 File > Save로 파일 저장 상단 메뉴를 통해 또는 단축키로 파일을 저장합니다. 15단계 탐색기에서 index.html 실행 저장 경로로 이동해 파일을 더블 클릭하여 실행합니다. 16단계 웹브라우저에 HTML 내용 표시 브라우저에서 title은 탭 제목에, body는 본문에 표시됩니다. 위 표는 본 글에서 설명할 내용들을 한 눈에 볼 수 있게 정리한 것입니다. 상세한 사항은 이 글의 바로 아래 내용부터 이미지와 함께 설명이 포함됩니다. 이제 위 표를 따라 한 단계씩 실제로 실행해보며 HTML 문서를 완성해 보면 됩니다. 각 단계별로 자세한 이미지와 함께 설명이 이어지니 처음 사용해 보시는 분들이나 초보자분들도 걱정 없이 따라오실 수 있도록 최대한 쉽고 친절하게 구성되어 있습니다. (1단계) Visual Studio Code 실행 비주얼 스튜디오 코드를 실행하여 아래와 같이 비주얼 스튜디오 코드가 실행된 것을 확인합니다. (2단계) File 클릭 후 New File 선택 상단에 위치한 메뉴에서 [File] – [New File]을 클릭하여 새 파일을 만들기 위한 과정을 진행합니다. (3단계) 새 파일 팝업 상자 나타남 이후 화면의 중앙 상단에 New File 상자가 나타나고, 파일 이름과 확장자를 입력할 수 있는 공간도 학인 할 수 있습니다. (4단계) index.html 입력 후 Enter 아래와 같이 파일명과 확장자를 입력할 수 있는 곳을 마우스로 클릭한 후에 index.html 이라고 입력하고 Enter키를 누릅니다. index.html 이라는 파일명과 확장자로 구성되면 웹호스팅에서 가장 첫 번째 화면으로 인식하고 실행시키기 때문에 이번 파일명을 index.html 로 지정하였습니다. index.html 파일의 화면은 우리가 어느 웹페이지를 방문했을 때 첫 화면이 보이는 메인 화면에 대한 파일이라고 생각하시면 이해하시기 편리합니다. (5단계) 저장할 경로 선택 후 Create File 이후에는 윈도우 탐색기가 나타납니다. 그곳에서 파일을 저장할 폴더 경로 및 위치를 선택한 후 Create File을 클릭하면 index.html 파일이 생성됩니다. (6단계) index.html 탭 생성됨 이후 아래와 같이 비주얼 스튜디오 코드 내에서도 index.html 탭이 생성된 것을 확인할 수 있습니다. 이제 이곳에서 코드를 입력할 수 있습니다. 코드를 입력하기 위한 모든 준비가 완료된 것입니다. (7단계) 1번 줄 클릭하여 커서 위치 지정 메인 화면에서 1번 행을 클릭하면 커서가 나타납니다. 이곳에 코드를 입력하면 됩니다. (8단계) ‘<‘ 입력 시 자동완성 제안 확인 처음에 ‘<‘를 입력해 보시면 아래와 같이 ‘자동완성’ 기능이 실행되어 추천하는 명령어들이 나타나게 됩니다. 우리는 문서 제일 위에 내용을 입력하는 것이기 때문에 가장 처음에 위치한 !DOCTYPE을 클릭하면 됩니다.그리고 HTML 파일을 만들기 위해서 정해진 규칙 중 하나라고 할 수도 있는 부분 중에서 파일의 제일 처음에 <!DOCTYPE> 이라고 입력하는 것입니다. Document Type Declaration의 줄임말로 이 명령어를 입력함으로써 ‘문서 유형 선언’을 하는 것입니다. 이 명령어가 파일 내에 포함되는 이 파일을 읽고 실행하는 웹호스팅이나 웹브라우저에서 이 문서를 표준모드라고 인식하고 렌더링 하는 것입니다. (9단계) !DOCTYPE 자동완성 확인 아래와 같이 <!DOCTYPE html> 이라고 입력된 것을 볼 수 있습니다. ‘<‘ 기호 입력 후 마우스 클릭 한 번만으로 명령어를 입력한 것입니다. 이런 ‘자동완성’ 기능은 비주얼 스튜디오 코드의 가장 큰 장점 중에 하나이며, 향후 각종 명령어 및 태그를 입력할 때 매우 시간 절약을 하게 해주는 기능이기도 합니다. 물론, 자동완성 기능을 사용하지 않고 직접 키보드로 입력을 해도 문제 없습니다. (10단계) Enter 키로 줄 추가 다음으로는 Enter키를 눌러서 2번 행으로 이동을 합니다. 1번 행에 계속해서 내용을 입력해도 상관 없습니다. 하지만 우리는 사람이고 각종 명령어나 태그들의 가독성이 좋지 않으면 코드를 수정할 때나 추가로 입력할 때 비효율적입니다. 그래서 가급적이면 명령어나 태그를 입력한 후에는 Enter키를 눌러서 줄바꿈을 해주는 것을 강력하게 추천 드립니다. (11단계) ‘<html></html>’ 입력 이번에는 <html></html>을 아래와 같이 입력합니다. 물론, 입력하는 과정에서 ‘자동완성’ 기능이 나타나는 것을 확인하실 수가 있을 것입니다. 그리고 HTML 문서는 ‘태그’ 라고 하는 것이 사용되며, 여기서 html 이라고 하는 것이 html 태그이자 명령어라고 생각하시면 됩니다. 그리고 모든 태그는 <, > 와 같은 꺽쇠로 감싸져 있습니다. 그래서 <html> 이라고 입력하면 됩니다. <html> 이라고 입력된 것은 html 태그가 시작되는 부분인 것을 의미합니다. 그리고 </html>과 같이 / 가 포함된 것은 html 태그의 마지막 부분이라는 것을 의미합니다. 이와 같이 <…> … </…> 형식으로 구성되는 것이 HTML 문서에서 입력하는 구조입니다. 매우 핵심적인 사항이므로 꼭 숙지해야 합니다. (12단계) HTML 기본 구조 전체 입력 그리고 아래와 같이 코드를 입력합니다. *. 혹시 오타나 기타 어려움이 있으실 것을 대비하여 본 이미지 아래에 코드를 복사해서 사용하실 수 있게 그대로 타이핑 입력해 두었습니다. <!DOCTYPE html><html>    <head>        <title></title>    </head>    <body>            </body></html> (13단계) title과 body 태그에 내용 입력 이후 아래와 같이 <title>과 </title> 사이에 내용을 입력합니다. 임의로 ‘처음 비쥬얼 스튜디오 사용용’ 이라고 입력하였습니다. 그리고 <body>와 </body> 사이에 내용을 입력합니다. 임의로 ‘안녕하세요.’ 라고 입력하였습니다.title은 해당 본 파일이 나타내는 페이지의 타이틀이며 웹브라우저의 탭에서 입력한 내용이 나타나는 것을 확인할 수 있습니다. 그리고 body는 본문의 내용을 나타내는 곳이며 브라우저의 본문을 확인하는 메인창에서 내용을 확인할 수 있습니다. *. 혹시 오타나 어려움이 있으실 것을 대비하여 본 이미지 아래에 코드를 복사하여 사용하실 수 있게
💬 댓글 0개
처음 웹페이지 만들 때 필요한 노트북, Visual Studio Code, 브라우저, 노션, 깃허브, 웹호스팅과 도메인, SEO를 아이콘으로 보여주는 이미지
처음 웹페이지 만들 때 꼭 필요한 준비물
요즘은 누구나 자신만의 웹페이지를 만들어 볼 수 있는 시대입니다. 하지만 막상 시작하려고 하면 무엇이 필요한지 막막할 수 있습니다. 그래서 웹페이지 준비물을 알아야 하고 합니다. 먼저 웹페이지를 만들기 위해서 필요한 것은 컴퓨터와 같은 하드웨어를 제외하면 만드는 것 자체는 ‘무료’입니다. 그래서 컴퓨터만 소유하고 있다면 준비물을 구성하는 것은 어느 정도의 시간만 활용해서 분류하고 숙지만 하면 됩니다. 물론, 웹페이를 만들어 놓고 웹에 업로드 하기 위해서는 약간의 비용이 소요되기는 합니다. 이 글에서는 제가 웹페이지를 만드는 데 필요하다고 생각하는 기본적인 도구들과 환경을 간단히 소개하고자 합니다. 컴퓨터 – 데스크톱 Vs. 노트북 웹페이지를 만들기 위해 가장 먼저 필요한 것은 당연히 컴퓨터입니다. 데스크톱도 훌륭한 선택이지만, 저는 노트북이 더 유용하다고 생각합니다. 언제 어디서든지 작업할 수 있고, 이동 중에도 아이디어가 떠오르면 바로 실행에 옮길 수 있기 때문입니다. 특히 카페나 도서관 등 다양한 장소에서 작업하기를 좋아하는 사람에게는 노트북이 필수적인 도구입니다. 그리고 노트북은 특별히 고사양일 필요가 없습니다. 그래서 정확한 사양을 언급하기도 애매합니다. 그래도 예를 들어 보자면 요즘 최신 PC 중에서 비싸면서 고사양 노트북들은 웹페이지를 만드는데 있어서 오버스펙입니다. 그리고 게임용 노트북도 오버스펙입니다. 왜냐하면 웹페이지를 만드는데 있어서 특별히 고사양이 요구되지 않기 때문입니다. 물론, 이미지를 포토샵이나 일러스트로 디자인을 하거나 편집하는 경우는 중급은 되어야할 것입니다.  결론적으로 웹페이지를 만드는 컴퓨터는 사양이 높지 않아도 되니 저사양으로 시작을 해보고 웹페이지를 더욱 전문적이고 집약적으로 만들어야 하는 상황이 되었을 때 정확한 사양을 분석하거나 컴퓨터 사양을 올려서 구매하는 것도 전혀 문제가 되지 않습니다. 그래서 현재 보유하고 사용하고 있는 노트북으로 시작해도 무리가 없을 것입니다. HTML 코딩 도구 – 메모장도 좋지만, Visual Studio Code 추천 웹페이지는 기본적으로 HTML, CSS, JavaScript 같은 언어로 만들어집니다. 이 코드들은 단순한 메모장으로도 작성할 수 있지만, 훨씬 더 편리한 도구가 있습니다. 대표적인 것이 바로 Visual Studio Code입니다. 이 프로그램은 일종의 SDK(Software Development Kit)의 한 종류로써 코드 자동 완성, 오류 표시, 확장 기능 등 다양한 편의 기능을 제공해 코딩 작업을 훨씬 효율적으로 도와줍니다. 아래 링크를 클릭하면 Visual Studio Code를 무료로 다운로드 할 수 있는 웹페이지로 이동할 수 있습니다. 브라우저 – 결과를 확인하는 창 코드를 작성했다면, 이제 그 결과를 확인할 브라우저가 필요합니다. 대표적으로는 크롬(Chrome), 엣지(Edge) 등이 있습니다. 같은 웹페이지라도 브라우저마다 표시되는 방식이 조금씩 다르기 때문에, 다양한 브라우저로 테스트해보는 것이 좋습니다. 경험적으로 보았을때, Chrome 브라우저는 호환성이 가장 좋다고 알려져 있습니다. 그리고 세계적으로 검색은 구글에서 진행하기 때문에 웹브라우저를 만들고 게시한 이후에 Google에 페이지나 글의 색인을 요청하는 것과 구글 애널리틱스와 같은 웹페이지는 모두 Google이 운영하므로 Chrome을 비교적 추천합니다. 그리고  Edge 브라우저는 메모리를 비교적 가볍게 차지하는 특성이 있습니다. 소개한 두 가지 브라우저 모두 훌륭하고 좋은 웹브라우저 라고 생각되고 추천합니다. 아래 링크를 클릭하면 각각의 브라우저를 다운로드 받을 수 있는 페이지로 이동할 수 있습니다. 아이디어 정리 – 노션과 깃허브 웹페이지를 만들다 보면 수많은 아이디어, 할 일 목록, 기획안 등을 정리해야 할 필요가 생깁니다. 이때 활용하기 좋은 도구로는 노션(Notion)과 깃허브(GitHub)가 있습니다. 노션(Notion)은 아이디어 메모, 체크리스트, 프로젝트 기획 등을 시각적으로 정리할 수 있어서 비개발자에게도 매우 유용합니다.  깃허브(GitHub)는 원래 개발자들이 사용하는 버전 관리 도구지만, 나만의 코드 저장소로 활용할 수 있고, 협업 시에도 필수적인 플랫폼입니다. 이 두 가지는 웹페이지를 만들 때 필수적으로 필요한 것은 아니지만, 사용하면 큰 도움이 되기에 추천을 합니다. 물론, 이 두가지는 처음 사용하려고 할 때 약간의 어려움과 경험이 필요할 수도 있습니다. 즉, 사용 방법을 숙지해야 합니다. 하지만 모두 문서 작성이나 인터넷을 조금만 해보신 분이라면 전혀 문제 없이 사용하실 수 있습니다.  개인적으로 보았을 때 너무 유용한 서비스이자 툴이기 때문에 적극 추천드립니다. 아래 링크를 클릭하시면 노션과 깃허브 페이지로 이동할 수 있습니다. 웹호스팅과 도메인 코드를 완성했다면, 이제 그것을 공개할 차례입니다. 이를 위해서는 웹호스팅 서비스가 필요합니다. 웹호스팅은 내 웹페이지를 인터넷상에 올릴 수 있게 도와주는 공간입니다. 웹호스팅은 웹상에서 단순하게 저장 공간만을 의미하고 저장 공간으로써의 역할을 하는 곳이 아닙니다. 웹페이지를 만들면 index.html이라고 하는 파일을 만들어야 하는데, 웹호스팅에서는 index.html이라는 파일을 웹페이지의 첫 페이지라고 인식하고 index.html파일의 코드를 실행해 주는 소프트웨어적인 역할을 합니다. 물론, index.html 파일 외에 다른 페이지들의 .html 파일과 .css 파일 .js 파일등의 확장자를 가진 파일들도 읽고 해당 프로그램 코드에 맞게 실행하여 우리가 웹페이지를 이용할 수 있도록 해줍니다.  그리고 사람들에게 보다 쉽게 접근시키려면 도메인(예: www.pangyimush.com)을 등록하는 것이 좋습니다. 본래 모든 사이트는 IP(Internet Protocol)로 구성되어 있고 숫자 등으로 혼합되어 있습니다. 이것을 사람이 알아보고 이해하기 쉽게 영문으로 제공되는 서비스가 DNS(Domain Name Service)라고 하며 우리가 도메인(Domain)이라고 하는 것입니다.  웹호스팅과 도메인은 자신의 웹페이지를 공개할 때 사용되는 것이므로 이러한 것이 어떤 형태로 존재하고 사용되어지는 것에 대해서만 이 글에서 이와 같이 설명하고 다른 글에서 본 내용에 대해서 더욱 섬세하게 설명하고 묘사될 것입니다. 검색 최적화(SEO)와 구글 정책의 이해 마지막으로, 웹페이지를 단순히 만드는 것을 넘어서 많은 사람들이 방문하게 하려면, SEO(Search Engine Optimization, 검색 엔진 최적화)에 대한 공부가 필요합니다. 구글 검색에 잘 노출되기 위해서는 어떤 단어를 사용해야 하는지, 어떤 구조로 페이지를 구성해야 하는지 등을 이해해야 합니다. 또한 구글의 정책과 가이드라인을 준수하는 것도 중요합니다. 이는 광고 수익이나 웹페이지의 신뢰도와도 직결되는 부분입니다. 아래 링크를 클릭하시면 구글 검색센터에서 공시하고 제안하는 내용을 확인해 보실 수 있습니다. 물론 해당 내용이 복잡하게 느껴지실 수도 있습니다. 하지만 상식적인 내용을 자세하게 설명한 것 뿐이라고 이해해시면 됩니다. 한 마디로 쉽게 말해서 ‘양질의 컨텐츠를 사용자들이 쉽게 접근하고 이용할 수 있게 만들어야 한다.’ 정도로 지금 시점에서는 이해하시는 것을 추천 드립니다. 웹페이지 만들기 누구나 할 수 있다! 웹페이지를 만든다는 건 단순한 코딩 작업을 넘어서 하나의 작은 서비스를 만드는 일입니다. 컴퓨터 한 대와 브라우저, 코딩 툴만 있다면 누구든지 시작할 수 있지만, 노션이나 깃허브처럼 작업을 도와주는 도구들, 그리고 웹호스팅, 도메인, SEO까지 고려하면 훨씬 더 완성도 있는 결과물을 만들 수 있습니다. 지금 이 글을 읽고 있는 당신도, 오늘 바로 첫 웹페이지 제작을 시작해보는 건 어떨까요? 팽이머쉬에서도 지속적으로 웹페이지 제작에 관한 글을 업로드하여 많은 분들이 영감을 갖고 노력하실 수 있도록 안내하는 페이지에 가이드 글을 많이 수록할 수 있도록 노력하겠습니다. 웹페이지 만들기 누구나 할 수 있습니다.
💬 댓글 0개
웹이란 무엇인가 – HTML, CSS, JavaScript를 배우기 전에 알아야 할 개념들을 설명하는 한국어 교육 이미지
웹이란 무엇인가 – HTML, CSS, JavaScript를 배우기 전에 알아야 할 것들
웹 개발을 시작해 보기로 마음먹었을 때 무엇부터 시작해야 할지 막막할 것입니다. 매일 보는 웹페이지도 막상 시작하려고 검색을 해보면 HTML, CSS, Javascript, Node.js 와 같이 들어본 것 같기도 하고 잘 모르겠는 영어만 나와서 시작이 어려울 수 있습니다.  “왜 웹 개발을 시작해 보겠다고 생각하셨을까요?” 요즘과 같은 현대 사회에서는 컴퓨터나 스마트폰으로 웹사이트에 접속하여 정보를 검색하는 것이 거의 매일, 매 순간 일상화 되어 있습니다. 그렇기 때문에 그 구조나 생성이 궁금한 것은 당연한 현상이고 웹 개발을 시작해보겠다고 많은 사람들이 생각합니다. 그렇다면 우리가 흔히 말하고 사용하는 “웹” 이란 무엇일까요? 웹에 대한 기본적인 이해는 HTML, CSS, Javascript와 같은 프로그래밍 언어와 기술이 서로 어떻게 형성되고 연결되는지에 핵심적인 해답이 있을 것입니다.  하지만 그 전에 HTML, CSS, Javascript를 도입하기 이전에 웹이란 무엇인지 이해를 하고 가는 것이 더 빠른 길입니다. 이것은 웹페이지를 만들기 전에 꼭 필요한 첫 단계입니다. 인터넷이 뭐죠? 웹을 이해하기 위해서는 먼저 인터넷(Internet)에 대해서 알아야 합니다. 인터넷은 Interconnected Network의 줄임말이며 전 세계 수많은 사람들이 서로 연결되어 정보를 주고 받을 수 있는 거대한 네트워크입니다. 우리가 웹사이트에 접속하여 정보를 보고 이메일을 주고 받는 것들 모두 인터넷이라는 거대한 네트워크 안에서 이루어집니다. 인터넷은 처음에 군사와 학문적 목적에 의해서 시작이 되었고, 최초에 인트라넷(Intranet)에서 부터 발전하게 되었습니다. 이후 빠르게 발전하여 전 세계로 확장이 되었고 지금 우리가 이러한 인프라를 기반으로 수 많은 웹사이트에 접속하고 서비스를 이용하고 있는 것입니다. WWW 만든 사람은? 우리는 웹페이지에 주소를 입력할 때 항상 입력하는 알파벳이 있습니다.  WWW(World Wide Web) WWW라고 하는 것은 인터넷 위에서 문서, 이미지, 영상 등의 정보를 하이퍼링크(Hyperlink)를 통해 연결하고 보여주는 시스템입니다. WWW는 1990년에 영국의 컴퓨터 과학자 팀 버너스리(Tim Berners-Lee)에 의해서 개발되었다고 알려져 있습니다. 팀 버너스리는 HTML(Hyper Text Markup Language)과 HTTP(Hyper Text Transfer Protocol)을 만들면서 우리가 지금 사용하고 있는 WWW의 초석을 다졌습니다.  HTML은 웹에서 화면을 표시하거나 관련 동작을 하게 하는 언어의 일종이며, HTTP는 HTML과 같은 언어가 동작하는 규칙이라고 이해하면 됩니다. 그리고 HTTP의 경우에는 클라이언트와 서버간에 정해진 규칙으로 텍스트 데이터를 전송하는 방식인데, 보안상 이유로 HTTPS로 진화되었고 HTTPS는 클라이언트와 서버간에 암호화된 데이터를 주고 받습니다. 그래서 간혹 어떤 사이트에 접속하였을 때 ‘신뢰할 수 없는 사이트’ 또는 ‘위험한 사이트’라고 나타나는 사이트는 HTTPS를 사용하지 않고 HTTP를 사용하는 사이트이기 때문에 보안상 취약하여 사용자가 웹페이지에 접속하여 주고 받는 통신 행위를 다른 사람이나 시스템이 모니터링 할 수 있다는 의미이기도 합니다. 아무튼, WWW를 만들어주신 팀 버너스리께 항상 감사하는 마음입니다. 네트워크(Network)에 대해서 네트워크란 두 개 이상의 장치(스마트폰, 컴퓨터 등)를 서로 연결하여 정보를 주고 받는 구조입니다. 대표적인 네트워크 구성 요소는 다음과 같습니다. 클라이언트(Client): 정보를 요청하는 쪽 (ex: 웹브라우저) 서버(Server): 정보를 제공하는 쪽 (ex: 웹사이트의 데이터가 저장된 컴퓨터) 라우터(Router): 데이터의 길을 안내하는 장치 IP(Internet Protocol) 주소: 각 장치의 고유한 주소 도메인(Domain) 주소: 각 장치의 고유한 주소를 www.pangyimush.com처럼 사람이 알아보기 쉽게 쉬운 영어 알파벳 이름으로 주소를 변경한 것 위와 같은 요소들이 유기적으로 작동 및 연결되어 우리가 웹페이지를 접속하고 정보를 빠르게 받아 볼 수 있습니다. 프론트엔드(Front-end)와 백엔드(Back-end) 웹사이트나 웹애플리케이션의 영역은 프론트엔드와 백엔드로 나뉩니다. 앞서 언급을 드렸던 인터넷, WWW, 네트워크와 같은 단어들은 들어 보았어도 프론트엔드와 백엔드에 대해서 들어보지 못한 사람들이 대부분일 것입니다. 이 개념은 아래 내용을 통해서 간단하게 이해만 하면 됩니다. 프론트 엔드(Front-end) 프론트엔드를 한 마디로 설명하면 사용자가 실제로 보는 웹페이지의 화면입니다. 우리가 웹페이지를 방문했을 때 보게되는 글자, 이미지, 버튼 등의 모든 시각적인 요소가 프론트엔드입니다. 이렇게 모두 보여지는 프론트엔드의는 HTML(Hyper Text Markup Language)로 구성을 합니다. 그리고 CSS(Cascading Style Sheet)로 구성된 구조에서 색상, 크기, 간격 등의 디자인적인 거의 모든 요소를 적용하는 것입니다. 그리고 Javascript와 같은 프로그래밍 언어를 통해서  버튼을 누르면 팝업이 나타나거나, 클릭하면 글자의 색상이 변경되는 등의 움직이거나 특정 상황의 조건에서 반응을 하는 동적인 기능을 추가합니다. 이렇게 사용자가 실제로 눈으로 보고, 클릭하고 사용하는 화면(UI, User Interface)인 프론트엔드는 웹개발을 시작하는 사람에게 있어서 가장 첫 관문입니다. 웹디자인을 바탕으로 실제로 보여지고 작동하는 화면을 구현하고 다양한 디바이스(스마트폰, 테블릿, PC 등)의 화면에서 반응형 웹을 구현하는 것 또한 프론트엔드의 작업 영역 입니다.  이렇게 웹개발을 진행하는 개발자 중에서 프론트엔드를 집중해서 개발하는 프론트엔드 개발자는 웹페이지의 디자인, 동작, 반응성 등을 구현합니다. 처음에는 바로 만들어지기 때문에 비교적 쉽다고 생각할 수도 있는 영역입니다. 하지만 프론트엔드도 깊게 진입하고 들어가면 어려운 영역입니다. 하지만 직접 보면서 개발할 수 있는 부분이기 때문에 상당한 보람과 재미가 느껴지는 영역이라고 할 수 있습니다. 백엔드(Back-end) 백엔드는 사용자에게 보여지지 않는 영역의 데이터 처리와 로직을 담당하는 부분입니다. 사용자가 입력한 데이터를 처리하거나 데이터베이스에서 저장된 정보를 꺼내오고, 이를 프론트엔드로 전단하는 역을을 합니다. 우리가 유튜브에서 화면을 아래로내려서 새로 고침을 하게 되면 유튜브 데이터베이스에 새로운 대쉬보드 화면을 요청하는 것이고 백앤드 영역에서 요청에 대한 작업을 완료하여 프론트엔드(유튜브 대시보드 화면)에 나타나게 되는 것입니다. 백엔드에서는 Node.js, Python, PHP 등의 프로그래밍 언어가 서버 관련된 언어로 사용되며 데이터 베이스 관련하여 MySQL 등이 사용됩니다. 그 밖에 더 많은 언어들이 사요되고 있습니다.  웹페이지를 제작하는 초반 입장에서는 웹페이지를 제작하면 구글애널리틱스와 같은 수단을 통하여 방문자 데이터를 수집할 수 있고, 향후 웹페이지를 좀 더 동적으로 구성하고자 해서 백엔드를 적용할 때에는 직접 처음부터 프로그래밍 언어를 통해서 서버를 구성하는 것은 너무 어려운 일일 것입니다. 그래서 Firebase와 같은 수단을 이용하여 비교적 쉽게 구성하고 각종 기능들을 구현할 수 있습니다. 백엔드는 사용자의 로그인 처리, 회원가입, 글쓰기 기능의 구현, 데이터베이스 설계 및 연동, 보안, 성능 최적화등 프론트엔드 영역에서 관할하지 않는 영역을 모두 관할하여 그 역할을 합니다. 사용자의 요청을 처리하고, 데이터베이스와 연동하여 결과를 반환하는 보이지 않는 서버 측입니다. Python, Java, Node.js, PHP 등의 언어로 구현되며, 데이터 저장과 인증, 로직 처리를 담당합니다. 예: 사용자가 로그인하면, 백엔드는 아이디와 비밀번호를 확인하고, 결과를 프론트엔드에 전달합니다. 마무리하며 프론트엔드 vs 백엔드 비교 항목 프론트엔드 백엔드 사용자와의 위치 사용자 눈에 보이는 영역 (브라우저) 사용자 눈에 보이지 않는 영역 (서버) 주요 역할 화면 구성, 디자인, 인터랙션 구현 데이터 처리, 로직 구현, DB 관리 사용하는 기술 HTML, CSS, JavaScript, React 등 Node.js, Python, Java, DB, API 등 주요 관심사 UX/UI, 반응형 웹, 성능 최적화 보안, 데이터 흐름, 서버 로직 프론트엔드와 백엔드는 웹 개발의 두 축이며, 각기 다른 역할과 기술을 바탕으로 웹사이트나 웹 애플리케이션을 완성해 나갑니다.프론트엔드는 사용자의 눈에 보이고 직접 상호작용하는 영역이라면, 백엔드는 그 뒤에서 데이터를 처리하고 정보를 주고받는 핵심 시스템이라 할 수 있습니다. 웹 개발을 배우고자 한다면, 이 두 영역 중 어디부터 시작할지 선택하는 것이 첫걸음입니다. 시각적이고 결과가 바로 보이는 프론트엔드부터 시작해도 좋고, 로직과 데이터 중심의 백엔드에 흥미를 느껴 바로 진입해도 괜찮습니다. 하지만 시작하는 입장이라면 프론트엔드부터 시작하는 것을 강력히 추천드립니다. 물론, 결국에는 두 영역이 서로 맞물려 작동하므로, 전체 흐름을 이해하고 협업의 관점에서 바라보는 것이 중요하겠지만 먼저 시각적으로 웹페이지를 만들어 놓는 것이 선행되는 것이 웹개발에 흥미를 붙이고 만들어 놓은 페이지를 통하여 백엔드를 구성하는 것이 더 순리적이고 유용한 방법이 될 것이라고 생각합니다. 앞으로 HTML, CSS, JavaScript를 배우며 프론트엔드에 대한 실습을 진행하실 예정이라면, HTML의 기초부터 탄찬하게 학습을 이어가시길 바랍니다.
💬 댓글 0개