Die Mathe-Redaktion - 20.06.2018 12:58 - Registrieren/Login
/TABLE>
Auswahl
ListenpunktHome
ListenpunktAktuell und Interessant ai
ListenpunktArtikelübersicht/-suche
ListenpunktAlle Links / Mathe-Links
ListenpunktFach- & Sachbücher
ListenpunktMitglieder / Karte
ListenpunktRegistrieren/Login
ListenpunktArbeitsgruppen
ListenpunktSchwätz / Top 15
ListenpunktWerde Mathe-Millionär!
ListenpunktAnmeldung MPCT Juli
ListenpunktFormeleditor fedgeo
Aktion im Forum
Suche
Stichwortsuche in Artikeln und Links von Matheplanet
Suchen im Forum
Suchtipps

Bücher
Englische Bücher
Software
Suchbegriffe:
Mathematik bei amazon
Naturwissenschaft & Technik
In Partnerschaft mit Amazon.de
Kontakt
Mail an Matroid
[Keine Übungsaufgaben!]
Impressum

Bitte beachten Sie unsere Nutzungsbedingungen, die Distanzierung, unsere Datenschutzerklärung und
die Forumregeln.

Sie können Mitglied werden. Mitglieder können den Matheplanet-Newsletter bestellen, der etwa alle 2 Monate erscheint.

Der Newsletter Okt. 2017

Für Mitglieder
Mathematisch für Anfänger
Wer ist Online
Aktuell sind 556 Gäste und 27 Mitglieder online.

Sie können Mitglied werden:
Klick hier.

Über Matheplanet
 
 
Suchwörter   (werden UND-verknüpft)
Keines der folgenden   keine eigenen Beiträge
Name des Autors 
nur die Themen
Forum 
 Suchrichtung  Auf  Ab Suchmethode  Sendezeit Empfehlungbeta [?]
       Die Suche erfolgt nach den angegebenen Worten oder Wortteilen.   [Suchtipps]

Link auf dieses Suchergebnis hier

Forum
Thema Eingetragen
Autor

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Hamcrast Matcher Vorbedingung  
Beitrag No.6 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2017-10-30
Chris311
J
\(\begingroup\)
Nach gut 4 Jahren in der Softwareentwicklung muss ich einsehen, was ich hier damals für einen Quatsch geschrieben habe. Die Posts sind total überflüssig und unsauber. Hab ich das wirklich geschrieben? Wie man hier sauber testet ist mir mittlerweile glasklar und ich sehe hier auch keine Probleme. Ich erledige das Thema somit (gerne kann es auch gelöscht werden).
\(\endgroup\)

Programmieren
Schule 
Thema eröffnet von: Bekell
C++: Variable in Variable  
Beitrag No.3 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2017-10-30
Chris311
 
\(\begingroup\)
Hallo Bekell,
du kannst beispielsweise 2 dimensionale Arrays oder ne map verwenden.
Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: katenum
Java: Subklassen Compilier-/Laufzeitfehler  
Beitrag No.2 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2017-10-30
Chris311
 
\(\begingroup\)
Hallo katenum,
man spricht von einem Kompilierfehler, wenn der Compiler beim kompilieren scheitert.
Man spricht von einem Laufzeitfehler, wenn der Fehler erst zur Laufzeit, das heißt im Betrieb der Anwendung, auftritt.
Liebe Grüße
Chris
\(\endgroup\)

Programmieren
  
Thema eröffnet von: hingiswiss
Java: Einfache Hash-Methode erstellen  
Beitrag No.4 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2014-03-28
Chris311
 
\(\begingroup\)
Ich würde die Finger von der Methode hashCode() lassen. Das PRoblem ist, dass verschiedene Compiler hashCode() unterschiedlich behandeln. Wenn du es also richtig machen willst, muss du auch die equals-Methode implementieren.

