6

[Flask] 'Flask'란?

1. 플라스크(Flask)란? 플라스크(Flask)란 파이썬을 기반으로 작성된 마이크로 웹 프레임워크(framework) 중 하나로, Werkzeug 툴킷과 Jinja2 템플릿 엔진에 기반을 둔다. 플라스크는 Docs를 읽으면 알 수 있지만, '단순한 업무는 단순해야 한다'라는 설계 원칙이 있다. 이런 원칙 덕분에 비교적 쉽게 이해하고 작성할 수 있다. 이런 측면 때문에 웹 개발 관련해서 가르칠 때도 많은 곳에서 플라스크를 가르치는 것 같다. 하지만 쉬운 만큼 단점도 있는데 그중 하나는 보안 부분에서 비교적 취약하다는 것이다. 플라스크와 그 안의 Jinja2 템플릿에도 당연히 보안을 위해 설계된 구조가 있지만, 때로는 오히려 그런 부분들이 보안 이슈를 일으키기도 한다는 것이다. 이제 막 공부하기 시작한 ..

[HTML] 'HTML'의 시작

웹 제작의 설계도, HTML 1. 기원 1) 누가 팀 버너스 리(Tim Berners-Lee) 2) 언제 1990년 말에 명시 3) 어디서 유럽 입자 물리 연구소(CERN) 4) 어떻게 버너스리가 제안한 인콰이어(HTML의 원형)로부터 시작 5) 왜 1980년, CERN의 비정규 계약직으로 일하던 팀 버너스 리는 CERN의 연구원들 사이에서 문서를 이용하고 공유하기 위한 체계로써, 인콰이어라는 것을 제안했다. 그는 이를 더 발전시켜서 1989에는 인터넷 기반의 하이퍼텍스트 체계를 제안하는 메모를 작성, 1990년 말에는 이를 HTML로 명시하며 브라우저와 서버 소프트웨어를 작성했다. 1991년 말에는 버너스 리가 처음으로 인터넷에서 문서를 HTML 태그(tag)라고 부른 것이 HTML 최초의 일반 공개 ..

[JavaScript] '자바스크립트'의 시작

10일 만에 개발된 언어 1. 기원 1) 누가 브렌던 아이크(Brendan Eich) 2) 언제 1995년 3) 어디서 넷스케이프(Netscape) - 웹 브라우저 시장에서 당시 큰 점유율(80%)을 차지하던 넷스케이프 네비게이터(Netscape Navigator) 만든 회사 4) 어떻게 10일 만에 5) 왜 1993년에 처음으로 UI(User Interface) 요소가 더해진 웹 브라우저가 출시되었다. 이 브라우저는 회사 NCSA의 Mosaic Web Browser(모자이크 웹 브라우저)였는데, 당시 모자이크 웹 브라우저의 개발팀을 이끌던 마크 앤드리슨(Marc Andrrssen)은 대학교를 졸업하면서 Netscape(넷스케이프)라는 회사를 설립했다. 그는 모자이크 웹 브라우저의 경험을 살려 조금 더 ..

[Web] '웹'의 시작

내가 만든 것을 전 세계와 함께 1. 기원 1) 누가 팀 버너스-리(Tim Berners-Lee) 2) 언제 1989년 3월 개발, 1993년 4월 세상에 공개 3) 어디서 CERN(유럽 입자 물리 연구소) 4) 어떻게 팀 버너스-리가 만든 프로그램과 인터넷을 통해 5) 왜 근본적으로 웹은 신속한 정보 교환과 공동 연구를 위한 프로그램에서 고안되었다. 팀 버너스-리는 대학에서 물리학을 전공했지만, 컴퓨터에 대한 전문성도 있었던 그는 CERN(유럽 입자 물리 연구소)에서 비정규직 소프트웨어 엔지니어로 근무했다. 비정규직이었기 때문에 그는 10년 동안 연구소를 들어갔다 나갔다를 반복했는데, 이 과정에서 웹의 전신이 되는 프로그램을 만드는 작업을 꾸준히 했다. 그 과정에서 1990년에 인터넷이 연구소에 도입되..

[Web] jQuery(제이쿼리) 임포트 하는 법과 Ajax(에이잭스) 사용하기

1. jQuery jQuery는 HTML 사용자가 HTML을 조금 더 잘 제어하기 위한 방법 중 하나로, 자바스크립트(Javascript)를 더 편하게 사용할 수 있게 하는 자바스크립트 함수의 모음(라이브러리)입니다. jQuery를 통해 다음과 같이 기존의 긴 자바스크립트 명령을 직관적인 함수로 사용할 수 있습니다. document.getElementById('element').style.display = "none"; 위 명령은 순수하게 자바스크립트 언어로 작성한 명령이고, 해당 id(예시에서는 'element')의 태그를 숨긴다는 명령입니다. $('#element').hide() 맨 위의 명령과 같은 명령이며, 보다 직관적이고 편리한(짧은) 것을 알 수 있습니다. 또, 알 수 있는 것은 자바스크립트 ..

[Web] 웹 개발의 0단계: HTML, CSS, JS(Javascript) 간단 요약 + 유용한 CSS 사이트

웹 서비스 개발 및 배포를 위해선 프론트엔드(front-end)와 백엔드(back-end)가 구성이 되어야 하고, 그중 시각적이고 직관적인 부분을 담당하는 프론트엔드는 우리 눈에 보이는 웹 페이지 자체를 만드는 영역입니다. 그리고 웹 페이지를 제작하기 위해선 HTML, CSS, JS(Javascript, 자바스크립트)라는 3가지 구성요소를 이해하고, 사용할 줄 알아야 합니다. 이 글에서는 강의(스파르타코딩클럽)와 함께 제가 이해한 내용을 바탕으로 정리한 내용입니다. 우선 이 글을 요약하면 다음과 같습니다. 웹 페이지 제작에는 HTML, CSS, JS, 이렇게 3가지 도구 및 언어를 알아야 하며, 이 3가지 요소는 사람으로 비유했을 때 다음과 같은 역할을 합니다. 1. HTML: 사람 신체의 뼈, 신체 구..