프로그래밍 기타 용어

(2024-01-05)

Memoization, 메모이제이션, 꼬리 재귀, 다큐먼트 (Document), Plugin, 플러그인, Debugging, 디버깅


1. 메모이제이션 (Memoization)재귀적 함수 호출에서, 중복 계산이 없도록, 한 번 계산된 값을 저장해서,
     이를 이용하여 프로그램을 빠르게 수행하는 기법
     - 즉, 그때그때의 계산결과를 저장하고, 다음 계산에 이를 사용함

  ㅇ 주요 구현 방식
     - 함수에서, 주어진 매개변수에 의해 연산을 할 때 마다,
        . 그 결과 값을 주어진 매개변수를 키 값으로 하는 캐시에 저장해 두고,
     - 후에, 이 함수가 같은 매개변수로 호출되면, 
        . 같은 연산을 하는 대신에, 기존에 저장된 캐시의 값을 반환하게 함


2. 꼬리 재귀 (Tail Recursion)재귀 함수를 호출할 때, 스택 메모리를 재사용하면서 메모리를 과도하게 사용하지 않도록,
     최적화 하는 방법


3. 코드 리펙토링 (Code Refactoring)

  ㅇ 기존 코드와 동일한 임무를 수행하되, 좀 더 효율적이고 우아하게 작동되도록 고치는 것


4. 리액티브 프로그래밍 기법 (Reactive Programming)데이터 흐름(data flow)과 변경 전파(propagation of change)에 촛점을 둔 프로그래밍 기법


5. 다큐먼트 (Document)프로그램 (소프트웨어)를 만들면, 사용자를 위해, 반드시 필요한 문서 작업
   
  ㅇ 例) 사용자 가이드, 튜토리얼, 레퍼런스 메뉴얼 등


6. 플러그인 (Plugin)

  ㅇ 기본 어플리케이션의 공통 기능을 제외한,
     필요시 마다 확장시킬 수 있는 라이브러리 형태를 말함


7. 디버깅 (Debugging)프로그래밍에서 결함(Bug)(문법 오류논리 오류)를 찾아 바로잡아 가는 과정

  ㅇ 통상, 예상되는 줄에, 중단점(break point)를 설정하여, IDE를 통해 추적 함

프로그래밍 기타일반
   1. 프로그래밍 기타 용어   2. 래퍼 함수   3. 핸들   4. 단락 평가   5. 템플릿   6. 히어 도큐먼트   7. 람다 표현식  


"본 웹사이트 내 모든 저작물은 원출처를 밝히는 한 자유롭게 사용(상업화포함) 가능합니다"