Ich würde dir daher folgendes empfehlen:
Java
  1. MessageDigest instance = MessageDigest.getInstance("SHA-1");
  2. byte[] digest = instance.digest(string.getBytes());

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Daten/Objekt-Anti-Symmetrie  
Beitrag No.41 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-08-22
Chris311
J
\(\begingroup\)
Achso ja, weil es keine Fabrikmethode gibt.
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Hamcrast Matcher Vorbedingung  
Beitrag No.5 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-08-21
Chris311
J
\(\begingroup\)
Ok, man musste die describeTo-Methode noch befüllen.


Indessen wundere ich mich über eine ganz andere Fehlermeldung:
Java
package romischeZahlTest;
 
import static org.hamcrest.core.Is.is;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThat;
import static romischeZahlTest.VergleicheStringBuilder.essentiallyEquals;
 
import org.junit.Ignore;
import org.junit.Test;
 
import romischeZahl.RoemischeZahl;
 
public class RoemischeZahlenTest {
 
	@Test
	public void testeKonvertierenVon1ZuI() {
		assertEquals(RoemischeZahl.zu(1), new StringBuilder("I"));
        }
}


Der Test ist rot, mit der Meldung:
java.lang.AssertionError; expected: java.lang.StringBuilder but was: java.lang.StringBuilder

Das ist doch ein Scherz oder?

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Ant Ivy zum Laufen bringen  
Beitrag No.2 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-08-21
Chris311
J
\(\begingroup\)
Ok, danke für deine Antwort. Zwar habe ich damit den nächsten Fehler bekommen, aber mir ist es nun nicht mehr wichtig das hinzubekommen.

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Daten/Objekt-Anti-Symmetrie  
Beitrag No.39 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-08-21
Chris311
J
\(\begingroup\)
Ok, ich habe meine Implementierung angepasst und um eine Factory erweitert:
Java
package kapitel6;
 
public class TestKlasse {
 
	public static void main(String[] args) {
		Point point = new Point();
 
		point.x = 1;
		point.y = 2;
 
		Punkt punkt = new PunktFactory();
 
		punkt.setCartesian(1, 2);
	}
}

und
Java
package kapitel6;
 
public class PunktFactory implements Punkt {
 
	double x;
	double y;
 
	double r;
	double theta;
 
	@Override
	public double getX() {
		return x;
	}
 
	@Override
	public double getY() {
		return y;
	}
 
	@Override
	public void setCartesian(double x, double y) {
		this.x = x;
		this.y = y;
	}
 
	@Override
	public double getR() {
		return r;
	}
 
	@Override
	public double getTheta() {
		return theta;
	}
 
	@Override
	public void setPolar(double r, double theta) {
		this.r = r;
		this.theta = theta;
	}
 
}

Damit gibt es zumindest keine Kompilierfehler und es sieht sauber aus. Mir gefällt der Einwand von Ommo aus Beitrag no. 33 auch besonders gut. Insgesamt werde ich diese Stelle im Buch wohl einfach überlesen müssen (was ich nur schweren Herzens kann).

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Daten/Objekt-Anti-Symmetrie  
Beitrag No.23 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-28
Chris311
J
\(\begingroup\)
Also, ich versuche gerade selber ein Beispiel zu bauen:
Java
package kapitel6;
 
public class TestKlasse {
 
	public static void main(String[] args) {
		Point point;
 
		point.x = 1;
		point.y = 2;
 
		Punkt punkt;
 
		punkt.setCartesian(1, 2);
 
		System.out.println("hi");
	}
}

Leider noch Kompilierfehler da weder point noch punkt initialisiert wurden...aber ich kann die ja hier nicht initialisieren.
Java
package kapitel6;
 
public class Point {
	public double x;
	public double y;
}

Java
package kapitel6;
 
public interface Punkt {
	double getX();
 
	double getY();
 
	void setCartesian(double x, double y);
 
	double getR();
 
	double getTheta();
 
	void setPolar(double r, double theta);
}

Ich denke das ist schonmal der Anfang für das Beispiel.

Edit: Muss ich das Interface nicht noch irgendwo implementieren?

