<?xml version="1.0" encoding="utf-8"?><?xml-stylesheet title="XSL formatting" type="text/xsl" href="http://www.llaumgui.com/feed/rss2/xslt" ?><rss version="2.0"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:atom="http://www.w3.org/2005/Atom">
<channel>
  <title>Le blog de llaumgui - Balise - héritage</title>
  <link>http://www.llaumgui.com/</link>
  <atom:link href="http://www.llaumgui.com/feed/tag/h%C3%A9ritage/rss2" rel="self" type="application/rss+xml"/>
  <description>Linux en général, Fedora en particulier...</description>
  <language>fr</language>
  <pubDate>Fri, 21 Nov 2008 02:08:57 +0100</pubDate>
  <copyright>http://creativecommons.org/licenses/by-nc-nd/2.5/</copyright>
  <docs>http://blogs.law.harvard.edu/tech/rss</docs>
  <generator>Dotclear</generator>
  
    
  <item>
    <title>Héritage du ipbSDK - Part3 (De nouvelles variables)</title>
    <link>http://www.llaumgui.com/post/heritage-du-ipbsdk-3-de-nouvelles-variables</link>
    <guid isPermaLink="false">urn:md5:6b6baf824b3e77cdef65939ddc7cec41</guid>
    <pubDate>Fri, 18 Mar 2005 22:28:00 +0000</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>héritage</category><category>IPB</category><category>IPBSDK</category><category>php</category>    
    <description>&lt;p&gt;Dans vos fonctions utilisant le ipbSDK (Ou MySDK dans notre cas), il peut être fort pratique d'utiliser des variables du style $SDK-&amp;amp;gt;portal_url. Pour cela, rien de plus simple, surtout si vous avez suivis les 2 premières parties.&lt;/p&gt;    &lt;p&gt;La première étape et d'ajouter la variable et ça valeur dans le fichier de configuration du SDK : &lt;em&gt;ipbsdk_conf.inc.php&lt;/em&gt;.&lt;/p&gt;


&lt;p&gt;Ensuite, vous devez déclarer la variable dans votre classe SDK et charger ça valeur dans le constructeur.&lt;/p&gt;

&lt;code class=&quot;php&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;&amp;lt;?&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**&lt;br /&gt;
*------------------------------------------------------------------------&lt;br /&gt;
* &amp;nbsp; Portail XPerience 4.01.&lt;br /&gt;
* ========================================&lt;br /&gt;
* @package XPerience-Fr&lt;br /&gt;
* @copyright Guillaume Kulakowski&lt;br /&gt;
*/&lt;/span&gt;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #b1b100;&quot;&gt;require_once&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'ipbsdk_class.inc.php'&lt;/span&gt;;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**&lt;br /&gt;
* Classe MySDK héritant du IPBSDK et permettant de l'optimiser sans patir de la difficulté&lt;br /&gt;
* de future maj.&lt;br /&gt;
* @package IPBSDK&lt;br /&gt;
*/&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;class&lt;/span&gt; MySDK &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;extends&lt;/span&gt; IPBSDK &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;var&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$portal_url&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;/**&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* Constructeur de la sous-classe MySDK.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;* @param array $options Use this to overwrite settings from the configuration file.&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @todo Virer le require_once&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;* @since 4.01&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;*/&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; MySDK &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; &lt;span style=&quot;color: #0000ff;&quot;&gt;$options&lt;/span&gt; = &lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;'root_path'&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'board_url'&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'sdklang'&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'board_version'&lt;/span&gt; =&amp;gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'allow_caching'&lt;/span&gt;=&amp;gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'timer'&lt;/span&gt;=&amp;gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;, &lt;span style=&quot;color: #ff0000;&quot;&gt;'debug'&lt;/span&gt;=&amp;gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;''&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #b1b100;&quot;&gt;require_once&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'ipbsdk_conf.inc.php'&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #0000ff;&quot;&gt;$IPBSDK&lt;/span&gt; = IPBSDK::&lt;span style=&quot;color: #006600;&quot;&gt;IPBSDK&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #0000ff;&quot;&gt;$options&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// On passe les argument au super.constructeur.&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// Je charge mes variables :&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &lt;span style=&quot;color: #0000ff;&quot;&gt;$this&lt;/span&gt;-&amp;gt;&lt;span style=&quot;color: #006600;&quot;&gt;portal_url&lt;/span&gt; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp; &amp;nbsp;= &lt;span style=&quot;color: #0000ff;&quot;&gt;$portal_url&lt;/span&gt;;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &amp;nbsp;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;?&amp;gt;&lt;/span&gt;&lt;/code&gt;

&lt;fieldset class=&quot;links&quot;&gt;&lt;legend&gt;Poursuivre : &lt;/legend&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.llaumgui.com/post/heritage-du-ipbsdk-1-theorie&quot; hreflang=&quot;fr&quot;&gt;Héritage du ipbSDK - Part1 (La théorie)&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.llaumgui.com/post/heritage-du-ipbsdk-part2-premier-pas&quot; hreflang=&quot;fr&quot;&gt;Héritage du ipbSDK - Part2 (Premier pas)&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Héritage du ipbSDK - Part3 (De nouvelles variables).&lt;/li&gt;
&lt;/ul&gt;
&lt;/fieldset&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/heritage-du-ipbsdk-3-de-nouvelles-variables#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/heritage-du-ipbsdk-3-de-nouvelles-variables#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/atom/comments/24</wfw:commentRss>
      </item>
    
  <item>
    <title>Héritage du ipbSDK - Part2 (Premier pas)</title>
    <link>http://www.llaumgui.com/post/heritage-du-ipbsdk-part2-premier-pas</link>
    <guid isPermaLink="false">urn:md5:e0bd02da31285c95028f608341fb489d</guid>
    <pubDate>Thu, 03 Mar 2005 19:52:00 +0000</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>héritage</category><category>IPB</category><category>IPBSDK</category><category>php</category>    
    <description>&lt;p&gt;&lt;a href=&quot;http://www.llaumgui.com/index.php/2005/03/03/24-php4-et-lheritage&quot; hreflang=&quot;fr&quot;&gt;Ma précédente aventure&lt;/a&gt; m'a permise de me familiariser avec le concept d'héritage sous php. L'aventure MySDK (Nom de ma classe héritant de IPBSDK) peut donc commencer.&lt;/p&gt;    &lt;p&gt;La première étape est de construire une classe MySDK (mysdk.php) héritant du IPBSDK. Pour commencer cette classe sera vide, donc héritant de la totalité des fonctions du SDK.&lt;/p&gt;

&lt;code class=&quot;php&quot;&gt;&lt;span style=&quot;color: #b1b100;&quot;&gt;require_once&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'ipbsdk_class.inc.php'&lt;/span&gt;;&lt;br /&gt;
&lt;br /&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;class&lt;/span&gt; MySDK &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;extends&lt;/span&gt; IPBSDK &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;br /&gt;
&amp;nbsp; &amp;nbsp; &lt;br /&gt;
&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/code&gt;


&lt;p&gt;Cela fait, il suffit de modifier notre script php et remplacer :&lt;/p&gt;

&lt;code class=&quot;php&quot;&gt;&lt;span style=&quot;color: #b1b100;&quot;&gt;require_once&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'ipbsdk_class.inc.php'&lt;/span&gt;;&lt;br /&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$SDK&lt;/span&gt; =&amp;amp; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; IPBSDK&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;timer&amp;quot;&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;1&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// Load with Timer&lt;/span&gt;&lt;/code&gt;


&lt;p&gt;Par :&lt;/p&gt;

&lt;code class=&quot;php&quot;&gt;&lt;span style=&quot;color: #b1b100;&quot;&gt;require_once&lt;/span&gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;'mysdk.php'&lt;/span&gt;;&lt;br /&gt;
&lt;span style=&quot;color: #0000ff;&quot;&gt;$SDK&lt;/span&gt; =&amp;amp; &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;new&lt;/span&gt; MySDK&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;a href=&quot;http://www.php.net/array&quot;&gt;&lt;span style=&quot;color: #000066;&quot;&gt;array&lt;/span&gt;&lt;/a&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;timer&amp;quot;&lt;/span&gt; =&amp;gt; &lt;span style=&quot;color: #ff0000;&quot;&gt;&amp;quot;1&amp;quot;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;; &lt;span style=&quot;color: #808080; font-style: italic;&quot;&gt;// Load with Timer&lt;/span&gt;&lt;/code&gt;


