반응형

IT 기술 용어 11

Node.js 콜백 함수 Callback Function

1. 함수란 반복되는 코드들의 집합이다. 이러한 반복되는 코드들을 Copy & Paste 할때, 귀찮다. 반복되는 코드를 함수로 만들어 준다. 2. 함수와 메모리 함수의 코드부분은 메모리에 따로 저장이 됩니다. 함수의 이름부분은 변수로 처리되기 때문에, 함수의 이름은 함수의 코드부분을 가리킵니다. 따라서 함수가 호출될때에는, 함수의 이름을 찾아서, 그 이름이 가르키는 메모리의 주소로 이동하여 실행합니다. 자바스크립트에서 변수는 함수도 저장할 수 있기 때문에, 다른 이름의 변수에 이 함수의 코드를 동일하게 가르키도록 할 수 있습니다. 3. 콜백 함수란 함수의 파라미터로, 함수를 보내는 것이다. 따라서, 어떤 함수든, 그 함수 안에서, 내가 작성한 함수의 코드가 실행되게 할 수 있다. 결국, 내가 만든 함수..

IT 기술 용어 2020.10.13

자바스크립트 Hoisting(호이스팅), let, const, Dynamic Typing

1. 자바스크립트에서 데이터를 저장하는 3가지 키워드 let : 자바스크립트에서 변수를 저장하는 유일한 키워드다. ES6 문법에서 처음 사용되었습니다. let는 중괄호 { } 로 구성된 코드블럭 안에서 사용하는 경우에는, 코드블럭이 끝나면 메모리가 해제되기 때문에, 메모리 낭비가 일어나지 않습니다. var : ES6문법 이전에 사용되던 방식으로서, 글로벌 변수로 선언되기 때문에, 프로그램 종료할때까지 메모리에 남아있게 됩니다. 따라서 지금은 사용하지 않아야 합니다. const : 상수를 저장할때 사용합니다. 한번 저장하면, 다른 값으로 바꿀 수 없습니다. 2. 호이스팅(Hoisting)은 무엇입니까 기존의 변수이름만 저장하는 방식은, var로 처리되기 때문에, 모두 글로벌 변수로 처리됩니다. 변수를 어디..

IT 기술 용어 2020.10.12

VCS (Version Control System) - Git

1. 깃(Git) 이란? 소스코드에 대해서 버전을 관리해 주는 시스템 중 하나입니다. 여러명이 하나의 프로젝트를 공동으로 작업할 때, 코드를 관리해 주는 시스템입니다. 2. 깃을 어떻게 활용하였나? 깃허브 닷컴을 레파지토리로 이용합니다. 그래서, 깃허브 닷컴에 레파지토(Repository)를 만들고, 제 로컬 컴퓨터에 클론(Clone)을 합니다. 안드로이드 스튜디오에 VCS 메뉴와 깃허브를 연동합니다. ( 비주얼스튜디오 코드의 소스 컨트롤에 연동합니다.) 소스코드 개발을 한 후, 커밋(Commit)을 합니다. 커밋이 완료되면, 푸시(Push)를 합니다. 그리고나서, 컨플릭트(Conflict)가 나지 않도록, 집에서 작업하든, 회사에서 작업하든, 풀(Pull) 먼저 하고나서, 작업합니다. 3. 프로젝트 시..

IT 기술 용어 2020.10.06

RDBMS vs NoSQL

1. RDBMS Relational DataBase Management System 관계형 데이터베이스 시스템 트랜잭션 처리가 가능함 MySQL, Oracle, MS-SQL 2. NoSQL 대용량의 데이터를 분산 처리하는 데이터베이스 시스템 오토 샤딩 (Auto Sharding) 기능으로 분산처리가 가능함 Mongo DB, AWS DynamoDB, Firebase Firestore 3. RDB 와 NoSQL의 차이점을 설명하세요. RDB는 스키마를 미리 정의해 줘야 합니다. 그래서 테이블 생성문을 사용해서 스키마를 정의합니다. NoSQL은 스키마 프리(free) 입니다. 따라서 미리 테이블 생성 할 필요가 없습니다. 두번째로, NoSQL은 오토 샤딩 기능이 있어서, 대용량의 데이터를 자동으로 분산 처리합..

IT 기술 용어 2020.10.05

On-Premise 와 Cloud Services 온프레미스 클라우드

온프레미스와 클라우드 1. 온프레미스 (On Premise) 란? 기업이, 자체적으로 보유한 전산실 서버에, 직접 설치해서 운영하는 방식입니다. 클라우드 컴퓨팅 기술이 나오기 전까지, 기업 인프라 구축의 일반적인 방식 이었습니다. 장점은, 정보의 보안성이 높다는 것이고 단점은, 시스템을 증설하거나 구축하는데 시간과 비용이 많이 듭니다. 2. 가장 기본적인 서버의 구조 API 서버와 데이터베이스로 구축합니다. API 서버에는, 웹 프레임워크를 설치합니다. 데이터베이스는 RDBMS를 설치합니다. 3. 스토리지서버 (Storage Server) 는 왜 필요합니까? 스토리지 서버는 파일을 처리하는데 사용합니다. 데이터베이스(RDBMS) 에는 파일을 저장하지 않고, 파일의 경로(주소, 이름, URI, Path)를..

