Alle Beiträge von Whiz-zarD
-
Wie kann ich auf eine Arraylist von einer anderen Klasse zugreifen ?
Nein, das ist keine Polymorphie. Das ist Vererbung. Polymorphie beschreibt die Überschreibung von Methoden. Ich überschreibe aber keine Methoden, sondern möchte mit den Unterklassen weitere Eigenschaften hinzufügen.
-
Wie kann ich auf eine Arraylist von einer anderen Klasse zugreifen ?
Ich würde eher vorschlagen, dass du dich mehr mit dem Prinzip der Objektorientierung auseinandersetzt. Es sieht sehr danach aus, als würdest du noch nicht so ganz verstehen, was du da machst. Um auf die einzelnen Buch-Daten zuzugreifen zu können, benötigst du erst mal eine Book Klasse public class Book { private string title; private BigDecimal price; private int edition; public Book(string title, BigDecimal price, int edition) { this.title = title; this.price = price; this.edition = editon; } public string getTitle { return this.title; } public BigDecimal getPrice { return this.price; } public int getEdition { return this.edition; } } eBooks und Audiobooks haben ja noch andere Eigenschaften als ein normales Buch. Daher musst du für diese noch zusätzliche Ableitungen schreiben, die dann von Book erben. (Stichwort "Vererbung") Dann könntest du die Liste so erstellen: (Ich beschränke mich hierbei auf die Eigenschaften von Book) public static List<Book> getSelledBooks() { List<Book> result = new ArrayList<Book>(); result.add(new EBook("booktitle1", 19.99, 2020)); result.add(new EBook("booktitle2", 4.99, 2020)); result.add(new AudioBook("booktitle3", 22.99, 2016)); result.add(new EBook("booktitle4", 4.99, 2020)); return result; } Dann kannst du auch die Preise einfach mit der getPrice()-Methode auslesen. Aber ich würde dir empfehlen, ein Tutorial durchzuarbeiten, um das Prinzip der Objektorientierung zu verstehen.
-
Suche Struktur/Design-Pattern für Kostenkalkulation
Ich persönlich würde aus jeder Berechnung eine eigene Klasse machen. Du hättest dann Klassen wie PlannedX, ActualX, PlannedY, ActualY, etc. Dadurch wären die Berechnungen schon mal isoliert und lassen sich testen. Beispiel: public class PlannedX { public int calculate() { return 123; } } (Syntaxfehler seien mir verziehen. Ich hab schon lange nicht mehr mit Java entwickelt.) public class X { private final PlannedX plannedX; private final ActualX actualX; public X { this.plannedX = new PlannedX(); this.actualX = new ActualX(); } public int getPlanned { return this.plannedX.calculate(); } public int getActual { return this.actualX.calculate(); } } Damit man nicht etliche Male sowas schreiben muss das DRY-Prinzip verstoßt, kann man daraus aus mit einem Interface und einer abstrakten Klasse vereinheitlichen aber das überlasse ich dir. Hinterher sähe meine Lösung dann so aus: class Service{ Figure x = new X(); Figure y = new Y(); Figure z = new Z(); int plannedX = x.getPlanned(); int actualX = x.getActual(); // ... } Und da könnte man wiederum ein Command-Pattern daraus bauen, wo dann eine Liste von Commands abgearbeitet wird aber das überlasse ich auch mal dir.
-
Datenbindung WPF
Ja, das Problem ist, dass WPF trotz seiner Monstrosität sich doch recht halbgar anfühlt, wenn man es so nutzen möchte, wie es mal angedacht war. Nicht umsonst hat das "patterns & practices"-Team von Microsoft ursprünglich sogar noch Prism entwickelt, um die Arbeit mit WPF zu erleichtern. Selbst intern ist man wohl mit WPF nicht zufrieden gewesen. Meines Wissens nach wurde ja auch die Oberfläche von Visual Studio mit WPF und Prism entwickelt.
-
React JS und Backround
Ja, du liegst da richtig. Im Idealfall ist die UI komplett entkoppelt und stellt nur ein Detail in deinem System dar. Dann ist es egal, ob die UI eine Web-, Desktop- oder sogar nur eine Konsolenapplikation ist. Ich kenne dein Wissensstand nicht aber es kursiert schon länger der Begriff "Onion Architecture" bzw. "Clean Architecture" rum. Diese Softwarearchitekturen stellen die Businesslogik (auch genannt "use cases") in den Mittelpunkt. Also das, womit man auch eigentlich sein Geld verdient. Dort befinden sich dann auch Schnittstellen für externe Dienste, die sie dann implementieren müssen und so ein Dienst kann z.B. deine UI oder auch die Datenbank sein. Dies hat den Vorteil, dass die Businesslogik komplett entkoppelt ist und keine Abhängigkeiten besitzt. Somit lässt sich dann die UI oder auch die Datenbank austauschen und da die Businesslogik überhaupt keine Abhängigkeit zur Datenbank besitzt, lässt sie sich dann auch noch leichter testen. Somit ist es dann auch egal, ob du eine Web-, Desktop- oder nur eine Konsolenapplikation schreibst.
-
C++, C# mit WPF pder Avalonia
Ich persönlich würde C++ so weit meiden, wie es geht. Ich finde die Sprache einfach nicht schön, da man zu sehr mit den technischen Kuriositäten zu kämpfen hat, die diese Sprache mit sich bringt. Im Idealfall ist es auch egal, was du als Oberfläche nimmst. .NET Core (bzw. bald .NET 5) läuft ja auch unter Linux. Wenn du also deine Software so modulierst, dass deine komplette Logik in .NET-Standard-Bibliotheken implementiert hast, dann besitzt die UI überhaupt keine Logik und ist nur für die Ein- und Ausgabe zuständig. Dann kann man als UI draufsetzen, was man will: WPF, WinForms, ASP.NET, Xamarin, Avalonia, gtk# oder als eine einfache Konsolenanwendung. Wenn man aber anfängt, die Logik in die UI zu schreiben, dann hat man eh meist schon verloren. Dann ist man auf Gedeih und Verderb von der UI abhängig. Ja. Wenn man UIs entwickeln möchte, kommt man derzeit wohl oder übel nicht drumherum.
-
C++, C# mit WPF pder Avalonia
Niemand redet hier von C++.
-
C++, C# mit WPF pder Avalonia
Ich persönlich würde meine Zeit nicht mit WPF verschwenden. WPF ist ein unbändiges Monster, was aus meiner Sicht auch nur halbherzig umgesetzt wurde. Ich finde, es spricht so Bände, wenn Microsoft selbst noch die Prism Library geschrieben hat, die über WPF gestülpt wird, um lose Kopplung besser hinzubekommen. Der Trend geht aber auch in Richtung SPAs (Single Page Application). Sprich Web-Applikationen, die direkt im Browser laufen oder per Electron in einem Chromium-Container. z.B. läuft Visual Studio Code über Electron. Da würde ich mir dann eher Angular oder React anschauen. Als Alternative in der C#-Welt gibt es zwar Blazor aber ich finde, es ist noch nicht so weit, um es produktiv gut einsetzen zu können. Avalonia sagt mir persönlich überhaupt nichts. Keine Ahnung, wie groß die Community dahinter ist aber ein Blick auf Github sagt mir, dass sie nicht so groß zu sein scheint. Ergo: Nichts, was ich produktiv einsetzen würde. Stattdessen würde ich eher Xamarin nehmen.
-
Welcher Uni-Kurs hat mehr Praxisrelevanz für eine Ausbildung als FIAE?
Mengenlehre, Aussagenlogik, Polynome, Funktionen und noch vieles andere hatte ich damals auf der Realschule. Der Mathekurs bei meiner Assistentenausbildung, der sich so ziemlich mit dem Kurs "Mathematik in den Wirtschaftswissenschaften" deckt, war im Grunde dann nur noch eine Wiederholung und eine wisschenschaftliche Vertiefung. Neu war für mich die Kurvendiskussion und Differentialrechnung. Das meiste davon braucht aber ein gewöhnlicher Softwareentwickler nicht, wenn man nicht gerade mit Computergrafik zu tun hat. Ich arbeite ja in der Bankenbranche und das höchste, was ich so benötige, ist Prozentrechnung oder mal einen (gewichteten) Mittelwert. Alles, was mit gewöhnlichen Mitteln errechnen lässt. Ich finde es sowieso Interessant, dass sich der Mythos, dass man für Softwareentwicklung ein hohes Mathematikverständnis benötigt, so hartnäckig hält. Wer mit Hochsprachen zu tun hat, tatsächlich wenig. Neulich wollte ich unseren Azubi etwas zeigen und stellte mit Erstaunen fest, dass ich ja kein Hex-Editor mehr installiert hatte. Wie @SaJu schon sagt, würde ich eigentlich nicht Mathematik wählen, sondern wenn es geht, tatsächlich irgendwas, was mehr den Alltag eines Entwicklers füllt, wie z.B. Programmieren oder Algorithmen und Datenstrukturen, wobei Programmieren auch nur so an der Oberfläche gekratzt wird. Mir ist bis jetzt noch keine Hochschule über den Weg gelaufen, die sich tatsächlich mit professioneller Programmierung beschäftigt. Es sind eher Basiskurse, die sich eher darauf konzentrieren, dass man Datenstrukturen versteht und auch anwenden kann. Also Listen und Bäume rauf- und runter. Im Entwickler-Alltag spielt aber die Codestruktur/Software Design eine große Rolle. Also z.B. die SOLID-Prinzipien in objektorientierten Sprachen. Diese werden aber kaum bis gar nicht im Studium behandelt.
-
Aussagekräftige Zertifkate/Kurse
Nur hat Microsoft ihr altes Zertifizierungsmodell eingestellt. Dein vorgeschlagener Test wird auch nur noch Corona-bedingt bis zum 31. Januar 2021 angeboten. Danach verschwindet dieser. Ursprünglich sollte der Test schon seit dem 30. Juni nicht mehr verfügbar sein. Es lohnt sich nicht mehr, den Test zu machen, da die Zertifikate auslaufen und nicht mehr erneuert werden können. Zu mal dieser Test nur ein Teil für ein MTA-Zertifikat ist. Es ist also kein Python-Zertifikat. Darüber hinaus lohnen sich generell Zertifikate für Entwickler nur in den seltensten Fällen. Wenn überhaupt, dann nur für freiberufliche Entwickler aber selbst von denen höre ich immer wieder, dass sie keine Zertifikate machen, weil es Zeit- und Geldverschwendung ist. Ich schätze mal, dass sich das Geschäftsmodell nicht lohnt und Microsoft deswegen ihre MTA/MCSD/MCSA-Zertifizierungen über den Haufen geworfen haben und sich mehr auf Azure-Zertifizierungen konzentrieren. Genauso gut könntest du auch udemy und co. einen Python-Kurs machen. Mit Rabatte sind sie dann für 10 € (derzeit für 11,99 €) zu holen und haben den selben Inhalt, wie dein 127 € Test.
-
Probleme durch Corona bei Pflichtpraktikumplatz-Suche
Meine Güte. Das ist ein Praktikumsplatz und keine Festeinstellung auf Lebenszeit... 🙄
-
Probleme durch Corona bei Pflichtpraktikumplatz-Suche
Das ist bei uns auch kacke. Ich bin für unsere Azubis und Praktikanten zuständig und derzeit nehmen wir keine Praktikanten, weil wir einfach kein gutes Konzept finden können, das mit der derzeitigen Situation passt. Wir arbeiten schon seit März fast ausschließlich von zu Hause und es ist dann recht schwierig die Praktikanten zu betreuen. Selbst mit unseren Azubis ist es schon nicht einfach, auch wenn sie schon selbstständiger sind.
-
Erfahrung mit Recruitern?
Neulich wurde ich mit "Moin <vorname>" angesprochen und wurde gefragt, wie es mir ginge und was ich so in der Corona-Zeit machen würde, als ich den den Typ schon mein Leben lang kennen würde und wir schon zusammen im Vietnam-Krieg Seite an Seite ums nackte Überleben gekämpft hätten... Glaub mir, auch wenn du dein Profil nicht pflegst, bekommst du solche Angebote. Ich pflege mein Profil nicht. Ich hab nicht mal angegeben, was ich tatsächlich mache und dennoch bekomme ich solche Mails wie "Ich habe dein Profil gesehen und habe spannende Angebote für dich!". Die sehen nur, dass die Firma, in der ich arbeite, irgendwas mit Softwareentwicklung macht.
-
Augenschonender Monitor für Office und Software-Entwicklung - 27" - 30"
Ergonomie-Features sollte eigentlich inzwischen so ziemlich jeder bessere Monitor besitzen. 27" QHD fängt aber so bei 300 € an. Da gibt es z.B. den BenQ PD2700Q. Der ist in einigen Shops schon für unter 300 € zu haben. In der Firma haben wir ebenfalls das Modell. Für den Preis finde ich den sehr in Ordnung, obwohl ich sagen muss, dass ich mehr ein Freund von Eizo bin. Die sind aber wesentlich teurer. Der EV2760 kostet derzeit ca. 550 €. Leider kann ich nicht ausfinding machen, welche HDMI bzw- Displayport-Version das ZenBook UX303UB besitzt. Da es aber auch wahlweise mit einem QHD+-Bildschirm ausgeliefert wurde, gehe ich aber auch davon aus, dass QHD an den Ausgängen möglich ist. Über Displayport sollte es aber definitiv möglich sein (halte ich persönlich sowieso für die bessere Schnittstelle).
-
Wechsel des Betriebes
Doch, die gibt es sehr wohl... Ich fühle mich nicht angegriffen aber die ganze Schlechtrederei hier kotzt mich an. Soll ich es noch mal zitieren? Es gibt Dinge, die man eben nicht aus Büchern und Tutorials lernen kann und das nennt sich Erfahrung und wenn man eine Ausbildung macht, dann möchte man auch von der Erfahrung anderer Arbeitskollegen teilhaben. Schließlich macht man eine Ausbildung und lernt vom Ausbilder, den Ausbildungsbeauftragten und Arbeitskollegen und eben erstranging nicht aus Büchern. Und GENAU das tut er doch gerade... 🙄 Und hier nochmal: Wenn ich mir alles selber beibringen muss, weil der Betrieb sich nicht an den Ausbildungsrahmenplan hält, dann brauche ich doch auch keine Ausbildung machen. Dann kaufe ich mir ein Buch, setze mich drei Jahre zu Hause hin und mache dann die Abschlussprüfung.
-
Wechsel des Betriebes
Ganz naiv gefragt: Was sollen deine dummen Fragen? Und ich Dummchen hab eine Ausbildung gemacht. Dabei hätte ich ja alles selber lernen können... 🙄 Es ist immer einfacher alles schlecht und madig zu reden. Scheint ja eine Diszplin von einigen hier zu sein. Und wenn er im jetzigen Betrieb bleibt, läuft alles locker flockig von der Hand, oder wie? 🙄 Der TE wird schon seine Gründe haben, wieso er den Betrieb wechseln möchte. Zumindest liest es sich nicht so, dass er auf den Kopf gefallen wäre. Schließlich hat er sich bei der IHK um Möglichkeiten erkundet und hat auch schon bei Firmen nachgefragt. Eine Selbstorganisation und Selbsthelfe kann man schon rauslesen.
-
Kleidungsstil im Büro
Im Büro Casual. Wenn wir mal zum Kunden müssen, dann je nach Kunde Smart Casual oder Business Casual aber auf den Kleidungsstil wird immer weniger geachtet und dass obwohl wir im Bankenbereich agieren. Die Zeiten, dass selbst bei Banken Krawattenpflicht galt, sind schon lange vorbei.
-
Wechsel des Betriebes
Ist ja nicht so, als könnten Azubis keine Arbeit übernehmen und müssten 24/7 betreut werden... 🙄
-
Wechsel des Betriebes
Nirgends. Er hat aber die IHK München erwähnt, die gesagt haben, dass es in Ordnung wäre. Der Betrieb muss zustimmen. Dafür braucht man aber keine Erstberatung beim Rechtsanwalt... Dies mit der IHK München hast du sogar selber zitiert...🙄 "Händeringend" heißt für dich "Wird in zwei Monaten wieder entlassen"? 🙄
-
Wechsel des Betriebes
Warum wird eigentlich hier aus jedem kleinen Furz gleich eine Staatsaffäre gemacht? Genau das hat doch @Chev Chellios geschrieben... Ein Aufhebungsvertrag kann immer aufgesetzt werden, wenn beide Parteien damit einverstanden sind. Dies gilt auch für Arbeitsverträge! Folglich, kann @Chev Chellios auch den Ausbildungsbetrieb wechseln, wenn ein Aufhebungsvertrag aufgesetzt wurde, beide Parteien einverstanden sind und einen neuen Ausbildungsbetrieb gefunden hat. Da braucht man nicht gleich zu einem Rechtsanwalt rennen, der für eine Erstberatung 190 € verlangt. Wenn der Betrieb den Aufhebungsvertrag ablehnt, dann sieht es schon schlechter aus, da laut §22 BBiG der Azubi nur dann kündigen kann, wenn er die Ausbildung aufgibt oder einen anderen Beruf erlernen möchte aber ein Aufhebungsvertrag ist aber keine Kündigung! Demnach gilt §22 BBiG hier nicht. Und was ist jetzt daran so schlimm, Azubis einzustellen, wenn man langfristig mitarbeiter sucht? Meine Güte...
-
ORA-00932
Nein. Ein CREATE TABLE ... AS (SELECT * FROM ...) reicht aus. @Tedi: Schaue mal mit DESC TheCopy und DESC MySource@hauptdb die Tabellendefinition an. Vielleicht gibt es doch unterschiede. Ein Datum ist ja im Grunde auch nichts weiter als eine Zahl. Vielleicht wurde beim Anlegen der Tabelle irgendwas falsch interpretiert.
-
C# wie am besten Datum für Rechnungen verwenden?
Ich würde das in eine Methode packen: class Program { static void Main(string[] args) { Console.WriteLine(RemainingDaysInMonth(DateTime.Now)); } static int RemainingDaysInMonth(DateTime dateTime) => DateTime.DaysInMonth(dateTime.Year, dateTime.Month) - dateTime.Day; } Vielleicht sogar noch eleganter in eine sog. Extension Method: class Program { static void Main(string[] args) { Console.WriteLine(DateTime.Now.RemainingDaysInMonth()); } } static class DateTimeExtensions { public static int RemainingDaysInMonth(this DateTime dateTime) => DateTime.DaysInMonth(dateTime.Year, dateTime.Month) - dateTime.Day; } Die zweite Variante ist aber schon etwas weiterführend und verlagert die die Berechnung aus der Program-Klasse hinaus.
-
Cache Informationen Diagramm
Verstehe die Problematik nicht. Wozu wird da eine Datenbank gebraucht? Ich hole die Daten aus der Datenbank, packe sie in ein In-Memory-Speicher (= der Cache) und kann doch damit arbeiten, wie ich will. z.B. die Daten in eine CSV- oder Excel-Datei schreiben, etc. Eine separate Datenbank ist doch überhaupt nicht notwendig. Ich hab das Gefühl, ihr sucht einfach eine Möglichkeit, die Daten, die in der Datenbank liegen, zu aggregieren und zu visualisieren. Schon mal an ein BI-Tool gedacht? z.B. Microsoft Power-BI oder Tableau? Ihr gebt dem Tool die Verbindung zur Datenbank und das Datenmodell und dann könnt ihr direkt die Daten auswerten ohne eine Datenduplizierung.
-
Zertifizierungen mehr ein FISI-Ding - Gründe?
Wie du schon schriebst, ist Praxiserfahrung bei einem Softwareentwickler wichtiger als Zertifikate. Es bringt nichts, ein tolles Zertfikat für Framework X, Programmiersprache Y oder über SOLID, TDD, DDD, etc. zu besitzen, wenn man praktisch dann doch nicht damit arbeitet. Softwareentwicklung hat viel mit Übung und Erfahrung zu tun und nicht mit stupidem Auswendiglernen. Zertfikate können dir nur bescheinigen, dass mal von etwas gehört hast aber sie können dir nicht bescheigen, dass du reale Probleme gelöst hast. Praxiserfahrung aber hingegen schon.
-
Ausbilder werden (AdA Schein)
Ich hab den Schein vor zwei Jahren gemacht und hab nen Berufsbegleitenden Kurs gemacht. Der Kurs selber ist nicht schwer. Es geht darum, dass du die rechtlichen Grundlagen und Lernmethoden kennenlernst und dann wirst du auf die Prüfung vorbereitet. Und ja, jeder Azubi ist anders. Ich hatte mir einen Plan mit Übungsaufgaben zurechtgelegt und dachte, das würde für die ersten Monate reichen. Tja, der Azubi war viel schneller fertig, sodass ich mir sehr schnell was anderes ausdenken musste.