
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>NetBeans Weekly Newsletter, Issue # 36</title>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" >
<meta name="keywords" content="NetBeans, IDE, Platform, free, open source, developer" >
</head>
<body>
<style>
body {
		margin:5px 15px 5px 15px;
		font-size: 11px;
		font-family: Verdana, "Verdana CE",  Arial, "Arial CE", "Lucida Grande CE", lucida, "Helvetica CE", sans-serif;
		background-color:#e3eaf1;
		text-align:center;
}

#letter {width:533px;margin-left:auto;margin-right:auto;}
#head {background-image:url("http://services.netbeans.org/appl2/shared_images/head.png");width:533px;height:70px;background-repeat:none;}
#issue-date {padding-top:50px;text-align:center; color:white;}
#footer {background-image:url("http://services.netbeans.org/appl2/shared_images/footer.png"); width:533px;height:28px;background-repeat:none;}
#footer-text {padding-top:5px;color:#6a6b6d;text-align:center;}
#content {border-right:3px solid #747d9e;border-left:3px solid #747d9e; background-color:white; text-align:left; color:#6a6b6d; padding:13px 20px 13px 13px; }
#letter h1 {font-size: 14px; font-weight:normal; margin:3px 0px 5px 0px; padding:0px;color: #EE6B00; border-bottom:1px solid silver;}
#letter h2 {color:#2C3C79;font-size: 13px; font-weight:normal;margin:0px 0px 2px 0px;padding:0px; border:0px;}
#letter p {padding: 0px;margin:0px; text-align:justify;}
#letter a:link, a:visited { color: #045491; font-weight : normal; text-decoration: none;}
#letter a:link:hover, a:visited:hover  { color: #045491; font-normal : bold; text-decoration : underline;}
.item {margin-left:8px; margin-bottom:9px;}
.bold {font-weight:bold;}
#letter a.orange {color: #EE6B00;}
.align-right {text-align:right;}
.align-center {text-align:center;}
.edited {margin:15px -20px 0px -13px;padding-top:8px;text-align:center;}
.edge-top {background-color: #f0f7ff;padding:7px 12px 7px 7px;margin-bottom:10px; border:1px solid #747d9e;}
</style>


<div id="letter">
	<div id="head">
		<div id="issue-date" class="bold">
				Numéro # 36 - Oct 21, 2009
		</div>
	</div>
	<div id="content">
	
				<h1>Nouvelles de projet</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=4303">Vidéo: les démos de Carol McDonald sur les services web RESTful</a></h2>
						<p style="margin-left:8px;">
						Cette application Pet Store Catalog expose un catalogue en tant que service web RESTful pour les applications clientes à distance et montre un client Ajax qui recueille et affiche les réponses du service web dans une table Ajax (grille Dojo). Par Carol McDonald</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=4305">NetBeans pour PHP: Formatage et Indentation</a></h2>
						<p style="margin-left:8px;">
						Petr Pisl a recemment fait un exposé au WebExpo 2009 à Prague. Il a parlé du développement des applications web et l'audience a montré une grande attention pour les démos PHP. Après la session Petr a collecté tous les retours d'informations et a crée une nouvelle tâche Issuezilla.Si vous vous rappelez d'un quelconque problème( par exemple si le formatage ou l'indentation dans le l'éditeur PHP ne fonctionne pas comme vous le souhaitez) aidez nous à les traquer en ajoutant à la liste votre bout de code.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=4306">Le plugin ALM avec le support pour Mercurial et Git</a></h2>
						<p style="margin-left:8px;">
						Un groupe d'enthousiamés d'open source t Intland Software continuent de développer le plugin Netbeans ALM (Application Lifecycle Management - Gestion du cycle de vie des applications). Ce plugin intègre Netbeans avec codeBeamer 5.4, Mercurial et Git. L'équipe invite tout le monde à faire des retours d'informations et encourage les membres de la communauté Netbeans à rejoindre le projet JavaForge. La prochaine version est prévue pour le 31 janvier 2010.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=4304">Travailler avec Maven dans NetBeans 6.7.1</a></h2>
						<p style="margin-left:8px;">
						Dans cet article nous nous pencherons sur le support pour Maven dans la version Netbeans IDE 6.7.1. maven est un excellent outil, beaucoup apprécié pour sa capacité à aider dans l'harmonisation et la standardisation des pratiques de développement dans une organisation. Apprendre plus sur la création de projets Maven, la gestion du fichier POM et les dépendances.</p>
					</div>
				<h1>Communauté</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=4307">OSUM abrite Global NetBeans Demo Fest!</a></h2>
						<p style="margin-left:8px;">
						Etes-vous étudiant ou professeur ? Rejoignez la communauté Open Source University Meetup(OSUM) et participez durant tout le mois au Netbeans Demo Fest ! Visitez le site d'OSUM et retrouvez le calendrier des évènements. Rassemblez vos amis développeurs et regardez(ou montrez) des démos interessants de l'EDI Netbeans en action. OSUM a préparé des séries de webinaires pour vous présenter l'EDI et vous former sur la conduite de demo Netbeans si vous voulez organiser une session.</p>
					</div>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=4308">Dernière chance pour le vote du conseil de gouvernance de Netbeans</a></h2>
						<p style="margin-left:8px;">
						Le conseil de gouvernance de Netbeans est une équipe de trois membres dont la tâche principale est de s'assurer que le projet Netbeans est géré de manière juste et transparente.<a href="https://netbeans.org/community/articles/election_profiles.html"> Apprenez plus sur les candidats </a> et alors <a href="https://netbeans.org/community/articles/nbelections.html"> faites vos votes</a>! la période de vote cours jusqu'au  mercredi 21 octobre  à minuit de la dernière fuseau horaire. Les résultats et le nouveau conseil seront publiés le lundi 26 octobre.</p>
					</div>
				<h1>Formation</h1>
				<div class="item">
				<h2><a href="http://services.netbeans.org/newsletter/story.php?id=4302">Vidéo: Support PHP Namespace dans NetBeans IDE 6.8</a></h2>
						<p style="margin-left:8px;">
						Cette séquence vidéo démontre la complétion de code  pour  namespaces PHP 5.3 dans Netbeans IDE 6.8. Il montre aussi à l'utilisateur comment changer les options pour  la complétion de code du namespace PHP et autres fonctionnalités d'édition PHP.</p>
					</div>
	<div class="edited">
	Ce numéro vous a été envoyé par: Drabo Constantin<br/>Si vous ne désirez plus recevoir cette lettre d'information, <a href="https://netbeans.org/community/lists/top.html">des-inscrivez vous ici</a>
	</div>
	<div class="edited">
        Langues disponibles<br>
        <a href="https://netbeans.org/community/news/newsletter/index.html">English</a> | <a href="https://netbeans.org/community/news/newsletter/index_pt_BR.html">Brazilian Portuguese</a> | <a href="https://netbeans.org/community/news/newsletter/index_fr.html">French</a> | <a href="https://netbeans.org/community/news/newsletter/index_zh_CN.html">Chinese - simplified</a> | <a href="https://netbeans.org/community/news/newsletter/index_zh_TW.html">Chinese - traditional</a>
        </div>
	</div>
	<div id="footer">
		<div id="footer-text">
				Cette lettre d'information est aussi accessible à cette adresse  <a href="https://netbeans.org/community/news/newsletter/2009-10-21_fr.html">www.netbeans.org</a>,
				<a href="https://netbeans.org/community/news/newsletter/archive_fr.html">Archives des lettres d'information</a>
		</div>
	</div>

</body>
</html>