Liebe Grüße
Chris

[ Nachricht wurde editiert von Chris311 am 28.07.2013 23:06:00 ]
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Daten/Objekt-Anti-Symmetrie  
Beitrag No.22 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-28
Chris311
J
\(\begingroup\)
Wie wäre es mit einem Beispiel, damit ich das auch einsehe (jetzt wo ihr es alle verstanden habt).
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Daten/Objekt-Anti-Symmetrie  
Beitrag No.8 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-25
Chris311
J
\(\begingroup\)
Hallo ihr beiden.


Tut mir leid. Ich habe das Gefühl, dass ihr nicht genau auf meine Fragen geantwortet habt. Falls doch, dann hat das keinerlei Klarheit geschafft. Was ihr sagt ist mir schon klar, aber wie das auf die Textpassagen passt nicht...

Vielleicht wollte ihr zu den drei Fragen einmal DIREKT Stellung beziehen.

Das wäre mir eine große Hilfe.

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Daten/Objekt-Anti-Symmetrie  
Beitrag No.5 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-24
Chris311
J
\(\begingroup\)
Ok, ich habe die entsprechende Passage noch einmal im Clean Code gelesen und weiß nun wieder, woher diese Frage rührte:

Angenommen wir haben eine Klasse Point:
Java
public class Point{
 public double x;
 public double y;
}

und ein Interface Point:
Java
public interface Point{
 double getX();
 double getY();
 void setCartesian(double x, double y);
 double getR();
 double getTheta();
 void setPolar(double r, double theta);
}

"Die Klasse ist sehr klar in Rechteckkoordinaten implementiert. Hier sind wir gezwungen, diese Daten unabhängig zu manipulieren. Dadurch wird die Implementierung enthüllt."

Warum????

"Tatsächlich würde die Implementierung selbst dann enthüllt, wenn Ihre Variablen privat wären und wir nur Getter und Setter für die einzelnen Variablen verwenden würden."

Wie macht mans denn dann????

"Eine Klasse setzt und liest ihre Variablen nicht einfach durch Getter und Setter, sondern sie enthüllt abstrakte Interfaces, mit denen der Benutzer die Essenz der Daten manipulieren kann, ohne deren Implementierung kennen zu müssen."

Ist das die Antwort? Das verstehe ich dann nicht.

Kann mir jemand helfen?

Liebe Grüße
Chris

[ Nachricht wurde editiert von Chris311 am 24.07.2013 20:59:15 ]
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Law of Demeter  
Beitrag No.4 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-24
Chris311
J
\(\begingroup\)
Ok, danke für die Antworten.

Das sehe ich ein. Ich eröffne einen Post in dem ich darauf nochmal eingehen werde.

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Ant Ivy zum Laufen bringen  
Themenstart
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-21
Chris311
J
\(\begingroup\)
Hallo,


jemand von euch schonmal mit Apache Ant Ivy gearbeitet? Es sieht so aus, als würde ich das bald verwenden müssen. Aus diesem Grund habe ich mir einmal ein Tutorial besorgt  Ivy

Dort hänge ich schon gleich zu Beginn. Ich habe meine Umgebungsvariablen wie angegeben angepasst und erhalte nach Ausführung von:

ant build.xml

die Fehlermeldung:
Buildfile: C:\Users\Christian\workspace\IvyTest\build.xml

BUILD FAILED
Target "build.xml" does not exist in the project "IvyTest".

Total time: 0 seconds

Weiß jemand Rat?

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Daten/Objekt-Anti-Symmetrie  
Beitrag No.4 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-21
Chris311
J
\(\begingroup\)
Hallo chryso und vielen Dank für deine Antwort.

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Law of Demeter  
Beitrag No.2 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-21
Chris311
J
\(\begingroup\)
Hallo Thomas und vielen Dank für deine Antwort.


