Buenas prácticas y tutoriales

Xcode Playground para explorar la API de consulta en Couchbase Lite 2.0

Este post es una guía paso a paso para el uso de un Xcode Playground para explorar la nueva API de consulta en Couchbase Mobile 2.0. La página Lanzamiento de Couchbase Lite 2.0 introduce una API de consulta simplificada basada en N1QLel lenguaje de consulta declarativo de Couchbase que extiende SQL para JSON. Si estás familiarizado con SQLite, te sentirás como en casa con el nuevo Generador de consultas interfaz . La API de consulta está diseñada utilizando la Patrón de diseño de API fluidoy utiliza un método en cascada para leerse como un Lenguaje de Dominio Específico. (DSL). Esto hace que la interfaz sea muy intuitiva y fácil de entender.

Xcode Playground es un entorno interactivo que te permite escribir y ejecutar código swift inmediatamente, y ofrece una forma cómoda de aprender y explorar APIs sin tener que crear un proyecto completo de Xcode App. Este es un caso de uso perfecto para explorar la API Coucbase Lite 2.0. No vamos a crear una zona de juegos aquí. Utilizaremos uno que hemos creado específicamente para probar la API de consulta.

Mientras que el playground de Xcode muestra las consultas en swift, dada la naturaleza unificada de la API QueryBuilder a través de las diversas plataformas de Couchbase Lite, salvo modismos específicos del lenguaje, deberías ser capaz de traducir fácilmente las consultas a cualquiera de los otros lenguajes de plataforma soportados en Couchbase Lite. Así que, incluso si eres no un desarrollador Swift, usted debe ser capaz de aprovechar el patio de recreo Xcode para la exploración de la API. Este post no hace suposiciones acerca de su familiaridad con Swift o iOS Desarrollo por lo que incluso si usted es un novato completo para el desarrollo de iOS, usted debería ser capaz de seguir a lo largo. Por supuesto, ¡necesitarás un Mac!

Puede obtener más información sobre la API QueryBuilder en nuestra sección Referencias API guía.

Lecturas recomendadas

Estas entradas de blog tratan en detalle las distintas funciones de consulta
Fundamentos de la API de consulta
Consulta de colecciones de matrices
Capacidad de búsqueda de texto completo.
Consulta JOIN básica

Fondo

Si estabas usando versiones 1.x de Couchbase Mobile, probablemente estés familiarizado con Map-Views para crear índices y consultas. En la versión 2.0, ya no es necesario crear vistas y funciones de mapa. En su lugar, una sencilla interfaz le permite crear índices y puede utilizar una interfaz Query Builder para construir sus consultas. En comparación, la nueva interfaz de consulta es más sencilla de utilizar y mucho más potente.

TL;DR

Si lo prefiere, aquí tiene una grabación en vídeo de todo lo tratado en esta entrada del blog

Requisitos previos

  • Xcode 8.3.3+ , última versión descargable desde Mac App Store

Playground es compatible con Swift 3.1+.

Instalación

  • Clonar el couchbase-lite-ios-api-playground de GitHub ejecutando el siguiente comando desde el terminal

  • Utilizaremos Cartago para descargar e instalar CouchbaseLite. Carthage es un sistema de gestión de dependencias para aplicaciones Cocoa. Ten en cuenta que Couchbase Lite para iOS es distribuido a través de Cocoapods , Cartago o puede descargarlo directamente de nuestro Descargas página. Aquí utilizaremos Cartago.
    Si no dispone de Carthage, siga estos pasos instrucciones para instalar Carthage en su MacOS
  • Verifique su instalación de carthage escribiendo el siguiente comando en su ventana de terminal. Se mostrará la versión de carthage instalada

  • Cambie a la carpeta que contiene el Cartfile. Se encuentra en el Cartago carpeta. El Cartfile especifica las dependencias del proyecto, que en nuestro caso es el framework Couchbase Lite.

  • Descargue Couchbase Lite utilizando Carthage. La versión de Couchbase Lite utilizada se especifica en el archivo Cartfile. Utilizaremos el --no-build para especificar que carthage no construya el código fuente, sino que sólo compruebe los archivos del repositorio de GitHub especificado. Esto ahorra tiempo.

  • Compruebe que el framework Couchbase Lite se ha comprobado correctamente ejecutando este comando en su terminal

Configurar

Utilizaremos dos bases de datos pre-construidas de Couchbase Lite para ejercitar nuestras consultas. Para que Xcode Playground pueda acceder a estas bases de datos, deben estar ubicadas en un directorio especial "Datos compartidos del patio de recreo" dentro de la carpeta Documentos de tu Mac.
Los siguientes pasos son necesarios la primera vez que se configura para Playground. Posteriormente, deberá seguir estos pasos sólo si está modificando la base de datos.

  • Cree una carpeta con el nombre "Datos compartidos de Playground" dentro de la carpeta "Documentos" de su Mac (si no existe ninguna).

  • Copie la carpeta "travel-sample.cblite2" que se extrae de la carpeta couchbase-lite-ios-api-playground en el "Shared Playground Data". Esta base de datos preconstruida se utilizará para probar las consultas.

  • Copie la carpeta "joindb.cblite2" que se extrae de la carpeta couchbase-lite-ios-api-playground en el "Shared Playground Data". Esta base de datos preconstruida se utilizará para probar las consultas relacionadas con JOINs.

  • Compruebe que los archivos se han copiado correctamente utilizando este comando

