OVH Cloud OVH Cloud

Java devient OPEN SOURCE !!!

325 réponses
Avatar
Prodejeu
Sun a finalement annoncé le passage prochain de son langage Java, en
Open Source.
L'hésitation porte à l'heure actuelle sur le type exact de licence, Sun
voulant garder la main sur le langage.
Quoiqu'il en soit le code de Java sera ouvert.

Cela va t-il sonner le glas pour les techno .NET ?

Sources :
http://www.zdnet.fr/actualites/informatique/0,39040745,39349899,00.htm
http://www.clubic.com/actualite-34885-comment-sun-rendra-t-il-java-open-source.html

10 réponses

Avatar
talon
Emmanuel Florac wrote:
Le Sun, 21 May 2006 21:26:05 +0200, Prodejeu a écrit :


Ouais c'est marrant, parce que moi c'est exactement l'inverse. Je trouve
la syntaxe de Java beaucoup moins verbeuse, que celle des langages qui
forcent à séparer les entêtes des corps (de classes, méthodes,
fonctions, ...). ;-)


C'est sûrr que c'est moins verbeux que l'assembleur, aussi, si on va par
là. Mais c'est très verbeux comparé aux autres langages de haut-niveau.




Prend l'exemple suivant:
http://penguin.ewu.edu/class/cscd326/KoffmanWolfgang/CH11/RedBlackTree.java
Est-ce que tu crois que c'est rééllement tellement plus verbeux que dans un
autre langage? Je crois que ça a l'air plus verbeux pour un Hello World!
mais ça devient à peu prés pareil que le reste dés que le programme est un
tout petit peu plus conséquent. Evidemment ça ne sera jamais aussi concis
que du Perl.


--

Michel TALON


Avatar
Remi THOMAS
Remi THOMAS wrote:

J'ai également précisé que je ne sais pas comment cela fonctionne dans la
JVM que je ne connais pas assez bien. Si quelqu'un peut préciser.


Java fourni plusieurs couche de sécurité, la première étant la
vérification à
la compilation (impossibilité d'utiliser des variables non
initalisée,...), la seconde
étant la vérification à l'exécution (vérification des classes au
chargement...), la troisième
étant l'API de sécurité qui permet de définir ce qu'un programme
java est autorisé à faire.

Exemple d'utilisation de l'API de sécurité :

