이후 2년의 공개 임신 기간의 최신 버전이 생일을 맞이했습니다! 몇 단계 건너뛰고 형제와 합류한 Couchbase Lite 3.0 릴리스와 함께 Couchbase Lite for C가 세상에 등장합니다.

C용 Couchbase Lite란?? 카우치베이스 라이트는 풍부한 쿼리와 완벽한 데이터 동기화를 지원하는 클라이언트 측 문서 데이터베이스 라이브러리입니다. Couchbase Lite for C는 ANSI C API를 추가하여 C 또는 C++ 앱에 연결할 수 있습니다. 

당신은 얻습니다:

  • 클래스 및 메서드가 C 구조체 및 함수가 된 동일한 훌륭한 기능 세트, 아키텍처 및 API
  • 언어 런타임에 의존하지 않는 하나의 작은 네이티브 라이브러리
  • 더욱 폭넓은 OS 호환성
  • 적당한 하드웨어 요구 사항

이것이 왜 큰 문제일까요? 모바일 앱 개발자는 일반적으로 C#, Java, Objective-C 또는 Swift로 코딩하여 iOS 또는 Android용으로 개발하며, 이미 이 모든 용도에 맞는 Couchbase Lite 버전이 있습니다. 또한 데스크톱 Mac 및 Windows도 지원합니다.

아직 다루지 않은 내용은 무엇인가요?

사물 인터넷

임베디드 디바이스! 다음과 같은 lot 이 중 데이터베이스가 필요 없는 전구, 토스터 등을 제외하더라도 급성장하는 사물 인터넷 카테고리에는 구조화된 데이터에 액세스해야 하는 사용 사례가 많이 있습니다. 이러한 데이터를 서버나 다른 IoT 디바이스와 공유해야 하는 경우가 많습니다. 예를 들어 병원에서는 환자 기록과 바이탈 사인을 저장하는 특수 의료 기기를 사용합니다. 이 데이터는 환자가 치료를 받는 모든 곳에서 사용할 수 있어야 합니다.

Couchbase Lite for C의 주요 초점은 Linux를 실행하는 데이터가 풍부한 IoT 장치입니다. 데이터 동기화 기술을 갖춘 동급 최고의 모바일 데이터베이스를 라즈베리파이와 유사한 하드웨어, 즉 MMU와 수백 메가바이트의 RAM을 갖춘 ARM SoC에서 실행되는 제품에서 사용할 수 있도록 만들었습니다.

데스크톱 Linux

이제 비임베디드 Linux 배포판도 참여할 수 있습니다. Couchbase Lite for C는 우분투 및 데비안과 함께 데스크톱 및 노트북 Linux 앱에 대한 문을 열어줍니다. 지원 3.0에서 지원되며, 향후 더 많은 배포판이 추가될 예정입니다. 또한 macOS와 Windows도 지원합니다.

경량 서버를 위한 매력적인 선택이 될 수도 있습니다. Couchbase Lite의 JSON 문서 데이터 모델은 Couchbase Server와 동일하지만 훨씬 더 작은 설치 공간과 제로 구성으로 제공됩니다. Couchbase Server의 확장성과 일치하도록 설계되지는 않았습니다.

크로스 플랫폼 앱

Linux, Mac, Windows, Android, iOS에서 동일한 API를 사용하는 Couchbase Lite for C는 크로스 플랫폼 C/C++ 코어 코드를 사용하는 애플리케이션에도 유용합니다. 플랫폼별 라이브러리에 대한 어색한 상향 종속성 없이도 지속성 및 동기화 솔루션으로 사용할 수 있기 때문입니다.

기타 언어

와 함께 많은, 많은 현재 사용 중인 프로그래밍 언어를 모두 직접 지원할 수는 없습니다. Java 및 C# 버전의 Couchbase Lite를 다른 JVM 및 .NET CLR 언어에 연결하는 것은 어렵지 않습니다. 하지만 Python, JavaScript 또는 Rust와 같은 이색적인 틈새 언어는 어떨까요?

C not 모든 사람이 좋아하는 언어가 될 수 있지만 영어와 마찬가지로 링구아 프랑카 개발자를 위한 것입니다. (잠깐만요 Franca 프랑스어'를 의미하나요?) 모든 언어는 외부 함수 인터페이스(FFI)를 사용하여 C와 상호 운용할 수 있습니다. 즉, 누군가가 FFI를 C용 Couchbase Lite에 연결하는 글루 코드를 작성하면 모든 언어가 Couchbase Lite API를 가질 수 있다는 뜻입니다.

카우치베이스는 글루 코드를 모두 지원할 수는 없지만, 사람들이 시작할 수 있도록 다음과 같은 두 가지 예제를 제공했습니다. 파이썬 바인딩녹 바인딩. 샘플 코드라고 생각하세요. 작동은 하지만 불완전하고 지원되지 않으며 간단한 테스트만 거친 상태입니다. 하지만 Apache 라이선스가 있으므로 커뮤니티에서 개선하고 확장할 것을 권장합니다. 또한 다른 바인딩을 작성하는 개발자에게 좋은 예시가 될 수 있다는 점도 중요한 점입니다. 다트 바인딩.

추가 읽기 및 보기

자세한 내용은 C용 카우치베이스 라이트에 대한 프레젠테이션 의 2021 카우치베이스 커넥트 컨퍼런스에서 발표되었습니다. API에 대한 자세한 내용, 특히 C 번역이 다른 플랫폼과 어떻게 다른지 자세히 설명합니다.

다른 참고 자료와 샘플 바인딩 링크를 통해 더 자세히 알아볼 수 있습니다:

작성자

게시자 옌스 알프케, 모바일 아키텍트, 카우치베이스

옌스 알프케는 카우치베이스의 모바일 아키텍트입니다. Couchbase에 입사하기 전에는 Apple과 (잠시) Google에서 근무했습니다. 옌스는 기타를 연주합니다.

댓글 남기기