IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

[Outil] Générateur de classe SQLiteOpenHelper


Sujet :

Android

  1. #1
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut [Outil] Générateur de classe SQLiteOpenHelper
    Tout développeur qui souhaite exploiter la BDD embarquée SQLite sait qu'il soit écrire une classe SQLiteOpenHelper pour gérer la création et la montée de version de sa base.

    Je vous présente donc GenDroid, un outil Web qui converti votre schéma de base au format SQLite (et non pas SQL) en cette fameuse classe Java, prête à être intégrée dans votre projet : http://gendroid.univ-pau.fr


    Testez-le avec ce fichier exemple sample.sqlite3 :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    CREATE TABLE salespeople (
      id INTEGER PRIMARY KEY,
      first_name TEXT NOT NULL,
      last_name TEXT NOT NULL,
      commission_rate REAL NOT NULL
    );
     
    CREATE TABLE customers (
      id INTEGER PRIMARY KEY,
      company_name TEXT NOT NULL,
      street_address TEXT NOT NULL,
      city TEXT NOT NULL,
      state TEXT NOT NULL,
      zip TEXT NOT NULL
    );
     
    CREATE TABLE orders (
      id INTEGER PRIMARY KEY,
      customer_id INTEGER,
      salesperson_id INTEGER,
      FOREIGN KEY(customer_id) REFERENCES customers(id),
      FOREIGN KEY(salesperson_id) REFERENCES salespeople(id)
    );

    Profitez de cette discussion pour reporter les bugs, améliorations souhaitées, etc.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  2. #2
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Salut,

    Est ce que c'est un projet libre ?
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  3. #3
    Modérateur
    Avatar de grunk
    Homme Profil pro
    Lead dév - Architecte
    Inscrit en
    Août 2003
    Messages
    6 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Côte d'Or (Bourgogne)

    Informations professionnelles :
    Activité : Lead dév - Architecte
    Secteur : Industrie

    Informations forums :
    Inscription : Août 2003
    Messages : 6 690
    Points : 20 211
    Points
    20 211
    Par défaut
    Perso j'aurais préféré un champs texte ou on peut coller notre schéma et un autre qui affiche le code généré. Dans le même style que Parcelabler

    Mis à part ça c'est bien pratique , manque plus qu'un plugin Android Studio ^^
    Pry Framework php5 | N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Citation Envoyé par Feanorin Voir le message
    Salut,

    Est ce que c'est un projet libre ?
    Non, ce n'est pas un projet libre. Mais ca pourrait le devenir. Tu as une idée en tête ?
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  5. #5
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Pas forcément mais allez plus loin , par exemple prendre en compte les relations est s'occupé des merges des données ou ecrasement en fonction de ces relatins
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  6. #6
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    En fait, la génération du SQLiteOpenHelper est la première phase d'un projet plus vaste (baptisé GenDroid), mais la seule en état d'être releasée pour le moment.

    L'idée c'est d'ensuite générer les POJOs correspondants ainsi qu'une classe DAO (c-a-d opérations CRUD sur la bdd). C'est la que les choses sérieuses commencent...
    Il existe déjà des outils qui font cela mais ce sont des usines à gaz que peu de gens installent. J'ai la foi dans un outil à l'opposé, minimaliste et 100% online

    Pour résumé, je sais où il faut aller niveau développement, mais je n'ai pas vraiment le temps de m'y atteler. Donc l'idée d'un projet open source est intéressant. Mais ils faut des contributeurs de qualité (ou du moins, pas trop nuls ) et je ne peux pas ouvrir le serveur à n'importe qui (car oui, je souhaite faire conserver l'hébergement par l'université).
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  7. #7
    Expert éminent

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Points : 9 149
    Points
    9 149
    Par défaut
    Pour cela tu peux passer par les Pull Request de github ca te permettra de contrôler chaque ajout .

    Je suis partant si c'est possible, après si tu as déjà des idées à toi de définir les Cards à faire .
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  8. #8
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Oui, mes idées sont claires. J'aimerai lancer une version 2 (http://gendroid.univ-pau.fr/v2/) parallèlement à la version actuelle qui fait son office.

    Il y aura 3 servlets qui reçoivent la même chose en entrée (un schéma SQLite valide):
    • Celle qui produit la classe SQLiteOpenHelper (existe déjà, nécessite une toute petite modif)
    • Celle qui produit les classes POJOS (problème : ne peut générer qu'une réponse http alors qu'il en faudrait plusieurs pour faire les choses correctement...)
    • Celle qui produit la classe DAO


    L'interface web doit être repensée comme l'a suggérée grunk : un textarea dans lequel on met son code SQLite et 3 textareas qui seront peuplés par appel asynchrones (i.e. AJAX) aux Servlets ci-dessus.

    L'autre solution à laquelle j'avais pensé c'est de repartir de l'interface web actuelle et de générer une archive .zip qui contienne tous les fichiers Java générés.

    Au delà de ces aspects purement architecturaux, il faut réfléchir aux règles de génération avant même de coder. En particulier, l'impact relations entre les tables ...
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

  9. #9
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Février 2006
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 19
    Points : 36
    Points
    36
    Par défaut Générateur de code avec table
    Bonjour,
    je ne sais pas ce qu'il en est du projet.
    j'ai commencé à faire un générateur en php qui génére à partir d'une table, les bout de code correspondants:
    partie de layout en xml, déclaration de variables, paramètres de fonctions avec tous les champs typés, etc.....

    Je travaille pareil sur un site internet avec des zones de texte

    Paul

  10. #10
    Expert confirmé
    Avatar de Hephaistos007
    Profil pro
    Enseignant Chercheur
    Inscrit en
    Décembre 2004
    Messages
    2 493
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant Chercheur
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2004
    Messages : 2 493
    Points : 4 166
    Points
    4 166
    Par défaut
    Bonjour,

    Ce projet est toujours actif et fonctionne toujours, comme vous pouvez le constater : http://gendroid.univ-pau.fr/

    Entre temps, nous avons aussi proposé une génération de code pour ceux dont la base est externe (soit 98% des projets) dans la section Remote Database. Cette génération de code est la plus complexe et fait gagner le plus de temps. J'ai l'occasion d'en faire régulièrement la démonstration dans différentes écoles/universités.
    Il vaut mieux mobiliser son intelligence sur des conneries que mobiliser sa connerie sur des choses intelligentes --- devise SHADOKS

    Kit de survie Android : mon guide pour apprendre à programmer sur Android, mon tutoriel sur les web services et enfin l'outil en ligne pour vous faire gagner du temps - N'oubliez pas de consulter la FAQ Android

Discussions similaires

  1. Recherche d'un outil : générateur de MCD
    Par DarckCrystale dans le forum Schéma
    Réponses: 0
    Dernier message: 26/03/2014, 18h45
  2. [C#][NHibernate] Générateur de classes
    Par Baptiste_87 dans le forum NHibernate
    Réponses: 12
    Dernier message: 30/05/2011, 18h46
  3. Un générateur de classe php / MSSQL
    Par zemeckis dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 06/05/2009, 14h07
  4. Générateur de classe
    Par hisy dans le forum EDI, CMS, Outils, Scripts et API
    Réponses: 1
    Dernier message: 16/03/2007, 14h55
  5. [Outil]Générateur OpenSource d'image avec zones cliquables
    Par sunvialley dans le forum Webdesign & Ergonomie
    Réponses: 3
    Dernier message: 27/12/2006, 09h39

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo