일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- 모던 자바스크립트
- Java
- DB #데이터베이스
- 우선순위역전
- javascript
- 상태관리
- 운영체제
- 렌더 트리
- 변수
- js
- 인프콘
- 부스트캠프
- 우선순위상속프로토콜
- 데이터독립성
- 부스트캠프7기
- 타입
- 멤버십
- GDSC
- 부스트캠프웹모바일
- GDSC_PKNU
- OS
- 브라우저 렌더링
- 그룹프로젝트
- 모던자바스크립트
- 부스트컨퍼런스
- 놀러와요_해커톤
- 회고
- CRDT
- 확인문제
- CSSOM
- Today
- Total
목록Study (26)
dohun.log
1. 원시 값 변경 불가능한 값 원시 타입의 값은 변경 불가능한 값이다. (only 읽기 모드) 어? 그럼 내가 사용했던 변수는 뭐야...(예나, 선정이 딸이에요 "변수, 원시 딸이에요..") 다시 개념을 정리하면 변수는 메모리 공간에 저장된 값을 식별하는 "식별자"이고, 값은 메모리 공간에 저장된 "값"이다. 그럼 앞의 말은 다음과 같은 의미이다. 메모리 공간에 저장된 원시 타입의 값은 변경 불가능한 값이다. 메모리 공간에 저장된 값을 변경하지 않으면 된다! 그러면 변수의 재할당은 어떻게 가능한걸까? 이전에 값의 재할당에서도 봤듯이 새로운 메모리 공간에 재할당하려는 값을 저장하고 변수가 새로운 메모리 공간을 가리키게 하면 된다. 상수는 이러한 재할당이 금지된 변수이다. (const!!) 문자열과 불변성..
구분 데이터 타입 설명 원시 타입 숫자 타입 (Number Type) 숫자, 정수와 실수 구분없이 하나의 숫자 타입만 존재 문자열 타입 (String Type) 문자열 불리언 타입 (Boolean Type) 논리적 참(true)과 거짓(false) undefined 타입 값이 없다는 것을 의도적으로 명시할 때 사용하는 값 null 타입 값이 없다는 것을 의도적으로 명시할 때 사용하는 값 심벌 타입 (Symbol Type) ES6에서 추가된 7번째 타입 객체 타입 객체, 함수, 배열 등 6.1 숫자 타입 var integer = 10; // 정수 var double = 10.12; // 실수 var negative = -20; // 음의 정수 var binary = 0b01000001; // 2진수 var..
5.1 값 값은 표현식이 평가되어 생성된 결과를 말한다. 평가: 식을 해석해서 값을 생성하거나 참조하는 것 5.2 리터럴 리터럴은 사람이 이해할 수 있는 문자 또는 약속된 기호를 사용해 값을 생성하는 표기법을 말한다. 리터럴 예시 비고 정수 리터럴 100 부동소수점 리터럴 10.5 2진수 리터럴 0b01000001 0b로 시작 8진수 리터럴 0o101 ES6에서 도임. 0o로 시작 16진수 리터럴 0x41 ES6에서 도입. 0x로 시작 문자열 리터럴 "Dohun" 불리언 리터럴 true, false 객체 리터럴 { name: 'Dohun', address: 'Busan' } 5.3 표현식 표현식은 값으로 평가될 수 있는 문이다. 즉, 표현식이 평가되면 새로운 값을 생성하거나 기존 값을 참조한다. var ..
4.1 변수란 무엇인가? 왜 필요한가? 모든 애플리케이션은 데이터를 입력하고 출력하는 것이 전부다. 변수는 프로그래밍 언어에서 데이터를 관리하기 위한 핵심 개념이다. 사람은 계산과 기억을 모두 두뇌에서 하지만, 컴퓨터는 계산과 기억을 수행하는 부분이 다르다. (계산: CPU, 기억: 메모리) 10 + 20 10과 20은 메모리 상의 임의의 위치(메모리 주소)에 기억(저장)되고 CPU는 이 값을 읽어 들여 연산(+)을 수행한다. 연산 결과로 생성된 숫자 30도 메모리 상의 임의의 위치에 저장된다. 연산의 결과를 재사용하려면 30이 저장된 메모리 위치를 알아내서 메모리 공간에 직접 접근하는 것 외에는 방법이 없다. ⚠️ 메모리 주소를 통해 값에 직접 접근하는 것은 치명적 오류를 발생시킬 가능성이 매우 높음!..
배열 배열이란 같은 타입의 데이터를 연속된 공간에 나열시키고, 각 데이터에 인덱스(index)를 부여해 놓은 자료구조 다음과 같은 4명의 학생의 점수를 담은 score 배열이 있다고 하자. 인덱스 0 1 2 3 데이터 83 90 87 93 score 배열의 각 인덱스는 각 항목의 데이터를 읽거나, 저장하는데 사용되고 다음과 같이 배열 이름 옆에 대괄호 []에 기입된다. score[인덱스] 이렇게 성적을 배열로 만들면 평균값은 for문을 사용하여 쉽게 구할 수 있다. int sum = 0; for(int i = 0; i < 4; i++) { sum += score[i]; } int avg = sum / 4; ❓ 배열은 같은 타입의 데이터만 저장할 수 있다. → 다른 타입의 값을 저장하려고 하면 타입 불일치..
1.1 프로그래밍 언어란? ❓ 컴퓨터가 이해할 수 있는 언어 → 기계어 ❓ 기계어 → 0과 1로 이루어진 이진 코드 ❓ 고급언어(c++, java …) → 컴파일러 → 기계어 1.2 자바란? 자바의 특징 이식성이 높은 언어이다. ❓ 이식성 → 서로 다른 실행 환경을 가진 시스템 간에 프로그램을 옮겨 실행할 수 있는 것 자바 언어로 개발된 프로그램은 소스 파일을 다시 수정하지 않아도 자바 실행 환경이 설치되어 있는 모든 운영체제에서 실행 가능하다. 객체 지향 언어이다. ❓ OOP(객체 지향 프로그래밍) → 객체들을 먼저 만들고, 이것들을 하나씩 조립 및 연결해서 전체 프로그램을 완성하는 기법 자바는 100% 객체 지향 언어 → 캡슐화, 상속, 다형성 기능 완벽하게 지원 함수적 스타일 코딩을 지원한다. ❓ ..
4.1 코드 실행 흐름 제어 4.2 조건문 4.2.1 if문 if문 if문은 조건식의 결과에 따라 블록 실행 여부가 결정된다. if(조건식) { // 조건식이 true } // 조건식이 false 조건식이 true일 경우 if문 내부의 실행문을 실행하고, false일 경우 if문 내부의 실행문을 실행하지 않는다. int a = 1; if(a < 10) { System.out.println("a는 10보다 작아요."); } if-else문 if 문은 else 블록과 함께 사용되어 조건식의 결과에 따라 실행 블록을 선택한다. if(조건식) { // 조건식이 true } else { // 조건식이 false } 조건식이 true일 경우 if문 내부의 실행문을 실행하고, false일 경우 else문 내부의 실행..
3. 연산자 3.1 연산자와 연산식 연산(operations): 프로그램에서 데이터를 처리하여 결과를 산출하는 것 연잔자(operator): 연산에 사용되는 표시나 기호 피연산자(operand): 연산되는 데이터 연산식(expressions): 연산자와 피연산자를 이용하여 연산의 과정을 기술한 것 // operand operator operand => 연산식 x + y 연산식은 반드시 하나의 값을 산출한다. 따라서 하나의 값이 올 수 있는 곳이면 어디든지 값 대신 연산식을 사용할 수 있다. int result = x + y; 3.2 연산의 방향과 우선순위 단항, 이항, 삼항 연산자 순으로 우선순위를 가진다. 산술, 비교, 논리, 대입 연산자 순으로 우선순위를 가진다. 단항과 대입 연산자를 제외한 모든 연..
1. 객체와 클래스에 대한 설명으로 틀린 것은 무엇입니까? 클래스는 객체를 생성하기 위한 설계도(청사진)와 같은 것이다. new 연산자로 클래스의 생성자를 호출함으로써 객체가 생성된다. 하나의 클래스로 하나의 객체만 생성할 수 있다. -> 하나의 클래스로 여러개의 객체 생성 가능 객체는 클래스의 인스턴스이다. 2. 클래스의 구성 멤버가 아닌 것은 무엇입니까? 필드(field) 생성자(constructor) 메소드(method) 로컬 변수(local variable) -> 클래스의 구성 멤버에는 필드, 생성자, 메소드가 있다. 3. 필드, 생성자, 메소드에 대한 설명으로 틀린 것은 무엇입니까? 필드는 객체의 데이터를 저장한다. 생성자는 객체의 초기화를 담당한다. 메소드는 객체의 동작 부분으로, 실행 코드를..
변수 변수는 값을 저장할 수 있는 메모리 공간을 의미한다. 이렇게 말하면 너무 딱딱하니까 쉽게 말하면 데이터를 담을 수 있는 박스다. 그렇다고 박스에 아무거나 막 담을 수 있을까? 아니다😂 (약 타입 언어에서는 가능하지만 강 타입 언어에서는 절대 안 된다.) 타입 박스에 무엇을 담을 수 있는지 알려주는 이름표 같은 것이다. 타입의 종류 종류 타입 메모리 사용 크기 정수 byte 1 byte / 8 bit 정수 char 2 byte / 16 bit 정수 short 2 byte / 16 bit 정수 int 4 byte / 32 bit 정수 long 8 byte / 64 bit 실수 float 4 byte / 32 bit 실수 double 8 byte / 64 bit 논리 boolean 1 byte / 8 b..