&lt;p&gt;Voila, vous n'utilisez plus IPBSDK, mais une classe héritant du IPBSDK que vous pouvez faire évoluer à part en rajoutant des fonction ou en redéfinissant. Nous aborderons l'optimisation du SDK dans un prochain billet&lt;/p&gt;

&lt;fieldset class=&quot;links&quot;&gt;&lt;legend&gt;Poursuivre : &lt;/legend&gt;&lt;ul&gt;
&lt;li&gt;&lt;a href=&quot;http://www.llaumgui.com/index.php/2005/02/26/23-heritage-du-ipbsdk-1-theorie&quot; hreflang=&quot;fr&quot;&gt;Héritage du ipbSDK - Part1 (La théorie)&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Héritage du ipbSDK - Part2 (Premier pas).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.llaumgui.com/index.php/2005/03/18/27-heritage-du-ipbsdk-3-de-nouvelles-variables&quot; hreflang=&quot;fr&quot;&gt;Héritage du ipbSDK - Part3 (De nouvelles variables)&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/fieldset&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/heritage-du-ipbsdk-part2-premier-pas#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/heritage-du-ipbsdk-part2-premier-pas#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/atom/comments/22</wfw:commentRss>
      </item>
    
  <item>
    <title>php4 et l'héritage</title>
    <link>http://www.llaumgui.com/post/php4-et-lheritage</link>
    <guid isPermaLink="false">urn:md5:323d3dfb4591f4acfa7da559c4307887</guid>
    <pubDate>Thu, 03 Mar 2005 12:48:00 +0000</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>héritage</category><category>php</category><category>php4</category>    
    <description>&lt;p&gt;Jusqu'à présent, ma connaissance et mes compétances face à l'héritage était due à la programmation Java, et son application au php n'était que pure théorie (&lt;a href=&quot;http://www.llaumgui.com/post/heritage-du-ipbsdk-1-theorie&quot; hreflang=&quot;fr&quot;&gt;rappelez-vous&lt;/a&gt;)...
Or, je viens de sauter le pas sous php4 (Version utilisée à mon stage).&lt;/p&gt;    &lt;p&gt;Tout d'abord, même si le modèle objet de php4 (Différents de celui de php5) a ses limites, il n'en demeure pas moi &amp;quot;&lt;em&gt;assez&lt;/em&gt;&amp;quot; puissant, facile à mettre en oeuvre et proche de celui du Java.&lt;/p&gt;


&lt;p&gt;Cependant, on pourra déplorer certaines limitations :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Pas d'héritage multiple&lt;/strong&gt; : Tout comme Java, mais est ce bien nécessaire ?&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Pas de surcharge&lt;/strong&gt; : Plus gênant, php choisis de rendre des paramètres d'une fonction facultatifs en leur donnant une valeur initial par défaut. Ainsi en lieu et place de :&lt;/li&gt;
&lt;/ul&gt;
&lt;code class=&quot;php&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; toto &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;br /&gt;
&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; toto &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; paramètre &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/code&gt;


&lt;p&gt;On aura :&lt;/p&gt;

&lt;code class=&quot;php&quot;&gt;&lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;function&lt;/span&gt; toto &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt; paramètre = &lt;span style=&quot;color: #000000; font-weight: bold;&quot;&gt;null&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt; &lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#123;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#125;&lt;/span&gt;&lt;/code&gt;


&lt;p&gt;&lt;em&gt;Bien sur, la redéfinition, essence même de l'héritage est possible.&lt;/em&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;L'appel des fonctions de la sur-classe&lt;/strong&gt; : php n'adopte pas l'appel &lt;em&gt;super.fonction()&lt;/em&gt; comme Java mais une syntaxe moins simple :&lt;/li&gt;
&lt;/ul&gt;
&lt;code class=&quot;php&quot;&gt;super_classe::&lt;span style=&quot;color: #006600;&quot;&gt;fonction&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#40;&lt;/span&gt;&lt;span style=&quot;color: #66cc66;&quot;&gt;&amp;#41;&lt;/span&gt;&lt;/code&gt;