IT 기술 용어 2020.09.29

자바 클래스와 객체 (Class , Object / Instance )

1. 클래스란 사물의 특성을 소프트웨어적으로 추상화하여 모델링 한 것으로서, 멤버변수와 메서드의 집합이다. 2. 객체란 (Object / Instance) 객체란 오브젝트 또는 인스턴스라고도 부릅니다. 객체는 클래스를 힙(heap) 메모리 영역에 할당한 것입니다. 자바에서는 new 키워드를 사용하면 됩니다. 3. 자바의 클래스가 메모리에 올라가는 실제 코드 예시 4. 위의 코드를 실행했으 시, 메모리의 상태 5. OOP 란? Object-Oriented Programming 의 약자다. 자바에서는 클래스가 OOP의 단위다. 사물의 특성을 소프트웨어적으로 추상화하여 모델링 한 것이다. 장점은, 클래스는 재사용이 가능하고, 그래서 협업하기 쉽고, 클래스의 내부 구조를 알 필요없이 사용만 하면 쉽게 소프트웨어..

IT 기술 용어 2020.09.28

Data Structure ( JAVA Collections )

1. Data Structure 데이터 스트럭쳐 란? 데이터는 2개 이상을 의미하고, 2개 이상의 데이터를 저장하는 구조를 데이터 스트럭쳐라고 한다. 데이터를 입력할 수 있고, 수정할 수 있고, 삭제할 수 있고, 억세스 할 수 있어야 한다. (CRUD) 2. 큐 Queue 란? 먼저 입력된 데이터를 먼저 처리하는 자료구조( Data Structure )다. 오래된 데이터를 먼저 사용한다. FIFO (Fisrt In First Out) 3. 스택 Stack 이란? 나중에 입력된 데이터가, 먼저 사용된다. LIFO (Last In First Out) 예를들면, 안드로이드의 화면처리에 사용된다. 4. JAVA 에서의 자료구조 - Collections ( Java의 자료구조 설명 / 자바의 컬렉션 설명 ) 자바..

IT 기술 용어 2020.09.25

REST API

1. REST 란 무엇? 서비스에 존재하는 모든 자원(Resource : 이미지, 유저 정보, 포스팅정보, 동영상 등) 에 대해서 고유의 URI를 부여해서 활용하는 것 2. API 란 무엇? 운영체제(윈도우즈, 리눅스, 맥)에서 돌아가는 프로그램을 만들기 위해서 함수가 필요하고, 이 함수는 운영체제가 제공해 준다. 즉 이렇게 운영체제가 제공해 주는 함수를 API라고 한다. 현재는, 서비스에서 다른 프로그램이나 서비스로 기능을 제공해 주는 인터페이스를 API 라고 한다. 3. REST 의 구성에 대해서 말씀하세요. 3가지로 구성되어 있습니다. 첫번째, Resource (자원) 은 http://service.com/api/v1/users URI 형태로 표시합니다. 두번째, Method (행동) 는 행동에 따..

IT 기술 용어 2020.09.25

프로세스, 쓰레드, 쓰레드풀, 캐시 Process Thread Thread Pool Cache

1. 프로그램(Program)이 실행되는 과정 프로그램은 하드디시크(PC) 또는 플래시메모리(폰)에 저장되어 있다. PC의 경우 더블클릭, 폰의 경우는 탭 하면 저장되어있는 프로그램이 메모리로 올라온다(로딩된다) => 프로세스(Process)라고 한다. CPU가 메모리에 올라온 프로세스를 실행시킨다. (그림은 recipes-4dev.tistory.com 에서 참조) 2. 쓰레드 ( Thread ) 에 대해서 설명하세요. 하나의 프로세스는 기본적으로 한개의 쓰레드를 가집니다. 쓰레드는 동시에 작업할 수 있는 일이 단위입니다. 예를들면, 웹브라우저 에지 프로그램을 실행시키면 1개의 쓰레드가 생성되고, 이미지를 가져오는 작업, 유투브 음악을 듣는 작업 등의 여러 작업은 해당되는 쓰레드가 여러개 생성되어 실행됩..

IT 기술 용어 2020.09.24

안드로이드 프래그먼트 Android Fragment

1. 액티비티와 프래그먼트는 무엇인가? 액티비티는 하나의 화면에 매칭되는 하나의 클래스 액티비티는 안드로이드에서 관리하는 최소한의 단위 프래그먼트는 액티비티 안에서 동작한다. 하나의 액티비티는 여러 프래그먼트 가질 수 있다. 2. 프래그먼트는 왜 생겼나? 한번의 개발로, 여러 해상도의 기기에 맞게 화면 구성을 조합할 수 있도록 하기 위해서 3. 액티비티와 프래그먼트의 라이프 사이클 액티비티는 onCreate() 메소드에서 setContentView 메소드로 화면을 생성합니다. 프래그먼트는 onCreateView() 메소드에서 화면을 생성합니다. 왜냐하면, 프래그먼트는 액티비티 안에 들어가는 것이므로, 액티비티가 생성되고 나서, 프레그먼트를 만들어서 화면에 표시한다. 4. A프래그먼트가 화면에 보인 상태에..

IT 기술 용어 2020.09.23
반응형