software entwicklung

H

Heyoka955

Gast
Du hast recht mich interessiert das aber das Problem ist ich hbe weitere Module. Ich würde mich auf das komplett fokussieren aber geht nicht wegen den anderen Fächern.

Als aofzware Entwickler hast du nur deine Aufgabe zu programmieren aber ich habe noch andere Sachen wie Module und Abgaben.

Sonst haste recht
 

mrBrown

Super-Moderator
Mitarbeiter
Du hast recht mich interessiert das aber das Problem ist ich hbe weitere Module. Ich würde mich auf das komplett fokussieren aber geht nicht wegen den anderen Fächern.
Überraschung: Das geht allen Studenten so, das ist den Veranstaltern bekannt und die Aufgaben sind auch entsprechend ausgelegt.

Als aofzware Entwickler hast du nur deine Aufgabe zu programmieren aber ich habe noch andere Sachen wie Module und Abgaben.
Du wirst in der echten Welt noch eine ziemliche Überraschung erleben...

Programmieren macht nur einen Teil der Arbeit aus, man hat genauso viele andere Dinge zu tun.
Und statt "andere Sachen wie Module und Abgaben" hat man dann X Projekte gleichzeitig, die alle eine härtere Deadline als deine Abgaben haben.

Software-Entwicklung ist eine ganze Ecke härter als das, was du im Studium machst nicht schaffst.
 
H

Heyoka955

Gast
Ich habe eine Verständnisfrage, wie stellt man sich die Parameter Übergabe vor und was soll mit der zweiten Parameter passieren?

Denke das ist mein Problem.
 
K

kneitzel

Gast
Genau, man hat nichts anderes zu tun, als Software Entwicklung. Das ist ja auch nur ein kleines Bisschen Sprache ...