&lt;p&gt;Je vous tiendrais bien sûr au courant de l'avancé de ma découverte en tenant à jour ce billet ou en le déclinant en Part II.
Rappelons pour finir que nous parlons ici de php 4.&lt;/p&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/php4-et-lheritage#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/php4-et-lheritage#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/atom/comments/21</wfw:commentRss>
      </item>
    
  <item>
    <title>Héritage du ipbSDK - Part1 (La théorie)</title>
    <link>http://www.llaumgui.com/post/heritage-du-ipbsdk-1-theorie</link>
    <guid isPermaLink="false">urn:md5:1bb52a1956f517ca2ae1c0fe27485759</guid>
    <pubDate>Sat, 26 Feb 2005 17:50:00 +0000</pubDate>
    <dc:creator>llaumgui</dc:creator>
        <category>Développement web</category>
        <category>héritage</category><category>IPB</category><category>IPBSDK</category><category>php</category>    
    <description>&lt;p&gt;Le portail que j'ai développé pour &lt;a href=&quot;http://www.xperience-fr.net&quot; hreflang=&quot;fr&quot;&gt;XPerience-Fr&lt;/a&gt; et que j'utilise aussi sur &lt;a href=&quot;http://www.meta-contact.net&quot; hreflang=&quot;fr&quot;&gt;Meta-Contact&lt;/a&gt; est développé en utilisant l'&lt;a href=&quot;http://www.atelierphp5.com/application-program-interface-api.html&quot; hreflang=&quot;fr&quot;&gt;API&lt;/a&gt; &lt;a href=&quot;http://ipbsdk.sourceforge.net/&quot; hreflang=&quot;en&quot;&gt;IPB-SDK&lt;/a&gt;. Cependant ayant modifié voir réécris un grand nombre de fonctions, les mise à jour du SDK sont très laborieuses... C'est là que la gestion de l'objet et de l'héritage sous php (Et surtout sous php5) prend tout son sens.&lt;/p&gt;    &lt;p&gt;&lt;em&gt;&lt;q&gt;Tout d'abords, ce billet fait suite à mon constat de la puissance de php5 et se base plus sur mes connaissances/compétences en Java mais je suis presque sûr que cela doit être applicable sans problème au php5 (voir php4), c'est d'ailleurs ce qui va m'occuper ces prochains jours.&lt;/q&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;L'idée est de ne plus instancier le ipbSDK ( &lt;span style=&quot;color: rgb(153, 153, 153);&quot;&gt;$SDK =&amp;amp; new IPBSDK( array(&amp;quot;timer&amp;quot; =&amp;gt; &amp;quot;1&amp;quot;) ); &lt;/span&gt; ) mais une classe héritant du SDK que nous appèlerons &lt;strong&gt;MySDK&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Cette classe faisant appel aux fonctions du SDK (Principe de l'héritage), mais utilisant la redéfinition de fonction (&lt;em&gt;Action de redéfinir un fonction d'une sous-classe dans une sur-classe&lt;/em&gt;) au lieu de modifier directement le SDK. De ce fait on se retrouverait avec un SDK de base mais utilisant les fonctions réécrites. De là, les mises à jour s'en retrouveraient facilitées car elles correspondraient juste a un upload du nouvel SDK et à quelques corrections de la classe MySDK.&lt;/p&gt;
&lt;p&gt;Me reste plus qu'à passer de la théorie à la pratique :-).&lt;/p&gt;
&lt;fieldset class=&quot;links&quot;&gt;&lt;legend&gt;Poursuivre : &lt;/legend&gt;&lt;ul&gt;
&lt;li&gt;Héritage du ipbSDK - Part1 (La théorie).&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.llaumgui.com/post/heritage-du-ipbsdk-part2-premier-pas&quot; hreflang=&quot;fr&quot;&gt;Héritage du ipbSDK - Part2 (Premier pas)&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;&lt;a href=&quot;http://www.llaumgui.com/post/heritage-du-ipbsdk-3-de-nouvelles-variables&quot; hreflang=&quot;fr&quot;&gt;Héritage du ipbSDK - Part3 (De nouvelles variables)&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;/fieldset&gt;</description>
    
    
    
          <comments>http://www.llaumgui.com/post/heritage-du-ipbsdk-1-theorie#comment-form</comments>
      <wfw:comment>http://www.llaumgui.com/post/heritage-du-ipbsdk-1-theorie#comment-form</wfw:comment>
      <wfw:commentRss>http://www.llaumgui.com/feed/atom/comments/20</wfw:commentRss>
      </item>
    
</channel>
</rss>