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

 


 Mot :   Pseudo :  
 
 Page :   1  2  3
Auteur Sujet :

Quel est l'intéret d'apprendre le C avant le C++ ?

n°101107
Kristoph
Posté le 15-02-2002 à 23:43:28  profilanswer
 

Reprise du message précédent :

Citation :

Pour la question de la portabilité je voulais en fait sous-entendre des programmes utilisables sur des plateformes variées sans recompilation. Connaissez-vous des exemples de langages qui font ça excepté Java?


 
Il y a le Python qui fait ca et peut-etre aussi le Ruby ( ils se ressemblent tellement ces 2 langages parait-il :) )
 
Enfin, le Perl aussi si je ne me trompe pas.

 

[jfdsdjhfuetppo]--Message édité par Kristoph--[/jfdsdjhfuetppo]

mood
Publicité
Posté le 15-02-2002 à 23:43:28  profilanswer
 

n°101111
Slyde
Wizard of the Coast
Posté le 15-02-2002 à 23:58:27  profilanswer
 

Java j'ai commencé par ça, c'est beaucoup plus facile à ecrire que du C.
 
J'ai commencé le C comme une brute en tentant de coder un filtre à lignes violettes pour Vdub alors que je ne savais même pas faire un déréférencement et j'avais quedalle de doc, j'en ai trop chier comme pas possible pendant longtemps, j'ai bouffé les docs sur le sujet, souvent peu exhaustives, puis ca a commencé à rentrer.
 
En C on se ramasse beaucoup plus facilement la gueule lorsqu'on manipule du pointeur et qu'on gère de la mémoire. Putain le nombre de violations d'accès de de segfault que j'ai du faire :D
 
Avantage du C++ : il simplifie vachement les choses avec le passage de valeur par référence, ainsi qu'avec l'alloc dynamique à la Java. Le problème c'est qu'on prends souvent de mauvaises habitudes avec le C parce que certaines choses ne sont plus permises.
 
pour pas mal d'applications comme le domaine que j'apprecie je suis toutefois obligé de faire du "batard" C/C++.
 
Pour en revenir au Java, pour l'instant j'ai pas vu beaucoup (pour être honnête, presque aucune) application assez grosse programmée en Java offrir des perfs et une interface descente. Même Forte est un monstre de lenteur sur mon Athlon 1Ghz, à coté VS6 tourne 2^15 fois plus vite :lol:
 
Sinon pour faire admin système, bouffe du shell et du perl. Après si t'a des envies de PHP ca ira tout seule, Perl et PHP sont très proches.


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101112
Slyde
Wizard of the Coast
Posté le 15-02-2002 à 23:59:16  profilanswer
 

concernant mon filtre maintenant je m'attaque à l'optimisation à coup de mmx, chui très mazo sans doute car l'asm me plait :D :lol:


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101114
MC
retour à la raison
Posté le 16-02-2002 à 00:00:08  profilanswer
 

Python est très bien pour apprendre a programmer: il est concis, objet, réellement portable (comme java, c du bytecode).
 
Certe il a des pb de perfs (a cause du typage dynamique). Mais on peux même le faire tourner dans une JVM avec jython.
 
Pour ce qui est des portions critiques, il suffit de les faire en C/C++ etd'utiliser un wrapper comme SWIG qui est multiplateforme.
 
Sous windows le C++ tu n'y coupera pas. Par contre dans d'autres cas (linux, embedded) le C s'impose.

n°101115
Jubijub
Parce que je le VD bien
Posté le 16-02-2002 à 00:02:29  profilanswer
 

mouhais, c assez tranché en fait comme réponses...
 
au fait, pkoi on peut pas faire du super bas niveau avec du C++ ?...d'après ce que vous dites, c surtout du C qui remplit cet office...


---------------
Jubi Photos : Flickr - 500px
n°101118
neerd
Posté le 16-02-2002 à 00:15:26  profilanswer
 

Deepcore a écrit a écrit :

 
 
