Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

21

15.10.2014, 15:20

In diesem Fall wird Funktionalität neu implementiert, die schon bereit gestellt wird. Das ist eine große Fehlerquelle und erschwert die Wartung.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Dieser Beitrag wurde bereits 2 mal editiert, zuletzt von »NachoMan« (15.10.2014, 15:26)


DeathStorm

Frischling

Beiträge: 63

Wohnort: Warendorf

Beruf: Fachinformatiker - Anwendungsentwicklung

  • Private Nachricht senden

22

15.10.2014, 15:24

Einzeiler grundsätzlich schneller zu lesen sind, als 5-zeilige Umsetzungen.


Also das das grundsätzlich so ist, kann ich aus meiner Erfahrung definitiv verneinen.

Aber interessant ist es, dass du darauf hinweist, nachdem ich in meinem Beitrag noch die Erweiterungsmethoden erwähnt habe.


Was meinst du genau mit "das ist Interessant"?


In diesem Fall wird Funktionalität neu implementiert, die schon bereit gestellt wird. Das ist eine große Fehlerquelle und erschwert die Wartung.


Generell machts in der Tat mehr Sinn bestehende Funktionen und Methoden zu verwenden. Aber warum nicht Funktionen und Methoden nachbauen, wenn man Sie lernen / verstehen will oder ggf. sogar eigene Details daran verändern will?
Besucht meinen neuen Blog auf Weird Mind :)

Neue kreative Köpfe sind immer gern gesehen :thumbsup:

NachoMan

Community-Fossil

Beiträge: 3 885

Wohnort: Berlin

Beruf: (Nachhilfe)Lehrer (Mathematik, C++, Java, C#)

  • Private Nachricht senden

23

15.10.2014, 15:26

Ein Anfänger kann natürlich mehr mit der langen Version anfangen. Die Lösung wird bei den meisten Anfängern sicher ähnlich aussehen wie bei mir.
Dafür muss er natürlich verstanden haben wie Variablen, Bedingungen, Verzweigungen und Schleifen funktionieren. Kann man die Aufgabe nicht ohne Hilfe lösen sollte man nochmal nachzulesen und ein wenig zu experimentieren.
"Der erste Trunk aus dem Becher der Erkenntnis macht einem zum Atheist, doch auf dem Grund des Bechers wartet Gott." - Werner Heisenberg
Biete Privatunterricht in Berlin und Online.
Kommt jemand mit Nach oMan?

Schorsch

Supermoderator

Beiträge: 5 145

Wohnort: Wickede

Beruf: Softwareentwickler

  • Private Nachricht senden

24

15.10.2014, 17:32

Die kurze Version ist auch nur weniger verständlich wenn man die dort verwendeten Dinge nicht kennt oder nicht ausreichend kennt. Vor allem hier finde ich es doch sehr übersichtlich. Es ist sofort klar was passiert. Bei der langen Variante ist es absolut unklar. Vor allem weil erst geguckt wird ob der String vorhanden wird und dann gezählt wird. Aber ob der Anfänger jetzt die eine Zeile abtippt und damit nichts anfangen kann oder die vielen Zeilen abtippt und hier vermutlich auch nicht richtig versteht was passiert, dann doch lieber einfach eine Hilfestellung geben und keinen fertigen Code präsentieren. So nach dem Motto, iteriere über die gesamte Liste und vergleiche jeden Eintrag mit deinem String. Wenn beide übereinstimmen erhöhe eine Zählvariable. Wie die einzelnen Schritte dann gelöst werden bleibt dem Fragenden überlassen und er sollte damit selbst auf eine Lösung kommen. Dann bleibt das Verständnis auch sinnvoll hängen.
„Es ist doch so. Zwei und zwei macht irgendwas, und vier und vier macht irgendwas. Leider nicht dasselbe, dann wär's leicht.
Das ist aber auch schon höhere Mathematik.“

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

25

15.10.2014, 17:34

NOPE, da widerspreche ich.
Da kannst Du gern widersprechen, dennoch gilt meine Aussage als allgemein korrekt.
Man stelle sich das vor allem auch mal im größeren Maßstab vor. Wenn eine komplette Software so umständlich lang geschrieben wird, blick das irgendwann niemand mehr. Aus einer Zeile werden 20 und aus 2.000 Zeilen Code werden 40.000, aus 20.000 werden 400.000? Na dann viel Spaß. Klar, das ist sicherlich viel verständlicher. Wohl eher nicht.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

26

15.10.2014, 19:23

Es geht auch so

http://msdn.microsoft.com/de-de/library/…=vs.110%29.aspx

C#-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
        private void Form1_Load(object sender, EventArgs e)
        {
            this.List = new List<string>();
            List.Add("ABC");
            List.Add("BNw");
            List.Add("ABC");
            Console.WriteLine(this.List.FindAll(FindString).Count);

        }

        private static bool FindString(String Value)
        {
            if (Value.Equals("ABC"))
            {
                return true;
            }

            return false;
        }

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

27

15.10.2014, 20:09

Du hast schon gemerkt, dass "List" keine so coole Idee für einen Namen für eine private Variable der Klasse war, oder? ;)
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

