ebook img

C++ appliqué au calcul scientifique PDF

20 Pages·2008·0.21 MB·French
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview C++ appliqué au calcul scientifique

Plan Introduction C++ouc’estpas++? LetoutC++:chausse´eglissante Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates Calcul Scientifique et C++ : chausses trappes et peaux de bananes. Ste´phaneLabbe´ Universite´JosephFourier,Grenoble,LaboratoireJeanKuntzmann. CoursANGD,le30septembre2008. Ste´phaneLabbe´ CoursANGD Plan Introduction C++ouc’estpas++? LetoutC++:chausse´eglissante Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates Plan 1 Introduction 2 C++ouc’estpas++? Diffe´rencesentreproce´duraletobjet Organisation,de´finitionsdetaˆches Lesoutilspourconcevoirdesprogrammes 3 LetoutC++:chausse´eglissante PourquelleutilisationleC++est-iladapte´? Nepasre´-inventercequiexistede´ja` Mais...lavien’estpasunlongfleuvetranquille... 4 Surcharges,copied’objets:lesrisques Surcharged’ope´rateuretsurchargedeme´moire Utilisationtropconfiantedestemplates 5 Quelquesexemplesdeprogrammation:lestemplates UtilisationdelaS.T.L. Unoutilbienutile:lesPatterns Gestiondeserreurs:exceptions Ste´phaneLabbe´ CoursANGD Plan Introduction C++ouc’estpas++? LetoutC++:chausse´eglissante Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates En quelques mots... QuiditC++ditbienentenduprogrammationoriente´eobjets. Pourlecalculscientifique,quelssontlesavantages? Grandesouplessedemaintenance, souplessedede´veloppement, gestionfineetmodulairedesexceptions. Quelensontlesde´savantages? Uneconceptionpluscomplexe, unerigueurdedocumentationplusforte, despie`gespouvantde´te´riorerlesperformancesdecalcul. Ainsi,lapremie`requestiona` seposerest:Ai-jebesoindefaireduC++? Ste´phaneLabbe´ CoursANGD Plan Introduction Diffe´rencesentreproce´duraletobjet C++ouc’estpas++? Organisation,de´finitionsdetaˆches LetoutC++:chausse´eglissante Lesoutilspourconcevoirdesprogrammes Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates Comparaison Caracte´risationdelaprogrammationproce´durale Nonprotectiondesdonne´es. Se´parationdesdonne´esetdesfonctions. Rigidite´ desfonctionsparrapportauxdonne´es. Re´pe´titiondesalgorithmessuivantletypededonne´es. Objectifsline´airesdeprogrammation. Principesdebasedelaprogrammationoriente´eobjets Pre´sencedeclasses:de´finitiondedonne´espouvantinteragiravec“l’exte´rieur”. Encapsulationdedonne´es:protectiondesdonne´es,autonomie. He´ritage:capacite´ desclassesd’objetsa` sespe´cialisera` partird’unmode`leplus ge´ne´ral. Polymorphisme:capacite´ desobjetsa` re´agirauxautresobjetsenfonctiondeleur classe. Ste´phaneLabbe´ CoursANGD Plan Introduction Diffe´rencesentreproce´duraletobjet C++ouc’estpas++? Organisation,de´finitionsdetaˆches LetoutC++:chausse´eglissante Lesoutilspourconcevoirdesprogrammes Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates Que choisir? Dansl’absolu,toutprogrammedevraiteˆtreconc¸uenpensantobjets. Bienentendu,cetypedeconceptionprenddutemps,avantdeselancerdans l’aventure,lesquestionssontdonclessuivantes: leprojetdoit-ileˆtreexploite´ parplusieurspersonnes? Est-ceunemaquettepouruneme´thodeouunprojetdede´veloppementa` longue e´che´ance? Quelgraindemodularite´ doit-onespe´rer? Ste´phaneLabbe´ CoursANGD Plan Introduction Diffe´rencesentreproce´duraletobjet C++ouc’estpas++? Organisation,de´finitionsdetaˆches LetoutC++:chausse´eglissante Lesoutilspourconcevoirdesprogrammes Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates Diagrammes U.M.L., un exemple L’outilpremierdeconceptionestlediagrammeU.M.L:UnifiedModelingLanguage. C’estunme´talangagequipeuteˆtreutilise´ efficacementpourlaprogrammation oriente´eobjets. Lesprincipauxatouts uneconceptiongraphiqueclairepermettantdese´changessimplesentre participantsa` unprojet, desoutilsdeprogrammationpouvantexploiterlesdiagrammes(ex.:Dia,ROSE, Umbrella...), uneinde´pendanceaulangagepermettantuneconceptionpe´renne. BibliographiesurU.M.L.etsonutilisation P-AMulleretN.Gaertner(2000)Mode´lisationobjetavecUML.Eyrolles. M.Lai(2000).UMLlanotationunifie´edemode´lisationobjet.DunodInformatiques. Unexempledecourssurleweb:http://uml.free.fr Lesiteofficiel:www.uml.org UMLetcalculscientifique:leprojetcsimoon,http://www-ljk.imag.fr/membres/Stephane.Labbe/Documents/csimoon.ps.gz Ste´phaneLabbe´ CoursANGD Plan Introduction Diffe´rencesentreproce´duraletobjet C++ouc’estpas++? Organisation,de´finitionsdetaˆches LetoutC++:chausse´eglissante Lesoutilspourconcevoirdesprogrammes Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates Diagrammes U.M.L. Probleme_Go -nom: chaîne -operateurs: liste<matrice> -/solutions: liste<vecteur> -etat: entier = 0 0..1 -stockages: liste<Stockage> Vecteur ++arsessoocuiderre_(oipne rparteecuirs(iionn :orpe:eMla)t:r iicnet): int 0..* -nom: chaîne +etat(): int 0..1 +affiche(): sortie +affiche(): sortie +associer_domaine(in nom_fichier:chaîne): int +initialisation_h(): int 0..1 Matrice -nom: chaîne 0..*-stockage_mat: Stockage* +valeur(u:V): V +affiche(): sortie 0..* 1 0..* Stockage -nom: chaîne +affiche(): sortie Ste´phaneLabbe´ CoursANGD Plan Introduction PourquelleutilisationleC++est-iladapte´? C++ouc’estpas++? Nepasre´-inventercequiexistede´ja` LetoutC++:chausse´eglissante Mais...lavien’estpasunlongfleuvetranquille... Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates A quoi est adapte´ le C++? Cre´ationd’unestructuremodulairedecode avoira` dispositionunestructurefacilementidentifiableetre´utilisable, pouvoirexploiterlessectionsdecodesexistantesetvalide´essanslesretoucher, mettresurpieddesproce´duresdetestdesfonctionsinde´pendantes. Gestionsimpledese´volutions ajouterdesfonctionnalite´ssansde´truirel’existant,voiresanslemodifier, pouvoirfacilementinte´grerdesmodulesde´veloppe´sa` l’exte´rieur,pard’autre personnes, rendreleslogicielsre´actifsa` leurenvironnement. BibliographiesurU.M.L.etsonutilisation B.Stroutrup,LelangageC++,PearsonEducation, N.M.Josuttis,Object-OrientedProgramminginC++,Willey. Ste´phaneLabbe´ CoursANGD Plan Introduction PourquelleutilisationleC++est-iladapte´? C++ouc’estpas++? Nepasre´-inventercequiexistede´ja` LetoutC++:chausse´eglissante Mais...lavien’estpasunlongfleuvetranquille... Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates A quoi n’est-il pas adapte´ ? Lesracinesducalcul LeC++,jusqu’a` nouvelordre,n’estpasre´ellementadapte´ aucalculsurdegrandes structuresline´aires. Apriori,unbinairedonne´ pourraiteˆtreobtenuavecn’importequellangage. Cen’estbienentenduqu’unevuedel’espritcarchaquecompilateurasesspe´cificite´s etplusuncompilateurestge´ne´raliste,moinsilrisqued’eˆtreefficacepouruneaction cible´e:parexemplelecalculvectorise´ surdestableauquiestl’atoutprincipaldes compilateursFORTRAN. Unesolution:l’interfacerleslangages. Ste´phaneLabbe´ CoursANGD Plan Introduction PourquelleutilisationleC++est-iladapte´? C++ouc’estpas++? Nepasre´-inventercequiexistede´ja` LetoutC++:chausse´eglissante Mais...lavien’estpasunlongfleuvetranquille... Surcharges,copied’objets:lesrisques Quelquesexemplesdeprogrammation:lestemplates Les bibliothe`ques InterfacerleFORTRANetleC++comportedenombreuxavantages: pouvoirbe´ne´ficierdebibliothe`quesFORTRANdecalculscientifique particulie`rementrichesetfiables, re´utiliservos”morceaux”decodesprogramme´senFORTRANtoutenbe´ne´ficiant delastructureC++degestiondesfluxetdesobjets, capterlemeilleurdesdeuxcompilateurs. Ste´phaneLabbe´ CoursANGD

Description:
Calcul Scientifique et C++ : chausses trappes et peaux de bananes N. M. Josuttis, Object-Oriented Programming in C++, Willey. Stéphane Labbé.
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.