J'aime bien le Java (je m'y suis mis depuis peu), mais je me suis mal exprimé: en Java tu as une synthaxe proche du C, donc assez permissive. En ST, t'as pas de typage à faire (par ex) et pourtant, t'es quasi obligé de faire du code impécable (et ce facilement).  




 
Java une syntaxe permissive??
On doit pas parler du même Java. Java est un langage assez strict et surtt très typé.
 
Sinon pour la préférence C/C++:
Je pense que le C++ c mieux... (bon je vais mettre qq arguments qd mm  ;) )
En fait beaucoup de gens considère qu'il font du C++ à partir du moment où ils utilisent quelques librairies objets (iostream et le célèbre cout me semble l'exemple le plus frappant), mais ne fait mm s'il agit effectivement de C++, le langage reste procédurale disons pour faire simple que ce n'est que du C avec des atours objets.
Par contre si la personne développe un vrai prog objet avec constructeurs,destructeurs,héritage.... la tu touches au "vrai" C++.
 
Voila vous voyez ptet pas où je veux en venir mais bon disont que le C++ de base me parait le plus simple et le plus pratique à apprendre et il reprend tt à fait l'algorithmique procédurale "standard".
Par oppposition au C++ "avancé" qui fait lui appel à des notions d'algorithmique objet.

n°101119
Jubijub
Parce que je le VD bien
Posté le 16-02-2002 à 00:21:02  profilanswer
 

On peut faire des drvs en C++ ? personne m'a répondu...


---------------
Jubi Photos : Flickr - 500px
n°101146
wpk
Posté le 16-02-2002 à 10:43:36  profilanswer
 

on peut tres bien faire des drivers en c++. Beaucoup diront qu'ils preferent le C parceque plus rapide. En realité, le C++ n'est pas bcp plus lent que le C, le maintien des perfs ca a  meme ete je pense un des points principaux du cahier de charge du langage. Par contre, la complexité des drivers n'a rien à voir avec la complexité d'une grosse appli industrielle. Un driver si tu veux, s'apparente plus à un projet d'etudiant  :D . Du coup, au lieu de sortir l'artillerie lourde et une architecture objet complexe, on prefere (car ca va plus vite à analyser et à coder) utiliser plutot du C.

n°101207
benou
Posté le 16-02-2002 à 15:04:22  profilanswer
 

bof. moi ce que je troube imbitable en C & C++, c'est le compilo : les messages d'erreur à la compilation sont souvent incompréhensibles !!!
ex : tu peux avoir un fichir qui compile pas parce que t'as oublié un ';' dans un autre fichier ... http://forum.hardware.fr/icones/icon13.gif
 
avec le Java, y a pas ce problème et c'est aussi ca qui fait toute sa simplicité !


---------------
ma vie, mon oeuvre - HomePlayer
n°101228
Jubijub
Parce que je le VD bien
Posté le 16-02-2002 à 15:37:30  profilanswer
 

perso je préfère....
 
un des trucs qui me fait peur avec le C++, c que ca  a l'air vachement libre...tu peux faire des trucs théoriquement interdit, et ca passe...
 
en Delphi, t prévenu à la compil


---------------
Jubi Photos : Flickr - 500px
mood
Publicité
Posté le 16-02-2002 à 15:37:30  profilanswer
 

n°101274
chrisbk
-
Posté le 16-02-2002 à 17:30:49  profilanswer
 

slyde a écrit a écrit :

concernant mon filtre maintenant je m'attaque à l'optimisation à coup de mmx, chui très mazo sans doute car l'asm me plait :D :lol:  




 
 
ah, c clair, c rigolo d'optimiser en asm, histoire de battre le compilo :D  
 
mais bon, ca prends un sacré bout de tps .... et faut vraiment le faire a la fin :D

n°101299
Slyde
Wizard of the Coast
Posté le 16-02-2002 à 20:09:09  profilanswer
 

chrisbk a écrit a écrit :

 
 
 
ah, c clair, c rigolo d'optimiser en asm, histoire de battre le compilo :D  
 
mais bon, ca prends un sacré bout de tps .... et faut vraiment le faire a la fin :D  




 
bah ca y est, je suis rendu à la fin.
 
Par contre la doc IA-32 d'intel me calme, 422 pages  :eek2:  
 
72 chez AMD  :D
 
