Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1367 connectés 

 


 Mot :   Pseudo :  
 
 Page :   1  2  3  4  5
Page Suivante
Auteur Sujet :

Jeune de 16 ans veut apprendre Java !

n°1500013
0x90
Posté le 07-01-2007 à 16:21:23  profilanswer
 

Reprise du message précédent :

masklinn a écrit :


Printf c'est du C, pas du C++, ça revient à ce que je disais: faire du C++ sans POO, c'est pas du C++ orienté objet.


[:aloy]


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
mood
Publicité
Posté le 07-01-2007 à 16:21:23  profilanswer
 

n°1500014
masklinn
í dag viðrar vel til loftárása
Posté le 07-01-2007 à 16:34:17  profilanswer
 

Mickey551 a écrit :

suis pas d'accord sur grand chose ;
 
si l'on modifie ton code de la maniere suivante;
 

Code :
  1. import java.lang.Integer;
  2. public class Test {
  3.     public static void function(int foo, Integer bar) {
  4.         foo = 3;
  5.         bar = 5;
  6.     }
  7.     public static void main(String args[]) {
  8.         int foo = 0;
  9.         Integer bar = new Integer(0);
  10.         System.out.println("Pre function, foo = " + foo + ", bar = " + bar.intValue());
  11.         function(foo, bar);
  12.         System.out.println("Post function, foo = " + foo + ", bar = " + bar.intValue());
  13.     }
  14. }


le nouvel Output:

$ java Test
Pre function, foo = 0, bar = 0
Post function, foo = 0, bar = 5


 
avec une notion de surcharge au passage.


Toujours pas, non

$ cat Test.java
import java.lang.Integer;
public class Test {
                public static void function(int foo, Integer bar) {                    
                                foo = 3;
                                bar = 5;
                                System.out.println("In function, foo = " + foo + ", bar = " + bar.intValue());
                }
                public static void main(String args[]) {
                                int foo = 0;
                                Integer bar = new Integer(0);
                                System.out.println("Pre function, foo = " + foo + ", bar = " + bar.intValue());
                                function(foo, bar);
                                System.out.println("Post function, foo = " + foo + ", bar = " + bar.intValue());
                }
}
 
$ javac Test.java
$ java Test
Pre function, foo = 0, bar = 0
In function, foo = 3, bar = 5
Post function, foo = 0, bar = 0


 
[:dawak]
 

Mickey551 a écrit :

printf ça marche en [...] c++


Heuu oui et? Les compilos C++ sont dans l'obligation de pouvoir compiler du C, il n'est donc pas étonnant que tout ce qui marche en C marche en C++.
 
Tu peux aussi utiliser des malloc et des casts à la C au milieu d'un programme "C++" au lieu d'utiliser des new et les casts C++, ça fonctionne.
 
Et ça en fait la encore un immonde hybride de C et de C++, pas du C++


Mouais bon ok, mais on est pas non plus obligé de faire du java orienté objet :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1500015
zapan666
Tout est relatif
Posté le 07-01-2007 à 16:37:58  profilanswer
 

Mickey551 a écrit :


si l'on modifie ton code de la maniere suivante;


tu as essayé ?  
 

Citation :


run:
Pre function, foo = 0, bar = 0
Post function, foo = 0, bar = 0

BUILD SUCCESSFUL (total time: 1 second)
 


n°1500016
Mickey551
Posté le 07-01-2007 à 16:38:00  profilanswer
 

masklinn a écrit :

Toujours pas, non


c'est bien la peine de [:dawak] pour mettre [:dawak]  
 
compile, teste et tu veras bien ce que cela donne  :pfff:

n°1500018
masklinn
í dag viðrar vel til loftárása
Posté le 07-01-2007 à 16:41:28  profilanswer
 

Mickey551 a écrit :

c'est bien la peine de [:dawak] pour mettre [:dawak]

 

compile, teste et tu veras bien ce que cela donne  :pfff:


T'es vraiment très stupide comme gars, je t'ai posé ton code (modifié uniquement pour ajouter une trâce au sein même de la fonction), sa compilation et son lancement juste en dessous, directement depuis mon shell (en enlevant juste mon user et mon nom de machine naturellement) et les resultats sont cohérents avec mes déclarations et vont à l'encontre de tes bêtises.

 

De même zapan confirme que tu racontes n'importe quoi.

 

Je vais donc te retourner ton conseil: compile et teste la prochaine fois que tu racontes quelque chose, ça t'évitera de passer pour un âne.

