Sugestões framework ORM Android

65 respostas
J

Galera, estou com a idéia de criar um framework ORM para Android, e já tenho o básico pronto (salvar, recuperar, etc), e estou estudando torná-lo open-source.

Então, quais as dicas e sugestões vcs me dão?
E o principal talvez, sugerem algum nome para o projeto? :lol:

Espero ter a contribuição de muitos, para tornar esse projeto realidade.

65 Respostas

M

Sugestão, torne-o OpenSource, eu mesmo estava pensando em criar um Towel4Android,.

Acho que faltam algumas coisas para facilitar o desenvolvimento.

Sobre nomes, é uma otima questão e bem dificil de responder.

E hospede no github preferencialmente :smiley:

J

Marky.Vasconcelos:
Sugestão, torne-o OpenSource, eu mesmo estava pensando em criar um Towel4Android,.

Acho que faltam algumas coisas para facilitar o desenvolvimento.

Sobre nomes, é uma otima questão e bem dificil de responder.

E hospede no github preferencialmente :D

GitHub + OpenSource, sim, concerteza :slight_smile:

Esse seu projeto seria um ORM ou apenas um ‘utils’?

Interessaria em contribuir?

M

Se precisar de ajuda… manda um PM :wink:

M

Pra falar a verdade seria só um Utils mesmo.

Mas também seria legal um ORM para Android, principalmente com os models que vai ter no Utils.

Eu interesso em contribuir sim, mas só com o tempo. E ultimamente não me anda sobrando quase nenhum.

J

Toda ajuda é bem-vinda :smiley:
Quando eu disponibilizar no GitHub, postarei aqui no Guj, mas antes preciso de um nome para o projeto =/
E preciso aprender a ‘gerenciar’ um projeto no GitHub :lol:

M

Toda ajuda é bem-vinda :smiley:
Quando eu disponibilizar no GitHub, postarei aqui no Guj, mas antes preciso de um nome para o projeto =/
E preciso aprender a ‘gerenciar’ um projeto no GitHub :lol:

Eu sinceramente, acho mais facil utilizar o Google Code (SVN)… mas gosto é gosto.

Você ja tem ideia do que pretende com o projeto ?
É uma implementação de JPA? JDO? Algo totalmente direfente?
Vai ser por annotations ou XML? ou os 2?

Assim ja podemos maturar a ideia e ajuda a pensar em um nome

J

Toda ajuda é bem-vinda :smiley:
Quando eu disponibilizar no GitHub, postarei aqui no Guj, mas antes preciso de um nome para o projeto =/
E preciso aprender a ‘gerenciar’ um projeto no GitHub :lol:

Eu sinceramente, acho mais facil utilizar o Google Code (SVN)… mas gosto é gosto.

Você ja tem ideia do que pretende com o projeto ?
É uma implementação de JPA? JDO? Algo totalmente direfente?
Vai ser por annotations ou XML? ou os 2?

Assim ja podemos maturar a ideia e ajuda a pensar em um nome

Tbm usei muito o Google Code, mas principalmente para projetos open-source, o git se mostra melhor, msm eu não usando ele muito.

Vamos as repostas:
Vai ser independente de implementação JPA e coisas do tipo, até pq, acho que não seria viável as funcionalidades todas da JPA, em um ORM para Android;
Tudo por anotação…

Isso aí, dadas as sugestões, podemos até criar uma enquete, se o pessoal colaborar.

J

DroidLink?
DORM?

Muito interessante, pode contar comigo também. Mas seria bom dá uma pesquisa se ainda não existe nada.

J

java.lang.JJunior:
DroidLink?
DORM?

Muito interessante, pode contar comigo também. Mas seria bom dá uma pesquisa se ainda não existe nada.

Vamos anotando as sugestões, e de pref., coloque o ‘porquê’ do nome :wink:

Eu pesquisei um pouco, eu achei um, mas é trial.
E quis mesmo criar um open-source, pq assim, podemos fazer algo MUITO legal, com a ajuda de todos.

M

DROM? Só por que tem um nome pesado e tem as letras de ORM :smiley:

J

j0nny:
java.lang.JJunior:
DroidLink?
DORM?

Muito interessante, pode contar comigo também. Mas seria bom dá uma pesquisa se ainda não existe nada.

Vamos anotando as sugestões, e de pref., coloque o ‘porquê’ do nome :wink:

Eu pesquisei um pouco, eu achei um, mas é trial.
E quis mesmo criar um open-source, pq assim, podemos fazer algo MUITO legal, com a ajuda de todos.


DroidLink por causa do EclipseLink, TopLink e etc.