DeathStorm

Frischling

Beiträge: 63

Wohnort: Warendorf

Beruf: Fachinformatiker - Anwendungsentwicklung

  • Private Nachricht senden

28

16.10.2014, 09:28

Da kannst Du gern widersprechen, dennoch gilt meine Aussage als allgemein korrekt.


Nur das du wiederholst was du sagst macht deine Aussage nicht besser. Deine Hochrechnung ist völliger Quatsch und hat nichts mit dem Thema zu tun, da die Rechnung völlig am Thema vorbei ist und 0 realistisch.

Dein Code ist nicht falsch aber mit Sicherheit nicht allgemein "besser". Das gleiche gilt für Kurzschreibweisen.
Besucht meinen neuen Blog auf Weird Mind :)

Neue kreative Köpfe sind immer gern gesehen :thumbsup:

Sylence

Community-Fossil

Beiträge: 1 663

Beruf: Softwareentwickler

  • Private Nachricht senden

29

16.10.2014, 09:32

Deine Hochrechnung ist völliger Quatsch und hat nichts mit dem Thema zu tun, da die Rechnung völlig am Thema vorbei ist und 0 realistisch.


Ähm. Nein. Die Hochrechnung ist nur deine Aussage (ein 5-Zeiler ist besser lesbar als ein 1-Zeiler) zu Ende gedacht.
Du bist auch erst der zweite Mensch, den ich treffe, der behauptet, dass Kurzschreibweisen schlechter lesbar wären, als die ausformulierte Schleife.

BlueCobold

Community-Fossil

Beiträge: 10 738

Beruf: Teamleiter Mobile Applikationen & Senior Software Engineer

  • Private Nachricht senden

30

16.10.2014, 09:45

Da kannst Du gern widersprechen, dennoch gilt meine Aussage als allgemein korrekt.
Nur das du wiederholst was du sagst macht deine Aussage nicht besser.
Das stimmt, denn besser als "richtig" geht ja nicht.

Deine Hochrechnung ist völliger Quatsch und hat nichts mit dem Thema zu tun, da die Rechnung völlig am Thema vorbei ist und 0 realistisch.
Im Gegenteil. Deine Logik auf viel Code angewendet führt genau dazu.

Dein Code ist nicht falsch aber mit Sicherheit nicht allgemein "besser". Das gleiche gilt für Kurzschreibweisen.
Falsch. Kürzerer Code ist weniger fehleranfällig, einfacher zu verstehen, einfacher zu warten und insgesamt somit in jedem Fall besser. Welche Vorteile soll Deiner Meinung nach denn langer Code bieten? Dass er überflüssige Statements enthält, er schwerer zu durchblicken ist und auf die Menge an Zeilen mehr Potential für Fehler bietet? Wenn langer Code mit jedem Stückchen Logik selbstgeschrieben besser ist, Assembler ist noch immer verwendbar.
Teamleiter von Rickety Racquet (ehemals das "Foren-Projekt") und von Marble Theory

Willkommen auf SPPRO, auch dir wird man zu Unity oder zur Unreal-Engine raten, ganz bestimmt.[/Sarkasmus]

Werbeanzeige