Wird also die innere Struktur von Options oder von ctxt enthüllt?

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Daten/Objekt-Anti-Symmetrie  
Beitrag No.2 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-21
Chris311
J
\(\begingroup\)
Danke für deine Antwort, mitlerweile sehe ich das auch so :D
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Hamcrast Matcher Vorbedingung  
Beitrag No.4 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-21
Chris311
J
\(\begingroup\)
Ok, das lag an der package-Struktur. Anscheinend gibt's Probleme bei Verwendung von default-packages.

Allerdings schlagen meine Tests nun fehl. Beispielsweise direkt der erste:
Java
@Test
public void testeKonvertierenVon1ZuI() {
 assertThat(RoemischeZahl.zu(1), essentiallyEquals(new StringBuilder("I")));
}

Da bekomme ich einen AssertionError:
Expected:
but was:

Was schhlägt hier fehl? Warum steht da bei expected nichts?

Liebe Grüße
Chris
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Hamcrast Matcher Vorbedingung  
Beitrag No.2 im Thread
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-16
Chris311
J
\(\begingroup\)
Hallo Wrathchild und danke für deine Antwort.

Ich habe deine Vorschläge berücksichtig und StringBuilder verwendet. Der Vorteil ist natürlich, dass diese mutable sind, was in diesem Kontext sinnvoller erscheint. Jedenfalls funktionieren meine Matcher dann nicht mehr. Ich wollte dann (vor allem auch als Übung) einen eigenen Matcher schreiben. Ich denke das hat auch soweit gut funktioniert, allerdings bekomme ich den gerade nicht importiert. Hier mal mein Zwischenergebnis:

TestCode (nicht kompilierbar):
Java
  1. import static org.hamcrest.CoreMatchers.is;
  2. import static org.junit.Assert.assertThat;
  3.  
  4. import org.junit.Test;
  5.  
  6. public class TestRoemischeZahlen {
  7.  
  8. @Test
  9. public void testeKonvertierenVon1ZuI() {
  10. assertThat(RoemischeZahl.zu(1), essentiallyEquals(new StringBuilder("I")));
  11. }
  12.  
  13. @Test
  14. public void testeKonvertierenVon2ZuII() {
  15. assertThat(RoemischeZahl.zu(2), is("II"));
  16. }
  17.  
  18. @Test
  19. public void testeKonvertierenVon3ZuIII() {
  20. assertThat(RoemischeZahl.zu(3), is("III"));
  21. }
  22.  
  23. @Test
  24. public void testeKonvertierenVon5ZuV() {
  25. assertThat(RoemischeZahl.zu(5), is("V"));
  26. }
  27.  
  28. @Test
  29. public void testeKonvertierenVon4ZuIV() {
  30. assertThat(RoemischeZahl.zu(4), is("IV"));
  31. }
  32. }

mein Produktivcode:
Java
  1. public class RoemischeZahl {
  2.  
  3. public static StringBuilder zu(int zahlwert) {
  4. StringBuilder roemischeZahl = new StringBuilder();
  5.  
  6. if (zahlwert <= 3) {
  7. for (int counter = 1; counter <= zahlwert; counter++)
  8. roemischeZahl.append("I");
  9.  
  10. return roemischeZahl;
  11. }
  12.  
  13. if (zahlwert == 4) {
  14. return roemischeZahl.append("IV");
  15. }
  16.  
  17. if (zahlwert >= 5) {
  18. return roemischeZahl.append("V");
  19. }
  20.  
  21. return null;
  22. }
  23. }

und mein Matcher:
Java
  1. import org.hamcrest.Description;
  2. import org.hamcrest.Factory;
  3.  
  4. public class VergleicheStringBuilder extends org.hamcrest.BaseMatcher<StringBuilder> {
  5.  
  6. private static StringBuilder actual;
  7.  
  8. public VergleicheStringBuilder(StringBuilder actual) {
  9. this.actual = actual;
  10. }
  11.  
  12. public boolean matches(Object expected) {
  13. return actual.equals(expected);
  14. }
  15.  
  16. public void describeTo(Description description) {
  17. // TODO Auto-generated method stub
  18.  
  19. }
  20.  
  21. @Factory
  22. public static VergleicheStringBuilder essentiallyEquals(StringBuilder actual) {
  23. return new VergleicheStringBuilder(actual);
  24. }
  25.  
  26. }