Message cité 1 fois
Message édité par masklinn le 07-01-2007 à 16:42:05

---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1500020
0x90
Posté le 07-01-2007 à 16:43:47  profilanswer
 

masklinn a écrit :


Heuu oui et? Les compilos C++ sont dans l'obligation de pouvoir compiler du C, il n'est donc pas étonnant que tout ce qui marche en C marche en C++.


Ah ? même avec des variables appelées this ? même en utilisant restrict ou les VLA ? même si on fait a = b//*lapin*/2; en C89 ? :D

masklinn a écrit :


Mouais bon ok, mais on est pas non plus obligé de faire du java orienté objet :o


Sauf qu'utiliser le C++ plutot que le C pour faire du pur impératif peut-être quand même "utile", genre si on veut de l'overload ou des ptites choses du genre.

masklinn a écrit :


Tu peux aussi utiliser des malloc et des casts à la C au milieu d'un programme "C++" au lieu d'utiliser des new et les casts C++, ça fonctionne.
 
Et ça en fait la encore un immonde hybride de C et de C++, pas du C++


:jap: Le mélange des 2 styles au sein d'un même programme c'est immonde par contre.
 


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
n°1500021
masklinn
í dag viðrar vel til loftárása
Posté le 07-01-2007 à 16:50:29  profilanswer
 

0x90 a écrit :

Sauf qu'utiliser le C++ plutot que le C pour faire du pur impératif peut-être quand même "utile", genre si on veut de l'overload ou des ptites choses du genre.


Je dis pas le contraire hein, juste que la déclaration "il faut connaître les notions de classes et de POO pour faire du Java alors qu'on en a pas besoin pour faire du C++" c'est n'importe quoi, soit ce n'est nécessaire dans aucun des deux (parce que déclarer une classe unique avec un public static void main et mettre plein de fonctions tout autour j'appelle pas ça connaître les notions de classe et de POO) soit on remonte un peu les standards, on considère que "faire du C++" et "faire du Java" c'est faire de la prog avec un minimum de qualité sur de gros programmes et pas de la bouillie ou des petits trucs, et dans ce cas la POO va être peu ou prou nécessaire dans les deux.
 
Plus en Java qu'en C++, mais du C++ impératif pur ça dégénère rapidement.


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1500022
nyrk
Posté le 07-01-2007 à 16:53:00  profilanswer
 

masklinn a écrit :


Plus en Java qu'en C++, mais du C++ impératif pur ça dégénère rapidement.


n°1500024
masklinn
í dag viðrar vel til loftárása
Posté le 07-01-2007 à 16:56:05  profilanswer
 


Oh le vilain :o


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1500025
0x90
Posté le 07-01-2007 à 16:57:50  profilanswer
 

masklinn a écrit :

Je dis pas le contraire hein, juste que la déclaration "il faut connaître les notions de classes et de POO pour faire du Java alors qu'on en a pas besoin pour faire du C++" c'est n'importe quoi, soit ce n'est nécessaire dans aucun des deux (parce que déclarer une classe unique avec un public static void main et mettre plein de fonctions tout autour j'appelle pas ça connaître les notions de classe et de POO) soit on remonte un peu les standards, on considère que "faire du C++" et "faire du Java" c'est faire de la prog avec un minimum de qualité sur de gros programmes et pas de la bouillie ou des petits trucs, et dans ce cas la POO va être peu ou prou nécessaire dans les deux.
 
Plus en Java qu'en C++, mais du C++ impératif pur ça dégénère rapidement.


 
Spa faux [:beecher]


---------------
Me: Django Localization, Yogo Puzzle, Chrome Grapher, C++ Signals, Brainf*ck.
mood
Publicité
Posté le 07-01-2007 à 16:57:50  profilanswer
 

n°1500028
sircam
I Like Trains
Posté le 07-01-2007 à 17:07:30  profilanswer
 

Voici qui cloture le troll du vendredi; merci à tous pour votre participation.
 
:jap:

n°1500030
Mickey551
Posté le 07-01-2007 à 17:09:58  profilanswer
 

masklinn a écrit :

T'es vraiment très stupide comme gars, je t'ai posé ton code (modifié uniquement pour ajouter une trâce au sein même de la fonction), sa compilation et son lancement juste en dessous, directement depuis mon shell (en enlevant juste mon user et mon nom de machine naturellement) et les resultats sont cohérents avec mes déclarations et vont à l'encontre de tes bêtises.
 
De même zapan confirme que tu racontes n'importe quoi.
 
