Study/Backend 32

컴파일러

프로그래머가 고급언어로 작성한 명령코드들(소스코드) 컴퓨터가 알아들을 수 있게 변환하는 과정. 자바부터는대부분은 가비지 컬렉터를 가지고 있다. 기계어 : 빠르지만 외계어 어셈블리 언어 : 그나마 덜 외계어 C언어 : 인간이 할만하다. C++ = C언어 + 객체지향 문법 자바 = C++ 에 가비지 컬렉터를 추가 에 메모리 문법을 뺀것. 파이썬 = 자바 + 인간적인 언어

Study/Backend 2020.10.26

서버와 인터넷

서버란? - 클라이언트에게 네트워크를 통해 서비스나 정보를 제공하는 역할을 하는 컴퓨터를 말합니다. - 서버는 맡은 역할에 따라서 웹 서버, DNS서버 등 여러 종류로 나누어진다. ++++ 1. 컴퓨터보고 서버라고 하는 경우 (컴퓨터랑 완전 동일) / 서버용이라고 따로 제작된 컴퓨터가 있다. (파워랙도 있지만 보통 랙이라고 한다) 2. 컴퓨터를 웹서버로 만들어주는 프로그램(서버) + 웹과 인터넷의 차이란? (설명할 수 있어야 한다) 웹서버? - 웹 서비스를 ㄹ제공하기 위해 사용되는 서버 중 하나입니다. - 클라이언트는 애플리케이션을 통해 정보를 웹서버에 요청을 하고 응답을 받습니다. DNS서버 - ip 주소와 도ㅔ인 주소가 저장되어 있는 서버이다. 인터넷이란? - 여러 대의컴퓨터가 서버와 클라이언트로 구..

Study/Backend 2020.10.26

메서드와 함수의 차이

자바언어에 함수라는 개념은 그 어디에도 존재하지 않는다. 자바로 아무리 함수형 프로그래밍을 모방해도 결코 자바는 함수형 언어가 될 수가 없다. C에서는 함수라는 용어를 쓰는데 자바에서는 메소드란 용어를 쓴다. 오래전 언어에ㅓ는 메소드란 말보다 함수라는 용어로 사용했기에 '메소드 = 함수' 이렇게 둘을 혼동해서 쓰기도 하는데 반드시 구분지어서 써야한다는 것을 깨달았다. 둘은 근본부터 완전히 다르다. 함수는 독립적으로 존재할 수 있으며, X -> Y 첫번째 집합(X)의 임의의 한 원소(x1)를 두 번째 집합(Y)의 오직 한 원소(y1)에 대응시키는 이항 관계이다. 동일한 INput에서는 OUTput 을 보장하는 성질이다. 그리고 연산의 결과값에는 어떠한 변경도 허용하지 않는거이 원칙이다. 함수 - 독립적으로..

Study/Backend 2020.10.26

지역변수와 인스턴스 변수

클래스에는 3가지 변수가 있다. 클래스변수 인스턴스변수 지역변수 클래스는 이를 구성하는 멤버변수와 메서드에서 각각의 변수들을 볼 수 있다. 1) 멤버변수 - 클래스변수 (Static 붙은 변수) - 인스턴스변수 (Static이 없는 변수) 2) 메서드 - 지역변수 (메서드 내에서 생성되는 변수) class Varivable{ statice String class_var; // 클래스 변수 String instance_var; // 인스턴스 변수 public void method() { String local var; // 지역변수 } } 각 변수의 특성을 살펴보면 1. 클래스변수 - 앞에 Static 이 붙어있다. - 모든 인스턴스가 공통된 변수를 공유한다. - 인스턴스를 생성하지 않고도 언제든 바로 사..

Study/Backend 2020.10.26

IP와 도메인

IP란 - 인터넷에서 해당 컴퓨터의 주소. 인터넷에 연결되어 있는 각 컴퓨터는 숫자로 이루어진 고유 주소를 갖고 있다. 이것을 IP 주소라고 른다. 공인ip - 주로 공공기관에서 사용 .gov 사설ip - 공인ip를 하나의 공유기로 나누어 주는 것. 가상의ip를 만들어 각각 제공, 외부에서 검색,접근이 근본적으로 불가능하다. 고정ip - 보안에 취약 유동ip - 대부분 개인 사용하는 ip 도메인 개념 - ip주소를 암기하기 어려움, 사람들이 기억하기 쉬운 주소 표기법을 새롭게 고안. 도메인 네이밍 시스템 DNS - 도메인이름과 ip주소를상호 변환해 주는 기능 등을 수행, 도메인 관리 기관에서 도메인이름과 ip주소를 관리 도메인을 개인이 구매하여 사용하기도 함. 도메인을 발급 받으면 네임서버가 활동하여 도..

Study/Backend 2020.10.26

리눅스를 대체 왜 쓰는가?

누구나 사용가능한 오픈소스의 OS이다. 환경에 따라 많은 버전이 있다. GUI(마우스로 클릭해서 사용하는 것)와 CLI(문자열로 이뤄진 환경)를 지원하는 X-Window 환경이다. 장점 - 저렴한 가격, 사용되는 메모리의 양이 적음, 자유로운업그레이드, 강력한 네트워크와 보안 기능, 다양한 파일 시스템 지원, 동급 하드웨어 사양에서 보다강력하고 효율저임 단점 - 일반사용자가 사용하기 힘들다. 버전이 많아 환경이 공통적이지 않음, 문제 발생 시 개인이 해결해야 함. 네이버를 새벽에 들어가도 작동이 되는이유? 네이버 본사에 컴퓨터를 모아놓은 공간에서 컴퓨터가 게속 켜져있음. 하드웨어(단독으로는 깡통) 커널(소대장) 쉘(사단장) 유틸리티(사령관)

Study/Backend 2020.10.23

CPU의 작동 원리

CPU(Centeral Procesing Unit) = 사람의 뇌 // 더하기 빠르게 하기!! 마이크프로세서의 구성 - 제어장치, 연산장치, 레지스터, 캐쉬메머로 = 크기가 큰 데이터는 마이크로프로세서 외부의 주기억장치를 사용 마이크로프로세서 동작 머신사이클 - 프로그램내장 방식 기능 -2 4개 사이클로 수행 1. 호출(Fetch) 2. 해석(Decode) 3. 실행(Execute) 4. 저장(Store) 기능 -3 클록의 속도와 명령어 처리속도 (마이크로프로세서의 성능 측정 방법) 클록(Clock) - 전기적인 신호를 사용, 인간의 심장과유사 명령어처리속도(MIPS) 연산장치(ALU : Arithmetic and Logic Unit) =CPU(중앙 처리 장치)의 핵심 부분 중 하나로, 산술과 논리 연산..

Study/Backend 2020.10.23