CS

· CS
PHP 1) PHP HTML과 CSS는 웹 페이지의 구조와 스타일을 만들고 변경하는 언어다. 즉, 우리 눈에 보이는 겉모습은 만들어낼 수 있어도 이 페이지는 실질적으로 동작하지는 못한다. 웹 페이지에게 어떠한 기능을 주기 위해서 해석형 언어인 PHP를 사용한다. 해석형 언어는 컴파일되지 않고 한 줄씩 인터프리터에 의해 실행된다. 인터프리터는 각 줄을 읽어서 그것이 의미하는 바를 실행하는 프로그램이다. JavaScript도 해석형언어이고, C언어는 2진수로 컴파일되는 언어다. 2) MVC PHP는 동적 웹 페이지를 만들기 위해 설계된 언어다. PHP로 작성된 코드를 HTML 소스 문서 안에 넣으면 웹 서버에서 코드를 인식하여 웹 페이지를 생성한다. 이러한 전체 과정이 웹 프로그래밍이다. 프로그래밍을 효율적..
· CS
인터넷과 네트워크 1) HTTP(Hyper Text Transfer Protocol) - HTTP(Hypertext Transfer Protocol)은 웹 브라우저가 웹 서버와 대화하기 위한 프로토콜이다. 사용자가 웹 페이지를 방문하려 할 때, 그들의 웹 브라우저(클라이언트)는 웹 서버에 웹 페이지의 내용을 요청해야 한다. 웹 서버는 그 요청에 응답하기 위해 요청을 해석하고, 요청된 페이지를 클라이언트에게 돌려보낸다. HTTP는 이 과정을 용이하게 해주며, 요청을 보내고 받는 표준적인 방법을 정해준다. 2) GET과 POST 요청 - 사용자가 웹 브라우저에 URL을 입력해 웹 페이지를 요청하면, 웹 브라우저는 GET 요청이라는 특정한 유형의 HTTP 요청을 보낸다. GET 요청은 단어 GET으로 시작되고..
· CS
인터넷의 기초 1. 인터넷에 연결하기 무선장치(노트북, 스마트폰) --- AP(Access Point) --- 스위치 --- 라우터 --- 인터넷의 나머지부분 이 순으로 인터넷에 연결이 된다. 2. IP 주소 - IP란 Internet Protocol Address 의 약자로, 인터넷상에 있는 장치들에게 IP를 할당한다. IP주소는 연결된 장치들을 식별할 수 있도록 하며 인터넷상의 다른 장치들이 특정 장치를 찾을 수 있게 한다. 정보가 인터넷을 가로질러 전송될 때, 어디에서 정보를 보냈으며 어디로 보내는지를 인터넷이 알 수 있도록 IP 주소를 사용한다. 정보에 대한 반송 주소와 도착 주소가 있다는 점에서, 실제 우편을 보내는 것과 매우 비슷하다. 3. DHCP와 DNS - 예전에는 IP주소를 네트워크 관..
· CS
- 기본적으로 우리가 적은 소스 코드들은 0과 1로 이루어진 오브젝트 코드로 바뀌어야하는데, 이러한 번역과정을 컴파일 과정이라고 한다. - 소스코드 --> 컴파일 과정 --> 오브젝트 코드 로 바뀌게 되는 것, 1) 전처리 - 컴파일과정이 시작되기 이전에, C언어에서 #include와 같이 전처리기에게 다른 파일의 내용을 포함하라고 알려준다. 그러면 새로운 파일을 생성할 때, 언어는 C언어이지만 studio.h 파일의 내용이 #include부분에 포함이 된다. 2) 컴파일 - 전처리기가 전처리한 소스코드를 생성하고 나면, 컴파일 과정을 시작한다. 프로그램은 C코드에서 어셈블리언어 라는 저수준 프로그래밍 언어로 컴파일한다. 즉, 바로 오브젝트 언어로 바꾸지 않고, 컴퓨터가 이해할 수 있는 언어와 최대한 가..
· CS
지금까지 정렬 알고리즘을 수행할 때, 소요되는 시간을 기준으로 효율성을 판단해왔다. 정렬 알고리즘을 빠르게 수행하기 위해서는 비교와 교환 등을 처리하는 횟수가 적어야 한다. 1) 시간복잡도 - 알고리즘을 수행할 때 걸리는 시간을 기준으로 효율성을 분석하는 것을 말한다. 시간의 효율성이란 결국 알고리즘에서 비교와 교환이 일어날 때, 실행의 연산자의 처리 횟수가 적다는 것을 의미하며, 연산자 처리 횟수가 적다는 건 시간의 복잡도가 낮다는 것을 의미한다. 2) Big-O 표기법 - Big-O 표기법은 컴퓨터 과학에서 “대략”을 나타내는 공식적인 개념으로 최악의 경우에 대한 시간 복잡도를 나타내는 표현이다. 선형 탐색은 비교적 간단한데 찾는 값이 배열의 맨 끝에 있는 최악의 상황의 경우 이 값을 찾는데 n번의 ..
· CS
1) 알고리즘이란? - 알고리즘이란, 입력값을 출력값으로 바꾸기 위한 그 일련의 과정을 이야기한다. 어떤 명령이 수행되어야하는지 규칙적인 순서적 나열이라고 이야기할 수 있다. - 알고리즘에서 중요한 것은 '정확성' 과 '효율성' 이다. 2) 알고리즘을 잘짜기 위해서는? - 제대로된 출력값을 컴퓨터가 출력하게끔 하게 위해서는 프로그래밍 언어를 활용해야한다. 즉, 알고리즘을 표현하기 위한 언어는 자연어, 의사코드, 순서도 등이 있다. - 프로그래밍 언어같은 경우는, 컴퓨터가 알아들을 수 있게 이미 정해진 코드를 짜야하지만 의사 코드(pseudocode)는 정해진 방법이 없으며 보다 명확하게 의미를 나타낼 수 있기 때문에 알고리즘을 이해하기 쉽다. 의사코드는 사람이 이해할 수 있는 말로 내가 해결해야하는 문제..
김코린이
'CS' 카테고리의 글 목록