DORM por duas razões, GORM do Grails ORM e porque DORM também significa dormitório e já tem o Hibernate e tals, enfim, achei legal, fácil de falar.

M

Achei criativo! Thumbs up!

J

Legal as sugestões, vamos tentar acumular mais sugestões de nomes para fazermos uma votação.

Quanto ao projeto em si, alguma sugestão?

L

Cade o link do github?
Já tem código?

[]s

J

j0nny:
Legal as sugestões, vamos tentar acumular mais sugestões de nomes para fazermos uma votação.

Quanto ao projeto em si, alguma sugestão?


Acho que você deveria escolher um dos nomes sugeridos, começar o projeto e depois trocar caso a comunidade tenha melhores sugestões, o importante é começar logo.

J

Luiz Aguiar:
Cade o link do github?
Já tem código?

[]s

Não tem nada no GitHub ainda, pelo motivo de escolhermos o nome para criar o repositório.
Já tenho alguma coisa de código, operações de CRUD básico…

M

É possivel mudar o nome do projeto no github depois de começado, então já pode iniciar um como AndroidORM depois escolhemos um nome melhor.

J

Ops, nem tinha percebido isso :oops:
Vou terminar o básico que está em andamento, e já coloco no GitHub.

J

Uma dúvida que tenho num projeto como esse, como ficam as licenças?

L

Coloca MIT e bola pra frente.

[]s

F

+1 pra MIT;

+1 que nao sabe usar GitHub Direito :?

+1 Interessado no projeto!!

ADORM - Android ORM?? Nome é uma coisa complicada mesmo;

[edit]
ou era pra ser ANDORM?? Sei la!!

A

fredferrao:

ou era pra ser ANDORM?? Sei la!!

Eu pensei quase isso… Pensei em simplificar mesmo…

[AdrORM] - pronunciando AN-DROR-MI - com o M mudo é claro… Poutz, acho que deu pra entender…

J

Para o pessoal especialista em GitHub, com o Android crio dois projetos, um o projeto em si, e outro que é o projeto de testes, como faço para colocar esse dois no GitHub?
Crio uma pasta principal, com os dois projetos lá dentro? E essa pasta principal sendo meu repo no GitHub?

M

Cria uma pasta, da um git init, dentro dela cria duas pastas, um do projeto original e o outro de testes.

J

Blza.

N

Eae, cade o repositorio no git?

J

Estou resolvendo algumas coisas no que já tenho implementado, e coletando idéias com pessoas que já trabalharam em projetos open-source maiores, pra aí sim dar início.

N

Acho que não tem muito segredo. Coloca la no git, pega um arquivo de licença que os caras sugeriram ai e pronto…

Cria um tuto básico de como usar o que você já fez, e assim o pessoal vai abrindo issues para correção de bugs, alterações e novas funcionalidades.

Bastante gente ta interessada…

J

Nykolas Lima:
Acho que não tem muito segredo. Coloca la no git, pega um arquivo de licença que os caras sugeriram ai e pronto…

Cria um tuto básico de como usar o que você já fez, e assim o pessoal vai abrindo issues para correção de bugs, alterações e novas funcionalidades.

Bastante gente ta interessada…

Tá meio corrido por aqui, mas até fds devo commitar as minhas alterações, e colocar um tuto no blog, e as features que precisam ser implementadas de início.

L

Use os tickets do Github para colocar as tarefas.

E não se preocupe em colocar tudo agora no estado da arte, muita coisa provavelmente vai mudar, então nada que um refactory não resolva no decorrer do projeto.

[]s

J

Luiz Aguiar:
Use os tickets do Github para colocar as tarefas.

E não se preocupe em colocar tudo agora no estado da arte, muita coisa provavelmente vai mudar, então nada que um refactory não resolva no decorrer do projeto.

[]s

Bem lembrado, vlw pelas dicas.

Sim, concerteza, tem bastante coisa que eu mesmo vejo que precisa ser refatorado, apenas quero deixar funcionando a parte básica.

M

O importante é o comit inicial.

M

Aproveitando o tópico… quais ferramentas vocês usam para trabalhar com o Git? no windows.

L

Git e Windows não combinam… sério.

[]s

M

Voce vai ter que instalar o git bash para poder usar.

Mas mesmo assim, Windows e git não combinam.

N

Voce vai ter que instalar o git bash para poder usar.

Mas mesmo assim, Windows e git não combinam.

Não sei para windows, mas para Eclipse se não me engano tem um plugin.

M

Sad :frowning:

Vou tentar usar o plugin do Eclipse… ver no que dá.

T