Explorar el proyecto

Anteriormente en este post, he mencionado que el Xcode Playground no requiere un proyecto de aplicación en toda regla. Esto sigue siendo cierto. Sin embargo, en nuestro caso, tenemos que ser capaces de construir y vincular el CouchbaseLite.framework con el Playground. Puede haber otras opciones, pero la forma en que lo hice fue crear un proyecto Xcode ficticio llamado CBLTestBed.xcodeproj que incluye el Parque Infantil y el CouchbaseLite.xcodeproj.

Así que cuando construya el CBLTestCama construiría el framework CouchbaseLiteSwift que es importado por Playground. Examinemos esto más a fondo.

  • Abra el CBLTestBed.xcodeproj con Xcode

  • Deberías ver CBLQueryPlayground.playground y CouchbaseLite.xcodeproj contenida en el CBLTestBed.xcodeproj
  • Examinemos la CBLQueryPlayground.playground. Debería ver varias páginas de Playground en su explorador de proyectos. Puede empezar por cualquier página del Playground, pero probablemente lo más lógico sería empezar por la página "ToC". Esta es la "Tabla de Contenidos" y proporciona un punto de entrada a otras páginas.
  • Marque la casilla "Renderizar documentación" en la ventana de utilidades para activar la renderización de las páginas de la zona de juegos.
  • Desde la página "ToC", puede navegar a cualquiera de las otras páginas de la zona de juegos. Cada página del patio de recreo incluye un conjunto de ejemplos de consulta que ejercitan la API de consulta con la base de datos "travel-sample.cblite" o la base de datos "joindb.cblite", según corresponda. Como se explica en la sección "Configuración", estas bases de datos se encuentran en la carpeta "~/Documents/Shared\ Playground\ Data/".
  • Todas las páginas de Playground siguen el mismo patrón. Abrimos la base de datos local y luego invocamos funciones que realizan la consulta utilizando la API QueryBuilder.
    Esta es la estructura básica ....

 

Construir y ejecutar

Para poder ejecutar el Playground, primero hay que construir la aplicación CouchbaseLiteSwift framework. Puede hacerlo construyendo el contenedor CBLTestBed.xcodeproj.

  • Selecciona el esquema "CBLTestBed" y selecciona un simulador como objetivo. Construye el proyecto utilizando Cmd-B.
  • Una vez que el proyecto se ha creado correctamente, puede ejecutar un campo de juego pulsando el botón "Ejecutar".
  • Los resultados deberían mostrarse en la consola de salida
  • Por supuesto, como se trata de un patio de recreo, también puede examinar los resultados en línea

Otras opciones de consulta

Las consultas proporcionadas con el patio de recreo de muestra están pensadas para ser utilizadas como referencia. Debería ser sencillo ver que puedes actualizar las consultas para explorar otras opciones de consulta.

Así, por ejemplo, en el ejemplo siguiente, cambie la propiedad "type" y el valor "limit" por otros y vea qué ocurre con los resultados. También puede añadir sus propias consultas.

 

¿Qué sigue?

Esta entrada de blog demostró el uso de Xcode Playgrounds como una forma conveniente de explorar y probar la nueva API de consulta en Couchbase Mobile 2.0. Si desea añadir nuevas consultas, por favor envíe un Github PR.

Si tiene alguna pregunta o sugerencia, deje un comentario a continuación o póngase en contacto conmigo en Twitter @rajagp o envíeme un correo electrónico priya.rajagopal@couchbase.com. En Foros de Couchbase son otro buen lugar para plantear preguntas.

 

Comparte este artículo
Recibe actualizaciones del blog de Couchbase en tu bandeja de entrada
Este campo es obligatorio.

Autor

Publicado por Priya Rajagopal, Directora de Gestión de Productos

Priya Rajagopal es directora sénior de gestión de productos en Couchbase y responsable de las plataformas de desarrollo para la nube y el perímetro. Lleva más de 20 años dedicándose profesionalmente al desarrollo de software en varios puestos de liderazgo técnico y de producto, con más de 10 años centrados en tecnologías móviles. Como delegada de estándares IPTV de TISPAN, fue una colaboradora clave en las especificaciones de estándares IPTV. Tiene 22 patentes en las áreas de redes y seguridad de plataformas.

1 Comentarios

  1. el carthage update -plataforma ios -no-build no funciona, probablemente estaba destinado a ser carthage update -plataforma ios --no-build?

Deja un comentario

¿Listo para empezar con Couchbase Capella?

Empezar a construir

Consulte nuestro portal para desarrolladores para explorar NoSQL, buscar recursos y empezar con tutoriales.

Utilizar Capella gratis

Ponte manos a la obra con Couchbase en unos pocos clics. Capella DBaaS es la forma más fácil y rápida de empezar.

Póngase en contacto

¿Quieres saber más sobre las ofertas de Couchbase? Permítanos ayudarle.