본문 바로가기

전체 글139

[Java] 람다식 람다식 (Lambda expression) JDK 1.8 부터 추가 람다식의 도입으로 인해 자바는 객체지향언어인 동시에 함수형 언어가 되었다. 람다식 덕분에 함수형 언어의 장점들을 자바에서도 누릴 수 있게되었다. 람다식이란? 람다식은 메서드를 하나의 식(expression)으로 표현한 것이다. 메서드를 람다식으로 표현하면 메서드의 이름과 반환값이 없어지므로, 람다식을 익명 함수(anonymous function)이라고도 한다. 모든 메서드는 클래스에 포함되어야 하므로 클래스도 새로 만들어야 하고, 객체도 생성해야만 비로소 이 메서드를 호출할 수 있다. 그러나 람다식은 이 모든 과정없이 오직 람다식 자체만으로도 이 메서드의 역할을 대신할 수 있다. 람다식은 메서드의 매개변수로 전달되어지는 것이 가능하고, .. 2019. 6. 13.
[Git] git config 설정 git config 설정 (계정 설정하기) Git을 설치하고 나면 Git 의 사용 환경을 적절하게 설정해주어야만 합니다. 한번만 설정하면 설정한 내용은 git을 업그레이드해도 유지됩니다. 언제든지 명령어를 이용하여 설정을 변경할 수 있습니다. git 설정 파일 /etc/gitconfig 파일: 시스템의 모든 사용자와 모든 저장소에 적용되는 설정입니다. 이 파일을 읽고 쓰고 싶으면 git config --system 옵션을 사용합니다. ~/.gitconfig 파일: 특정 사용자에게만 적용되는 설정입니다. 이 파일을 읽고 쓰고 싶으면 git config --global 옵션을 사용합니다. .git /config: 이 파일은 Git 디렉토리에 있고 특정 저장소(혹은 현재 작업 중인 프로젝트)에만 적용됩니다. .. 2019. 5. 29.
[Git] Git 되돌리기 Reset & Revert 이미 커밋한 버전을 취소하는 방법 Git Reset SourceTree 에서 되돌리고 싶은 버전을 선택하고 마우스 우클릭을 누른다. Reset current branch to this commit 을 선택한다. Using mode 에서 'Hard - discard all working copy chages'를 선택하고 OK를 누른다. 선택한 버전 이후의 모든 버전이 삭제되고, 현재 커밋하지 않은 내용, stage에 올려놓은 내용 전부 삭제된다. (working copy의 상태도 변경됨) 이 기능은 조심해서 다루어야 한다. 되돌린 버전 이후의 버전들은 삭제하면서, working copy의 상태는 아직 커밋하지 않은 상태로 유지하고 싶다면, 이때도 reset을 사용한다. sourceTree에서 되돌리고 싶은.. 2019. 5. 16.
[React] 배열 데이터 렌더링 및 관리 자식 컴포넌트가 부모한테 값 전달하기 App 컴포넌트 내부에서 handleCreate 라는 메소드를 만든다. 그 메소드를 우리가 만든 자식 컴포넌트에게 props로 전달한다. props로 전달한 함수를 호출시켜서 data 값이 App으로 전달된다. 배열에 데이터 삽입하기 information 배열을 만든다. 리액트에서는 불변성을 중요시하기 때문에 concat을 사용하여 새로운 배열을 만들어 대입한다. JavaScript 배열 내장함수 map map이라는 내장함수는 배열을 특정함수를 사용하여 전체적으로 변환해주고 싶을 때 사용한다. 배열 렌더링, key ['a', 'b', 'c', 'd'] 라는 내용을 가지고 있는 배열이 있다고 가정해보자. &#39.. 2019. 5. 6.
[React] Input 상태 관리 reactjs code snippets visual code 에서 reactjs code snippets를 만들고 rcc를 입력하면 클래스 컴포넌트를 자동으로 만들어준다. rsc를 입력하면 함수형 컴포넌트를 자동으로 만들어준다. input 상태 관리 만약 input이 여러개 있는 경우 input에다가 name값을 설정해주어야만 한다. 2019. 5. 3.
[React] 리액트 작업 환경 설정하기 리액트 작업환경 설정하기 준비물 : node.js, VSCode 등 Node.js 설치하기 Node.js 를 LTS 버전으로 설치한다. 윈도우의 경우 노드 공식 홈페이지 다운로드 페이지에서 설치한다. (https://nodejs.org/kr/) macOS, Linux 의 경우 nvm을 통해서 설치한다. nvm은 여러 종류의 node.js 버전을 설치할 수 있게 해주는 버전이다. 나중에 새 버전이 나왔을 때 업데이트 하기도 쉽고, 터미널을 통해 어떤 버전을 사용할지 설정할 수 있어서 편리하다. curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash nvm install --lts npm 대신 ... yarn N.. 2019. 5. 1.
[React] LifeCycle 소개 및 사용법 LifeCycle API 한국어로 번역하자면 '생명주기' 라고 할 수 있다. 컴포넌트가 브라우저 상에서 나타날 때 업데이트 될 때 사라질 때 중간 중간 과정에서 어떤 작업을 하고 싶을 때 LifeCycle API를 사용할 수 있다. LifeCycle API의 종류는 많다. constructor, getDerivedStateFromProps, componentDidMount, shoudComponentUpdate, getSnapshotBeforeUpdate, componentDidUpdate, componentWillUnmount, ... Mounting 컴포넌트가 우리 브라우저 상에 나타난다는 것을 의미한다. Updating 컴포넌트의 props가 바뀌거나 state가 바뀌었을 때를 의미한다. Unmou.. 2019. 5. 1.
[React] 주요 개념 정리 React 주요 개념 정리 다음은 리액트 공식 사이트(https://reactjs.org/)의 Docs 를 읽고 요약 정리한 내용입니다. Hello World 가장 단순한 React 예시 아래 코드는 페이지에 "Hello, world!"라는 제목을 보여준다. ReactDOM.render( Hello, world! , document.getElementById('root') );최신 자바스크립트 문법 let and const 문을 사용하여 변수를 정의한다. class 키워드를 사용하여 JavaScript 클래스를 정의한다. 객체와 달리 클래스 메소드 사이에 쉼표를 넣을 필요가 없다. 클래스가 있는 다른 많은 언어와 달리 JavaScript에서는 this 메소드의 값이 호출되는 방식에 따라 다.. 2019. 4. 24.
[Java] Enum 클래스 열거체(enumeration type) JDK 1.5부터는 C언어의 열거체보다 더욱 향상된 성능의 열거체를 정의한 Enum 클래스를 사용할 수 있음 열거체의 장점 열거체를 비교할 때 실제 값 뿐만 아니라 타입까지도 체크함 열거체의 상수값이 재정의 되더라도 다시 컴파일할 필요가 없음 열거체의 정의 및 사용 자바에서는 enum 키워드를 사용하여 열거체를 정의할 수 있음 enum 열거체이름 { 상수1이름, 상수2이름, ... } enum Rainbow { RED, ORANGE, YELLOW, GREEN, BLUE, INDIGO, VIOLET } 이렇게 정의된 열거체는 다음처럼 사용함 열거체이름.상수이름 Rainbow.RED 열거체의 상수값 정의 및 추가 열거체의 첫번째 상수값은 0부터 설정되며, 그다음은 바로.. 2019. 4. 18.
[React] 리액트는 무엇인가_01 프론트엔드 라이브러리 요즘의 웹은 단순히 웹 페이지가 아니라 웹 애플리케이션임 어떤 유저 인터페이스를 동적으로 나타내기 위해서는 수많은 상태들을 관리해야함 예를 들어서 다음과 같은 html 코드가 있다고 가정해보자. Counter 0 + 버튼을 눌러서 숫자 0을 바꾸어주려면 var number = 0; var elNumber = document.getElementById('number'); var btnIncrease = document.getElementById('increase'); btnIncrease.onclick = function() { number++; elNumber.innerText = number; } 프로젝트의 규모가 커지고 다양한 유저 인터페이스와 인터렉션을 관리해야 한다면 번거롭고.. 2019. 4. 16.
[Java] 스트림 API 스트림 API Java SE 8부터 추가된 스트림 API는 입력과 출력의 스트림과는 전혀 다른 개념 자바에서는 많은 양의 데이터를 저장하기 위해서 배열이나 컬렉션을 사용함 이렇게 저장된 데이터에 접근하기 위해서는 반복문이나 반복자(iterator)를 사용하여 매번 새로운 코드를 작성 데이터베이스의 쿼리와 같이 정형화된 처리 패턴을 가지지 못했기에 데이터마다 다른 방법으로 접근해야만 했음 이러한 문제점을 극복하기 위해서 Java SE 8부터 스트림(stream) API를 도입함 스트림 API는 데이터를 추상화하여 다루므로, 다양한 방식으로 저장된 데이터를 읽고 쓰기 위한 공통된 방법을 제공 배열이나 컬렉션뿐만 아니라 파일에 저장된 데이터도 모두 같은 방법으로 다룰 수 있음 스트림 API의 특징 스트림은 외.. 2019. 4. 16.
[Java] 람다 표현식 람다 표현식(lambda expression) 람다 표현식이란 메소드를 하나의 식으로 표현한 것 int min(int x, int y) { return x x x < y ? x : y; 익명 클래스 new Object() { int min(int x, int y) { return x < y ? x : y; } } 람다 표현식은 메소드.. 2019. 4. 15.
[알고리즘] Linear Search [Algorithm - Linear Search] ※ 검색 알고리즘 - 데이터 집합에서 원하는 값을 가진 요소를 찾아내는 검색 알고리즘에 대해 살펴보자. ※ 선형 검색- 요소가 직선 모양으로 늘어선 배열에서의 검색은 원하는 키 값을 갖는 요소를 만날 때까지 맨앞부터 순서대로 요소를 검색하면 되는데 이것이 선형 검색(linear search) 또는 순차 검색(sequential search) 알고리즘이다. - 선형 검색(순차 검색)은 결과가 두 조건으로 나누어짐 - 배열의 요소를 맨 앞부터 순서대로 검색함 - key 값인 14를 맨 앞부터 찾는다면 4번째 인덱스에서 key 값을 찾게 되고 검색 성공 - key 값인 99를 맨 알부터 찾는다면 배열을 순차적으로 검색해도 값이 없기 때문에 검색 실패 ※ 선형 .. 2019. 3. 1.
[Java] StringBuffer [Java] StringBuffer - StringBuffer 자료형은 문자열을 추가하거나, 변경할 때 주로 사용하는 자료형이다.- StringBuffer는 아래와 같이 사용한다. | StringBuffer 를 사용하였을 때(StringBufferTest.java) | append- StringBuffer 자료형은 append 라는 메소드를 이용하여 계속해서 문자열을 추가해나갈 수 있다.- toString() 메소드를 이용하면 String 자료형으로 변경할 수 있다. | String 을 사용하였을 때(StringTest.java)- 두 개의 코드(code) 모두 출력은 동일하지만, 내부적으로 객체가 생성되고 메모리가 사용되는 과정은 다르다.- StringBuffer의 경우 객체는 단 한번만 생성된다.- .. 2018. 12. 1.
자주 사용하는 SQL Query 2 [DataBase] 자주 사용하는 SQL Query 2 [데이터 조작 함수 사용하기] # 문자 조작 함수 # UPPER() 는 문자를 모두 대문자로 변환한다 SELECT vend_name, UPPER(vend_name) AS vend_name_upcaseFROM VendorsORDER BY vend_name; # 자주 사용되는 문자 조작 함수 -- LEFT() : 문자열 왼쪽에서부터 문자열 일부를 추출-- LENGTH() : 문자열의 길이를 반환-- LOWER() : 문자열을 소문자로 변환 -- LTRIM() : 문자열의 왼쪽에 있는 공백 문자를 삭제 -- RIGHT() : 문자열 오른쪽에서부터 문자열 일부를 추출-- RTRIM() : 문자열의 오른쪽에 있는 공백 문자를 삭제 -- SOUNDEX() : .. 2018. 12. 1.
[실용주의 프로그래머 Review] 1장. 실용주의 철학 1장. 실용주의 철학 실용주의 프로그래머 (The Pragmatic Programmer) 앤드류 헌트, 데이비드 토머스 지음 김창준, 정지호 옮김 인사이트 | 1장. 실용주의 철학 - 실용주의(pragmatic) 라는 단어는 라틴어 pragmaticus(일에 숙달된)에서 나온 단어고, 그 라틴어는 다시 그리스어 '...을 하다' 를 뜻하는 단어에서 나온 단어다. - 도구든, 언어든, 운영체제든 상관없이 최고의 해결방안 같은 것은 없다. 오직 특정한 환경 조건의 집합마다 각 집합에 가장 적절한 시스템들이 있을 뿐이다. 바로 이것이 실용주의가 뜻하는 바다. - 어떤 특정 기술에 매이면 안되며, 개별 상황마다 그 상황에서 좋은 해결방안을 고를 수 있도록 충분한 배경 지식과 경험을 가져야 한다. - 배경지식은 .. 2018. 11. 29.
[Java] Java 배열 정렬 Java 배열 정렬 ※ Java 배열 정렬하기 (오름차순 vs 내림차순) - Arrays.sort() 함수를 이용하여 배열을 정렬할 수 있다. ※ 배열의 원소들을 오름차순으로 정렬하기 - primitive date type 배열을 Arrays.sort() 함수에 입력하면 배열을 정렬할 수 있다. - 올림차순으로 정렬했으므로, 배열은 아래와 같이 변경된다. - array = {1, 3, 19, 53, 61} - 위 코드를 실행하면 아래와 같은 결과 값이 콘솔창에 출력된다. ※ 배열의 원소들을 내림차순으로 정렬하기 - primitive data type 이 아니라 객체의 배열을 이용하여 변경함 - Collections class 의 reverseOrder() 함수를 이용함 - array2 = {61, 53,.. 2018. 11. 27.
[이펙티브 자바] 2장 객체 생성과 파괴 Chapter 2. 객체의 생성과 파괴 객체의 생성 Item 1. Constructor 대신 Static Factory Method를 고려하라. Laptop Class public class Laptop { private String model; private String company; } Constructor public Laptop(String modelName, String company) { this.modelName = modelName; this.company = company; } 이름을 가진 Static Factory Method public static Laptop ofModelNameAndCompany(String modelName, String company) { Laptop lap.. 2018. 11. 22.
[Lombok] STS에 lombok 적용하기 [Lombok] STS에 lombok 적용하기 ※ lombok 자바 개발자들에게 Getter/Setter 메소드를 생성하거나 toString() 혹은 생성자 함수를 생성하는 등의 작업은 번거롭고 귀찮은 작업이다. 다만, 이러한 작업이 너무나 반복적으로 필요하기 때문에 개발의 생산성을 높이고 싶다면 Lombok 을 이용해 단순 반복 작업을 자동화함으로써 개발 시간을 단축할 수 있다. | Lombok 이란 Lombok은 자바에서 @Getter, @Setter 같은 annotation 기반으로 기존 DTO, VO, Domain Class 등을 작성할 때, 멤버 변수에 대한 Getter/Setter Method, Equals(), hashCode(), ToString()과 멤버 변수에 값을 설정하는 생성자 등등.. 2018. 11. 19.
자주 사용하는 SQL Query 1 [DataBase] 자주 사용하는 SQL Query 1 [샘플 테이블 다운로드]다음 SQL 실습에 사용된 모든 데이터는 http://forta.com/books/0672336073 에서 다운로드 받을 수 있다 [데이터 가져오기] # 단일 컬럼 가져오기SELECT prod_nameFROM Products; # 다중 컬럼 가져오기SELECT prod_id, prod_name, prod_priceFROM Products; # 모든 컬럼 가져오기SELECT * FROM Products; # 중복행 출력 방지하기SELECT DISTINCT vend_idFROM Products; # 결과 제한하기SELECT prod_nameFROM ProductsLIMIT 5; # 5번째 행부터 5개의 행을 가져오기SELECT p.. 2018. 11. 9.
Spring-MyBatis Connection 설정 [Spring-MyBatis Connection 설정] ※ Spring 과 MyBatis 를 연동하고 테스트 코드를 작성하여 연동 성공 여부를 확인한다. ※ Mybatis 의 장점 - 간결한 코드의 처리- SQL 문의 분리운영- Spring과의 연동으로 자동화된 처리- 동적 SQL을 이용한 제어 기능 1. pom.xml 에 Mybatis 관련 dependency 추가하기 - Mybatis, MyBatis-Spring, spring-jdbc, spring-test 추가 2. root-context.xml 파일 수정 - 스프링과 관련된 설정 중 웹 자원과 관련되지 않은 모든 자원의 설정을 위해서 존재하는 파일- 웹과 관련된 설정은 servlet-context.xml 파일에서 관리 3. DataSource 테.. 2018. 11. 1.
Spring - MySQL 연동 설정 [Spring - MySQL 연동 설정 ] ※ Spring 과 MySQL 을 연동하고 테스트 코드를 작성해서 연결 성공 여부를 테스트한다. 1. 사전 설정 사항 1) MySQL 설치 (MySQL-8.0.13)- http://dev.mysql.com/downloads/ 에서 MySQL 설치 2) MySQL Workbench 설치 3) 새로운 계정 생성 및 스키마 추가 4) 사용자의 기본 스키마 설정 2. MySQL 연결 테스트 1) maven 프로젝트에서 pom.xml 에 MySQL Connector/J 추가 2) JDK 버전 변경과 jUnit 의 버전 변경 - try - with 구문은 JDK 1.7 버전 이후에 지원되기 때문에 현재 프로젝트의 JDK 버전을 1.7 이상으로 변경한다. - jUnit 의 .. 2018. 11. 1.
SQL [SQL] ※ 데이터베이스- 정리된 데이터(하나 또는 여러 개의 파일)를 저장하기 위한 공간 ※ 테이블- 구조화된 특정한 타입의 데이터 목록 ※ 스키마- 데이터베이스와 테이블 구조, 속성에 대한 정보 ※ 컬럼- 테이블에 있는 하나의 필드. 모든 테이블은 한 개 이상의 컬럼으로 구성되어 있다. ※ 데이터타입- 허용되는 데이터의 유형. 모든 테이블 컬럼은 데이터타입을 가지고 있고, 컬럼에는 정해진 데이터 타입만 허용된다. (정해지지 않은 데이터 타입은 제한된다) ※ 행- 테이블에 있는 레코드 ※ 주 키- 테이블에 있는 각 행을 구별하는 컬럼(또는 컬럼 집합) ※ 키워드- SQL 언어의 일부분인 예약어로, 키워드는 테이블명 또는 컬럼명으로 사용할 수 없다. 2018. 10. 24.
[알고리즘] 깊이 우선 탐색(DFS) 과 너비 우선 탐색(BFS) [알고리즘] 깊이 우선 탐색(DFS) 과 너비 우선 탐색(BFS) ※ 그래프의 개념 - 정점과 간선으로 이루어진 자료구조의 일종. G = (V, E) ※ 그래프 탐색 - 하나의 정점으로부터 시작하여 차례대로 모든 정점들을 한 번씩 방문하는 것 Ex) 특정 도시에서 다른 도시로 갈 수 있는지 없는지, 전자 회로에서 특정 단자와 단자가 서로 연결되어 있는지 ※ 깊이 우선 탐색 (DFS, Depth-First Search)의 개념 - 루트 노드(혹은 다른 임의의 노드)에서 시작해서 다음 분기(branch)로 넘어가기 전에 해당 분기를 완벽하게 탐색하는 방법 1. 미로를 탐색할 때 한 방향으로 갈 수 있을 때까지 계속 가다가 더 이상 갈 수 없게 되면 다시 가장 가까운 갈림길로 돌아와서 이곳으로부터 다른 방향으.. 2018. 10. 24.
Part 01 웹 프로그램 언어의 기초_17 Naver BoostCourse Full-Stack Developer Course Part 01 웹 프로그래밍 기초 16. Element가 배치되는 방법 (CSS layout) ※ Intro - CSS의 배치를 위해 여러가지 중요한 개념 이해- block과 inline의 차이, position 속성 이해- float 성질 이해 ※ 개념 - 박스 모델 (Box model)- margin- border- padding- position ※ 엘리먼트가 배치되는 방식 - 엘리먼트를 화면에 배치하는 것을 layout 작업이라고도 하고, Rendering 과정이라고도 함- 기본 엘리먼트는 위에서 아래로 배치되는 것이 기본- 하지만 웹사이트의 배치는 다양하게 표현 가능해야 하므로, 이를 다양한 방식으로 배치할 수 있.. 2018. 10. 18.
Part 01_웹 프로그램 언어의 기초_16 Naver BoostCourse Full-Stack Developer Course Part 01 웹 프로그래밍 기초 15. CSS 기본 Style 변경하기 ※ Intro - 글자색, 배경색, 글꼴 바꾸기- 텍스트 속성 및 옵션값을 변경하기 ※ 핵심 개념 * font-size* background-color* font-family ※ CSS 기본 스타일 변경하기 - CSS style 적용은 글자색, 배경색 등이 가장 자주 사용됨- 이런 속성은 위치 값과 크기를 지정하는 것과 달리, 색상 위주로 값을 부여함- 색상 관련 값은 주로 16진수 표기법을 사용함 ※ font 색상 변경 * color : red;* color : Reba(255, 0, 0, 0.5);* color : #ff0000; // 16진수 표.. 2018. 10. 10.
Harvard CS50_ASCII 코드 Harvard CS50 Class ※ Chapter 1. 컴퓨터와 컴퓨팅 5. ASCII 코드 ※ Intro - 우리가 컴퓨터로 주로 작성하는 것은 숫자가 아니라 문자임- 0과 1만 이해할 수 있는 컴퓨터가 우리가 사용하는 문자(text)는 어떻게 이해할 수 있을까? ※ 핵심 단어 - ASCII- ASCII 표- 인코딩- 유니코드 ※ ASCII 코드 - 컴퓨터는 텍스트를 비롯한 다양한 형태의 정보를 저장- 하지만 컴퓨터가 0과 1로된 데이터만 저장할 수 있기 때문에, 0과 1을 이용해 텍스트 문자로 나타내야함- ASCII (아스키) : 문자를 컴퓨터가 이해할 수 있는 이진 데이터(0 또는 1)로, 혹은 그 반대로 변환하는 표준 방법 ※ ASCII 인코딩 표준 - ASCII (아스키)는 컴퓨터가 텍스트 데.. 2018. 10. 6.
Harvard CS50_2진수 Harvard CS50 Class ※ Chapter 1. 컴퓨터와 컴퓨팅 4. 2진수 ※ Intro - 컴퓨터는 0과 1 두 가지 숫자로 정보를 저장- 사람은 0부터 9까지 숫자의 조합으로 10, 826, 29325와 같은 숫자를 만들어낼 수 있음- 컴퓨터도 0과 1의 조합으로 크고 작은 숫자와 다양한 문자를 만들 수 있음 ※ 2진수 - 컴퓨터는 비트 형태로 데이터를 나타냄- 비트는 이진법의 최소 단위임- 숫자 0과 1로 신호를 나타내는 최소 단위를 비트라고 함- 비트를 가지고 수학적 연산을 하기 위해, 컴퓨터는 0과 1만을 사용하는 2진수라는 수 체계를 사용함 ※ 수 체계 - 우리가 사용하는 수 체계는 10진수- 10진수는 0부터 9까지 10개의 숫자를 이용하여 값을 표현할 수 있음- 10진수에서 각 .. 2018. 10. 5.
Harvard CS50_비트와 바이트 Harvard CS50 Class ※ Chapter 1. 컴퓨터와 컴퓨팅 3. 비트와 바이트 ※ Intro - 아이콘이나 컴퓨터 본체, 모니터 전력 버튼에는 위가 열린 동그라미 안에 세로 막대기가 그려져 있음- 동그라미는 0, 세로 막대기는 1을 의미함 ※ 학습 목표 1. 데이터를 표현하는 추상적 개념의 종류2. 2진 수열이 디지털 데이터를 어떻게 표현하는지 이해 ※ 비트 (bit) - 정보를 저장, 연산을 수행하기 위해 비트(bit)라는 측정 단위를 사용- 비트는 이진 숫자라는 뜻을 가진 "binary digit"의 줄임말. 0과 1, 두가지 값만 가질 수 있는 측정 단위임- 디지털 데이터를 여러 비트들로 나타냄으로써 두 가지 값만 가지고도 많은 양의 정보를 저장할 수 있음- 컴퓨터는 저장되어 있는 데.. 2018. 9. 28.
Harvard CS50_기억장치 Harvard CS50 Class ※ Chapter 1. 컴퓨터와 컴퓨팅 2. 기억장치 ※ 들어가기전에 - 우리는 컴퓨터를 통해 수없이 많은 자료를 저장하기도 하고 불러오기도 함- 그렇다면 컴퓨터는 이처럼 수많은 자료를 어떻게 저장하고 기억하는 것일까?- 컴퓨터가 자료를 담아두는 기억장치의 종류와 특징에 대해 이해하기 ※ 학습 목표 - 컴퓨터에 쓰이는 기억장치의 의미를 정확하게 이해- 기억장치의 종류를 알고, 각각의 크기와 속도를 비교해 ※ 핵심 개념 - 기억장치- RAM- 캐시- 가상 기억장치 ※ 기억장치 - 컴퓨터가 계산을 수행하기 위해 비트와 바이트 형태로 기억장치에 저장할 수 있어야함- 컴퓨터가 나중에 데이터를 검색할 수 있도록 보관함- 기억장치는 종류마다 서로 다른 속도를 내고, 내부에 저장할 .. 2018. 9. 23.