Forneça código de exemplo documentado para todos os métodos de acesso ao banco de dados suportados pelo Pervasive.SQL em todas as plataformas usando todas as linguagens populares. De preferência útil para usuários iniciantes e avançados como guia de referência.
Ver:
Por muitos anos, percebi que os exemplos de código/codificação eram escassos. Também variaram ao longo do tempo (plataformas, idiomas suportados), mas acima de tudo permaneceram no tempo. Não é muito atraente para um iniciante, seja ele novo em uma linguagem de programação ou em Pervasive.SQL. Ao longo dos anos, desenvolvi ideias sobre como melhorar isso e fiz alguns esforços para escrever código. A tarefa que temos pela frente é bastante extensa. Especialmente se alguém quiser fazer um trabalho adequado. As ideias mudam, novos projetos ou tarefas surgem, etc. Resumindo, demorou algum tempo e o resultado é muito diferente do inicialmente previsto, pois minha primeira ideia era escrever um único aplicativo de referência que pudesse mais tarde ser portado para outros idiomas/ plataformas.
Com base no parágrafo Métodos de acesso ao banco de dados na documentação online do Actian Pervasive.SQL V13, criei um shellscript Bash (mk_dirs.sh), tendo como único argumento o nome da linguagem de programação, que cria uma estrutura de diretórios listando todos os métodos de acesso ao banco de dados como subdiretórios. Ao usar esse script, fui forçado a examinar e documentar todas as (?!) possibilidades, independentemente de quão estranhas fossem. Todos os subdiretórios contêm seu próprio arquivo ReadMe de marcação descrevendo as (im)possibilidades e o código, se fornecido. Todas as linguagens de programação possuem um arquivo de marcação ReadMe em seu diretório raiz descrevendo os prós e contras, o que está e o que não está implementado, bem como um arquivo de marcação de resultados para registrar o que foi testado em qual plataforma.
O objetivo era não infringir nenhum direito autoral, portanto os cabeçalhos devem ser copiados dos SDKs que podem ser baixados do site da Actian. O mesmo se aplica, por exemplo, ao código que pode ser copiado/colado do site. Seria ótimo se o código de exemplo (e cabeçalhos) pudesse ser disponibilizado em um repositório. Ao pesquisar no Github, é possível encontrar arquivos de cabeçalho protegidos por direitos autorais. Deixo para Actian adicioná-los.
Agradeço muito melhorias, comentários e outras contribuições. Pessoalmente, posso pensar em uma visão:
Estou plenamente consciente de que a maior parte do código não está em conformidade com os padrões acima. Refatorar todo o código levaria muito tempo, o que adiaria o lançamento inicial ou talvez até o impediria. Por esse motivo, estou lançando um código que não atende às minhas opiniões sobre a codificação adequada.
Consulte o arquivo Credits.md. Este arquivo se aplica a todo o projeto.
Consulte o arquivo License.md. Este arquivo se aplica a todo o projeto.
Por uma questão de integridade e uniformidade, todos os métodos de acesso mencionados no manual do programador estão listados como opções para todos os idiomas. As combinações podem ser bastante absurdas ou exóticas. Obviamente, especialmente aqueles que (ainda) não foram implementados e/ou testados adequadamente. Todo o código e documentação neste repositório são fornecidos como estão. De forma alguma sou um especialista em todos os idiomas fornecidos. O objetivo é pelo menos entregar um código funcional que seja de um padrão muito baixo, mas infelizmente não é incomum. Escrever sobre programação versus Engenharia de Software pode encher estantes de livros. Não vamos lá agora. Esperamos que a qualidade do código aumente com o tempo se pessoas especialistas em um determinado idioma participarem e melhorarem o código. A maior parte do código é testada apenas no Linux, salvo indicação em contrário. Para melhorar a maturidade e a clareza neste assunto, foram adicionadas tabelas de resultados de testes.