전체 글47 이산수학 (Discrete mathematics) - 1장 (1) ※ Discrete (이산) vs Continuous (연속) Discrete(이산) : ★ 끝이 정해져 있는 모든 것 (유한) ★ 종류) "책의 Page 수" => 모든 책들은 Page가 한정되어 있기 때문에 교실의 학생 수 주차된 자동차의 수 ... 등 Continuous : ★ 끝을 모르는 모든 것 (무한) ★ 종류) "나이" => 나이의 끝은 존재하지 않는다. 언제 죽을 지 모르기 때문에 "파이(π)" => 3.1415926536 ... 키, 무게, 거리, 온도 ... 등 ※ 공리(Axiom) '공리'의 정의 : 참이라고 가정한 최초의 명제 '"증명"없이 "공리"를 세움 ex) '선'과 '악'의 기준이 없기 때문에 명제 : '하나의 문장' + 참, 거짓을 판별 가능 ※ 자연수에 대한 공리적인 접근.. 2024. 3. 15. [React] fecth & 클래스 ▶ 웹 페이지에 Promises를 사용하여 비동기적으로 데이터를 가져오는 방법 (1) '단일 표현식' 특성 적용한 화살표 함수 const getFakeMembers = count => new Promise((resolves, rejects) => { // executor code const api = `https://api.randomuser.me/?nat=US&results=${count}` const request = new XMLHttpRequest() request.open('GET', api) request.onload = () => (request.status === 200) ? resolves(JSON.parse(request.response).results) : reject(Error(re.. 2023. 11. 4. [React] 동기식 & 비동기식 자바스크립트 ※ 비동기식 자바스크립트 특정 작업의 완료를 기다리지 않고 다른 작업을 동시에 수행 작업을 백그라운드에 요청하여 처리되게 하여 멀티로 작업을 동시에 처리하는 것으로 보면 된다. ▶ 비동기식 자바스크립트의 필요성 ex) 3개의 텍스트 파일을 순서대로 읽어와 콘솔에 출력하는 프로그램 구현 ▷ 위와 같이 우리가 원하는 출력결과를 위해 아래와 같은 코드를 작성함. require() 함수는 모듈을 로드하는데 사용되는 함수 require('fs')는 파일 시스템 모듈을 로드하는 과정 fs는 파일 시스템 모듈에 해당 ▷ 우리가 예상했던 출력과 동일할까? 아래와 같이 순서가 뒤죽박죽이 되어 출력이 된다. fs.readFile()과 달리 console.log()은 순서대로 출력됨. fs.readFile()은 순서가 보장.. 2023. 11. 4. [React] 구조 분해 & 객체 리터럴 & 스프레드 연산자 ※ 구조 분해 (destructuring) 객체 안의 필드, 배열을 구성하는 원소를 변수에 쉽게 대입할 수 있도록 활용 ※ 객체의 구조 분해 할당 const { var_name } = object_name; 반드시 객체의 필드 이름과 변수의 이름이 같아야 함. 중괄호 { } 안에 여러개의 변수가 들어갈 수 있으며, 순서는 상관없음 ex) 객체의 구조분해 할당 예시 객체를 구조 분해하여 할당한 변수의 값을 변경하여도, 객체 원본의 값은 변하지 않음. ▶ 객체를 구조 분해하여 함수의 인자로 받는 경우 (1) 기존 함수 인자에 객체를 받는 방식 (2) 객체 구조분해 후, 인자로 받는 방식 화살표 함수 ({firstname}) => 에서 매개변수가 1개이지만 괄호( ) 생략 불가 => 함수 body 부분도 아닌.. 2023. 11. 3. [JavaScript - React] JavaScript & React의 기본 ※ React 란? 사용자 인터페이스(UI)를 만들기 위한 JavaScript 라이브러리 UI 라이브러리로써, 사용자 인터페이스를 구현하기 위해서 사용 페이스북 엔지니어 '조던 워크' 가 만든 오픈소스 프로젝트 MVC 애플리케이션의 View에 관련된 영역만 담당 View : 사용자에게 보이는 부분 (사용자 인터페이스 영역) 컴포넌트 기반 라이브러리 => '재사용성' 향상 Virtual DOM 사용 ※ ECMAScript & JavaScript ES (ECMAScript) => ECMA-262 규격에 의해 정의된 범용 스크립트 언어 ECMA-262: 범용 목적의 스크립트 언어, JavaScript를 표준화하기 위해 개발 JavaScript ECMAScript 사양을 준수하는 스크립트 언어 ECMASCrip.. 2023. 11. 2. [Network Programming] 자바 스레드와 JVM ※ 멀티태스킹(multi-tasking) 이란? 멀티태스킹(multi-tasking) => 하나의 응용프로그램이 여러 개의 작업(태스크)을 동시에 처리 멀티태스킹 응용프로그램 사례 미디어 플레이어(오디오, 비디오 .. 등), 테트리스 게임(오디오, 블록동작 ... 등) ※ 테트리스 프로그램을 구성하는 멀티스레드 분석 JVM은 3 개의 스레드 중 하나를 선택하여 실행시킨다. 예를 들어 스레드 A를 선택하면 스 레드의 A의 코드(사용자가 작성한 코드)를 호출한다. 스레드 A를 일시 중단하고, JVM이 스 레드 B를 실행시켜려면 다시 스레드 B의 코드(사용자가 작성한 코드)를 호출한다. 마치 바늘이 하나의 실(thread) 을 가지고 바느질하는 것과 자바의 스레드는 일맥 상통함 ※ 스레드와 멀티스레딩 스레드 .. 2023. 11. 1. [Network Programming] TCP/IP Protocal & Socket ※ TCP/IP 프로토콜 TCP는 Transmission Control Protocol 두 시스템 간에 신뢰성 있는 데이터의 전송을 관장하는 프로토콜 프로토콜: 통신할 때 사용하는 약속 예) 무전기의 ‘오버’ 동시에 두 사람이 같이 말할 수 없다. 등 규칙이 필요 TCP에서 동작하는 응용프로그램 사례 e-mail, FTP, 웹(HTTP) 등 ※ IP Internet Protocol 패킷 교환 네트워크에서 송신 호스트와 수신 호스트가 데이터를 주고 받는 것을 관장 하는 프로토콜 TCP보다 하위 레벨 프로토콜 => 이와 같이 통신기기와 환경의 특성에 따라 대화자 간에 약속을 정한 것이 프로토콜 인터넷에 연결된 컴퓨터 간 에는 TCP/IP라는 프로토콜 사용, 대표적인 것으로 http, ftp 모두 TCP/IP.. 2023. 11. 1. [JAVA Swing] 이벤트 처리 ※ 이벤트 기반 프로그래밍 이벤트 기반 프로그래밍(Event Driven Programming) 이란? : 이벤트의 발생에 의해 프로그램 흐름이 결정되는 방식 이벤트가 발생하면 이벤트를 처리하는 루틴(이벤트 리스너) 실행 실행될 코드는 이벤트의 발생에 의해 전적으로 결정 ※ 이벤트의 종류 사용자의 입력 마우스 드래그, 마우스 클릭, 키보드 누름 등 센서로부터의 입력 네트워크로부터 데이터 송수신 다른 응용프로그램이나 다른 스레드로부터의 메시지 ※ 이벤트 기반 응용 프로그램의 구조 각 이벤트마다 처리하는 리스너 코드 보유 ※ GUI 응용프로그램은 이벤트 기반 프로그래밍으로 작성됨 GUI 라이브러리 종류 자바의 AWT와 Swing ※ 스윙 응용프로그램의 이벤트의 실제 예 ※ 자바 스윙 프로그램에서 이벤트 처리.. 2023. 11. 1. 이전 1 2 3 4 ··· 6 다음