본문 바로가기

전체 글86

클로저 (Closure)란 클로저는 함수와 해당 함수가 정의된 환경을 함께 저장하는 개념 저장된 함수와 환경은 나중에 호출될 때 사용됨 클로저는 다른 함수 내부에서 정의되고 반환되는 경우에 주로 사용된다 이때 클로저는 자신이 정의된 함수의 변수에 접근할 수 있으며 이 변수들은 클로저가 생성될 당시의 값으로 유지됨 함수가 종료되더라도 변수의 값들이 사라지지 않고 유지되는것을 의미한다 클로저를 사용하면 함수가 반환된 후에도 변수들을 계속 사용할 수 있다 클로저는 주로 상태를 유지하고 함수 사이에 정보를 공유하는데 사용되며 예를 들어 콜백 함수로 사용될 떄 클로저를 활용하면 콜백 함수가 호출될 때까지 상태를 유지하고 사용할 수 있다 2023. 5. 1.
Promise 와 async/await Promise 와 async/await 은 Javascript에서 비동기 코드를 처리하는데 사용되는 두가지 기술 1. Promise : Promise는 비동기 작업의 결과를 나타나는 객체이다 비동기 작업은 일반적으로 네트워크 요청, 파일 읽기/쓰기, 데이터베이스 쿼리 등과 같은 오래 걸리는 작업을 의미한다, Promise는 비동기 작업의 성공 또는 실패를 나타나는 상태를 가질 수 있다 Promise는 세 가지 상태를 가질 수 있으며 아래와 같다 pending(대기중) : 비동기 작업이 아직 완료되지 않은 상태이다 fulfulled(이행됨): 비동기 작업이 성공적으로 완료된 산태이다 rejected(거부됨) : 비동기 작업이 실패한 상대이다 Promise는 비동기 작업이 완료되면 결과를 처리하기 위해 th.. 2023. 4. 30.
개발 방법론 (Development Methodology) 개발 방법론 (Development Methodology)은 소프트웨어를 개발하는 프로세스와 접근 방식의 체계적인 세트를 의미한다 소프트웨어 개발의 목표를 달성하기 위해 개발자들이 따라야 하는 일련의 원칙, 프로세스, 도구, 기법 등을 포함한다 다양한 개발 방법론이 존재하며 프로젝트의 크기 복잡성 요구사항 등에 따라 선택할 수 있다 일반적으로 사용되는 주요 개발 방법론은 아래와 같다 1. 폭포수 모델(Waterfall Model) : 개발 단계가 선형적으로 진행되는 전통적인 방법론 요구사항 정의, 설계, 개발, 테스트, 배포 등의 단계를 순차적으로 진행한다 각 단계는 이전 단계의 완료를 요구하며 변경이 발생할 경우 재작업이 필요하다 2. 애자일 방법론(Agile Methodology) : 반복적이고 점진.. 2023. 4. 24.
보안 (Security)과 관련된 문제들은 어떤 것이 있나요? https://www.insilicogen.com/blog/383 2023. 4. 24.
데이터베이스와 ORM 데이터베이스(DataBase)란? 데이터베이스(DB: database)는 통합하여 관리되는 데이터의 집합체를 의미합니다. 이는 중복된 데이터를 없애고, 자료를 구조화하여, 효율적인 처리를 할 수 있도록 관리됩니다. 따라서, 여러 업무에 여러 사용자가 데이터 베이스를 사용할 수 있습니다. 이러한 데이터베이스는 응용 프로그램과는 다른 별도의 미들웨어에 의해 관리됩니다. 데이터베이스를 관리하는 이러한 미들웨어를 데이터베이스 관리 시스템(DBMS: Database Management System)이라고 합니다. 데이터베이스의 특징 데이터베이스는 다음과 같은 특징을 가집니다. 1. 사용자의 질의에 대하여 즉각적인 처리와 응답이 이루어집니다. 2. 생성, 수정, 삭제를 통하여 항상 최신의 데이터를 유지합니다. 3... 2023. 4. 24.
자바스크립트의 call by value 자바스크립트에서 call by value는 함수에 인자를 전달하는 방법 중 하나입니다. 값이 전달되면 값의 사본이 생성되어 함수에 전달됩니다. 이는 함수 내에서 값에 대한 변경이 함수 외부의 원래 값에 영향을 미치지 않는다는 것을 의미합니다. 예제 코드 function double(num) { num = num * 2; return num; } let x = 5; double(x); console.log(x); // output: 5t 이 코드에서 변수 'x'는 'double' 함수에 인수로 전달됩니다. 함수 내에서는 'x' 값의 사본이 생성되고, 이 사본이 두 배가 됩니다. 그런 다음 함수는 이 두배가 된 값을 반환하지만 함수 외 일부의 원래 'x' 값은 변결되지 않습니다. 이는 참조에 의한 호출(ca.. 2023. 4. 20.
자료구조와 알고리즘 중에서 자주 사용되는 것들은 어떤 것이 있는가? 컴퓨터 과학에서 사용되는 많은 데이터 구조와 알고리즘이 있지만 가장 자주 사용되는 것은 아래와 같다. 1. 배열 : 인접한 메모리 위치에 저장되며 인덱스를 사용하여 액세스할 수 있는 요소 모음 2. 연결된 목록 : 목록의 다음 노드에 대한 값과 포인터를 포함하는 노드로 구성된 데이터 구조 3. 스택 : 후입선출(LIFO) 액세스를 지원하는 요소 모음 4. 큐 : FIFO(First In, First Out) 액세스를 지원하는 요소 모음 5. 트리 : 에지로 연결되고 계층 구조로 배열된 노드로 구성된 데이터 구조 6. 그래프 : 에지로 연결된 노드(정점)의 모음 7. 정렬 알고리즘 : 오름차순 또는 내림차순과 특정 순서로 요소 모음을 정렬하는 알고리즘 8. 검색 알고리즘 : 요소 모음에서 특정 요소의 위치.. 2023. 4. 18.
RESTful API란? REST란 무엇인가요? Representational State Transfer(REST)는 API 작동 방식에 대한 조건을 부과하는 소프트웨어 아키텍처입니다. REST는 처음에 인터넷과 같은 복잡한 네트워크에서 통신을 관리하기 위한 지침으로 만들어졌습니다. REST 기반 아키텍처를 사용하여 대규모의 고성능 통신을 안정적으로 지원할 수 있습니다. 쉽게 구현하고 수정할 수 있어 모든 API 시스템을 파악하고 여러 플랫폼에서 사용할 수 있습니다. API 개발자는 여러 아키텍처를 사용하여 API를 설계할 수 있습니다. REST 아키텍처 스타일을 따르는 API를 REST API라고 합니다. REST 아키텍처를 구현하는 웹 서비스를 RESTful 웹 서비스라고 합니다. RESTful API라는 용어는 일반적으로 .. 2023. 4. 18.
HTTP 와 HTTPS 의 차이 HTTP란? HTTP(HyperText Transfer Protocol)는 하이퍼 텍스트 전송 프로토콜으로 간단히 말해서 인터넷을 작동시키는 역할을 하며, 웹 서버 및 웹 브라우저 상호 간의 데이터 전송을 위한 응용계층 프로토콜입니다. 웹 사이트에 액세스하기 위해서는 프로토콜 변형이 필요한데, 이때 웹 사이트 URL이 일반적으로 “http://www..”로 시작하며 URL에 해당하는 웹 페이지를 가져오기 위해 웹 사이트 서버에 명령을 보내 작동하게 됩니다. HTTPS란? HTTPS(Hypertext Transfer Protocol Secure)는 하이퍼 텍스트 전송 프로토콜 보안으로 표준 HTTP와 동일한 방식으로 작동합니다. 서버와 주고받는 데이터가 암호화되기 때문에 웹사이트에 추가적인 보호를 제공합니.. 2023. 4. 17.