Je vais donc te retourner ton conseil: compile et teste la prochaine fois que tu racontes quelque chose, ça t'évitera de passer pour un âne.


 
mouai, ok, tu as raison, c'est bien une reference, mais a ma decharge, j'ai l'habitude d'utiliser en operande des objets, dont je recupere les menbres, je n'ai pas ce genre de pb  
 
merci pour la leçon  :o  
 
cela ne retire pas le fait que connaitre le C++ evite ce genre de leçon (exept for me, of course !)

n°1500034
masklinn
í dag viðrar vel til loftárása
Posté le 07-01-2007 à 17:21:54  profilanswer
 

Mickey551 a écrit :

cela ne retire pas le fait que connaitre le C++ evite ce genre de leçon (exept for me, of course !)


Mais de quelle leçon tu parles? Les références Java n'ont en rien la sémantique des références C++, bien au contraire dans ce cas précis la connaissance du C++ et du fonctionnement des références dans ce langage va gêner la compréhension des références Java, comme tu l'as montré.


---------------
Stick a parrot in a Call of Duty lobby, and you're gonna get a racist parrot. — Cody
n°1500042
Mickey551
Posté le 07-01-2007 à 18:02:50  profilanswer
 

ça vas , j'ai bien vus que tu connaissait ta leçon !
 
si on m'avais dit "passe une référence à un objet, par valeur" j'aurrais tout de suite compris en bon prog C++. :O


Message édité par Mickey551 le 07-01-2007 à 18:03:19
n°1500188
Chaos Inte​stinal
Posté le 08-01-2007 à 10:13:48  profilanswer
 

Mickey551 a écrit :

alors 1) les pointeur en java ça existe, il n'y a même pratiquement que ça, c'est pour ça que l'on utilise des new, sauf pour les types simples comme les int, ou l'on utilise uniquement le contenus de la variable, et pour expliquer pourquoi un "void fonction(int i, Integer I) va modifier le contenu du parametre passé en operande de l'integer mais pas de l'int a quelqu'un qui ne connais pas le principe des pointeurs, une solution; lui aprendre ce qu'est qu'un pointeur.

 

Ouais, ça existe les pointeurs, mais le programmeur n'y est jamais confronté. Quant aux références, elles n'ont strictement rien à voir avec des pointeurs. Une référence désigne un objet, un pointeur une adresse mémoire. Ca fait une sacrée différence de sémantique quand même...

 
Citation :

2) quand je dit classe, c'est de la prog objet dont je veut parler, en C++ on peut passer doucement d'un printf jesait pas quoi, a la creation d'un classe qui implemente le printf, et en faire apres des heritages, et des polymorphisme et tt le reste, alors qu'en java, tu n,e fait rien tabt que tu ne sait pas faire un constructeur.

 
Code :
  1. class Spam {
  2.    public static void main (String[] args){
  3.     System.out.println("Eggs" );
  4.    }
  5. }
 

Figure 1 : trouvez Charlie le constructeur [:zaib3k]

 
Citation :

3) si l'on connais le C++, je passage a java est quasi imediat, pour le contraire, ben bon courage, donc connaitre le C++ apporte bc.


Non, c'est pas quasi immédiat. Comme l'a dit Masklinn, le problème des références qui ne sont pas les mêmes est gênant (je me souviens que ça a été un des problèmes que j'ai rencontrés). Et avec les versions pré 1.5 de Java, l'absence de templating en Java pouvait être déroutante pour un développeur C++. Et y'a encore beaucoup de choses comme ça.

 

Dire que passer de Java à C++ est plus difficile ne signifie pas qu'avoir fait du C++ aide particulièrement quand on commence à faire du Java. Ah si, on connaît certains mots clé. Comme static [:god]

 


Message édité par Chaos Intestinal le 08-01-2007 à 10:13:57
mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3  4  5
Page Suivante

Aller à :
Ajouter une réponse
 

Sujets relatifs
Mini débat, quelle implementation JAVA de serveur ftp preferez vous ?Recherche Enseignant Java pour Cours Particulier
Coder Java Sous MacJava Mysql besoin d'aide
Communication Client Java avec une Servlet via HTTPS / SSLPositionner une variable d'environnement Windows depuis Java ?
Java et LDAP iPlanetDifférence entre les HashSet et les LinkedHashSet dans l'API Java
[jedit] compiler .java ok, executer comment faire ?[C#] Apprendre ce language, oui, mais où ?
Plus de sujets relatifs à : Jeune de 16 ans veut apprendre Java !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR