Aller au contenu
View in the app

A better way to browse. Learn more.

Next

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

[TUTORIAL] Java5, pools d'objets

Featured Replies

Posté(e)

Bonjour chers INpactiens,

Je viens de finir la rédaction d'un article sur le développement de pools d'objets en Java.

Dans la droite ligne de mon tutorial d'installation de linux Debian, cet article met l'accent sur une progression régulière et une explication pas à pas, permettant au lecteur de bien comprendre ce qu'il fait et pourquoi il le fait.

En partant d'une simple liste d'objets, jusqu'à l'utilisation des génériques Java5, en passant par la synchronisation, tout est expliqué.

L'article et les sources sont disponibles ici :

http://olivier.croisier.free.fr/articles.php

J'espère que vous apprécierez sa lecture.

Faites-moi part de vos remarques et commentaires !

Sentinel

Posté(e)

J'ai survolé ton boulot et je ne connais pas bien le sujet donc je ne sais pas si c'est très valable ce que je dis, mais ca à l'air franchement bien expliqué, beaucoup d'exemples de code et d'explications, peut-être préciser un peu ou mettre des liens vers des explications de certaines notions ( le design pattern du singleton notamment ) pour éviter de "perturber" le lecteur.

Mais bravo c'est du super boulot :francais:

Posté(e)
  • Auteur

En principe, comme indiqué dans l'introduction, l'article s'adresse plutôt à des programmeurs de bon niveau.

Mais je note la remarque, et je referai une passe pour voir si certaines notions nécessitent davantage d'explications.

Posté(e)

Bonjour !

J'ai pris pas mal de temps pour lire la doc, ne voulant pas trop lire ca en diagonal.

Je ne me considére pas comme un brute en java, mais l'article a était suffisement clare pour que j'en comprenne une bonne partie.

Je tien juste a signaler que j'ai rencontré une petite difficultée.

Lors de l'exemple du premier pool ( pool1.zip ) j'ai pas pu le compiler !

pour le fichier Consumer.java :

 $ javac Pool/src/croisier/pool/Consumer.java 
Pool/src/croisier/pool/Consumer.java:32: ';' expected
	public enum Action {NOTHING, GET_RESOURCE, RETURN_RESOURCE, USE_RESOURCE};
					   ^
1 error

Pour info :

 $ java-config -L
[sun-jdk-1.4.2.10] "Sun JDK 1.4.2.10" (/etc/env.d/java/20sun-jdk-1.4.2.10)
[blackdown-jre-1.4.2.03] "Blackdown JRE 1.4.2.03" (/etc/env.d/java/20blackdown-jre-1.4.2.03)
[sun-jre-bin-1.5.0.06] "Sun JRE 1.5.0.06" (/etc/env.d/java/20sun-jre-bin-1.5.0.06) *
[blackdown-jdk-1.4.2.03] "Blackdown JDK 1.4.2.03" (/etc/env.d/java/20blackdown-jdk-1.4.2.03)

J'aurais bien voulu voire le pool en action, histoire de mieu cerné l'interet de la chose.

Si peut etre une autre chose.

Tu parle d'un exemple concret avec une connexion a une base Mysql, il n'y aurait pas moyen de l'avoir? personnellement, ca m'aurais aider a mieu comprendre.

Sinon, j'avoue que cette doc est bien faite, le code y etant toujours expliqué, de A a Z. :chinois:

@Bientot

lmarin

Modifié par lmarin

Posté(e)
  • Auteur

Salut lmarin !

Pour compiler et exécuter le code, il te faut Java5, comme expliqué dans le tout premier paragraphe de l'article. En effet, on utilise les énumérations et les génériques, qui sont propres à Java5.

I.1 Pré-requis

Cet article s'adresse à un public maîtrisant le langage Java. Une bonne connaissance de la version 5

est un plus.

La compilation et l'exécution du code source nécessitent la machine virtuelle Java5, disponible sur

le site de Sun Microsystems : http://java.sun.com/j2se/1.5.0/download.jsp

Je pense que sur ta machine, c'est Java 1.4 qui est utilisé par défaut (regarde ton path et la variable d'environnement JAVA_HOME). Essaie en spécifiant le chemin complet vers l'exécutable "java" de Java5.

Quant à mySQL, je ne vois pas de quoi tu parles, il n'y a aucune référence à mySQL dans l'article ?

Et pour ce qui est de voir le pool en action, on développe non seulement le pool, mais aussi tout l'environnement permettant de le tester (regarde la classe PoolTest et la classe Consumer : la première initialise le pool, la seconde l'utilise pour récupérer des ressources).

Posté(e)

Effectivement, tu parle pas de mySql, mais d'un exemple de pool pour un connxion a une base de donnée. :) ( Excuse moi Mysql est le premier a m'etre passeé par la tete ).

Pour le java 5, autant pour moi. :transpi:

Posté(e)

Dit, ca va te parraitre bete, mais tu le compil coment?

Je sais pas, je dois etre plus nié que je ne le pense....

j'arrete pas d'avoir des erruers circulaires?

:transpi:

Posté(e)
  • Auteur

Si <REP> est le répertoire que tu obtiens en décompressant les exemples...

Compilation :

cd <REP>/Pool
mkdir classes
javac -d classes src/croisier/pool/*.java

Lancement :

java -cp classes croisier.pool.PoolTest

L'autre solution est d'utiliser un IDE comme Eclipse ou NetBeans, gratuits tous les deux, et qui permettent de compiler et lancer facilement les exemples. Cela te permettra aussi de jouer un peu avec le code, ce que je recommande vivement pour bien en comprendre le fonctionnement.

  • 2 semaines après...
Posté(e)

J'ai commencé a le lire mais j'ai pas beaucoup le temps la donc je le lirai le we prochain et je mettrai mes commentaires (s'il y en a)mais le début part bien :iloveyou::transpi:

  • 3 semaines après...
Posté(e)

juste une note en passant, j'ai eu l'occasion d'utiliser un peu Javolution qui utilise ce genre de technique (pool d'objs).

Je n'ai lu que le début de l'article, je le lirai peu être en entier quand j'aurai un peu de temps.

  • 2 semaines après...
Posté(e)

Alors Morbid, t'es arrivé à la fin quand même ? :D

Pas trop hard ?

Si un peu trop hard ... j'y reviendrai quand je maitriserai mieux ^^

Le probleme c'est qu'a l'école c'est fini le java (apres c'est c/c++) donc je vais devoir essayer de progresser tout seul :D (mais la je suis en examen donc se sera pour apres :yes:) :francais:

Modifié par Morbid069

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.