'의미론적인 웹' 이라는 뜻으로 기계가 이해할 수 있는 형태로 제작된 웹이다. '의미론적인 웹' 이란 문서 및 어플리션의 의미에 맞게 구성되며 컴퓨터가 사람을 대신하여 정보를 읽고, 이해하고 가공하여 새로운 정보를 만들어 낼 수 있도록 이해하기 쉬운 의미를 가진 웹이다
position 속성은 웹 문서 안의 텍스트나 이미지를 원하는 위치로 배치할 수 있고 어떤 방식으로 놓을 지를 결정하는 속성이다. 태그를 어떻게 위치시킬지를 정의하며, static, relative, absolute, fixed, sticky 총 5가지의 값을 갖는다.
CSS에서 display 속성은 웹페이지 상에서 어떻게 보여지고 배치되는지를 결정한다. 여러가지 display 속성중에서 가장 기본인 inline, block, inline-block에 대해서 정리하고자 한다.display 속성이 inline으로 지정되면 줄바꿈 없이
개발자의 정확한 의미와 플로우차트(Flow Chart)에 대해서 알아보았다.흔히 개발자라고 하면 단순히 컴퓨터 언어를 이용해서 무언가를 만드는 사람이라고 생각하며 나 또한 그렇게 생각했다.문제 또는 불편한 것을 발견하며 그것을 다양한 관점으로 분석하고 구조화 등등의 많
파이썬 기초 문법중에서 헷갈렸던 내용을 정리하려고 한다.String - 문자열 이라고 하며 대부분 큰따움표("") 안에 있는 글자를 말한다.Int(Integer) - 정수를 말한다.Float - 소수점 숫자를 말한다.Complex Numbers - 실수와 허수를 포함하
문서 내의 모든 요소를 정의하고 접근하는 방법을 제공하며 랜더링 된 페이지의 html과 구성요소에게 적용된 css를 볼 수 있는 패널이다. 요소에 적용된 스타일을 검사할 수 있을 뿐만 아니라 수정도 가능하다.위의 이미지에서 볼 수 있듯이 Element 패널을 누르면 h
def 함수 이름(매개변수1, 매개변수2) 실행 구문 return 반환값태함수를 실행할 때 위와 같은 형태로 실행하며 매개변수를 Parameter라고 부른다.위의 코드를 실행시켰을 경우 다음과 같이 에러가 발생한다. Position argument는 필수적으로 값
List와 마찬가지로 다양한 타입의 요소들을 저장할 수 있다. 다른점은 동일한 값을 가지고 있는 요소 즉, 중복된 값을 저장할 수 없다. 새로 저장하려고 하는 요소와 동일한 값의 요소가 존재한다면 새로운 요소가 이 전 요소를 치환한다. 또한, 순서대로 저장되어 있지 않
위의 코드와 같이 우리가 필요한 모듈과 패키지를 받고자 할 때, 파이썬에서는 우리가 호출한 모듈과 패키지를 어떻게 찾는지에 대해서 알아보았다.파이썬은 아래의 순서에 따라서 호출한 모듈 또는 패키지를 찾는다.sys.modulesbuilt-in modulessys.path
Hyper text - 문서와 문서가 링크로 연결되어 있음을 뜻한다.Transfer - 전달Protocol - 컴퓨터끼리 어떻게 HTML 파일을 주고 받을 지에 대한 소통방식 또는 약속이다.컴퓨터끼리 어떻게 HTML 파일을 주고 받을지에 대한 소통방식이고 웹 상에서 정
터미널 개발환경 셋팅 순서가 헷갈리기 때문에 정리하려고 한다.기존 terminal보다 편리하다고 한다.https://iterm2.com/위의 사이트로 들어가서 설치한다.iterm 실행하여 아래 코드를 입력한다.맥에서 사용하는 패키지 관리자이다. homebrew
Model 외의 기능들, 가장 먼저 데이터를 받는 url conf와 model을 작성하고 그에 대한 로직을 작성하는 view, 그리고 어떤 식으로 진행되는지 전반적인 내용을 정리하려고 한다. 백과 프론트는 json data 형태로 주고받을 수 있고, httpie라는 프
웹 프레임워크는 웹 어플리케이션 프레임워크라고도 불리며 동적인 웹이나 웹 어플리케이션, 웹 서비스 개발 보조용으로 만들어지는 어플리케이션 프레임워크의 일종이다. 웹 페이지를 개발하는 과정에서 겪는 어려움을 줄이는 것이 주된 목적으로써 데이터베이스 연동, 템플릿 형태의
인증이란 참이라는 근거가 있는 무엇인가를 확인하거나 확증하는 행위이고 이를 통해서 누가 우리 서비스를 어떻게 사용하고 있는지 추적할 수 있다. 쉽게 말하면 유저의 ID나 Password를 확인하는 절차이다.인가란 무엇인가의 허가를 받는 행위이고 유저가 요청하는 requ
데코레이터는 중첩함수를 리턴하며 함수를 장식한다. 특정 함수를 실행하기 전에 강제적으로 다른 함수가 먼저 실행되도록 한 후에 다음 함수가 실행되도록 하는 강제성을 제공하는 기능이다. 가독성 반복되는 코드를 함수로 정의해서 효과적으로 코드를 관리하고 가독성을 높이기 위
Get_or_create(default = none, \*\*kwargs)는 (objects, created)와 같이 튜플 형태로 반환한다. 여기서 objects은 반환되거나 create되는 부분이며 created는 boolean 값으로써 True, False를 반환한
selectrelaed와 prefetchrelated는 쿼리셋을 가져올 때, 관련된 objects까지 불러올 수 있는 함수이다. DB에 접근하는 횟수를 줄여주므로 성능 향상도 기대할 수 있다. Select_related > foreign key에서 정참조 이거나, 역참
웹에서 특정 데이터를 전송하고 받기 위해서는 어떤 경로(End-Point)에 요청할 것인가는 중요한 문제이다. 우리는 데이터를 받고, 때로는 전송을 하기 위해서 다양한 방식을 쓰는데 이 때 효율적으로 경로(End-point)를 설정하는 방식에 대해 알아보고자 한다.만약
API 시스템을 구현하기 위한 아키텍처 중에 가장 널리 사용되는 형식이 REST이다.내가 가지고 있는 장고에서 정의만 내려도 api 형태가 이루어지고 기능 구현이 일어난다. 간단하고 보기 쉽고 직관적이다. HTTP URI라고 보이는 거대한 링크처럼 보이는 내용을 다루
운영체제(Operating System)란 컴퓨터 시스템의 자원들을 효율적으로 관리하며, 사용자가 컴퓨터를 편리하고 효과적으로 사용할 수 있는 환경을 제공하는 소프트웨어이다. 컴퓨터 사용자와 하드웨어 시스템을 관리하는 소프트웨어의 일종으로 다른 응용프로그램이 유용한 작
컴퓨터 메모리는 시스템의 단기 데이터 스토리지로 컴퓨터가 빠르게 정보를 사용할 수 있도록 실시간으로 정보를 저장하는 역할을 한다. 시스템에서 많은 프로그램을 실행할수록 더 많은 메모리가 필요하게 된다. 컴퓨터 메모리는 CPU와 SSD 사이에 위치하고 있다. CPU가 핵
Docker란 Go언어로 작성된 리눅스 컨테이너 기반으로 하는 오픈소스 가상화 플랫폼이다. 어플리케이션을 신속하게 구축, 테스트 및 배포할 수 있다.향상된 컴퓨터의 성능을 더욱 효율적으로 사용하기 위해 가상화 기술이 등장했다.서버 입장에서 CPU 사용률이 낮고 활용도가
정보의 형태나 형식의 표준화, 보안, 처리속도 향상, 저장공간 절약 등을 위해서 다른 형태나 형식으로 변환하는 처리 혹은 그 처리 방식을 말한다.문자나 기호들의 집합을 컴퓨터에 저장하거나 통신에 사용할 목적으로 부조화하는 방법이다.모든 Data 및 파일은 Binary
어떠한 데이터를 암호화 시켜 다른 이들이 직접 그 의미를 알지 못하도록 하는 작업암호화 되어있는 데이터를 해독하는 작업복호화가 불가능하다는 것이고 이를 '해싱'이라고 부른다.'해싱'과는 다른 '암호화'이며 역으로 복호화도 가능하다.어떤 수학적 연산 또는 알고리즘에 의해
시스템 호출(system call)은 운영 체제의 커널이 제공하는 서비스에 대해, 응용 프로그램의 요청에 따라 커널에 접근하기 위한 인터페이스이다. 보통 C나 C++과 같은 고급 언어로 작성된 프로그램들은 직접 시스템 호출을 사용할 수 없기 때문에 고급 API를 통해
리눅스 동적 라이브러리라이브러리 로직 변경 시 반영 방법 -> .so 교체 후 컴파일 없이 재실행작성방법 -> ld실행속도 -> 상대적 느림리눅스 정적 라이브러리라이브러리 로직 변경 시 반영 방법 -> .a 교체 후 재컴파일 후 재실행작성방법 -> ar실행속도 -> 상
관계형 데이터베이스 관리 시스템(RDBMS)의 데이터를 관리하기 위해 설계된 프로그래밍 언어로, NoSQL보다 오래되고 많이 사용되었다. 예시로는 MySQL, PostgreSQl 등이 있다.수직적 확장만을 지원하여 하드웨어를 업그레이드 하거나 추가하여 서버의 성능을 향
HTTP/2는 HTTP/1.1에서 극보하기 힘든 응답속도 측면에서 많은 개선이 있었다.HTTP/1.1은 Persistent와 Pipelining 기능을 통해 하나의 TCP 세션에 여러개의 요청을 보낼 수 있다. 하지만 요청은 서버에서 순차적으로 처리되어 브라우저로 전달
외부에서 내부, 내부에서 외부의 정보통신망에 불법으로 접근하는 것을 차단하며, 보호하는 역할을 담당한다. 설치하지 않는다면 외부네트워크에 그대로 노출되기 때문에 공격받기가 쉬워진다.외부로부터의 모든 접속을 차단한다. 보안 규칙에 따라서 일부 요청을 접속할 수 있도록 허
AMD는 고급 마이크로 장치, 컴퓨터 프로세서 및 관련 제품을 제조하는 미국 회사이다.인텔은 8개의 코어를 한 군데에 모아놓은 반면에 AMD 방식은 4개의 코어씩 분리하고 서로 연결시키는 방식이다. 하지만 코어와 코어가 통신하면서 일을 처리하기 시작하면 지연시간이 발생
동일 출처 정책은 웹 브라우저에서 보안을 강화하기 위하여 동일한 출처에서만 리소스를 주고 받도록 하는 정책이다.출처란 URL 주소이다. 동일한 출처가 정확히 똑같은 URL을 의미하는 것은 아니다. URL 중에서도 프로토콜, 도메인 주소, 포트 번호가 같은 것을 의미한다
서버로부터 HTML 파일을 받아 브라우저에 뿌려주는 과정이다.HTML 파일을 파싱하여 DOM 트리를 만든다.CSS를 파싱하여 CSSOM 트리를 만든다.스타일은 브라우저의 자체 스타일, 사용자 정의 스타일, HTML 태그에 걸려있는 스타일 순서대로 처리되며, 나중에 처리
배열이란 연속된 메모리 공간에 순차적으로 저장된 데이터 모음이다.배열은 메모리 상에 데이터를 연속으로 배치한 자료구조이다.배열을 구성하는 각각의 값을 요소(element)라고 한다.배열에서의 위치를 가리키는 숫자는 인덱스(index)라고 한다.하나의 요소에는 하나의 타
배열이란 기본적으로 크기를 바꿀 수 없는 자료구조라고 알고 있지만 사실 모든 배열이 크기를 바꿀 수 없는 것은 아니다.배열에는 Static Array라고 불리우는 동적배열과 Dynamic Array라고 불리우는 동적배열 두가지가 있다.기본적인 성질은 배열과 같고 큰 차
스택은 아주 많이 사용하는 자료구조로써 말 그대로 쌓아놓은 더미를 뜻한다.뒤로가기 키를 눌렀을 때, 직전에 수행되던 내용이 나타나는데 이때 사용하는 것이 스택이다.스택의 가장 큰 특징은 후입선출(LIFO)로 가장 최근에 들어온 데이터가 가장 먼저 나간다.큐(Queue)
스택 한개는 InBox, 한 개는 OutBox로 만든다.inBox에 데이터를 push한다. ex) 4→ 3→ 2→ 1inBox에 있는 데이터를 pop 하여 outBox에 push한다. ex) 1→ 2→ 3→ 4outBox에 있는 데이터를 pop 한다. - 4→ 3→ 2
데이터베이스에서 인덱스란 추가적인 쓰기 작업과 저장 공간을 활용하여 데이터베이스 테이블의 검색 속도를 향상시키기 위한 자료구조이다.데이터의 위치를 포함한 자료구조를 생성하여 빠르게 조회할 수 있도록 돕는다.Index를 사용하지 않는다면 Full scan을 하기 때문에
데이터베이스의 상태를 변화시키기 위해서 수행하는 작업의 단위이다.작업이란 질의어 한 문장이 아닌 사람이 정하는 기준에 따라 다르다.질의어(sql) → SELECT / INSERT / DELETE / UPDATECommit이란 하나의 트랜잭션이 성공적으로 끝났다라는 것을
FTP는 파일 전송 프로토콜의 약자이다(File Transfer Protocol).프로토콜이란 기본적으로 전자기기가 서로 통신하는 데 필요한 절차나 규칙을 말한다.인터넷을 둘러볼 때는 HTTP를 사용하고 인스턴트 메시지를 주고 받을 때는 XMPP를 사용하는 것 같이 파
mvp는 최소 기능 제품(Minimum Viable Product)의 약자이다. 최소라고 해서 약간 부족한 제품이 아닌 고객이 실제 실행하는 비즈니스가 고객이 필요로 하는 기능이 있는 상태에서 잘 동작하는 최소한의 기능을 말한다.예: 킥보드 → 자전거 → 오토바이 →
web World Wide Web웹이란 인터넷을 통해 연결된 사용자들이 서로의 정보를 공유하는 공간인터넷의 가장 큰 부분을 차지하는 것이 웹 / 그 외에도 인터넷에는 인터넷 전화, 파일공유 등이 있음네트워크 - 컴퓨터와 같은 노드들이 통신 기술을 이용하여 그물망처럼 연
객체지향 프로그래밍이란 (Object-oriented Programming, OOP) 프로그래밍에서 필요한 데이터를 추상화 시켜서 상태와 행위를 가진 객체로 만들어서 객체들간의 상호작용을 통해 로직을 구성하는 프로그래밍 방법이다.객체란 값을 저장하는 변수와 작업을 수행