코딩공부

Figma, API, SQL, SQLite 란? / TIL_220929

Dong_Devlog 2022. 9. 29. 20:02
  • Figma

웹 기반 UI/UX 디자인 및 프로토타이핑

실시간으로 작업을 공유하고 편집 할 수 있어 협업하는데 최적화 된 디자인 툴이다.

설치할 필요가 없어 누구나 간편하게 접근하여 사용할 수 있다.

 

  • API(Application Programming Interface)

응용 프로그램에서 사용할 수 있도록, 운영 체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있게 만든 인터페이스를 뜻한다.   - 위키백과

API는 정의 및 프로토콜 집합을 사용하여 두 소프트웨어 구성 요소가 서로 통신할 수 있게 하는 메커니즘입니다. 예를 들어, 기상청의 소프트웨어 시스템에는 일일 기상 데이터가 들어 있습니다. 휴대폰의 날씨 앱은 API를 통해 이 시스템과 "대화"하고 휴대폰에 매일 최신 날씨 정보를 표시합니다.  - AWS

 

응용 프로그램 프로그래밍 인터페이스. 프로그래밍에서, 프로그램을 작성하기 위한 일련의 부(Sub) 프로그램, 프로토콜 등을 정의하여 상호 작용을 하기 위한 인터페이스 사양을 말한다.  - 나무위키

 

  • API 예시

예를 들어 명령어 창에 "Hello, world!" 라는 문자열을 출력하는 프로그램을 C언어로 작성한다고 하자. 당연히 텍스트로 출력하는 printf API를 사용하여 printf("Hello, World!"); 라고 작성하게 될 것이며, 이는 윈도우, 리눅스, 유닉스, OS X 모두에서 동일하게 동작하도록 C언어 API가 보장해준다. 이 'printf'라는 것은 API를 기반으로 설계된 문법이며 이런 것들이 여러개 쌓여 '라이브러리'가 된다. 물론 printf같은 기본적인 것들은 다 기본적으로 탑재되어있기 때문에 따로 이것을 '라이브러리'라고 부르진 않지만 좀 더 나아가면 운영체제의 종류나 버전을 출력한다든가 파일의 데이터를 읽어오는 등의 행동에는 별도의 라이브러리를 호출할 필요가 있다.

 

기업들이 API를 운용하는 이유는 다음과 같다. 복잡한 프로그램일수록 개발자가 개발하는 프로그램은 그 프로그램 단독으로 돌아가는 경우가 많지 않으며 이미 개발되어있는 무수한 여러 애플리케이션들과 소통하는 경우가 태반이다. 하지만 소통한답시고 기업들이 애플리케이션의 기반 코드와 자체 보유 데이터에 누구나 접근할 수 있도록 열어버리면 난리가 날 것이다. 따라서 각 기업들은 개발자가 개발한 프로그램의 코드를 작동함에 있어 자체 애플리케이션과 실시간으로 상호작용할 내용이 있다면 이를 위해 '소통 창구'라 할 수 있는 자체 API를 만들어 배포하는 것이다.  - 나무위키

 

  • SQL(Structured Query Language)

관계형 데이터베이스 관리 시스템은 구조적 쿼리 언어(SQL)를 사용하여 데이터를 저장하고 관리합니다. 이 시스템은 서로 관련된 여러 데이터베이스 테이블을 저장합니다. MS SQL Server, MySQL 또는 MS Access는 관계형 데이터베이스 관리 시스템의 예제입니다. 다음은 관계형 데이터베이스 관리 시스템의 구성 요소입니다.  - AWS

 

  • SQLite

일반적으로 MySQL, PostgreSQL 등의 RDBMS는 별도의 서버 프로세스가 필요하며 데이터베이스 서버에 액세스하려는 응용 프로그램은 TCP/IP 프로토콜을 사용하여 요청을 보내고 받는다. 이것을 클라이언트/서버 아키텍처라고 한다.

 

하지만 Sqlite는 서버 프로세스를 실행할 필요가 없고 데이터베이스에 액세스하는 애플리케이션과 통합되어 사용 된다.

응용 프로그램은 SQLite 데이터베이스와 상호 작용하여 디스크에 저장된 데이터베이스 파일에서 직접 읽고 쓴다.