On va commencer par le 3Dnow! :lol:


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101301
Bruce
Music 4 your ears!
Posté le 16-02-2002 à 20:12:11  profilanswer
 

Sorry pour l'incurtion, je virre le message dès qu'il est passé...
 
Slyde !!! Svp, répond moi pour mon pv...


---------------
A+++ Bruce - http://www.bheller.com
n°101305
Jubijub
Parce que je le VD bien
Posté le 16-02-2002 à 20:23:24  profilanswer
 

Pas grave :D
 
-->donc si je résume bien, l'idéal, c d'apprendre le C++ d'abord pour apprendre une bonne habitude de prog objet, et éventuellement, de faire du C ensuite pour certaines appli


---------------
Jubi Photos : Flickr - 500px
n°101330
Slyde
Wizard of the Coast
Posté le 16-02-2002 à 21:49:01  profilanswer
 

bah comme on l'a dit, t'a des choses qui diffèrent ou surtout marchent à l'envers entre le C et le C++. De plus le C est moins permissif à certains aspects (déclaration de variables avant le code, etc..)
 
Donc pour éviter de prendre de mauvaises habitudes, commence par le C++.
 
de toute façon tu va te rendre compte vite fait que le problème est encore divisé, la syntaxe d'un coté, le concept objet de l'autre.


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101331
Slyde
Wizard of the Coast
Posté le 16-02-2002 à 21:50:42  profilanswer
 

benou a écrit a écrit :

bof. moi ce que je troube imbitable en C & C++, c'est le compilo : les messages d'erreur à la compilation sont souvent incompréhensibles !!!
ex : tu peux avoir un fichir qui compile pas parce que t'as oublié un ';' dans un autre fichier ... http://forum.hardware.fr/icones/icon13.gif
 
avec le Java, y a pas ce problème et c'est aussi ca qui fait toute sa simplicité !  




 
bwah "parse error" de g++ on s'y fait vite :lol:
 
VC++ 6 est plus parlant (fait chier j'ai d/l la version française du SP5 alors que j'ai VC US, mdr chui bon pour 128 Mo à nouveau...)


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101334
Slyde
Wizard of the Coast
Posté le 16-02-2002 à 22:01:16  profilanswer
 

Bruce a écrit a écrit :

Sorry pour l'incurtion, je virre le message dès qu'il est passé...
 
Slyde !!! Svp, répond moi pour mon pv...  




 
jprends aucune décision pendant mes "vacances" (vont pas être triste cette semaine, mdr) sur ce sujet.
 
Je décompraiiiisseuh entre deux lignes de code, et putain ca fait du bien des bon massacres à UT :D


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101343
Bruce
Music 4 your ears!
Posté le 16-02-2002 à 22:29:43  profilanswer
 

Merci :)


---------------
A+++ Bruce - http://www.bheller.com
n°101348
MC
retour à la raison
Posté le 16-02-2002 à 22:50:48  profilanswer
 

Jubijub a écrit a écrit :

On peut faire des drvs en C++ ? personne m'a répondu...  




 
Oui mais il y a peu d'interet (un driver est rarement avec une interface objet). Perso j'ai jamais vu un drv en C++, mais j'ai fait que de l'embedded et du linux.
 
De toute façon, si tu aprend le C++, tu n'auras que peu de mal a passer au C. Mais pour un admin système, le C/C++ ne te servira a rien.

n°101351
Da True Cl​ouseau
It's good to be true
Posté le 16-02-2002 à 22:57:36  profilanswer
 

MacOS X utilise le c++ pour le developpement de ses drivers.
Voir l'I/O Kit :
http://developer.apple.com/techpub [...] index.html

n°101353
wpk
Posté le 16-02-2002 à 23:01:45  profilanswer
 

:jap:  
je ne savais pas que les drivers du MacOS X etaient ecrits en c++
 
petit extrait d'une de leurs pages pour plaider en faveur du c++:
 
The I/O Kit's object-oriented programming model is implemented in a restricted subset of C++. Object-orientation just in itself is an advantage in driver development because of the code reusability it fosters. Once you are familiar with the I/O Kit, you can write device drivers much more quickly and efficiently than you can using a procedural model. In addition, code reusability decreases the memory footprint of drivers; drivers ported from Mac OS 9, for example, have been up to 75% smaller in Mac OS X.

