1.콜백 함수 (Callback Function)다른 함수의 인자로 전달되어 실행되는 함수를 하는 말이다.일반적으로 비동기 작업이나 이벤트 처리에서 사용되고 나중에 호출될 함수로서, 다른 함수의 실행 흐름에 끼어들어 특정 작업을 마친 후 실행된다.// processData를 callback 함수로 받음function fetchData(callback) { setTimeout(() => { const data = "Hello, World!"; callback(data); // 비동기 작업이 끝난 후 콜백 함수 호출 }, 1000);}function processData(data) { console.log("Data received: " + data);}fetchData(processDat..
전체 글
프로그래밍 공부한거 정리해두는 메모장 블로그1.함수형 프로그래밍 (Functional Programming, FP)상태 변화나 변수 변경을 피하고, 순수 함수(pure function)를 중심으로 한 프로그래밍 방식이며 데이터와 그 데이터를 변환하는 함수가 핵심이다.순수 함수, 불변성, 고차 함수 등 여러 핵심 개념을 통해 데이터를 안전하고 효과적으로 처리할 수 있는 방법을 제공한다. 1-1.순수 함수 (Pure Function)입력만을 기반으로 출력을 생성하고, 함수 외부의 상태나 데이터에 영향을 미치지 않는다.같은 입력에 대해 항상 같은 출력을 보장한다.// 순수 함수public int add(int a, int b) { return a + b; // 항상 같은 입력에 대해 같은 결과} 1-2.불변성 (Immutability..
1.Monad?함수형 프로그래밍에서 중요한 개념으로 특정한 형식의 연산을 순차적으로 처리할 수 있도록 해주는 추상화다.값을 컨텍스트 안에서 감싸고, 이를 안전하게 연산하며, 연속적으로 처리할 수 있게 하는 도구라고 볼수있다.(Functor의 확장된 개념으로, 값의 변환뿐 아니라 연산의 체이닝을 가능하게한다.Functor처럼 map 연산을 제공할 뿐만 아니라, flatMap을 통해 중첩된 구조를 평평하게 만든다.) import java.util.Optional;public class MonadOptionalExample { public static void main(String[] args) { // Monad 생성 Optional maybeValue = Optional.o..
1.Functor함수형 프로그래밍에서 값을 감싸는 컨테이너이며, 이 컨테이너 내부의 값을 함수를 사용해 변환할 수 있도록 하는 개념(리스트(List), 옵셔널(Optional), 스트림(Stream)등 이있다.)이 컨테이너 내부에 있는 값은 map 메서드를 통해 변환할 수있다. 2.Functor 특징Functor는 내부 값에 함수를 적용하고, 결과를 새로운 Functor로 반환한다.Functor의 내부 값은 변환되지만, 컨테이너의 구조는 그대로 유지된다.동일성 법칙 (Identity Law): F.map(x -> x)는 F와 동일해야함합성 법칙 (Composition Law): F.map(f).map(g)는 F.map(x -> g(f(x)))와 동일해야함 3.Java 예시Optional은 값..
1.시각화 파일 준비터미널에 다음명령어를 통해 각 단어에 대한 벡터 표현이 저장된 파일과 metadata파일을 생성한다.!python -m gensim.scripts.word2vec2tensor --input 학습모델이름 --output 모델이름 또는 subprocess를 통해서도 다음 명령어를 실행할수있다.import subprocess# 입력 파일과 출력 파일 경로 설정input_model = "kor_w2v" # 모델 파일 경로output_model = "kor_w2v_output" # 출력 파일 경로try: # word2vec2tensor 명령어를 subprocess로 실행 subprocess.run(['python', '-m', 'gensim.scripts.word2vec2tens..
1.Custom Hook컴포넌트 로직을 재사용 가능하게 만들기 위해 사용되는 함수내장 훅을 조합하여 더 복잡한 로직을 추상화할수도 있고 side Effect를 처리할때 사용할수도있다.import { useState, useEffect } from 'react';function useCustomHook() { const [state, setState] = useState(null); useEffect(() => { setState('Hello, world!'); }, []); return state;}export default useCustomHook; import React from 'react';import useCustomHook from './useCustomHook';function ..
1.Context APIReact에서 컴포넌트 트리 내의 모든 컴포넌트들 간에 데이터를 공유할 수 있게 해주는 방법깊게 중첩된 컴포넌트들에게 props를 일일이 전달하지 않고도 데이터를 쉽게 전달할 수 있다. 1-1.Provider데이터를 제공하는 컴포넌트하위 컴포넌트들이 이 데이터를 사용할 수 있도록한다. 1-2.Consumer제공된 데이터를 사용하는 컴포넌트useContext 훅을 사용하여 데이터를 사용할 수 있다. 2.Context API 사용하기2-1.Context 생성// Context 생성// GlobalState는 전역에서 관리할 상태들을 정의하는 인터페이스interface GlobalState { page: number; setPage: React.Dispatch>; searc..
1.HOC(High Order Component)React에서 컴포넌트를 확장하거나 재사용 가능하게 만들기 위한 패턴기존 컴포넌트를 받아서 새로운 기능을 추가한 새로운 컴포넌트를 반환하는 함수이다.재사용 가능한 로직을 여러 컴포넌트에 공유하고 싶을 때 유용하다.// HOC 버튼 텍스트를 변경function withTextChange(Component: React.ComponentType) { return (props: P) => { return {'New Text'}; };}// 버튼 컴포넌트const Button: React.FC = ({ children }) => { return {children};};// HOC 사용const ButtonWithTextChange = withTextCha..