<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[C++ (mfc) vs. Java(BlueJ)]]></title><description><![CDATA[<p>also im rahmen des informatikunterrichts wollte ich unserm lehrer mal zeigen wie viel schneller C++ im Vergleich mit Java ist .... Soweit so gut.<br />
Da wir gerade Sortieralgorithmen machen anhand von Quick bzw Bubblesort...<br />
Ich hab jetzt erstmal QuickSort geschrieben. Einmal für Java und einmal für C++ mit Dialog von Mfc....<br />
Rahmenbedingungen sind 100.000 bis 1.000.000 &quot;zufällige&quot; Zahlen zwischen 0 und 30000 in 100.000 schritten zum Sortieren ...<br />
Durschnitt gibt den Durchschnitt der ersten 100 zufälligen zahlen an<br />
Zeit ist bei java System.currentTimeMillis(), fallses wem was sagt und bei<br />
C++ GetTickCount()...<br />
SEIT WANN IST DENN JAVA SCHNELLER ? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>---- JAVA -----<br />
Items Time Durchschnitt<br />
100000 31 15.34<br />
200000 78 7.19<br />
300000 110 4.67<br />
400000 141 3.75<br />
500000 187 2.95<br />
600000 235 3.01<br />
700000 250 2.12<br />
800000 297 1.41<br />
900000 343 1.35<br />
1000000 390 1.85</p>
<p>---- C++ -------<br />
Anzahl Zeit<br />
100000 31 (12)<br />
200000 78 (7)<br />
300000 125 (4)<br />
400000 172 (3)<br />
500000 219 (3)<br />
600000 265 (2)<br />
700000 297 (1)<br />
800000 359 (1)<br />
900000 407 (1)<br />
1000000 484 (1)</p>
<p>Ich hab selbstverständlicherweise keinerlei Statusmeldungen dazwischen und auch sonst nichts im Quicksortcode was irgendwie alles verlangsamen würde überzeugt euch selbst...</p>
<pre><code class="language-cpp">void CInfoQuickBubbleDlg::OnStarten() 
{
	long zeit_vor,zeit_nach;

	m_b_cancel.EnableWindow(false);
	m_b_ok.EnableWindow(false);

	m_Text = &quot;Anzahl\tZeit&quot;;
	long i=100000;
	long* Array;
	while(i&lt;=1000000){
	//while(i&lt;100){
		Array = new long[i];
		Inf_Fuellen(Array,i);
		zeit_vor = GetTickCount();
		Inf_QuickSort(Array,0,i);
		zeit_nach = GetTickCount();
		m_Text += CString(13)+CString(10)+ConvertToCString(i) + &quot;\t&quot; + ConvertToCString(zeit_nach - zeit_vor) + &quot;\t (&quot;+Inf_DurchschnittFirst100(Array) + &quot;)&quot;;
		UpdateData(false);
		//MessageBox(&quot;&quot;,&quot;&quot;,0);
		i = i + 100000;

	}

	m_b_cancel.EnableWindow(true);
	m_b_ok.EnableWindow(true);
}
void CInfoQuickBubbleDlg::Inf_Fuellen(long* buffer,long number)
{
	srand((unsigned)(time(NULL))); 
	for(long i=0;i&lt;=number;i++)
	{
		long zufall =  rand(); 
		buffer[i]=zufall;
		//m_Text += ConvertToCString(buffer[i])+CString(13)+CString(10);
	}
}
CInfoQuickBubbleDlg::Inf_QuickSort(long* buffer,long unten,long number)
{
	if(number&gt;unten){
      long li = unten, re = number;
      long VElement = buffer[(unten + number) / 2];  // Vergleichselement bestimmen
	  while (li &lt;= re) {
        // Erstes Element suchen, das größer oder gleich dem
        // Vergleichselement ist, beginnend vom linken Index
        while (li &lt; number &amp;&amp; buffer[li] &lt; VElement) //
          ++li;

        // Element suchen, das kleiner oder gleich dem
        // Vergleichselement ist, beginnend vom rechten Index
        while (re &gt; unten &amp;&amp; buffer[re] &gt; VElement)  //
          --re;

        // Wenn Indizes nicht gekreuzt und nicht gleich --&gt; Inhalte vertauschen
        if (li &lt; re)
            Inf_Austausch(buffer, li, re);
        // Wenn Indizes nicht gekreuzt --&gt; eine Position weitersetzen
        if (li &lt;= re) {
          ++li;    --re;
        }
      }
	Inf_QuickSort(buffer,  unten, re);
	Inf_QuickSort(buffer, li, number);
	}
}
CInfoQuickBubbleDlg::Inf_Austausch(long* buffer,long first, long second)
{
	long buffered=0;
	buffered = buffer[first];
	buffer[first]=buffer[second];
	buffer[second] = buffered;
}

CString CInfoQuickBubbleDlg::ConvertToCString(long zahl)
{
    CString zahlCS; 
    zahlCS.Format(&quot;%i&quot;,zahl); 
    return zahlCS; 
}

CString CInfoQuickBubbleDlg::Inf_DurchschnittFirst100(long* buffer)
{
	double var=0;
	for(int i=0;i&lt;100;i++)
		var=var+buffer[i];
	return ConvertToCString(var/100);
}
</code></pre>
<p>dummer-/seltsammerweise kann ich das ganze nicht in freier wildbahn also nicht ohne VC++ Entwicklungsumgebung starten(bzw nach 400000 gibts nen speicherzugriffsfehler), obwohl dort beide Versionen Release und Debug laufen.</p>
<p>wär schön wenn mir wer sagen könnte was ich beim code nicht effizient genug geschrieben hab oder warum java schneller is <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> ...</p>
<p>interessant für mich so nebenbei wär auch noch warum der durchschnitt der ersten 100 zahlen so variiert obwohl der code der gleiche ist .... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/topic/62893/c-mfc-vs-java-bluej</link><generator>RSS for Node</generator><lastBuildDate>Fri, 17 Apr 2026 04:01:31 GMT</lastBuildDate><atom:link href="https://www.c-plusplus.net/forum/topic/62893.rss" rel="self" type="application/rss+xml"/><pubDate>Tue, 27 Jan 2004 18:54:29 GMT</pubDate><ttl>60</ttl><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Tue, 27 Jan 2004 19:05:30 GMT]]></title><description><![CDATA[<p>also im rahmen des informatikunterrichts wollte ich unserm lehrer mal zeigen wie viel schneller C++ im Vergleich mit Java ist .... Soweit so gut.<br />
Da wir gerade Sortieralgorithmen machen anhand von Quick bzw Bubblesort...<br />
Ich hab jetzt erstmal QuickSort geschrieben. Einmal für Java und einmal für C++ mit Dialog von Mfc....<br />
Rahmenbedingungen sind 100.000 bis 1.000.000 &quot;zufällige&quot; Zahlen zwischen 0 und 30000 in 100.000 schritten zum Sortieren ...<br />
Durschnitt gibt den Durchschnitt der ersten 100 zufälligen zahlen an<br />
Zeit ist bei java System.currentTimeMillis(), fallses wem was sagt und bei<br />
C++ GetTickCount()...<br />
SEIT WANN IST DENN JAVA SCHNELLER ? <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
<p>---- JAVA -----<br />
Items Time Durchschnitt<br />
100000 31 15.34<br />
200000 78 7.19<br />
300000 110 4.67<br />
400000 141 3.75<br />
500000 187 2.95<br />
600000 235 3.01<br />
700000 250 2.12<br />
800000 297 1.41<br />
900000 343 1.35<br />
1000000 390 1.85</p>
<p>---- C++ -------<br />
Anzahl Zeit<br />
100000 31 (12)<br />
200000 78 (7)<br />
300000 125 (4)<br />
400000 172 (3)<br />
500000 219 (3)<br />
600000 265 (2)<br />
700000 297 (1)<br />
800000 359 (1)<br />
900000 407 (1)<br />
1000000 484 (1)</p>
<p>Ich hab selbstverständlicherweise keinerlei Statusmeldungen dazwischen und auch sonst nichts im Quicksortcode was irgendwie alles verlangsamen würde überzeugt euch selbst...</p>
<pre><code class="language-cpp">void CInfoQuickBubbleDlg::OnStarten() 
{
	long zeit_vor,zeit_nach;

	m_b_cancel.EnableWindow(false);
	m_b_ok.EnableWindow(false);

	m_Text = &quot;Anzahl\tZeit&quot;;
	long i=100000;
	long* Array;
	while(i&lt;=1000000){
	//while(i&lt;100){
		Array = new long[i];
		Inf_Fuellen(Array,i);
		zeit_vor = GetTickCount();
		Inf_QuickSort(Array,0,i);
		zeit_nach = GetTickCount();
		m_Text += CString(13)+CString(10)+ConvertToCString(i) + &quot;\t&quot; + ConvertToCString(zeit_nach - zeit_vor) + &quot;\t (&quot;+Inf_DurchschnittFirst100(Array) + &quot;)&quot;;
		UpdateData(false);
		//MessageBox(&quot;&quot;,&quot;&quot;,0);
		i = i + 100000;

	}

	m_b_cancel.EnableWindow(true);
	m_b_ok.EnableWindow(true);
}
void CInfoQuickBubbleDlg::Inf_Fuellen(long* buffer,long number)
{
	srand((unsigned)(time(NULL))); 
	for(long i=0;i&lt;=number;i++)
	{
		long zufall =  rand(); 
		buffer[i]=zufall;
		//m_Text += ConvertToCString(buffer[i])+CString(13)+CString(10);
	}
}
CInfoQuickBubbleDlg::Inf_QuickSort(long* buffer,long unten,long number)
{
	if(number&gt;unten){
      long li = unten, re = number;
      long VElement = buffer[(unten + number) / 2];  // Vergleichselement bestimmen
	  while (li &lt;= re) {
        // Erstes Element suchen, das größer oder gleich dem
        // Vergleichselement ist, beginnend vom linken Index
        while (li &lt; number &amp;&amp; buffer[li] &lt; VElement) //
          ++li;

        // Element suchen, das kleiner oder gleich dem
        // Vergleichselement ist, beginnend vom rechten Index
        while (re &gt; unten &amp;&amp; buffer[re] &gt; VElement)  //
          --re;

        // Wenn Indizes nicht gekreuzt und nicht gleich --&gt; Inhalte vertauschen
        if (li &lt; re)
            Inf_Austausch(buffer, li, re);
        // Wenn Indizes nicht gekreuzt --&gt; eine Position weitersetzen
        if (li &lt;= re) {
          ++li;    --re;
        }
      }
	Inf_QuickSort(buffer,  unten, re);
	Inf_QuickSort(buffer, li, number);
	}
}
CInfoQuickBubbleDlg::Inf_Austausch(long* buffer,long first, long second)
{
	long buffered=0;
	buffered = buffer[first];
	buffer[first]=buffer[second];
	buffer[second] = buffered;
}

CString CInfoQuickBubbleDlg::ConvertToCString(long zahl)
{
    CString zahlCS; 
    zahlCS.Format(&quot;%i&quot;,zahl); 
    return zahlCS; 
}

CString CInfoQuickBubbleDlg::Inf_DurchschnittFirst100(long* buffer)
{
	double var=0;
	for(int i=0;i&lt;100;i++)
		var=var+buffer[i];
	return ConvertToCString(var/100);
}
</code></pre>
<p>dummer-/seltsammerweise kann ich das ganze nicht in freier wildbahn also nicht ohne VC++ Entwicklungsumgebung starten(bzw nach 400000 gibts nen speicherzugriffsfehler), obwohl dort beide Versionen Release und Debug laufen.</p>
<p>wär schön wenn mir wer sagen könnte was ich beim code nicht effizient genug geschrieben hab oder warum java schneller is <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /> ...</p>
<p>interessant für mich so nebenbei wär auch noch warum der durchschnitt der ersten 100 zahlen so variiert obwohl der code der gleiche ist .... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/445591</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/445591</guid><dc:creator><![CDATA[Trigger_Hurt]]></dc:creator><pubDate>Tue, 27 Jan 2004 19:05:30 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Tue, 27 Jan 2004 19:21:53 GMT]]></title><description><![CDATA[<p>Zeig mal die Java-Version.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/445612</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/445612</guid><dc:creator><![CDATA[Gregor]]></dc:creator><pubDate>Tue, 27 Jan 2004 19:21:53 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Tue, 27 Jan 2004 21:13:47 GMT]]></title><description><![CDATA[<p>hier bidde <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
<pre><code class="language-cpp">import java.awt.event.*;
import java.io.*;
import re.*;
// packet vom lehrer das fenster und so vereinfacht....
import javax.swing.*;
import java.util.*;

public class Quicksort implements ActionListener
{
    int NumberInt;
     int [] x;
    Quicksort(){
        kaf.initText(1,this);
        kaf.setButton(1,&quot;Start&quot;);

    }
  void vertausche (int[] array, int idx1, int idx2) {
    int tmp = array[idx1];
    array[idx1] = array[idx2];
    array[idx2] = tmp;
  }
  void QuickSortIt (int[] Feld, int unten, int oben) {
    if(oben&gt;unten){
      int li = unten, re = oben;
      int VElement = Feld[(unten + oben) / 2];  // Vergleichselement bestimmen
      while (li &lt;= re) {
        // Erstes Element suchen, das größer oder gleich dem
        // Vergleichselement ist, beginnend vom linken Index
        while (li &lt; oben &amp;&amp; Feld[li] &lt; VElement) //
          ++li;

        // Element suchen, das kleiner oder gleich dem
        // Vergleichselement ist, beginnend vom rechten Index
        while (re &gt; unten &amp;&amp; Feld[re] &gt; VElement)  //
          --re;

        // Wenn Indizes nicht gekreuzt und nicht gleich --&gt; Inhalte vertauschen
        if (li &lt; re)
            vertausche(Feld, li, re);
        // Wenn Indizes nicht gekreuzt --&gt; eine Position weitersetzen
        if (li &lt;= re) {
          ++li;    --re;
        }
      }
      QuickSortIt (Feld,  unten, re);
      QuickSortIt( Feld, li, oben);
    }// if(oben&gt;unten)
  }// 
    public int Zufall(){
      int r=0;
      r= (int)Math.round(Math.random()*30000);
      //kaf.writeLn(&quot; |&quot;+r +&quot;|&quot;);
      return r;
     }
    public void fuellen(int Anzahl){
     for(int counter=0;counter&lt;Anzahl;counter++){
        x[counter]=Zufall();
        }
     }
    public void Ausgeben(int[] Feld){
    for(int counter=0;counter&lt;NumberInt;counter++)
        kaf.writeLn(x[counter]+&quot;&quot;);
    }
    public void actionPerformed(ActionEvent ae)
    {
      int i = 0;

      long t1=0,t2=0,ergeb=0;
        if(ae.getActionCommand()==&quot;Start&quot;){
            kaf.clear();
            //NumberInt = Integer.parseInt(kaf.getText());
            NumberInt = 1000000;
            kaf.writeLn(&quot;Starting with &quot; + NumberInt + &quot; rounds... &quot;);
            kaf.writeLn(&quot;Time\tItems\tTime&quot;);
            for(i=100000;i&lt;=NumberInt;i+=100000)
            {
                x=new int[i];
                fuellen(i);

                t1=System.currentTimeMillis();
                QuickSortIt(x,0,i-1);
                t2=System.currentTimeMillis();
                ergeb = t2-t1;
                kaf.writeLn(i + &quot;\t&quot; + i + &quot;\t&quot; + ergeb + &quot;\t&quot; + GetDurchschnitt(x));

             }
            kaf.writeLn(&quot;Fertisch&quot;);
            //Ausgeben(x);
         }
    }
   double GetDurchschnitt (int[] Feld) {   
        double var=0;
        for(int i=0;i&lt;100;i++)
            var=var+Feld[i];
        var = var / 100;
        return var;
    }
 }
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/445711</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/445711</guid><dc:creator><![CDATA[Trigger_Hurt]]></dc:creator><pubDate>Tue, 27 Jan 2004 21:13:47 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Tue, 27 Jan 2004 21:59:52 GMT]]></title><description><![CDATA[<p>speicherleck deluxe</p>
<p>while(i&lt;=1000000){<br />
Array = new long[i];</p>
]]></description><link>https://www.c-plusplus.net/forum/post/445741</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/445741</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Tue, 27 Jan 2004 21:59:52 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 00:28:28 GMT]]></title><description><![CDATA[<p>IMHO ist das Problem einfach, dass du dich nicht gut genug in den Sprachen auskennst, um C++ besonders schnell im Vergleich zu Java darzustellen, was du ja wohl möchtest. Das fängt schon bei der Wahl des Benchmark-Themas an. Das ist eben keine starke Schwachstelle von Java. Wenn du Java als lahm darstellen willst, dann berechne Sinus-Werte oder stecke ints in Listen und arbeite mit denen. Die müssen in Java in Wrapper-Objekte gepackt werden, was einen starken Nachteil darstellt. Zudem fehlen mir im C++-Code schon so banale Dinge wie &quot;const&quot;. Wenn man ein schnelles Programm haben möchte, dann muss man dem Compiler am Besten auch etwas helfen. ...und beim Compiler frage ich mich sowieso, ob du vielleicht eine dieser VC++-Versionen erwischt hast, die einfach nicht optimieren.</p>
<p>C++ ist nunmal nicht generell um Größenordnungen schneller als Java. Da hat Java in den letzten Jahren ne Menge aufgeholt. Während man zu Java 1.0-Zeiten noch von einem Performanceunterschied in der Größenordnung von Faktor 20-40 ausgehen konnte, ist dieser jetzt auf etwas Faktor 2-4 zurückgegangen. Zudem gibt es tatsächlich Bereiche, wo man mit Java ohne Probleme ein sehr schnelles Programm kriegt, während man sich mit C++ in diesen Bereichen schon Gedanken machen muss und vielleicht garnicht an die Performance von Java herankommt. Der Performanceunterschied zwischen Java und C++ ist inzwischen zumindest so gering, dass es in erster Linie vom Programmierer abhängt, in welcher Sprache ein implementierter Algorithmus schneller läuft.</p>
<p>Ich habe bei dir das Gefühl, dass du vor allem C++ noch nicht so gut verstehst, dass du schon an Performance denken solltest. Ich vermute, dass du da momentan in einer Phase steckst, in der du zwar weißt, wo du etwas einfügen mußt, um etwas bestimmtes zu erreichen, in der du aber noch nicht zu 100% weißt, was du da eigentlich machst. Zumindest war ich mal in so einer Phase und da habe ich IMHO so ähnlichen Code produziert wie du jetzt. Wenn das bei dir der Fall ist, dann empfehle ich dir, den VC++ wegzuwerfen, dir den g++ runterzuladen und mit einem einfachen Editor und einem guten C++-Buch (also kein VC++-Buch) die Sprache &quot;neu&quot; zu lernen. Der von dir produzierte Fehler und die Tatsache, dass du ihn nicht gefunden hast, deuten übrigens auch darauf hin, dass du dein Wissensstand auf dem von mir beschriebenen Niveau ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/445797</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/445797</guid><dc:creator><![CDATA[Gregor]]></dc:creator><pubDate>Wed, 28 Jan 2004 00:28:28 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 09:30:50 GMT]]></title><description><![CDATA[<p>zum letzten rate ich dir ned<br />
je mehr du proggst desto besser wirst dus verstehn... egal ob vc++ oder ned</p>
]]></description><link>https://www.c-plusplus.net/forum/post/445892</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/445892</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Wed, 28 Jan 2004 09:30:50 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 12:08:53 GMT]]></title><description><![CDATA[<p>Das sehe ich halt nicht so. Wenn man in so einem Stadium eine IDE wie das VS nutzt, dann lernt man vor allem, sich eine GUI zusammenzuklicken und die Stellen im Code zu finden, wo man irgendetwas &quot;einfügen&quot; kann. Programmieren lernt man dabei IMHO nicht. Man lernt ja nichtmal, was eigentlich C++ ist und was VC++-spezifisch ist.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446032</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446032</guid><dc:creator><![CDATA[Gregor]]></dc:creator><pubDate>Wed, 28 Jan 2004 12:08:53 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 12:27:23 GMT]]></title><description><![CDATA[<p>Gregor schrieb:</p>
<blockquote>
<p>Das sehe ich halt nicht so. Wenn man in so einem Stadium eine IDE wie das VS nutzt, dann lernt man vor allem, sich eine GUI zusammenzuklicken und die Stellen im Code zu finden, wo man irgendetwas &quot;einfügen&quot; kann. Programmieren lernt man dabei IMHO nicht. Man lernt ja nichtmal, was eigentlich C++ ist und was VC++-spezifisch ist.</p>
</blockquote>
<p>Stimmt, nur wird man auf deine vorgeschlagene Weise keine großen Fortschritte machen. Deshalb tendiere ich zu Sovoks Meinung.</p>
<p>Grüße Rapha</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446051</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446051</guid><dc:creator><![CDATA[Rapha]]></dc:creator><pubDate>Wed, 28 Jan 2004 12:27:23 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 12:35:55 GMT]]></title><description><![CDATA[<p>Was verstehst du hier unter einem Fortschritt? Meinst du damit, dass man damit nicht gleich ne GUI mit 10 Dialogen zusammenklicken kann, sondern erstmal nur auf die Konsole angewiesen ist?</p>
<p>Naja, stimmt schon: Es ist immer schön, wenn man was sehen kann. Noch schöner ist es allerdings, wenn man etwas versteht. Das Verstehen kommt aber nicht dadurch, dass man sich ne GUI zusammenklickt. Dafür ist meine Methode deutlich besser geeignet.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446060</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446060</guid><dc:creator><![CDATA[Gregor]]></dc:creator><pubDate>Wed, 28 Jan 2004 12:35:55 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 12:40:33 GMT]]></title><description><![CDATA[<p>Aloha Gregor,</p>
<p>ich muß auch Sovok und Rapha beipflichten.<br />
Zeit ist Geld, und zudem leben wir im dritten Jahrtausend.</p>
<p>Wer frickelt sich denn noch HTML-Seiten per Texteditor zusammen ?<br />
Jemand der zuviel Zeit hat.</p>
<p>Da Du nach und nach, umso größer Dein Projekt wird sowieso recht schnell an die &quot;Einfügen&quot;-Grenzen im Studio kommst, holst Du Dir die Infos, die Du benötigst sowieso aus dem Net oder per Fachliteratur, so daß Du successiv dazulernst. Nur das Du vorher nicht die Lust verlierst, weil Du einfach net vorankommst.</p>
<p>Aber ich fand den Vergleichsabschnitt spannend, den Du in Deinem ersten Posting hattest.</p>
<p>Grüße</p>
<p>BOA</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446066</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446066</guid><dc:creator><![CDATA[BOA]]></dc:creator><pubDate>Wed, 28 Jan 2004 12:40:33 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 12:47:40 GMT]]></title><description><![CDATA[<p>*Gregor zur Seite spring*</p>
<p>Sicher kann man mit WYSIWYG Zeugs schnell Sachen machen, die man<br />
sonst erst nach Jahren machen könnte. Aber das engt einen auch ein,<br />
denn dann kann man immer nur auf den Augetrampelten Pfaden anderer laufen,<br />
und nix selber erproben. Ich denke es ist wichtig verstehen zu können,<br />
was man macht, und warum. Und eine Unabhängige Sicht, ohne Entwicklungsumgebungssspezifische<br />
Konstrukte, wie es sie im VC und der MFC gibt, ist sicher von Vorteil.</p>
<p>Devil</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446076</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446076</guid><dc:creator><![CDATA[phlox81]]></dc:creator><pubDate>Wed, 28 Jan 2004 12:47:40 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 12:58:26 GMT]]></title><description><![CDATA[<p>Stimmt</p>
<p>Mir ging es aber so, dass ich erst Resultate sehen wollte und dadurch erst Lust am Programmieren bekommen habe.<br />
&quot;Kompliziertere Elemente&quot; (aus der Sicht eines Anfängers, wie z.B. Subclassing oder GDI) habe ich zuerst immer mit Copy und Paste in meinen Code eingefügt. Nach und nach versteht man dann aber auch, was man eingendlich geschrieben hat.<br />
Dies halte ich für die effektivste Lernmethode (sofern man eine ungefähre Ahnung von Klassen und Vererbung hat).</p>
<p>Grüße Rapha</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446093</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446093</guid><dc:creator><![CDATA[Rapha]]></dc:creator><pubDate>Wed, 28 Jan 2004 12:58:26 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 13:02:34 GMT]]></title><description><![CDATA[<p>Ich sehe es ebenfalls so das man ruhig die ersten schritte ohne &quot;Click an Play&quot; machen sollte. Ich mache extrem viel im Standard C++ und meide es Compilerspezifisch zu werden. Man lernt dabei einiges und geht Wege die man sonst nie gehen würde.</p>
<p>Ab einem gewissen Level wird man Automatisch anfangen zu klicken. Man wird aber, mit der gewonnenen Einstellung, sich Themen die einen lange beschäftigen tief erforschen wollen.</p>
<p>Auch wird bei der &quot;Zeitaufwendigen&quot; Methode das Verstädnnis für die &quot;Click an Play&quot; geschichte besser geschult und man findet fehler oder ideen schneller <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
<p>(Ich muss z.Z. ein Konfigdialog für ODBC Datenbankquellen machen, da ists mir erst mal wurscht wie es geht und nutze auch alles was vorgefertigt rumliegt...<br />
Ich stand aber mit GUIs schon immer auf Kriegsfuss <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/446102</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446102</guid><dc:creator><![CDATA[Knuddlbaer]]></dc:creator><pubDate>Wed, 28 Jan 2004 13:02:34 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 15:17:40 GMT]]></title><description><![CDATA[<p>schön das ich so einen munteren dialog eingeleitet habe... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
ich freu mich über eure antworten !<br />
Gregor du liegst mit deinen schätzungen wahrscheinlich garnicht so weit von der realität entfernt.</p>
<p>Ich will hier zwar nicht auf die ganzen &quot;bahnbrechenden&quot; Sachen eingehen mit denen ich die Welt schon bereichert und zugemüllt habe, allerdings muss ich sagen, dass ich im Zweifel mehr von dem Verstehe als du glaubst(nicht viel mehr).</p>
<p>Als ich mit c++ anfing wurde ich als erstes erstmal von allen möglichen neuen Sachen erschlagen, da ich vorher VB geprogt hab <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f921.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--clown_face"
      title=":clown:"
      alt="🤡"
    /> ... Als ich mich dann einigermaßen in Consolenprogrammierung reingefuchst hatte, stellte ich fest, das für den täglichen Gebrauch praktisch keinerlei Konsolenanwendungen gibt. Dann kaufte ich mir ein Buch über Windowsprogrammierung mit den MFC...<br />
Und ich wurde wieder erschlagen... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f603.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--grinning_face_with_big_eyes"
      title=":D"
      alt="😃"
    /><br />
Allerdings hab ich festgestellt, wie einfach manche Sachen (Dialoge laden, auslesen , beenden, ....) gehen ohne das ich wirklich weiß wie sie funktionieren.<br />
Doch durch anfängliche Erfolge wurden meine Probleme immer komplexer und ich hab immer wieder was dazugelernt, weil ich immer nur bestimmt sachen nachgucken/hier nachfragen musste. Ich würd sogar sagen, dass meine C++Kenntnisse ohne MVC++ flöten gegangen wären. Natürlich ist sowas vielleicht nicht so doll von der WYSIWYG-ideologie her. Allerdings sind Erfolgserlebnisse und Motivation enorm wichtig (besonders wenn man in seiner freizeit programmiert) und ich denke, dass ich auch über die VC++ MFC-Schiene irgendwann auf den Pfad der Tugend zurückkomme...</p>
<p>Um jetzt mal wieder ein paar n4pfragen loszulassen....<br />
Was ist ein Speicherleck (definition, das ich eins im Code hab, weiß ich ja jetzt :D) und wie kann ich das schließen ?<br />
Gibts irgendwo Seiten/Tutorials zur Codeoptimierung ?</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446283</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446283</guid><dc:creator><![CDATA[Trigger_Hurt]]></dc:creator><pubDate>Wed, 28 Jan 2004 15:17:40 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 15:44:46 GMT]]></title><description><![CDATA[<p>Du hast ein &quot;new&quot; ohne entsprechendes &quot;delete&quot; verwendet. Bzw. &quot;new[]&quot; ohne &quot;delete[]&quot;. Du kannst mal den Anfang (das erste Fünftel) eines beliebigen Einsteiger-C++-Buchs lesen, dann erfährst du mehr über new und delete.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446317</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446317</guid><dc:creator><![CDATA[Gregor]]></dc:creator><pubDate>Wed, 28 Jan 2004 15:44:46 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 16:34:55 GMT]]></title><description><![CDATA[<p>nu mach mich mal nicht so runter... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /><br />
ich hab ser wohl delete verwendet, allerdings kommt da dann immer im Debug<br />
DAMAGE : after normal block (#76) at 0x00960068<br />
und bei release krieg ich immer so komische haltpunkte bei start durch MVC++ und in freier wildbahn Speicherzugriffsfehler....</p>
<pre><code>m_Text += CString(13)+CString(10)+ConvertToCString(i) + &quot;\t&quot; + ConvertToCString(zeit_nach - zeit_vor) + &quot;\t (&quot;+Inf_DurchschnittFirst100(Array) + &quot;)&quot;;
		UpdateData(false);
		//MessageBox(&quot;&quot;,&quot;&quot;,0);
		i = i + 100000;
		delete Array;

	}// while
</code></pre>
]]></description><link>https://www.c-plusplus.net/forum/post/446384</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446384</guid><dc:creator><![CDATA[Trigger_Hurt]]></dc:creator><pubDate>Wed, 28 Jan 2004 16:34:55 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 18:59:33 GMT]]></title><description><![CDATA[<p>Wenn Array ein Array ist, probier es doch mal mit</p>
<p>delete [] Array;</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446479</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446479</guid><dc:creator><![CDATA[Gregor]]></dc:creator><pubDate>Wed, 28 Jan 2004 18:59:33 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 19:13:42 GMT]]></title><description><![CDATA[<p>gleicher effekt... <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f61e.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--disappointed_face"
      title=":("
      alt="😞"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/446486</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446486</guid><dc:creator><![CDATA[Trigger_Hurt]]></dc:creator><pubDate>Wed, 28 Jan 2004 19:13:42 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Wed, 28 Jan 2004 19:47:19 GMT]]></title><description><![CDATA[<p>Pack das Sortierzeugs mal in eine eigene Klasse.</p>
<p>Devil</p>
]]></description><link>https://www.c-plusplus.net/forum/post/446524</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/446524</guid><dc:creator><![CDATA[phlox81]]></dc:creator><pubDate>Wed, 28 Jan 2004 19:47:19 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Thu, 29 Jan 2004 18:08:14 GMT]]></title><description><![CDATA[<p>also ich würd mal sagen, dass das nicht die abstürze verhindern wird ...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/447271</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/447271</guid><dc:creator><![CDATA[Trigger_Hurt]]></dc:creator><pubDate>Thu, 29 Jan 2004 18:08:14 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Thu, 29 Jan 2004 18:24:54 GMT]]></title><description><![CDATA[<p>Damage After Block XX heisst: du hast über die Array Grenze hinausgeschrieben.</p>
<p><a class="plugin-mentions-user plugin-mentions-a" href="https://www.c-plusplus.net/forum/uid/488">@BOA</a>:</p>
<blockquote>
<p>Zeit ist Geld, und zudem leben wir im dritten Jahrtausend.</p>
</blockquote>
<p>Exakt, und deshalb kann es sich eine Firma nicht leisten jemanden zu beschäftigen der die Sprache nicht verstanden hat, sondern nur eine GUI klicken kann.</p>
<blockquote>
<p>Wer frickelt sich denn noch HTML-Seiten per Texteditor zusammen ?</p>
</blockquote>
<p>Wir. (Webdesign Firma)<br />
Warum? Weil du WYSIWYG Editoren nur zum prototypen verwendest - da ist aber manchmal Photoshop sogar besser <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /><br />
Und bei dynamischen Seiten funktionieren die sowieso nicht mehr.</p>
<blockquote>
<p>Da Du nach und nach, umso größer Dein Projekt wird sowieso recht schnell an die &quot;Einfügen&quot;-Grenzen im Studio kommst, holst Du Dir die Infos, die Du benötigst sowieso aus dem Net oder per Fachliteratur, so daß Du successiv dazulernst. Nur das Du vorher nicht die Lust verlierst, weil Du einfach net vorankommst.</p>
</blockquote>
<p>Einige, aber nicht die meisten.<br />
Du kannst fast alles per Copy&amp;Paste machen - ohne auch nur annähernd zu verstehen was da abgeht.</p>
<p>Unterhalte dich mal mit Lehreren: die werden dir sagen dass erstmal die Grundlagen können musst bevor du komplexe Sachen machst. Die umgekehrte Methode geht zwar auch, aber nur mit sehr viel Willenskraft.</p>
]]></description><link>https://www.c-plusplus.net/forum/post/447281</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/447281</guid><dc:creator><![CDATA[Shade Of Mine]]></dc:creator><pubDate>Thu, 29 Jan 2004 18:24:54 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Thu, 29 Jan 2004 22:15:27 GMT]]></title><description><![CDATA[<blockquote>
<p>Exakt, und deshalb kann es sich eine Firma nicht leisten jemanden zu beschäftigen der die Sprache nicht verstanden hat, sondern nur eine GUI klicken kann.</p>
</blockquote>
<p>seit wann hat gui zusammenklicken was mit einer richtigen software zu tun?<br />
dazu gehört viel mehr<br />
auf der anderen seite gibts aber auch einige firmen die gar keinen bedarf für grosse entwicklungen haben<br />
die kaufen sich dann ne softwarelizenz mit gui-quellcode und klicken sich die gui dann in vb zurecht wie sie es brauchen</p>
<blockquote>
<p>Du kannst fast alles per Copy&amp;Paste machen - ohne auch nur annähernd zu verstehen was da abgeht.</p>
</blockquote>
<p>sobald man was macht was nicht mehr 100%tig dem mainstream entspricht und nich schon 1000 mal gemacht wurde hat man mit copy&amp;paste eh keine chance mehr<br />
auf der anderen seite. wenns nix besonderes is und nix besonderes kann interessierts eh keine sau <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f609.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--winking_face"
      title=";)"
      alt="😉"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/447434</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/447434</guid><dc:creator><![CDATA[Sovok]]></dc:creator><pubDate>Thu, 29 Jan 2004 22:15:27 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Thu, 29 Jan 2004 22:41:28 GMT]]></title><description><![CDATA[<p>Naja das mit dem Copy und Paste ist blöd gesagt.</p>
<p>Wenn ich in MFC programmiere, dann male ich mir meinen Dialog auch zusammen, weils einfach nervig is das erst mit Pixelangaben im Code zu plazieren.<br />
Aber dann muss ich dem Dialog ja auch noch beibringen was er tun soll wenn bestimmte Buttons gedrückt werden.<br />
Und da fängts an das ich von dem Scheiß auch was verstehen muss.<br />
Und daher ist das mit dem Copy und Paste sehr leicht dahergeplabbelt.</p>
<p>Irgendwie hab ich so das Gefühl das es generell immer negative Leute gibt.<br />
Wenn man es einfach macht und Code &quot;zusammenklickt&quot; dann heisst es man würde ja eh nix von dem Verstehen was man da macht.</p>
<p>Und wenn man dann WIRKLICH mal was selbst macht, dann heisst es, &quot;das wird eh nix&quot;, &quot;das gibts schon&quot;, &quot;warum das Rad zweimal erfinden?&quot;.</p>
<p>Warum muß man sich denn immer so negativ über andere beklagen?<br />
Kann man denn nicht einfach nur ne Hilfestellung geben und fertig?<br />
Nein da müssen dann noch die eigenen sturren Meinungen durchgeboxt werden.<br />
Das bringt keinem was und verschwendet speicherplatz auf dem Server <img
      src="https://www.c-plusplus.net/forum/plugins/nodebb-plugin-emoji/emoji/emoji-one/1f642.png?v=ab1pehoraso"
      class="not-responsive emoji emoji-emoji-one emoji--slightly_smiling_face"
      title=":)"
      alt="🙂"
    /></p>
]]></description><link>https://www.c-plusplus.net/forum/post/447448</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/447448</guid><dc:creator><![CDATA[TeeJay]]></dc:creator><pubDate>Thu, 29 Jan 2004 22:41:28 GMT</pubDate></item><item><title><![CDATA[Reply to C++ (mfc) vs. Java(BlueJ) on Fri, 20 Feb 2004 22:26:22 GMT]]></title><description><![CDATA[<p>Also....ich habe mir das alles mal durchgelesen und ich kann auch noch ein paar Sachen dazu sagen...</p>
<p>Aus meiner Erfahrung in der C++ sowie in der JAVA-Programmierung kann ich sagen, dass C++ einfach schneller ist, da in C++ Maschinencode erzeugt wird, was ja bei JAVA bekanntich nur immer Sinne des JIT (Just-in-Time) der Fall ist. Dadurch gibt es schon Unterschiede...Bei JAVA ist die ganze Zeit die VM (Virtual Machine) am Werkeln und das kostet Performance. Da gibt es C++ einfach nicht zu toppen. Es geht ja bei JAVA schon los, wenn ich ein einfaches Fenster erzeuge, dass ziemlich viele Steuerelemente beinhaltet. Das dauert dann manchmal schon satte 3 bis 4 Sekunden und bei C++ &quot;Klick&quot; und da ist das Fenster (auf dem gleichen Rechner).</p>
<p>Was C++ ausbremst, ist die Vererbungsstruktur der MFC....da ist JAVA wieder im Vorteil. Die MFC ist einfach zu komplex, weswegen C++ da auch ausgebremst wird.</p>
<p>Wegen der Konsolenprogrammierung: Als kleiner Tipp...man kommt besser, wenn man die Basics auf der Konsole lernt. Weil dann hat man keine Probleme mit der Windowsprogrammierung. Wenn man auf der Konsole die OOP (Objektorientierte Programmierung) und prozedurale Programmierung drauf hat (inklusive Zeiger und dynamischer Speichernutzung) kann man sich an die MFC und Windowsprogrammierung wagen. Eher hat das keinen Sinn. Weil man dann nicht verstehen kann, was man überhaupt macht.</p>
<p>Und die Sache mit den Webseiten und dem Texteditor: Ich kenne viele Firmen, die professionelle Webseiten (wie oben schon gesagt vor allem dynamische Webseiten) mit konventionellen Editoren schreiben.</p>
<p>Die Firmen, die ich kenne, bauen auf Leute, die wissen was sie tun. Und wenn wir uns mal die Ausbildungen ansehen, dann bauen die Ausbildungsstätten darauf auf, den Leuten die Programmierung in C++ (Grundlagen) auf der Konsole beizubringen, denn umso leichter fällt der Umstieg. Ich kenne das aus eigener Erfahrung...</p>
<p>Aber ansonsten sind beides richtig gute Sprachen, sowie JAVA als auch C++. Das wollte ich von meiner Meinung her noch sagen...</p>
]]></description><link>https://www.c-plusplus.net/forum/post/464382</link><guid isPermaLink="true">https://www.c-plusplus.net/forum/post/464382</guid><dc:creator><![CDATA[Oliver Z.]]></dc:creator><pubDate>Fri, 20 Feb 2004 22:26:22 GMT</pubDate></item></channel></rss>