• Applications = code + markup [updated : 19/11/2006]

    Je viens d'acheter (enfin, le temps de le lire...) le dernier Petzold consacré à Windows Presentation Foundation et je me mets à regretter qu'il n'ai pas plutôt écrit Applications = Markup + Code...

    N'allez pas pour autant croire que je n'ai pas apprecié le bouquin, c'est un must-have absolu pour débuter (et un plus : j'y ai trouvé pleins d'infos intéressantes) en WPF, mais les développeurs chevronnés vont quelque peu s'ennuyer sur toute la premiere partie.
    Dans celle-ci, sobremement appelé Code, Charles Petzold nous guide dans les arcanes de WPF du point de vue purement programmeur. Vous y trouverez toutes les informations nécessaires pour coder "à la main" des applications .net 3.0 : la gestion des menus, les fenêtres, les opérations sur les média (animation...), tous les grands sujets sont abordés avec une multitude d'exemples et la qualité dont l'auteur a toujours fait preuve.

    La deuxième partie, Markup, est quasi parfaite. Au cours de ces 500 pages, vous découvrirez XAML dans toute sa splendeur - et c'est certainement ça que vous êtes venus chercher, après tout sans XAML, Windows Presentation Foundation n'est qu'une nouvelle (oui encore une...) librairie de classes graphiques, ou presque... Déclaration, data binding, navigation, styles & templates, animation représentent une partie du programme que vous aurez l'occasion de suivre. Tous les sujets sont, en tous cas, bien documentés, approfondis juste ce qu'il faut - ni noyés dans une multitude de détails, ni survolés -, et surtout clairement expliqués.

    [Update] Mince et triple mince, il manque un paragraphe à mon billet. Voila ce que c'est de poster à des heures pareilles... Eh bien, plus qu'à l'ajouter :

    "Je me mets à regretter qu'il n'ai pas plutôt écrit Applications = Markup + Code" ai-je dit ? J'aurais effectivement aimé que ce livre commence par Markup, c'est de loin ce qui est le plus déroutant lorsque l'on commence avec WPF, et cela aurait certainement evité l'effet "oui, mais bon, ca c'est comme avant, pourquoi il passe pas à la suite ?" que l'on ne peut s'empecher de resentir à la lecture de Code. D'un autre coté, mon impression de familiarité de ces concepts est peut-être aussi due à l'habitude à passer d'un environnement à un autre (Win32, Java, .net, etc.), un developpeur moins enclin à faire cette gymnastique sera certainement très intéressé aussi par cette partie.

    En tout cas, un grand merci à ce livre pour avoir réussi à clarifier un certain nombre de points obscurs tels que, par exemple : les DataTriggers, les DependencyProperties, etc.