n°101358
Slyde
Wizard of the Coast
Posté le 16-02-2002 à 23:36:45  profilanswer
 

Bruce a écrit a écrit :

Merci :)  




 
hum à ta place j'attendrais la réponse avant de dire merci, j'ai rien décidé pour le moment et je suis pas de 'meilleure humeur' concernant le problème.


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101362
Bruce
Music 4 your ears!
Posté le 17-02-2002 à 00:12:44  profilanswer
 

slyde a écrit a écrit :

 
 
hum à ta place j'attendrais la réponse avant de dire merci, j'ai rien décidé pour le moment et je suis pas de 'meilleure humeur' concernant le problème.  




 
Heu je ne me réjouit pas d'avance ou quoi que ce soit... A la limite si tu as un peu de temps quand tu t'est décidé si on pouvais causer un peu sur icq ou en irc...
 
(P.S. heu... si on lachais le thread là ? parceque on polue un chouilla :D)


---------------
A+++ Bruce - http://www.bheller.com
n°101366
MD le boss​e
Si je pouvais changer
Posté le 17-02-2002 à 00:22:49  profilanswer
 

Moi j'ai commencé par le php et ensuite j'ai fait du C++.  
Je suis encore vivant...
@++

n°101374
kvl
Posté le 17-02-2002 à 00:51:31  profilanswer
 

moi j'ai fait du C avant du C++ et je trouve que c une bonne formule ... Stroustrup a fait la meme chose :) ...

n°101385
Jubijub
Parce que je le VD bien
Posté le 17-02-2002 à 05:29:02  profilanswer
 

:D


---------------
Jubi Photos : Flickr - 500px
n°101389
Slyde
Wizard of the Coast
Posté le 17-02-2002 à 09:30:53  profilanswer
 

Jubi en gros fait ce que tu veux.
 
N'empèche que MC à raison, le C/C++ ne te servira à rien pour faire admin système, le shell et perl est bien plus utile.


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101408
chrisbk
-
Posté le 17-02-2002 à 11:32:08  profilanswer
 

slyde a écrit a écrit :

 
 
bah ca y est, je suis rendu à la fin.
 
Par contre la doc IA-32 d'intel me calme, 422 pages  :eek2:  
 
72 chez AMD  :D
 
On va commencer par le 3Dnow! :lol:  




 
ye, j'aime bien le 3dnow, c facile a mettre en oeuvre et ca aide encore pas trop mal
 
(hint : si tu bosses sur des gros tableaux jete un oeil sur prefetch ;) )

n°101411
Slyde
Wizard of the Coast
Posté le 17-02-2002 à 11:41:03  profilanswer
 

Putain il y a des instructions carrement gores en 3Dnow!ext !  :eek2:  
 
Avec les PAVGB et autres PAVGW il y a trop moyen de faire des deinterlacer hyper speed !!!
 
Houuu je sens que ca va me plaire beaucoup cette histoire :D


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101463
Jubijub
Parce que je le VD bien
Posté le 17-02-2002 à 16:05:23  profilanswer
 

slyde a écrit a écrit :

Jubi en gros fait ce que tu veux.
 
N'empèche que MC à raison, le C/C++ ne te servira à rien pour faire admin système, le shell et perl est bien plus utile.  




 
t'entends quoi par shell ? du script en ligne de commande ?


---------------
Jubi Photos : Flickr - 500px
n°101464
Da True Cl​ouseau
It's good to be true
Posté le 17-02-2002 à 16:08:30  profilanswer
 

Jubijub a écrit a écrit :

 
 
t'entends quoi par shell ? du script en ligne de commande ?  




Oui.
Les admins Unix (et même NT) en sont très friands. Ils adorent Perl ou Python.

n°101467
Jubijub
Parce que je le VD bien
Posté le 17-02-2002 à 16:12:19  profilanswer
 

je connais le principe, pour avoir scripté mon fw sur ma RH :D ...
 
c évident que c nécessaire :D