Hast du eine Ahnung (du kannst es natürlich nicht wirklich wissen) wie ich den import organisieren kann, sodass ich meinen Matcher in meiner Testklasse verwenden kann?

Zur Information:
Ich habe zwei source-Folder: src und test
in src ist mein Produktivcode
in test sind die beiden anderen Klassen

Seltsamerweise wurden die Klassen nochmal in sog. "default packages" gepackt (vermutlich weil ich keinen Namen angegeben habe). Das ganze ist unter einem Java-Projekt unter Dach und Fach.

Ich würde mich sehr über deine Antwort freuen.

Liebe Grüße
Chris

[ Nachricht wurde editiert von Chris311 am 16.07.2013 19:32:42 ]
\(\endgroup\)

Programmieren
Universität/Hochschule 
Thema eröffnet von: Chris311
Java: Hamcrast Matcher Vorbedingung  
Themenstart
Zum letzten BeitragZum nächsten BeitragZum vorigen BeitragZum erstem Beitrag2013-07-15
Chris311
J
\(\begingroup\)
Hallo,


ich schreibe ein kleines Programm das mir Zahlen in ihre römische Darstellung umwandelt. Dabei gehe ich mit TDD vor.

Ich habe bereits meine Testklasse
Java
  1. import static org.hamcrest.CoreMatchers.is;
  2. import static org.junit.Assert.assertThat;
  3.  
  4. import org.junit.Test;
  5.  
  6. public class TestRoemischeZahlen {
  7.  
  8. @Test
  9. public void testeKonvertierenVon1ZuI() {
  10. assertThat(RoemischeZahl.zu(1), is("I"));
  11. }
  12.  
  13. @Test
  14. public void testeKonvertierenVon2ZuII() {
  15. assertThat(RoemischeZahl.zu(2), is("II"));
  16. }
  17. }

und meinen Produktivcode:
Java
  1. public class RoemischeZahl {
  2.  
  3. private static String roemischeZahl;
  4.  
  5. public static String zu(int zahlwert) {
  6. roemischeZahl = "";
  7.  
  8. for (int counter = 1; counter <= zahlwert; counter++)
  9. roemischeZahl += "I";
  10.  
  11. return roemischeZahl;
  12. }
  13. }


Meine Frage lautet nun, ob ich nicht eine Möglichkeit habe, die Test unabhängig voneinander zu gestalten. Sprich, wenn man Zeile 6 des Produktivcodes weglässt, bekommt man eine Fehlermeldung. Ich habe schon von Annotationen wie @Before oder @Rule gehört, weiß allerdings gerade nicht wie ich diese hier anwenden kann.

Ich würde mich sehr über Eure Hilfe freuen.

Liebe Grüße
Chris
\(\endgroup\)
 

Sie haben sehr viele Suchergebnisse
Bitte verfeinern Sie die Suchkriterien

[Die ersten 20 Suchergebnisse wurden ausgegeben]
Link auf dieses Suchergebnis hier
(noch mehr als 20 weitere Suchergebnisse)

-> [Suche im Forum fortsetzen]
 
 

 
All logos and trademarks in this site are property of their respective owner. The comments are property of their posters, all the rest © 2001-2018 by Matroids Matheplanet
This web site was made with PHP-Nuke, a web portal system written in PHP. PHP-Nuke is Free Software released under the GNU/GPL license.
Ich distanziere mich von rechtswidrigen oder anstößigen Inhalten, die sich trotz aufmerksamer Prüfung hinter hier verwendeten Links verbergen mögen.
Lesen Sie die Nutzungsbedingungen, die Distanzierung, die Datenschutzerklärung und das Impressum.
[Seitenanfang]

used time 0.414188