public class SystemPropertyReader {

public static void main(String[] pArgs) {

try {
System.out.println("système d'exploitation
["+System.getProperty("os.name","inconnu")+"]");
System.out.println("n° répertoire home en
["+System.getProperty("user.home","inconnu")+"]");
} catch(Exception e) {
System.out.println("ERROR => "+e.toString());
}
}
}

Par défaut, les applications java ne dispose d'aucun gestionnaire de
sécurité, c'est
pourquoi l'exécution tel quel du code ci-dessus se terminera
normalement.

A contrario, si l'on rattache un SécurityManager à ce même programme
en l'exécutant via
un "java -Djava.security.manager SystemPropertyReader" , une
SecurityException sera
levée lors de la tentative de lecture de la propriété "user.home",
l'accès à celle-ci n'étant
pas autorisé dans le fichier de police (java.policy) par défaut.


Voilà, j'espère avoir plus où moins répondu à ta question.



Oui merci,
Je pense que tu peux ajouter la sécurité lors de l'exécution, par
exemple une exception est levée si tu veux aller au delà de la taille
d'un tableau.

La différence remarquable c'est l'équivalent du SecurityManager qui est
actif par défaut dans .NET. C'est pour cela qu'il n'a pas de nom.

Rémi


Avatar
Prodejeu

Ouais c'est marrant, parce que moi c'est exactement l'inverse. Je trouve
la syntaxe de Java beaucoup moins verbeuse, que celle des langages qui
forcent à séparer les entêtes des corps (de classes, méthodes,
fonctions, ...). ;-)


C'est sûrr que c'est moins verbeux que l'assembleur, aussi, si on va par
là. Mais c'est très verbeux comparé aux autres langages de haut-niveau.

En comparaison avec du Delphi, où comme en C/C++ chaque fonction/méthode

doit posséder une entête déclarée séparément du corps, et où la
déclaration d'un objet doit se faire indépendamment de son
instanciation, je trouve qu'il est possible de faire des programmes plus
court en Java.
Mais évidement comme le dit M.Talon, pour un Hello, World c'est pas le
mieux, puisque Java essaye d'être le plus objet possible.

C'est sûr qu'en Python un Hello, World c'est plus court :
print "Hello, World"


Avatar
seb666fr2
Emmanuel Florac wrote:

C'est sûrr que c'est moins verbeux que l'assembleur, aussi, si on va par
là. Mais c'est très verbeux comparé aux autres langages de haut-niv eau.


Avant de considérer un langage en fonction de sa (non) verbosité, tu
devrais
peut être prendre en considération les API standards qu'il fournit
parce que à
ce niveau là, que ce soit Java ou .NET, il n' y a pas photo, leurs API
sont d'une
richesse sans commune mesure.

Avatar
Emmanuel Florac
Le Mon, 22 May 2006 00:23:36 -0700, seb666fr2 a écrit :

que ce soit Java ou .NET, il n' y a pas photo, leurs API
sont d'une
richesse sans commune mesure.


Sans commune mesure avec quoi ? Les API dispo en C/C++? ou CPAN?

--
Ce qu'il y a d'enivrant dans le mauvais goût c'est le plaisir
aristocratique de déplaire.
C. Baudelaire.

Avatar
seb666fr2
Emmanuel Florac wrote:

que ce soit Java ou .NET, il n' y a pas photo, leurs API
sont d'une
richesse sans commune mesure.


Sans commune mesure avec quoi ? Les API dispo en C/C++? ou CPAN?


Je parle des *APIs standard* de n'importe quel langage.


Avatar
Stéphane Zuckerman
On Mon, 22 May 2006, wrote:


Emmanuel Florac wrote:

que ce soit Java ou .NET, il n' y a pas photo, leurs API
sont d'une
richesse sans commune mesure.


Sans commune mesure avec quoi ? Les API dispo en C/C++? ou CPAN?


Je parle des *APIs standard* de n'importe quel langage.



Perl vient fourni avec une pléthore de modules préinstallés. Au moins
autant qu'en Java (si si). Et en plus, pour installer de nouveaux modules,
j'ai rarement vu aussi simple que CPAN.

--
"Je deteste les ordinateurs : ils font toujours ce que je dis, jamais ce
que je veux !"
"The obvious mathematical breakthrough would be development of an easy
way to factor large prime numbers." (Bill Gates, The Road Ahead)



Avatar
talon
wrote:

Emmanuel Florac wrote:

C'est sûrr que c'est moins verbeux que l'assembleur, aussi, si on va par
là. Mais c'est très verbeux comparé aux autres langages de haut-niveau.


Avant de considérer un langage en fonction de sa (non) verbosité, tu
devrais
peut être prendre en considération les API standards qu'il fournit
parce que à
ce niveau là, que ce soit Java ou .NET, il n' y a pas photo, leurs API
sont d'une
richesse sans commune mesure.


Emmanuel aime bien perl, et la richesse des bibliothèques de perl est trés
grande aussi. Je me garderais bien de dire laquelle est la plus complète.





Avatar
talon
wrote:

Emmanuel Florac wrote:

que ce soit Java ou .NET, il n' y a pas photo, leurs API
sont d'une
richesse sans commune mesure.


Sans commune mesure avec quoi ? Les API dispo en C/C++? ou CPAN?


Je parle des *APIs standard* de n'importe quel langage.


Ce qui ne veut absolument rien dire. Il suffit de dire que tout CPAN est
standard dans perl.






Avatar
seb666fr2
Les modules dont tu parles sont des *modules tiers* ce qui n'a
rien à voir avec une *API standard*.