---------------
Jubi Photos : Flickr - 500px
n°101542
sylphe
Posté le 17-02-2002 à 20:35:22  profilanswer
 

Salut,
 
Je suis desole mais je n'ai pas eu le temps de lire les deux pages, pourtant dans ce que j'ai lu je n'ai vu personne te poser certaines questions importantes : quel est ton projet ? dans quel contexte ? quels sont tes acquis ?
En effet, si tu es etudiant ca n'est pas pareil que si tu es en formation continue ou autre, si c'est juste pour ta culture personnelle ou si tu as un objectif professionel, si tu es autodidact ou non, si tu sais programme deja un peu  dans un langage ou si tu es completement neophyte, etc ...
 
D'autre part, je pense qu'on peut prendre de mauvaises habitudes dans n'importe quel langage et donc ce n'est pas une bonne raison  pour en eliminer un deux dans de ton processus d'apprentissage. Dans ce processus il faut voir d'ou tu part, ou tu veux aller et comment tu vas/veux/peux le faire.
D'ailleurs les mauvaises habitudes de travail peuvent varier d'un groupe de travail a un autre dans une certaine mesure.
Seulement dans une certaine mesure car certaines mauvaises habitudes sont inacceptables partout ! :)
Les arguments concernant la taille du programme/projet ne sont pas plus fondes en effet la aussi cela depend des methodes de travail et de l'environnement, linux en est l'exemple : on peut tres bien avoir un projet enorme en C !
 
Si tu es neophyte et que tu as du temps pour apprendre,
commence par etudier un peu l'algorithmique c'est indispensable;
la programmation n'est que la mise en pratique de l'algorithmique, et cette mise en pratique peut se faire dans n'importe quel langage (ou presque), certains offrant plus de facilites que d'autres pour implementer certains concepts.
Par exemple, on peut faire de la programmation orientee objet en C (d'ailleurs a l'origine le C++ etait d'abord traduit automatiquement en C avant d'etre compile)  mais c'est plus long et plus difficile que de le faire directement en C++.
Mais la programmation orientee n'est qu'une methode de programmation (pour simplifier) et elle n'est pas indispensable par contre elle facilite grandement la vie pour plein de bonnes et de mauvaises raisons dont ce n'est pas l'endroit pour debattre.
 
Un point essentiel dans la reflexion que tu dois avoir avant de choisir ce que tu vas faire, c'est de faire le point sur ta rigueur et de tes methodes de travail. En effet tu peux tres bien apprendre les deux dans l'ordre que tu veux ou volontairement en omettre un; mais si tu apprends les deux seras tu capable de bien les differencier ? Evidemment, plus tu auras d'experience et de rigueur plus il sera facile pour toi d'y arriver. Ensuite peux-tu changer facilement tes habitudes ?
 
Il est evident que le C represente un ensemble de connaissances plus restreint que celui du C++, d'ailleurs le premier est quasiment inclus dans le second.
Donc si tu es rigoureux et flexible : a mon avis il n'y a aucun inconvenient a commencer par le C sinon commence par le C++
(Dans le cas ou ton unique objectif est d'apprendre le C++)
 
En fait il y a encore beaucoup a dire mais je dois y aller ...
 
A+
 
PS: Desole c'est un peu long :)
PPS: Desole pour les nombreuses simplifications.
PPPS: Le C n'est pas en train de disparaitre, d'autres langage sont biens plus menaces :)

 

[jfdsdjhfuetppo]--Message édité par sylphe--[/jfdsdjhfuetppo]

n°101548
Jubijub
Parce que je le VD bien
Posté le 17-02-2002 à 20:45:28  profilanswer
 

-->ben je suis étudiant dans une fac d'administration des entreprises, et mon objectif est d'etre administrateur réseau, ce que permettra ma formation en DESS...
 
Je v répondre tt de suite : g pas fait MIAGE parce que j'ai pas de bac S, et que j'étais très mauvais en maths à l'époque...
 
Par ailleurs, ce DESS recrute soit des maitrises AES spé info rézo, soit des maitrises MIAGE...
 
