본문 바로가기

달밤에 코딩하기

(74)
미리 작성하면 좋은 코드 정리 HTML Head Head 영역 한눈에 보기 상세 설명 Viewport viewport로 디바이스 표시 영역에 대한 정의가 가능하다. width : 화면에 표시 될 가로사이즈를 정의할 수 있다. device-width는 "기기의 가로 값을 사용하겠다."라는 의미다. initial-scale : 초기 화면 배율 설정이다. 1일 경우 "화면의 사이즈를 원본 사이즈(1)로 사용 하겠다."라는 의미다. user-scale : 사용자가 확대 및 축소를 허용하는가 여부를 정의할 수 있다. maximum-scale : 최대 확대 비율 설정이다. 1을 설정할 경우 확대 되지 않는다. minimum-scale : 최소 축소 비율 설정이다. 1을 설정할 경우 축소 되지 않는다. 오픈 그래프와 트위터 카드 오픈 그래프와 트..
#6-애플리케이션 애플리케이션이란 설치해서 사용하는 모든 프로그램을 애플리케이션이라고 한다. 아래 4가지 단어는 모두 애플리케이션과 같은 말이다. 애플리케이션 (Application) 응용 프로그램 (Application Software) 앱 (APP) 어플 애플리케이션 버전 디자이너는 '최종_최종의 최종.psd'와 같이 변경된 파일을 관리한다. 하지만 개발자는 변경 범위에 따라 애플리케이션에 숫자를 매기며, 이를 버전이라고 한다. 버전은 '1.2.3'과 같이 세자리로 구분되고, 아래와 같은 규칙을 따른다. 버전 2.4.0 첫번 째 숫자 (2) : 하위 버전과 호환이 가능하지 않은 큰 변화 일 경우 숫자를 올림. 두 번째 숫자 (4) : 하위 버전과 호환이 가능하지만 큰 변화 일 경우 숫자를 올림. 세 번째 숫자 (0) ..
#5-개발자와 API (API, RESTful API, CRUD, JSON) API란 Application Programming Interface의 약자이며, 클라이언트와 서버가 각각의 다른 프로그램에서 요청과 응답을 주고받을 수 있게 만든 체계다. 자세한 설명은 아래와 같다. 개발자에 따른 API 백앤드 개발자 / 서버 개발자 : 서버 프로그램 및 API를 개발한다. 프론트 개발자 / 클라이언트 개발자 : API를 사용한다. API의 체계 API는 다음과 같이 동작하게 되어있는 체계이다. 기본적으로 API는 CRUD에 대한 요청을 처리한다. 여기서 "서버 주소 = IP주소 = 도메인"이라고 생각하면 된다. A 프로그램의 클라이언트가 "서버 주소/00"에 00을 요청한다. B 프로그램의 서버가 "서버 주소/00"에서 해당 데이터를 JSON 파일에 담는다. B 프로그램의 서버가 J..
#4-개발자가 리눅스를 사용하는 이유 (리눅스, 우분투) 리눅스(Linux)란? 리눅스란 Window Mac과 같은 운영체제다. 개발자 중 서버를 담당해야 하는 백엔드 개발자가 주로 리눅스를 사용하며, 리눅스에서 서버 프로그램을 실행하기 때문이다. 그렇다면 개발자는 왜 리눅스에서 서버 프로그램을 실행할까? 리눅스를 사용하는 이유 리눅스는 제작자인 '리눅스 토발스'가 무료로 배포했으며, 수정 및 배포를 허가했다. 즉, 리눅스는 기본적으로 무료라는 이야기다. 리눅스가 Window나 Mac과 달리 가격이 싸고 접근이 어려운 이유가 있다. 리눅스는 Window와 Mac과 같이 그래픽 UI를 제공하지 않아 컴퓨터 언어를 잘 알아야 사용할 수 있기 때문이다. 때문에 기본적으로 명령어를 통해 컴퓨터를 제어하며, 서버 프로그램을 돌려야 하기 때문에 안정적이라는 특징이 있다...
#3-네트워크 이해하기 (서버, 클라이언트, IP) 범위에 따른 통신망 정의 서버와 클라이언트를 알아보기 전, 네트워크에 대해 알아보자. 네트워크는 범위에 따라 구분되며, 자세한 내용은 아래와 같다. Local : 가장 작은 지역 LAN : Local Area Network. 근거리 통신망 MAN : Metropolitan Area Network. 도시 지역 통신망 WAN : Wide Area Network. 광역 통신망 서버와 클라이언트 네이버에서 이미지를 다운로드할 때 벌어지는 일 네이버에서 이미지를 다운로드할 때 나는 네이버 PC에 WAN을 통해 이미지를 달라고 요청한다. 이때 네이버 PC는 IP주소로 이미지를 보내게 되는데, 자세한 내용은 다음 내용에 자세하게 기재했다. 여기서 이미지를 달라고 하는 내 스마트폰을 클라이언트(고객) 또는 프론트엔드라..
#2-개발자가 하는 일2 (컴퓨터, 운영체제, JAVA) 요약 개발자는 프로그래밍 언어를 통해 운영체제 위에 돌아가는 프로그램을 만드는 사람들이다. 컴퓨터가 일하는 방식 컴퓨터는 크게 아래와 같이 이루어진다. CPU : 중앙처리장치. 컴퓨터의 머리에 해당한다. 처리/연산을 담당한다. HDD / SSD : 기억장치. 데이터 저장소에 해당한다. RAM : 메모리. 임의 접근 기억 장치. 임시 저장소에 해당한다. 휘발성 메모리다. CPU는 데이터를 저장할 수 없다. 때문에 CPU가 처리/연산 시, HDD 또는 SSD에서 저장된 데이터를 CPU에게 주어야 한다. 하지만 HDD/SSD의 공간이 너무 방대해서 데이터를 찾는데 시간이 오래 걸리기 때문에 CPU는 RAM에 휘발성 데이터를 저장/요청한다. 이로 인해 처리/연산을 빠르게 처리할 수 있다. 운영체제(OS)란 운영..
#1-개발자가 하는 일1 (컴파일러, 개발 언어, IDE) 요약 개발자는 IDE와 프로그래밍 언어를 사용하여 컴파일러에게 명령을 전달하는 사람이다. IDE란? 통합 개발 환경을 말한다. 개발에 관련된 모든 작업을 하나의 프로그램 안에서 처리하는 환경을 제공하는 소프트웨어다. IDE는 어떤 목적으로 개발하느냐에 따라 사용 프로그램이 구분된다. Android Studio : 안드로이드 애플리케이션 개발 Xcode : 애플 운영 체제 위의 애플리케이션 개발 Eclipse : C/C++ 개발, 자바 개발, 웹 개발 Pycharm : 파이썬 개발 프로그래밍 언어 간단하게 말하자면 컴퓨터에게 일을 시킬 수 있는 언어를 뜻한다. IDE 소프트웨어를 실행시켜 프로그래밍 언어를 입력하는 방식으로 사용된다. 이는 컴퓨터 / 인간 친화적인 형태로 구분되며, 자세한 내용은 아래와 같..
CSS 이름 작명 규칙 (BEM) 개발자에게는 CSS의 이름을 작성할 때 일정한 규칙이 있으며 이를 BEM 방법론이라고 한다. BEM이란? Block-Element-Modifier의 약자로 CSS 클래스 이름에 대한 작명 규칙 표준이며 Sparkbox에서 널리 사용된다. BEM의 장점 BEM 규칙을 통해 아래 장점을 가질 수 있다. 목적과 기능 전달 구성 요소 구조 전달 스타일 선택자에 대한 낮은 수준의 일관성을 설정 작성 방법 구성 요소 BEM 클래스는 3개 부분으로 구성되며, 순서와 예시는 아래와 같다. 블록 : 상위 요소 요소 : 자식 요소 수정자 : 변형 요소