[클라우드 컴퓨팅] - 클라우드 컴퓨팅 개요
·
💻 Computer Science/클라우드 컴퓨팅
클라우드 컴퓨팅 정의 클라우드 컴퓨팅이란 구름(Cloud)과 컴퓨팅(Computing)이 결합된 단어로, 언제 어디서나 필요한 만큼의 컴퓨팅 리소스를 필요한 시간만큼 인터넷을 통하여 활용할 수 있는 컴퓨팅 방식을 말한다. 클라우드 컴퓨팅은 사용 유형에 따라 매우 다양하게 정의 가능하다. 미국 국립 표준 기술 연구소(NIST)에서 정의된 클라우드 컴퓨팅은 다음과 같다.NOTE!클라우드 컴퓨팅: 언제 어디서나 필요에 따라 컴퓨팅 리소스에 네트워크를 접근하는 기능을 제공하는 모델로, 컴퓨팅 리소스는 최소한의 관리로 신속하게 프로비저닝되고 배포 가능하다. 이때, 클라우드 모델은 5가지 기본 특성, 3가지 서비스 모델, 4가지 배포 모델링으로 이루어진다. 대한민국에서는 『2017년에 제정된 클라우드 컴퓨팅 발전 ..
[React] - 컴포넌트 (Component)
·
📜 Web Programming/React
컴포넌트 정의NOTE!컴포넌트: 스스로 상태를 관리하는 캡슐화된 코드 조각으로, 하나의 JSX를 반환하는 함수이다. 컴포넌트는 기본적으로 함수이기 때문에, 자신만의 고유한 로직이 들어갈 수 있다. 그리고 컴포넌트는 스스로 상태를 가질 수 있으며 상태가 변하면 자동으로 반영된다.`import`와 `export` 문법을 사용하여 컴포넌트를 모듈 방식으로 분리하고 관리한다.import Hello from './components/Hello';import World from './components/World';export default function App() { return ( );} 컴포넌트의 이름은 반드시 PascalCase로 작성해야 한다. 즉, 컴포넌트의 이름..
[React] - JSX (Javascript Syntax eXtension)
·
📜 Web Programming/React
JSX 개념NOTE!JSX는 Javascript를 확장한 문법이다.JSX는 HTML처럼 보이지만 JavaScript 값이다. 따라서 내부적으로 JavaScript를 사용할 수 있다.const element = Hello, World!`React`는 기본적으로 JSX를 이용하여 화면을 렌더링한다.JSX의 특징 JSX는 HTML이 아니기에 JSX에서 사용되는 태그의 속성 이름은 HTML과는 약간 다르다.`class` → `className``for` → `htmlFor``onclick` → `onClick`그리고 다음과 같이 반드시 태그를 명시적으로 닫아줘야 하고, 하나의 부모 태그로 감싸져 있어야 한다.function App() { return ( Hello, World! ..
[React] - React 개발 환경 설정
·
📜 Web Programming/React
Node.js `Node.js`는 브라우저 밖에서도 JavaScript를 실행할 수 있도록 하는 런타임 환경이다. 오픈 소스 JavaScript 엔진인 크롬 V8을 기반으로 동작한다. Single Thread의 non-blocking I/O 이벤트 기반 비동기 방식이다. 이는 코드가 실행될 때, 작업이 오래 걸리는 코드를 만나면 해당 코드의 실행이 끝나기를 기다리지 않고 넘어가고 시간이 지나 해당 코드 실행이 완료되면 그때 결과를 따로 받아서 처리한다는 것이다.NOTE!기존에는 브라우저에서만 JavaScript를 사용할 수 있었으나, `Node.js`를 통해서 로컬 PC에서도 사용할 수 있게 되었다.NPM(Node Package Manager)`Node.js`와 떨어질 수 없는 것이 바로 NPM인데, 이..
[React] - React 시작하기
·
📜 Web Programming/React
React가 무엇인가? `React`는 사용자 인터페이스를 만들기 위한 JavaScript 라이브러리이다. 특별히 `React`는 SPA 라이브러리(Single Page Application)이다. 이때 `React`는 프레임워크가 아닌 "라이브러리"에 속하는데 프레임워크와 라이브러리의 차이는 다음과 같다.프레임워크(Framework): 개발을 위한 기본 틀, 뼈대라이브러리(Library): 개발에 필요한 도구 또는 그 집합 `React`는 라우팅과 같은 프레임워크로서 갖춰야 할 기본적인 요소들을 모두 갖추고 있지는 않기에 프레임워크에 속하지 않고 라이브러리에 속한다.React를 배워야 하는 이유 그렇다면 `React`를 배워야 하는 이유는 무엇일까? 대표적으로 2가지의 장점 때문이다.트렌드이다: Rea..
[컴퓨터 구조] - 병렬 컴퓨터 (Parallel Computer)
·
💻 Computer Science/컴퓨터 구조
병렬 처리 (Parallel Processing) 병렬 처리(Parallel Processing)란 하나 이상의 연산을 동시에 수행하여 컴퓨터 연산 속도를 증가시키는 방법이다. 병렬처리기는 이러한 병렬 처리 기법을 구현한 컴퓨터 구조를 말한다. 병렬처리기는 순차처리기에 비해 꽤나 높은 성능 향상을 이끌어내었다. 컴퓨터 성능 평가 컴퓨터 성능을 평가하는 척도는 "시간"이다. 같은 작업량을 최단시간에 수행하는 컴퓨터가 가장 성능이 좋은 것이다. 그리고 이때 말하는 시간은 프로세서가 순수하게 프로그램을 실행하기 위해 소비한 시간인 "CPU 시간"을 말한다. CPU 시간은 다음과 같이 정의된다.NOTE!프로그램 CPU 시간 = 프로그램의 CPU 클록 사이클 수 X 클록 사이클 시간병렬 처리 시스템 분류 병렬처리..
[회고] - 2024년 돌아보기 (Retrospective of 2024)
·
🙏🏼 Shekinah Glory/Quiet Time (생각 정리)
작년에 첫 회고록을 이 블로그에 작성했었는데 상당한 유익이 되었다. 지난 2024년도를 돌아보는 시간을 가져보도록 하겠다. 지난 2023년과 동일하게 이번에도 "신앙", "개발", "블로그", "일상", "목표" 5가지 카테고리로 나누어 글을 작성하겠다.1. 신앙 (Faith)교사로서의 부르심 예전에는 교회의 주일학교 교사로서 섬기는 시간을 가졌었고, 현재는 대안학교의 수학 교사로서 시간을 많이 보내며 아이들을 가르치는 시간을 많이 가졌었다. 특별히 올해 초부터는 새롭게 교회의 아이들을 1대1로 멘토링하는 시간을 가지게 되었다. 아이들을 가르치는 시간을 가지면서 오히려 내가 더욱 성장하게 된 것 같았다. 아이들을 신앙적으로 잘 가르치기 위해 더욱 힘썼던 것 같다. 이혜선 목사님의 복음학교 특강, 성막 강..
loading