Voltando a questão do projeto. Gostaria de tornar pública a proposta que fiz a Jonatas de incorparar o projeto dele como um sub-projeto do Floggy. Fiz a proposta pois ano passado já dei inicio ao porte do Floggy para Android (https://github.com/floggy/persistence-android) mas não dei continuidade por falta de disponibilidade e parceria. Unindo forças acredito que chegaremos à algo de mais alto nível e de maior abrangência.
Ideias?

J

Cara, eu usei pouco o Git, quase nada pra falar a verdade, mas quando usei, o plugin foi uma péssima experiência =/
Uso o ubuntu, na linha de comando.

V

Tem como rodar git no windows não?

Nem com esse TortoiseGit? Não testei ele ainda

http://code.google.com/p/tortoisegit/

F

victorcosta:
Tem como rodar git no windows não?

Nem com esse TortoiseGit? Não testei ele ainda

http://code.google.com/p/tortoisegit/

Ter, deve ter, alem dos plugins da IDE’s, mas (nao espalha) Git Users adoram uma linha de comando :lol: , nao levem pro lado pessoal, to brincando!?

Aqui o pouco que usei(git clone :shock: ) foi via linha de comando tambem e no Ubuntu!

J

Criei o projeto no GitHub, porém ainda sem os sources.
Só quero saber a opinião do pessoal ++ em GitHub, o que acham da estrutura?

AndOrm é o projeto em si, e AndOrmTest, é o projeto de testes, como diz o manual do Google para Testes.
Mas não sei se esse seria o jeito correto de deixar o projeto no GitHub, quero sugestões :slight_smile:

J

Estou enrolado aqui com o projeto, pq estou com um problema no Git, se puderem me ajudar, ficaria grato.

Assim que resolver esse problema, vou commitar o projeto.

P

Saudades do Google Code, SourceForge…

Não sou usuário Linux e vendo comentários que o Git não roda bem Windows só me faz querer a continuar a usar estes dois.

Com base nisto, porquê se adota algo que vai dar trabalho ?

Linha de comando ? Tô fora…eu quero é menuzinho com Commit e por ai vai…

Acho lindo o TortouiseSVN…

M

boone:

Linha de comando ? Tô fora…eu quero é menuzinho com Commit e por ai vai…

Acho lindo o TortouiseSVN…

Tem gente que acha lindo uma telinha preta com alguns comandos.

E depois que se pega o jeito do git é extremamente facil usar.

L

Marky.Vasconcelos:
boone:

Linha de comando ? Tô fora…eu quero é menuzinho com Commit e por ai vai…

Acho lindo o TortouiseSVN…

Tem gente que acha lindo uma telinha preta com alguns comandos.

E depois que se pega o jeito do git é extremamente facil usar.

Oi,

Nada melhor do que uma linha de comando!

Imagina conseguir dar um find people no mundo! Ou ainda: dir home/room

Lina mito, Lina loca!

Tchauzin!

J

Bom galera, desculpe a demora, pois tive uns impasses por causa dos fontes serem da empresa e blá blá blá.
Mas já (re) comecei uma API básica para buscas do framework, minha intenção é usar apenas métodos, nada de SQL ou coisa do tipo.
Então segue o link no GitHub da api.

https://github.com/jonatasdaniel/criteria

PS1: Como a API pode ser usada para vários fins, desvinculei do projeto do framework a princípio.

PS2: Os testes estou fazendo em cima de um query builder do JPA (que ainda não está implementado), mas será criado um builder especial para o framework.

Sobre o framework em si, vou reimplementar a base e logo coloco no GitHub, aí desvinculo de qq instituição. Mas prometo que não vai demorar, já que a idéia toda já tenho :lol:

É isso aí, sugestões são muito bem vindas.

Agradecimentos ao @rodolfoliviero que me salvou de um vexame com o GitHub :lol:

D

E ai galera, montei algo semelhante se não com a mesma idéia, estava precisando muito pois ficar criando as classes com ddl é muito chato rsrs

segue o link do google code e vejam se podem aproveitar algo:
DroidPersistence

V

A minha sugestão é o nome DROPAR (android persistence api resource).

Sei que o termo é ligado ao surf e, numa simples tradução, significa:
Descer a onda (android) da parte mais alta (java) até a base (sqlite).

É, eu sei, viajei legal nessa. :smiley: :smiley:

L

Por que mapear o modelo relacional a objetos? ORMs são coisas desnecessárias.

V

Desnecessária pra mim é uma pergunta dessas.
Na boa longino, esse não é um tópico pra questionamentos. J0nny teve uma idéia e veio pedir ajuda, se não quiser participar não posta, deixe o cara ser feliz.
Agora, se você tiver plena, real e irrevogável certeza que ORM são coisas desnecessárias, crie um tópico a parte e defenda a sua tese.
Agradeço a compreensão.

vinilima

J

Falando nisso, o nome está pre-decidido como AndOrm, e será liberado uma versão logo-logo, faltando apenas uma issue essencial para ficar legal. Afinal, quem quiser ajudar, será muito bem-vindo.
O link do projeto encontra-se em https://github.com/jonatasdaniel/andorm
Finalizando essa issue de criar tabelas a partir das suas entidades, acho que o framework pode ser usado tranquilamente nos projetos por aí.
Conto com vcs.

Att,

M

Alguém aqui usa banco de dados relacional em celular?

F


SQLite is an ACID-compliant embedded relational database management system contained in a relatively small (~275 kB) C programming library

http://en.wikipedia.org/wiki/SQLite

Android provides full support for SQLite databases.

http://developer.android.com/guide/topics/data/data-storage.html#db

M

Obrigado. Mas acho que vc não entendeu minha pergunta.

J

Bom, gostaria de saber se há alguém interessado em implementar a issue https://github.com/jonatasdaniel/andorm/issues/3 , pq assim poderíamos liberar a primeira release beta pro pessoal.

L

Até uns tempos atrás estava utilizando o Git bash no windows 7 normalmente. Nunca tive problema algum. Commits, pulls, merges e pushes, tudo de boa.
Ainda assim preferia utilizar com Linux. O windows era minha opção quando me irritava com problemas de libs e plugins no Linux.

Mas depois de começar a usar Mac, não tenho a mínima vontade de utilizar windows.
Também pretendo contribuir com este projeto!

J

leandronsp:
Até uns tempos atrás estava utilizando o Git bash no windows 7 normalmente. Nunca tive problema algum. Commits, pulls, merges e pushes, tudo de boa.
Ainda assim preferia utilizar com Linux. O windows era minha opção quando me irritava com problemas de libs e plugins no Linux.

Mas depois de começar a usar Mac, não tenho a mínima vontade de utilizar windows.
Também pretendo contribuir com este projeto!

Tem as issues abertas, se quiser contribuir, fique a vontade :slight_smile:
Dê preferência a issue que citei, dependemos dela para liberar uma versão beta pro pessoal testar.

L

Desnecessária pra mim é uma pergunta dessas.
Na boa longino, esse não é um tópico pra questionamentos. J0nny teve uma idéia e veio pedir ajuda, se não quiser participar não posta, deixe o cara ser feliz.

Estou apenas plantando idéias pela internet para um futuro melhor para desenvolvedores. Isso ficará armazenado no subconsciente de todos que leram, quer concordem ou não.

Isso já foi discutido em outro tópico.

A

Ei pessoal, criei um projeto que faz o mapeamento do jpa para o sistema do android.

Ainda está incompleto mas já tem algumas funcionalidades prontas como: Criação do create table, criação do drop table, mapeamento dos campos da entidade para o banco e vice-versa.

Postei recentemente no google-code usando svn. Já estou usando estes mapeamentos em um projeto pessoal. O Sistema mapeia todos os tipos primitivos + enums + Date. Está faltando o mapeamento de relacionamento entre entidades (one-to-one, one-to-many, many-to-one, many-to-many). Já estão implementados as annotations: @Transient, @Temporal e @Column. A idéia principal do framework é prover uma interface parecida com a do jpa para auxiliar na propria biblioteca do android com o sqlite. Foram removidos os elementos que não eram compatíveis com o sqlite e por enquanto o EntityManager não está implementado. Apenas o mapeamento da entidade para o banco e vice-versa, podendo ser utilizado com Daos. Ainda também não está documentado o uso no google-code e nem um tutorial para uso do framework. Agradeço a compreensão e opinião de quem for ler o código.

https://code.google.com/p/jpa-android/
email: [email removido]

[]´s
Assis jr.

J

Alguem disposto a fechar a issue de criação dos scripts?

A

Kra, vê lá no jpa-android se tem algo q te ajuda. pode ver e alterar o código para suas necessidades.

[]´s

J

Bom pessoal, como noticiado aqui no GUJ, saiu a versão beta do AndOrm, gostaria da colaboração do pessoal:

M

Legal, agora poderei começar a usar e espero adapta-lo para facilitar mais o uso do framework e com isso ajudar o projeto. :wink:

J

Vlw Marky, isso aí, quanto mais sugetões e melhorias, melhor :lol:
E fiquem a vontade para fazer fork do projeto, fechar issues, abrir issues, refatorar, enfim, ajudar de alguma forma.

Criado 7 de fevereiro de 2011
Ultima resposta 10 de jul. de 2011
Respostas 65
Participantes 18