분류 전체보기 43

리액트 기초개념 복습노트

리액트 탄생페이스북은 동시대 나온 서비스 중 유독 인터렉션(상호작용)이 많았다.상호작용이란 좋아요, 채팅처럼 양방향으로 소통하는 기능이다.당시에는 정적인 웹을 개발하는 데에 초점을 두었기 때문에 이를 다루기 어려웠다.그래서 리액트가 탄생했다.리액트 특징 3가지1. 컴포넌트 사용 : 재사용이 필요한 애들을 컴포넌트로 사용하기 때문에 코드가 유연해진다.2. 간단한 업데이트 : 자동차가 고장나면 고장난 부분을 찾아서 고치는 게 아니라 아예 새차로 바꾸는 방식이라서 간단하다.3. 빠른 업데이트 : 버츄얼 돔을 이용해서 업데이트 사항을 모아뒀다가 한번에 실제 돔을 업데이트한다.Recap: DOM과 랜더링웹에서 페이지를 업데이트하려면 DOM을 조작해야한다.돔은 HTML 코드를 트리로 변환한 구성물이다.돔은 브라우저..

react 2025.04.30

Pointers to Object

#include using namespace std;class Point {public: double x; double y;};int main(){ Point *pt2; pt2 = new Point; // heap 공간에 pt2 공간이 할당되고 그 주소를 가리킴 pt2->x = 100.0; // pt2->x (= (*pt2).x) pt2->y = 200.0;}Delete가 중요한 이유void corrected_func() { Account *acct_ptr = new Account("Joe", 400, 1300.00); delete acct_ptr;}this pointer파라미터 이름이랑 멤버변수 이름이랑 같을 때 헷갈리기 때문에 쓰임.this->x = x..

c++ 2025.04.29

자바스크립트 기초개념 복습노트

변수 선언자바스크립트는 2가지 방법으로 변수를 선언할 수 있다. 1. varvar는 선언한 변수를 또 선언할 수 있기 때문에 혼란을 야기한다.그래서 잘 쓰지 않는다. 2. letlet은 한번 선언하면 더이상 선언할 수 없다.let helloText = "안녕, 자바스크립트";console.log(helloText); 자바스크립트에서 변수 선언할 때 자료형을 따로 써주지 않는다.그래서 형 변환에 자유롭지만 그래서 조심해서 써야한다.typeof로 타입을 체크하고 코드를 수행하는 것도 좋은 방법이다.상수 선언상수 선언은 const로 한다.앱을 한번 실행하면 const는 바꿀 수 없다.자료형자바스크립트 자료형은 원시 자료형과 객체 자료형으로 나뉜다.원시 자료형은 하나의 값만 가지는 타입을 말한다.원시 자료형은..

javascript 2025.04.29

캡슐화

캡슐화는 객체지향프로그래밍에서 중요한 개념이다.말 그대로 중요한 정보는 캡슐에 넣어놓는다는 뜻이다.캡슐에 넣는 이유는 코드 유지보수가 쉽기 때문이다. (객체지향을 쓰는 이유이기도 함) 예시 코드는 다음과 같다.class Cat{ public: std::string getSpecies(void){ return species; } private: std::string species; // 고양이 종 이름} 캡슐화는 다른 사람들의 코드를 많이 보고, 많이 해보아야 아는 경험의 영역이다.많이많이 경험해보자.

c++ 2025.04.22

CNN

사진에서 고양이를 판별할 때,2차원 사진을 1차원으로 바꿔야했다.데이터가 일자가 되었기 때문에 공간적인 관점이 사라진다.하지만 사람은 공간적으로 물체를 인식한다.그래서, AI도 공간적으로 인식할 수 있게 하려고 CNN을 구상해냈다. CNN의 주요 아이디어는 사진에서 선, 모서리를 우선 인식하고, 입과 눈을 인식하고, 마지막으로 전체적인 인상을 보는 것이다.사람은 작은 영역의 특징을 인식하는 "수용장"이라는 시각 처리 방식을 가지고 있다.수용장을 이용해서 점진적으로 크게 인식하는 사람의 방식을 모사한게 CNN이다.위와 같이 "필터"가 있다.한 사진에 저 작은 필터들을 대조해본 후에 필터패턴이랑 비슷한 부분을 추출한다.그 부분이 특징부분이 된다.필터에는 저런 것도 있고, 뭉게지는 것처럼 사진을 바꿀 수 있는..

딥러닝 2025.04.18

분류기 성능, 제대로. 재기. (Recall, Precision, F1)

결과는 대단하지만, 더 많은 데이터를 가져올 수록 정확도는 완전 떨어짐.성능을 맞은 확률로만 볼게 아니라 다른 방법으로도 봐야한다.실제로, 수집되는 데이터들이 편향적인 경우가 많아서 더더욱 중요하다. True PositiveTrue NegativeFalse PositiveFalse Negative가 있다. 항상 헷갈리는데 코로나 키트로 생각하면 된다.보통 키트의 결과를 Positive(양성), Negative(음성)이라고 하지 않는가?마찬가지로, 우리의 분류기가 참이라고 했으면 P이고, 거짓이라고 판별했으면 N으로 본다.앞에 True, False는 그 분류기가 실제로 맞았는지 틀렸는지를 말한다.키트가 오류가 있을 수 있듯이, 분류기도 마찬가지다. 예를 들어, 장미꽃을 구별하는 분류기가 False Posi..

딥러닝 2025.04.18