J'ai 2-3 notions de pascal et de basic...tt ce qui n'est pas objet en fait...je suis en train d'apprendre le concept de pointeur, et le concept de classe et tt ce qui s'y rattache...
 
Le c++ et le delphi, c pour ma culture perso...mais l'idée, c que les concepts sont les mêmes...donc si tu sais programmer dans 1, à priori tu pourras apprendre assez facilement un autre...


---------------
Jubi Photos : Flickr - 500px
n°101555
LeGreg
Posté le 17-02-2002 à 21:01:27  profilanswer
 

C'est une idee assez repandue que les
langages sont interchangeables
mais je nuancerai ca..
Certes, une fois qu'on a connaissance
des concepts de base d'un langage
on passe plus facilement a un langage
similaire
par contre il existe une vraie expertise
dans tous les langages
et cette expertise (acquise par des annees
d'experience) ne peut etre remise en cause
par des gens ayant appris l'algorithmique
sur un papier.
Mais bon si tu debutes, c'est un peu tot pour
parler d'expertise, effectivement les bases
de la programmation peuvent etre apprises
dans n'importe quelle langage
une readaptation etant necessaire pour passer
d'un langage fonctionnel a un langage objet
ou a un langage temps reel.
C'est comme pour les langues etrangeres
il y a des gens polyglottes assez facilement
et qui trouvent que l'espagnol et l'italien
sont suffisamment proches
et d'autres qui ne pourront apprendre qu'une
seule langue dans toute leur vie, ca n'est
franchement pas une tare et ca n'empeche
pas de trouver du boulot (!).
L'avantage du C et du C++ c'est que tu n'as
pas vraiment besoin d'apprendre le C separement
sauf si tu veux connaitre les specificites
de l'ANSI C pour faire de la programmation
systeme UNIX par exemple (et les admins systemes
ne sont pas les gens qui font la programmation
systeme).
Mais l'inconvenient de se lancer
dans le C++ pour un debutant  
c'est que c'est un langage assez complexe
dans tous ses aspects, alors que la reference
du C fait 200 pages en detaillant
tout suffisamment bien.
 
A+
LEGREG

n°101599
Slyde
Wizard of the Coast
Posté le 17-02-2002 à 23:14:26  profilanswer
 

Le C se distingue surtout à mon avis par la rigueur qui doit être de mise sinon c'est segfault. Mais je ne pense pas que c'est un langage plus compliqué qu'un autre.
 
sylphe met bien en avant le veritable problème, celui de la rédaction des algos qu'on devrait toujours faire sur du papier avec un crayon, croyez moi c'est 100x plus efficace que de faire ça devant sa machine.


---------------
Le topic du QLRR et FIRE - Knowledge is power. Power corrupts. Study hard, become evil.
n°101621
R@NNIS
Tout est possible ou presque.
Posté le 17-02-2002 à 23:49:09  profilanswer
 

C / perl / awk / sed / shell / lex / yacc rien de mieux pour l admin sys ;)
 
tu recupere ce ke tu veux ou tu veux qd tu veux pour en faire ce ke tu veux ....
 
ke faut il de plus ?


---------------
Mes News
n°101623
sylphe
Posté le 17-02-2002 à 23:50:39  profilanswer
 

Salut,
 
Des langages meme eloignes sont interchangeables il y a meme des algorithmes pour passer d'un type de programmation a un autre, par exemple il est quasiment trivial de faire du procedural en fonctionnel, la reciproque est aisee mais pas triviale. D'ailleurs n'importe quel langage fini en langage machine ...
 
L'expertise d'un langage n'a rien a voir avec l'algorithmique,
on peut etre un expert des subtilites du C++ et ignorer la complexite et les contraintes d'une recherche dichotomique ou d'une recherche sequentielle. Pourtant au moment de l'implementation faire la difference entre les deux est indispensable pour creer un programme efficace et pas une usine a gaz.
 
Sinon je suis assez d'accord avec legreg, d'ailleurs j'aime bien son exemple sur les langues etrangeres, si j'avais eu le temps tout a l'heure je l'aurais utilise aussi.
 