Also wenn du wirklich Mal in die Software Entwicklung einsteigen solltest, dann bekommst du mit, was dazu gehört (wer bei uns ins Team bekommen ist, der hat direkt einen Stapel eBooks bekommen nur damit er was hat zum Nachlesen):
- Tooling - da gehört alles dazu, was man so braucht. IDE, Build Tools,....
- Sprache und Code libs (da kommt ja ständig was neues)
- Frameworks und Libs, die man braucht oder brauchen könnte
- weitergehende Sprachen und Frameworks (Nur die web Technologien sind Wahnsinn. HTML und CSS geht ja noch, aber dann JavaScript und Co mit Frameworks, die gefühlt täglich neue Versionen raus bringen ...
- Methodik (da wird dann auch jedes Jahr eine neue Kuh durch das Dorf getrieben .. oder hat jemand keinen Manager der was von continuous Integration schwafelt ohne zu wissen, was das genau ist?)
- QA - ein Thema für sich, Code Qualität, Testing, ....
- Datenbanken ... Riesen Bereich für sich ...
- ....

Aber ja: beruflich habe ich nur Software Entwicklung .....

Bezüglich der Auslastung: das geht doch Anderen auch nicht anders. Warum hast du da mehr Probleme? Gründe analysieren und abstellen. Und wenn Vorwissen fehlt: dann Plan das abzustellen. So es das ist, was du willst, kostet das evtl ein oder zwei Semester ... Aber geh es richtig an. Ziel darf nicht sein, irgendwie die Aufgabe abzugeben, sondern Ziel muss sein, dass du sowas gut kannst! Da musst du hin!

Und zur Not bedeutet das auch, dass man ein Jahr massiv arbeiten muss. Ich arbeite mind. 8h auf Arbeit, 2h Fahrt und dann lerne ich auch noch für meine Job. Und im Alter fällt mir das schwerer als früher... (So Wechsel ich gerade beruflich von .Netz zu Java .... Daher meine großen Aufwände, das zu meistern! Also glaub mir: ich weiss, wovon ich rede!)
 
H

Heyoka955

Gast
Genau, man hat nichts anderes zu tun, als Software Entwicklung. Das ist ja auch nur ein kleines Bisschen Sprache ...

Also wenn du wirklich Mal in die Software Entwicklung einsteigen solltest, dann bekommst du mit, was dazu gehört (wer bei uns ins Team bekommen ist, der hat direkt einen Stapel eBooks bekommen nur damit er was hat zum Nachlesen):
- Tooling - da gehört alles dazu, was man so braucht. IDE, Build Tools,....
- Sprache und Code libs (da kommt ja ständig was neues)
- Frameworks und Libs, die man braucht oder brauchen könnte
- weitergehende Sprachen und Frameworks (Nur die web Technologien sind Wahnsinn. HTML und CSS geht ja noch, aber dann JavaScript und Co mit Frameworks, die gefühlt täglich neue Versionen raus bringen ...
- Methodik (da wird dann auch jedes Jahr eine neue Kuh durch das Dorf getrieben .. oder hat jemand keinen Manager der was von continuous Integration schwafelt ohne zu wissen, was das genau ist?)
- QA - ein Thema für sich, Code Qualität, Testing, ....
- Datenbanken ... Riesen Bereich für sich ...
- ....

Aber ja: beruflich habe ich nur Software Entwicklung .....

Bezüglich der Auslastung: das geht doch Anderen auch nicht anders. Warum hast du da mehr Probleme? Gründe analysieren und abstellen. Und wenn Vorwissen fehlt: dann Plan das abzustellen. So es das ist, was du willst, kostet das evtl ein oder zwei Semester ... Aber geh es richtig an. Ziel darf nicht sein, irgendwie die Aufgabe abzugeben, sondern Ziel muss sein, dass du sowas gut kannst! Da musst du hin!

Und zur Not bedeutet das auch, dass man ein Jahr massiv arbeiten muss. Ich arbeite mind. 8h auf Arbeit, 2h Fahrt und dann lerne ich auch noch für meine Job. Und im Alter fällt mir das schwerer als früher... (So Wechsel ich gerade beruflich von .Netz zu Java .... Daher meine großen Aufwände, das zu meistern! Also glaub mir: ich weiss, wovon ich rede!)

Ich setzt mich ran und gucke was ich machen kann.

Nein Probleme steht oben geschrieben.

Ich will in Richtung Consulting oder Data Scientist.
 
H

Heyoka955

Gast
das ist mein ansatz code, zu aller erst will ich die Datei filtern so dass immer jedes Wort einzeln in der zeile steht.
Mein Ansatz wäre so für den zweiten parameter.




Code:
/*
 * This Java source file was generated by the Gradle 'init' task.
 */
package blatt2;

import java.io.*;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;
import java.util.List;

public class App {
    public String getGreeting() {
        return "Hello world.";
    }

    public static void main(String[] args) throws IOException {
        List<String> a = (List<String>) Files.lines(Paths.get("blatt2.txt"));
            filter.(x -> x.split(" ");  //Text filtern nach jeder neuen Zeile Mein Ansatz
            


        a.forEach(x -> System.out.println(x));

    }


}
 

mrBrown

Super-Moderator
Mitarbeiter
Du hast wirklich absolut keine Ahnung, was du da eigentlich machst, oder?

Wie kann man denn seit zwei Semestern Java programmieren, und so einen Müll schreiben?
 
H

Heyoka955

Gast
Du hast wirklich absolut keine Ahnung, was du da eigentlich machst, oder?

Wie kann man denn seit zwei Semestern Java programmieren, und so einen Müll schreiben?
Das war der gegebene Code bis auf
List<String> a = (List<String>) Files.lines(Paths.get("blatt2.txt"));
filter.(x -> x.split(" "); //Text filtern nach jeder neuen Zeile Mein Ansatz



a.forEach(x -> System.out.println(x));
 

mihe7

Top Contributor
Ich verstehe was da passiert aber nun frage ich mich wie ich das splitten kann
Würdest Du auch nur im Ansatz verstehen, was da passiert, dann würdest Du solchen Code überhaupt nicht schreiben. Erst castest Du einen Stream mal eben zur List und die zweite Zeile ist so dermaßen falsch, dass es für eine Erklärung keine Worte gibt.
 
H

Heyoka955

Gast
Würdest Du auch nur im Ansatz verstehen, was da passiert, dann würdest Du solchen Code überhaupt nicht schreiben. Erst castest Du einen Stream mal eben zur List und die zweite Zeile ist so dermaßen falsch, dass es für eine Erklärung keine Worte gibt.
Der cast sollte nicht da sein.
Das war wegen der ide. Ich habe heute beschlossen mit der ide zu arbeiten und wenn man nicht aufpasst dann irgendwo klickt weil man zu schnell war dann passiert sowas.
Der cast sollte nicht da sein.

Und die zweite Zeile sollte nur eine Idee sein was ich planen will Bzw mein Ziel was ich machen will.

Ich habe eine Fehlermeldung auch bekommen aber ich wollte es Posten damit ihr sieht was ich vorhatte.
 

mihe7

Top Contributor
Das macht es nicht besser. Was soll denn die Idee dahinter sein, einen Filter zu benutzen? Und wie kommst Du auf die Idee, dass split ein Prädikat für den Filter liefern würde?
 
H

Heyoka955

Gast
Das macht es nicht besser. Was soll denn die Idee dahinter sein, einen Filter zu benutzen? Und wie kommst Du auf die Idee, dass split ein Prädikat für den Filter liefern würde?
Mein Ziel war es den Stream in eine liste zu speichern.

Und dann den String der in der Liste gespeichert ist so zu filtern dass am Ende immer eine neue Zeile bei einem Wort kommt.
Ich hatte intuitiv für Split gedacht aber das macht kein Sinn. Weil er nur den String nach Leerzeichen trennt.
 

mihe7

Top Contributor
Man sieht in jedem Satz, dass Du nicht weißt, was Du da tust. Das meine ich ernst.

Schon mal darüber nachgedacht, warum die Methode lines() heißt?
 

mihe7

Top Contributor
Mal grob übersetzt: Die lines() Methode der Java BufferedReader Klasse gibt einen Stream von Elementen zurück, bei denen es sich um Zeilen handelt, die von diesem BufferedReader gelesen wurden.
 
H

Heyoka955

Gast
Mal grob übersetzt: Die lines() Methode der Java BufferedReader Klasse gibt einen Stream von Elementen zurück, bei denen es sich um Zeilen handelt, die von diesem BufferedReader gelesen wurden.
Ich weiß aber wie meint man: bei denen es sich um Zeilen handelt ?

Ich verstehe den Satz nicht so wirklich.
 

mihe7

Top Contributor
Die Elemente des Streams sind die Zeilen der Datei.

Kurz: die lines() Methode gibt die Zeilen einer Datei als Stream zurück. Ein Stream<T> ist eine Folge von Elementen des Typs T (das hat nichts mit den I/O-Streams aus dem Paket java.io zu tun).
 
H

Heyoka955

Gast
Richtig. Ich habe im Kommentar #124 noch etwas ergänzt.
Ah okay das heißt in der Liste wird der Stream so gespeichert

Erstes Element 1 Hah haha haha hä
Zweites Element hahaha hahah
Drittes Element h h h h h h
.....

Immer wenn neue Zeilen kommen!

Aber dann wäre die Aufgabe 1
Doch geklärt ?
Die wollen dass wir den String nach jeder Zeile Filtern
 

mihe7

Top Contributor
Um zum Beispiel aus einer Datei test.txt alle Zeilen, in denen die Zeichenfolge "wie" vorkommt, zu zählen:
Java:
long anzahl = Files.lines("test.txt") // Aus einem Stream mit Zeilen
    .filter(zeile -> zeile.contains("wie")) // nur die Zeilen, die "wie" enthalten
    .count(); // zählen

Um doppelte Zeilen nicht mitzuzählen:
Java:
long anzahl = Files.lines("test.txt") // Aus einem Stream mit Zeilen
    .filter(zeile -> zeile.contains("wie")) // nur die Zeilen, die "wie" enthalten
    .distinct() // und jede nur einmal
    .count(); // zählen
 
H

Heyoka955

Gast
Um zum Beispiel aus einer Datei test.txt alle Zeilen, in denen die Zeichenfolge "wie" vorkommt, zu zählen:
Java:
long anzahl = Files.lines("test.txt") // Aus einem Stream mit Zeilen
    .filter(zeile -> zeile.contains("wie")) // nur die Zeilen, die "wie" enthalten
    .count(); // zählen

Um doppelte Zeilen nicht mitzuzählen:
Java:
long anzahl = Files.lines("test.txt") // Aus einem Stream mit Zeilen
    .filter(zeile -> zeile.contains("wie")) // nur die Zeilen, die "wie" enthalten
    .distinct() // und jede nur einmal
    .count(); // zählen
Das verstehe ich aber was wollte dann Die Aufgabe 1 ?
 
H

Heyoka955

Gast
Schreiben Sie ein Programm, das drei Parameter bekommt. Der erste Parameter ist eine Eingabedatei, der zweite Parameter ist eine Datei mir Filter-Wörtern (je eins pro Zeile) und der dritte Parameter ist eine Ausgabedatei.

Das Programm soll aus dem Inhalt der Eingabedatei einen KWIC Index erzeugen und diesen in der Ausgabedatei speichern. In dem KWIC Index sollen keine Duplikate vorkommen und alle Rotationen, die mit einem Wort aus der Filter-Wort Datei beginnen sollen entfernt werden.

Sie sollen nicht die Dekomposition nach Parnas aus der Vorlesung verwenden. Benutzen Sie wo immer es geht Java Streams zur Verarbeitung.

Der folgende Code kann verwendet werden, um eine Wort-Liste input um n Worte zu rotieren:

String rotateListByN(int n, List<String> input) {
List<String> a = new ArrayList<>();
a.addAll(input);
Collections.rotate(a, n);
return String.join(" ", a);
}
 
H

Heyoka955

Gast
11866

nur dieses Beispiel gibt es auf wiki, aber der prof hat uns keine wirkichen beispiele gegeben.
 

mihe7

Top Contributor
aber der prof hat uns keine wirkichen beispiele gegeben.
Evtl. hat er eine entsprechende Definition des KWIC-Index gegeben. Wie auch immer: wenn Du nicht weißt, wie die Ausgabe aussehen soll, musst Du halt beim Aufgabensteller nachfragen.

Das Wiki-Beispiel zeigt z. B. fett gesetzte Wörter - das geht in Textdateien schlecht. Und was soll als Index ausgegeben werden? Für die Seitennummer müsstest Du erst einmal wissen, wie viele Zeilen auf eine Seite passen. Also eher ungünstig. Die Zeilennummer wäre denkbar. Solche Anforderungen müssen (ggf. auf Nachfrage) geklärt sein.
 
H

Heyoka955

Gast
Evtl. hat er eine entsprechende Definition des KWIC-Index gegeben. Wie auch immer: wenn Du nicht weißt, wie die Ausgabe aussehen soll, musst Du halt beim Aufgabensteller nachfragen.

Das Wiki-Beispiel zeigt z. B. fett gesetzte Wörter - das geht in Textdateien schlecht. Und was soll als Index ausgegeben werden? Für die Seitennummer müsstest Du erst einmal wissen, wie viele Zeilen auf eine Seite passen. Also eher ungünstig. Die Zeilennummer wäre denkbar. Solche Anforderungen müssen (ggf. auf Nachfrage) geklärt sein.
ich zeige dir mal was mein prof im Skript stehen hat hahah

11868
 

mihe7

Top Contributor
Ja. Mal für eine Zeile: erstelle eine Wortliste L := (w_0, w_1, ..., w_n). Betrachte diejenigen i, für die gilt: w_i ist nicht in der Filter-Wort-Datei enthalten und rotiere die Liste um i nach links.

Das machst Du für alle Zeilen, dann entfernst Du die Duplikate, sortierst das Ergebnis und gibst es aus.

Beispiel: die Filter-Wort-Datei enthalte die Wörter FÜR, DIE, SIND

Eingabe:
VERWENDE FÜR DIE LÖSUNG STREAMS
STREAMS SIND DOKUMENTIERT

1. Zeile:

L_0 = (w_0, w_1, w_2, w_3, w_4) = (VERWENDE, FÜR, DIE, LÖSUNG, STREAMS)

I := {i aus [0, 4] für die gilt: w_i ist kein Element aus Filter-Wort-Datei} = {0, 3, 4}

Für jedes i aus I: rotiere die Liste um i nach links:
i = 0: L_00 = VERWENDE FÜR DIE LÖSUNG STREAMS
i = 3: L_01 = LÖSUNG STREAMS VERWENDE FÜR DIE
i = 4: L_02 = STREAMS VERWENDE FÜR DIE LÖSUNG

2. Zeile:

L_1 = (w_0, w_1, w_2) = (STREAMS, SIND, DOKUMENTIERT)
I := {i aus [0,2] für die gilt: w_i ist kein Element aus Filter-Wort-Datei} = {0, 2}

Für jedes i aus I: rotiere die Liste um i nach links:
i = 0: L_10 = STREAMS SIND DOKUMENTIERT
i = 2: L_11 = DOKUMENTIERT STREAMS SIND

Zwischenstand: L_00, L_01, L_02, L_10, L_11.
Nach dem Entfernen von Duplikaten: L_00, L_01, L_02, L_10, L_11 (weil es gibt keine Duplikate gibt, keine Änderung)
Alphabetisch sortieren: L_11, L_01, L_10, L_02, L_00
Ausgabe:
DOKUMENTIERT STREAMS SIND
LÖSUNG STREAMS VERWENDE FÜR DIE
STREAMS SIND DOKUMENTIERT
STREAMS VERWENDE FÜR DIE LÖSUNG
VERWENDE FÜR DIE LÖSUNG STREAMS
 

AndiE

Top Contributor
Die flatMap Methode aus Streams könnte ebenso hilfreich sein, wie IntStream.range(…). Einen String können Sie mit der split Methode in Worte zerlegen.

Steht noch als "important" bei der Aufgabe.
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
B Allgemein Frage zur Software Entwicklung Java Basics - Anfänger-Themen 3
I Kommunikation "normaler PC" mit lokaler Software an "Cloud Service" und umgekehrt Java Basics - Anfänger-Themen 15
B Email Client in der eigenen Software einbauen Java Basics - Anfänger-Themen 3
M JDK installieren Welche Software bei XP? Java Basics - Anfänger-Themen 5
S3CR3T Architektur der Software Java Basics - Anfänger-Themen 6
Mxxxt UML Software Java Basics - Anfänger-Themen 2
B Serial Key - Prüfung ob Software gekauft Java Basics - Anfänger-Themen 1
D Software per ssh downloaden und installieren Java Basics - Anfänger-Themen 2
A Software zum Umrechnen römischer Zahlen Java Basics - Anfänger-Themen 10
H Liste ausgeben (Spiel Hey Fisch (software-challenge) ändern Anzahl Fische) Java Basics - Anfänger-Themen 1
OnDemand Software-Design Java Basics - Anfänger-Themen 1
B [Projekt] CyberCafé Software Java Basics - Anfänger-Themen 13
F Gültigkeitszeitraum von Software beschränken Java Basics - Anfänger-Themen 17
J Hosting Software Java Basics - Anfänger-Themen 2
A Welche UML Software benutzt ihr / ist empfehlenswert? Java Basics - Anfänger-Themen 2
F software engeneering --> dokumentation??! Java Basics - Anfänger-Themen 6
J Software problem unter VISTA Java Basics - Anfänger-Themen 3
K GUI Builder Software ? Java Basics - Anfänger-Themen 6
G Java Software Tuner Java Basics - Anfänger-Themen 6
G Versionierung von Software Java Basics - Anfänger-Themen 4
G Software Updates in Eclipse Java Basics - Anfänger-Themen 11
E software concept erstellen! Java Basics - Anfänger-Themen 4
N software die sich als hardware ausgibt? Java Basics - Anfänger-Themen 6
M Java-Software so anbieten, dass sie leicht zu starten ist Java Basics - Anfänger-Themen 16
D Java Software zeigen nichts mehr an Java Basics - Anfänger-Themen 2
A Good articles about software component technology? Java Basics - Anfänger-Themen 2
X Java Versionen und Software-Paketnamen Java Basics - Anfänger-Themen 4
N Welche software hab ich eigentlich ? Java Basics - Anfänger-Themen 17
X Sehr schnelle agile Entwicklung Java Basics - Anfänger-Themen 1
K GUI Entwicklung - Welche Richtung passt für euch zum mobilen Zeitalter? Java Basics - Anfänger-Themen 4
M Komponentenbasierte Entwicklung in Java betreiben Java Basics - Anfänger-Themen 1
S Projekt-Idee für testgetriebene Entwicklung gesucht Java Basics - Anfänger-Themen 2
Devil0s Entwicklung mit mehreren Leuten Java Basics - Anfänger-Themen 7
H Entwicklung am selben Projekt im Netzwerk Java Basics - Anfänger-Themen 9
G suche tutorial für eclipse pluging javaeditor entwicklung Java Basics - Anfänger-Themen 7

Ähnliche Java Themen

Neue Themen


Oben