Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Whiz-zarD

User
  • Registriert

  • Letzter Besuch

Alle Beiträge von Whiz-zarD

  1. Whiz-zarD hat auf Melina's Thema geantwortet in Java
    was gesucht wird: zufallszahlGroesserZehn wie die Methode heißt: ZufallszahlGroesserZehn Finde den Fehler. Hinweis: Groß- und Kleinschreibung spielt eine Rolle.
  2. Whiz-zarD hat auf Melina's Thema geantwortet in Java
    Mache dich außerdem vertraut mit dem Debugger. Setze einen Breakpoint in die gibZahl()-Methode und schaue dir Schritt-für-Schritt an, was passiert.
  3. Aber noch mal Back to Topic: Es gibt auch Zertfikate für Softwaretester. z.B. Zertifikate durch ISTQB (International Software Testing Qualifications Board). Vielleicht ist ja sowas für dich.
  4. Dafür wird die Zeit dann mit manuellen Tests verplempert und sorgt für Fehler und regt jeden nur auf. Willkommen in der Test-Hölle, wo die Test-Pyramide auf dem Kopf steht. Automatisierte Tests werden immer wichtiger, um konkurrenzfähig zu bleiben, da Software immer komplexer wird und manuelle Tests schlecht skalierbar sind. Zu mal in einer agilen Softwareentwicklung automatisierte Tests unabdingbar sind. Kannst ja gerne mal in meiner Firma anfangen, um zu sehen, was passiert, wenn man keine automatisierten Tests entwickelt werden, da die Softwarearchitektur dies nicht bzw. nur mit extrem hohen Hürden zulässt. Testautomatisierung dient auch dem Kunden, da damit Fehler im Vorfelde gefunden werden und auch Geld einspart, da Fehler sofort gefunden werden und nicht erst, wenn der Kunde schon das Release bekommen hat. Das erhöht auch die Kundenzufriedenheit und sorgt auch für eine Zufriedenheit unter den Entwicklern. Nichts ist schlimmer, als ein Fehler gemeldet zu bekommen, wo man erst mal Tagelang analysieren muss, wo der Fehler herkommt und in der Zwischenzeit die nächsten Fehler gemeldet werden. Testautomatisierung hilft auch dem Refactoring, da man eben das Verhalten der Anwendung kennt und die Anwendung nicht zum Einsturz bringt, nur weil man irgendwo an einer Wurzel zieht. Oft ist es so, dass man dreckige Stellen im Code gar nicht mehr anfässt, weil man eben nicht weiß, was passieren wird, wenn man sie anfasst. Mit Testautomatisierung wüsste man es. Folglich wird der Code auch immer schmutziger, weil man um diese Stelle drumherumbaut. Das wiederum hat zur Folge, dass Entwicklungen von neuen Features immer aufwendiger werden und der Schrei nach einer Neuentwicklung von Entwicklern wird immer größer und hinterher steht man dort mit einer über 10 Jahre alten, historisch gewachsenen, dreckigen Software, die so groß ist, sodass eine Neuentwicklung praktisch unmöglich erscheint und die Kunden immer unzufriedener werden und sich was anderes suchen.
  5. Ich würde mit ihm die Aufgabe gemeinsam machen, anstatt ihn nur alleine vor sich hin basteln zu lassen. Stelle ihn offene Fragen, wie z.B. wie er nun an die Sache rangehen würde oder wenn ihr gerade eine if-Abfrage bauen müsst, wie sie auszusehen hat und das wichtigste: Lass ihn die Tastatur steuern! Ich schätze mal, dass er sehr schüchtern ist und Hemmungen besitzt. Entwickle mit ihm ein kleines Spiel, wie z.B. das Galgenmännchen-Spiel oder ein einfaches Zahlenrate-Spiel. Da du auch erst im 1. Lehrjahr bist, könntet ihr vielleicht gemeinsam dabei was lernen, wie z.B. das Schreiben von Unittests.
  6. Bitte noch mal in einer verständlichen Sprache. Ich verstehe nicht, was du meinst. Edit: Ich glaube, ich verstehe so langsam, was du meinst, auch wenn das nicht gut ist, was du da machst. Wenn ein Arzt mehrere Spezialitäten haben kann, legt man dafür eine separate Tabelle an, um somit die 3. Normalform zu gewährleisten. Wenn du es aber unbedingt so in deinem Fall haben willst, kannst du einfach mit INSERT INTO SELECT arbeiten. Und wofür du die Sequenz brauchst, obwohl du schon eine ID hast, ist mir auch ein Rätsel, da man eben mit der Sequenz die ID generiert. Die Datenbank stellt ja sicher, dass die Sequenz eindeutig ist aber Aufpassen: Die Sequenz stellt eben nicht sicher, dass die Daten in korrekter zeitlicher Reihenfolge gespeichert werden.
  7. Der Name der Methode steht dort: generateRandomnumbers Die Frage hast du selbst schon beantwortet: Es ist also der Parameter der Methode. Da Console.WriteLine schriebst, gehe ich davon aus, dass ihr C# benutzt. Lese dazu dir mal die Dokumentation zum Thema "Methoden" durch: https://docs.microsoft.com/de-de/dotnet/csharp/methods Also hast du deine Frage wieder selbst beantwortet. Zufallszahlen lassen sich mit der Random-Klasse erzeugen. Du musst lediglich jetzt nur eine Reihe von Zufallszahlen generieren und zurückgeben.
  8. @BobbyJean: Deine Lösung ist nicht richtig. Dein Unterselect SELECT SUM(Laufzeit.Stunden) FROM Laufzeit INNER JOIN Maschine on Laufzeit.MaschineID = Maschine.MaschineID WHERE Laufzeit.Datum > Maschine.DatumLetzteWartung Summiert die Stunden aller Maschinen und nicht die Stunden der einzelnen Maschinen. Ich persönlich bin auch kein Freund davon, zwei mal die selbe Unterabfrage in der SELECT- und WHERE-Klausel einzubauen. Es ist doppelter Code und schlechter lesbar und das heißt schlechter wartbar und mehr fehleranfällig. In diesem Fall ist es sogar so, dass man doch Daten gruppieren möchte. Wieso wird das dann nicht gemacht?
  9. Jeder definiert die Begriffe anders, daher sollte man sich nicht so auf die Begriffe versteifen. Es geht nicht um einen Junior-Entwickler, sondern um einen Junior-DWH-Spezialisten und ähnlich, wie bei einem Junior-Entwickler sind auch für einen Junior-DWH-Spezialisten Kenntnisse erforderlich aber das sind nun mal nicht die selben Kenntnisse, wie bei einem Junior-Entwickler, sondern man sollte schon Grundkenntnisse von Datenbanken und Datenmodellierung haben. Begriffe wie z.B. ETL, Normalformen oder Snowflake- und Star-Schema sollten bekannt sein und genau das beschreibt auch die Stellenausschreibung.
  10. Sie wird nicht überschrieben. Mit dem Unterselect baue ich mir quasi eine neue Tabelle und in dieser verwende ich lediglich die selben Begriffe, wie in der Laufzeit-Tabelle. Man könnte auch das Unterselect in eine View packen und die View joinen.
  11. Die Stunden werden summiert. Die Unterabfrage: SELECT Laufzeit.MaschineID, SUM(Laufzeit.Stunden) AS Stunden FROM Laufzeit INNER JOIN Maschine ON Maschine.MaschineID = Laufzeit.MaschineID WHERE Laufzeit.Datum > Maschine.DatumLetzteWartung GROUP BY Laufzeit.MaschineID Gibt als Ergebnis die summierten Stunden pro Maschine, wo das Datum größer als das Datum der letzten Wartung ist. Beispiel: Folgende Daten sind gegeben: Laufzeit: MaschineID Datum Laufzeit 1 31.10.2019 5 1 20.11.2019 4 1 21.11.2019 8 Maschine: MaschineID MaschineTypID DatumLetzteWartung 1 1 01.11.2019 Die Abfrage würde nun folgendes Ergebnis liefern: MaschineID Stunden 1 12 Der Datensatz mit den 5 Stunden wird außer Acht gelassen, weil das Datum kleiner als das Datum der letzten Wartung ist und somit keine Rolle mehr spielt. Die Aufgabe war, dass man herausfinden soll, welche Maschine gewartet werden muss, wenn sie noch 100 Stunden benutzt wird. Also muss man auf die derzeitige Nutzung 100 Stunden drauf addieren und diesem Wert den Wartungsintervall vergleichen.
  12. Nein, da du ja Daten aus anderen Tabellen benötigst und die Daten musst du mittels Joins holen. Du willst doch in deiner Abfrage auch Tabellen joinen: Wo soll denn plötzlich Maschine und Maschinentyp herkommen, wenn nicht über Joins?
  13. Whiz-zarD hat auf InTheVoid's Thema geantwortet in IT-Arbeitswelt
    Keinen? Viele? Kommt drauf an. GitHub ist nichts weiter als eine Quellcodeverwaltung, die öffentlich zur Verfügung steht. Du kannst bei Projekten mitmachen oder eigene Projekte hochladen. Es liegt also an dir, ob es für dich Mehrwert bietet. Natürlich kannst du dort eigene Projekte hochladen und dies für zukünftige Arbeitgeber als Referenz angeben. Das wäre dann ein Mehrwert. Wenn du keine eigenen Projekte hast, bringt dir dann GitHub auch nichts.
  14. SELECT Kunde.*, Maschine.MaschineID, Laufzeit.Stunden FROM Kunde INNER JOIN Maschine ON Maschine.KundeID = Kunde.KundeID INNER JOIN MaschinenTyp ON MaschinenTyp.MaschineTypID = Maschine.MaschineTypID INNER JOIN ( SELECT Laufzeit.MaschineID, SUM(Laufzeit.Stunden) AS Stunden FROM Laufzeit INNER JOIN Maschine ON Maschine.MaschineID = Laufzeit.MaschineID WHERE Laufzeit.Datum > Maschine.DatumLetzteWartung GROUP BY Laufzeit.MaschineID ) Laufzeit ON Laufzeit.MaschineID = Maschine.MaschineID WHERE Laufzeit.Stunden + 100 > MaschinenTyp.WartungsintervallInStunden
  15. Für mich sieht es sogar so aus, dass die zweite Schleife falsch ist und jetzt deine Lösung richtig ist. Die zweite Schleife macht ja keinen Sinn. Sie durchläuft ja nun die Spalten der Zeilen aber das ist nicht nötig, da die Spalten über einen Index angesprochen werden. Du könntest aber die Zeilen: kopierezeile(liste, fehler, i, aktuellezeilefehlerarray) aktuellezeilefehlerarray++ in: kopierezeile(liste, fehler, i, aktuellezeilefehlerarray++) ändern. Das hat den selben Effekt, da das Doppel-Plus eine Post-Inkrement-Operation ist. D.h. es wird nach dem Abrufen des Wertes dieser inkrementiert.
  16. Klar, mein Hobby ist auch Dokumente für Fake-Projekte schreiben...
  17. Wenn es eine Neu-Entwicklung ist, muss es ja einen Grund geben, wieso die Anwendung neu entwickelt wurde und das ist dein Ist-Zustand.
  18. Hä? Du schreibst deine Projekt-Dokumentation nicht während deiner Abschlussarbeit, sondern davor? Nur zur Info: Das ist Betrug...
  19. Whiz-zarD hat auf einen Beitrag in einem Thema geantwortet in Systemadministratoren und Netzwerktechniker
    Es gibt da kein Richtig oder Falsch. Junior und Senior sind keine offiziellen Berufsbezeichnungen und somit auch keine standardisierte Begriffe und jede Firma definiert es anders. Daher kann Gulp.de noch so viel darüber schreiben. Es ist und bleibt eine Entscheidung der Firma.
  20. Wenn ich mir das Diagramm anschaue, kommt es mir sowieso an dieser Stelle falsch vor. Ich vermute mal, dass get(k) einfach nur die Filiale aus der Liste holen soll aber nach dem Diagramm erhöht die get()-Methode die Gehälter. Also anstatt: public void erhoeheGehaltMitarbeiter(double x) { var i = meineFilialen.Size(); for(var k = 0; k <= i; k++) { var filiale = meineFilialen.get(k); var meineMitarbeiter = filiale.getMeineMitarbeiter(); var z = meineMitarbeiter.Size(); for(var j = 0; j <= z - 1; j++) { // ... } } } steht dort einfach nur: public void erhoeheGehaltMitarbeiter(double x) { var i = meineFilialen.Size(); for(var k = 0; k <= i; k++) { meineFilialen.get(k); } } Und die get()-Methode erhöht dann das Gehalt, was aber nicht klappen kann, da die Methode x gar nicht kennt. get() müsste also einen Rückgabewert zur Zentrale zurückgeben.
  21. Ja, Size() holt die Größe der Liste, um damit die Austrittsbedingung der for-schleife zu definieren. Heutzutage würde man das aber mit einer foreach-Schleife lösen.
  22. Was verstehst du denn dort nicht? Das ist eine Schleife, die über die Fillialen läuft. Innerhalb dieser Schleife gibt es eine weitere Schleife, die alle Mitarbeiter durchläuft und bei allen Mitarbeitern, die nicht Fillialleiter sind, wird das Gehalt erhöht.
  23. Stimmt. Hab die Klassen per Copy/Paste in Notepad++ erstellt. Also ohne IDE.
  24. Es ist halt dafür dar, um für Datentypen unterschiedlicher Art einen Eingangspunkt zu ermöglichen. z.B. einer formatierten Ausgabe von Strings: Console.WriteLine("Hallo {0}, ich bin {1} Jahre alt.", "Welt", 42); // Ausgabe: // Hallo Welt, ich bin 42 Jahre alt. "Welt" ist ein String (Objekt) und 42 ein Integer (Wertetyp). Damit die WriteLine()-Methode mit den unterschiedlichen Datentypen umgehen kann, nimmt sie ein object-Array entgegen (man sieht das Array nicht, wegen dem params-Schlüsselwort). D.h. die 42 wird in ein object konvertiert (boxing). Die Methode nimmt sich dies sogar zum Vorteil, da object die ToString()-Methode besitzt und die 42 kann direkt in ein String umgewandelt werden, da es ja nun ein object ist.
  25. Inzwischen schreibt man auch nicht mehr: Square square = new Square(...); sondern: var square = new Square(...); und überlasst den Kompiler den Rest. Die Angabe, um welchen konkreten Datentypen es sich handelt, ist nur eine doppelte Information, da wir mit new Square(...) schon den Datentyp kennen.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.