Par contre, je pense que si tu veux devenir administrateur reseau tu auras a te preoccuper de la securite reseau, des lors la maitrise d'un langage script perl ou python et du langage C est importante, en effet la plupart des outils d'audit de securite libres utilisent ces langages ! En maitrisant ces langages tu pourras aussi modifier tes outils et les adapter a tes besoins.
 
Si tu ne prevoit pas de faire de la production, il n'est pas necessaire de te presser pour apprendre le C++, une bonne maitrise du C devrait t'etre plus utile (maitriser un langage c'est mieux que d'en survoler deux), d'autant plus qu'il existe quelques bons ouvrages pour passer du C au C++.
Par contre l'inverse est toujours plus difficile, car le C++ est une evolution du C et donc integre quelques commodites de programmation que ne possede pas le C. De plus on peut avoir l'impression d'y perdre et d'avoir a respecter plus de contraintes (a tort, c'est juste different).
 
Le tout etant d'avoir ensuite l'esprit assez souple pour passer au C++ lorsque celui-ci est plus adapte a ton probleme.
Malheureusement de nombreux informaticiens restent ancres dans leurs habitudes ...
 
A+
 
PS : Ouvrages indispensables :
Pour commencer en C:
- "Le langage C" de Ritchie et Kernighan (les "inventeurs" du langage C)
- Garetta a fait un excellent livre d'apprentissage du C, ne l'ayant pas sous les yeux impossible de te donner le titre
Pour commencer en C++
- "Le langage C++" Bjorn Stroujstrup (l'"inventeur" du C++ pour lequel j'ai un doute sur l'orthographe du nom)
Pour passer du C au C++
Claude Delannoy a fait quelque chose d'interessant

n°101628
LeGreg
Posté le 18-02-2002 à 00:00:00  profilanswer
 

Citation :

sylphe met bien en avant le veritable problème, celui de la rédaction des algos qu'on devrait toujours faire sur du papier avec un crayon, croyez moi c'est 100x plus efficace que de faire ça devant sa machine.


peut-etre est-ce le veritable probleme (pour qui?)
mais ca ne permets pas de savoir si il faut apprendre
le C avant le C++ :D.
 
Si tu veux faire admin reseau
je suis a peu pres sur que la programmation
en C++ sera le dernier de tes soucis
(ou meme la programmation tout court
meme si c'est utile d'ecrire des tas
de scripts pour ne pas refaire
des centaines de fois les memes manips
(ou des milliers si tu as quelques milliers
d'utilisateurs)).
 
Comme je disais c'est tout a ton honneur
de vouloir apprendre le C++ a titre perso
sache tout de meme que les bases sont compliquees.
pour apprendre l'objet Java est sans doute plus indique.
(a la rigueur Delphi mais java c'est du plus pur
objet)
On peut rapprocher Delphi et C++ comme le fait Borland
(a dessein puisqu'il veut qu'on utilise
ses librairies) mais il faut savoir que ce sont
deux conceptions tres differentes.
Je pense que venant de C++, tu peux comprendre facilement
Delphi (surtout si tu as fait du Pascal en plus)
mais pour aller de Delphi a C++ ce sera surement plus
ardu.
C++ ce n'est pas que de l'oriente objet
c'est du "multi-paradigme" avec du support
des classes de l'oriente objet comme le dit si bien Stroustrup. Multi paradigme
ca veut dire plein de chose. Une touche
de bas niveau avec des goto et le support des librairies
C, une touche de fonctionnel (avec des pointeurs de fonctions),
une touche de meta-langage (avec les templates), un milliers
de facons differentes de passer un objet en parametre
(par valeur, pointeur, reference, reference constante,
pointeur constant, sur la pile, dans les registres, implicite etc..), une souplesse infinie mais avec tout ca une grande dangerosite dans la programmation.
(redefinition des operateurs, polymorphisme a tout va,
surcharge de tout ce qui est possible et imaginable,
heritage virtuel, multiheritage.. gasp..)
 
Etre un "expert" de C++ ce n'est pas un vain mot :D.
 
A+
LEGREG

n°101629
Jubijub
Parce que je le VD bien
Posté le 18-02-2002 à 00:00:36  profilanswer
 

:jap:  
-->sylphe et legreg : ca c de la reply...
 
-->l'idée c que à coté j'aimerai apprendre aussi un language "normal" pour programmer des applis genre un client mail tout bete qui rappartie que les headers et pas le body des mails, un gestionnaire de collection de mp3/cd...genre tu fais une query par nom, thème, et ca te sors le cd sur lequel c...c plus ou moins une db, mais je voudrais savoir en piloter une de type dbase ou access ou interbase depuis un prog delphi ou c++....bref, des petits trucs utiles qui existent déjà par centaines mais dont on aime en général aucune version déjà existante :D
 
-->rannis : oui, je me souviens de ton exemple suite à ce pb auquel est confronté n'importe quel débutant qui configure un fw : comment récupérer son ip dynamique contenue dans ifconfig -ppp0 ? :D ;)

Code :
  1. IP="`/sbin/ifconfig ppp0 | grep 'inet adr' | awk '{print $2}' | sed -e 's/.*://'`"


 
c quand même barbare...mais tellement puissant le script :D

 

[jfdsdjhfuetppo]--Message édité par Jubijub--[/jfdsdjhfuetppo]


---------------
Jubi Photos : Flickr - 500px
n°101637
LeGreg
Posté le 18-02-2002 à 00:19:18  profilanswer
 

Citation :

Des langages meme eloignes sont interchangeables il y a meme des algorithmes pour passer d'un type de programmation a un autre, par exemple il est quasiment trivial de faire du procedural en fonctionnel, la reciproque est aisee mais pas triviale. D'ailleurs n'importe quel langage fini en langage machine ...


 
C'est la theorie mais on n'inventerait pas des langages
de haut niveau pour revenir a l'assembleur
ou justement pour ne pas changer de "paradigme".
A t'entendre, la facon dont on cuisine les aliments
n'aurait aucune importance parce qu'on finit
toujours par les digerer de la meme facon.
 

Citation :

L'expertise d'un langage n'a rien a voir avec l'algorithmique, on peut etre un expert des subtilites du C++ et ignorer la complexite et les contraintes d'une recherche dichotomique ou d'une recherche sequentielle. Pourtant au moment de l'implementation faire la difference entre les deux est indispensable pour creer un programme efficace et pas une usine a gaz.


 
En general un expert en C++ CONNAIT
la complexite d'une recherche dichotomique.
La difference c'est qu'il pourra
partir de la remarque "tiens on devrait
utiliser une strategie divide and conquer a cet endroit la"
et en sortir un programme qui marche, chose
que l'etudiant qui vient de voir le concept
de recherche dichotomique aura parfois du mal
a transformer en code C++ (traduire par java, C).
de plus il y a quelque chose que ne pourra
jamais donner la theorie ce sont
les "constantes" les choses que l'on ne voit
que rarement intervenir dans les calculs
de complexite (ceux qu'ont voit
a l'ecole) mais qui changent tout lors
de l'execution.
 
Exemple entre un tri machin en n^2 instructions dans le pire des cas et un tri bidule en N instructions dans tous les cas,
quel est le meilleurs? Parfois c'est le tri machin
parce que en moyenne il est en nlogn ce qui n'est pas mauvais, et le tri bidule impose de recopier le tableau en entier a 4 reprises. Et puis parfois c'est le tri bidule parce que sur les grands nombres N instructions c'est gagnant sur un cas le pire en N^2 (cas que l'on voudrait eviter).
 
A+
LEGREG

mood
Publicité
Posté le   profilanswer
 

 Page :   1  2  3

Aller à :
Ajouter une réponse
 

Sujets relatifs
Aujourd'hui vous allez apprendre un truc !!!qui pour m'apprendre le C++ ?
des adresses pour apprendre basic StampUn bon book pour apprendre le C/C++ et un logiciel.
Quel bouquin pour apprendre JAVA de façon claire et simple ?[java] debutant intêret des interfaces ?
Quel est l'interêt de faire des études supérieures dans la prog?apprendre a programmer
connaissez vous un bon site avec des cours pour apprendre le Ccherche book pour apprendre php!!!
Plus de sujets relatifs à : Quel est l'intéret d'apprendre le C avant le C++ ?


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