Meu livro técnico favorito de todos os tempos foi o Linguagem de programação C por Kernighan e Ritchie, carinhosamente chamado de K&R. Eles popularizaram um termo que sempre estará no vocabulário dos desenvolvedores - Olá mundo.
Esse programa de aparência inofensiva ajudou a lançar a carreira de muitos programadores e foi a base do grande sucesso de muitas APIs. Dennis Ritchie, que faleceu recentemente, ou como alguns chamam, retornou de principal()O Unix, também foi inspirador na criação do sistema operacional Unix.
Então, sem mais delongas, aqui está o Hello World para o Couchbase.
importação java.net.URI;
importação java.util.List;
importação java.util.ArrayList;
importação com.couchbase.client.CouchbaseClient;
público classe HelloCouchbase {
público estático vazio principal(Cordas argumentos[]) {
tentar {
URI local = novo URI("http://localhost:8091/pools");
Lista<URI> baseURIs = novo ArrayList<URI>();
baseURIs.adicionar(local);
CouchbaseClient c = novo Cliente Couchbase(baseURIs, "default", “”);
c.definir("chave", 0, "Hello World");
Sistema.fora.println(c.obter("chave"));
} captura (Exceção e) {
Sistema.erro.println("Erro ao conectar ao Couchbase: "
+ e.getMessage());
Sistema.saída(0);
}
}
}
É certo que é um programa muito mais longo.
O que o programa faz é simplesmente obter o valor de uma chave que acabou de ser definida. Entretanto, em um sistema distribuído, não há garantias devido à natureza dinâmica inerente do sistema. O oito falácias da computação distribuída entra em mais detalhes sobre isso. Do ponto de vista do programador, as bibliotecas de clientes Java do Couchbase abstraem essa natureza dinâmica de um cluster. Elas fornecem um conjunto básico de operações, como obter e definir que está disponível em formas síncronas ou assíncronas. É possível usar essas operações simples em conjunto com operações que ajudam a implementar a atomicidade, como check and set(cas) para implementar sistemas de alto desempenho e dimensionáveis para o mundo real.
Mais do que isso e estarei me desviando da filosofia do Olá mundo.
Estarei contribuindo mais para o uso do Couchbase com as bibliotecas de clientes Java, mas, enquanto isso, aqui estão alguns links úteis.
Onde está o com.couchbase.client.CouchbaseClient no maven?
No blog [...], John Zablocki apresenta o novo SDK do .NET, enquanto Rags Srinivas cobre as atualizações dos SDKs do Java e do Ruby. Nosso próprio Jan Lehnardt também faz um rápido resumo sobre o PHP SDK. PHP e Ruby recebem [...]