Zum Inhalt springen

Whiz-zarD

Mitglieder
  • Gesamte Inhalte

    2076
  • Benutzer seit

  • Letzter Besuch

  • Tagessiege

    50

Alle Inhalte von Whiz-zarD

  1. Was hat GitHub nun mit Azure und DevOps zu tun? Das sind völlig unterschiedliche Dinge. GitHub ist eine Quellcodeverwaltungsplattform, die Git verwendet. Azure ist der Oberbegriff, der kompletten Cloud-Plattform von Microsoft. DevOps ist ein Ansatz um den Entwicklungsprozess zu verbessern.
  2. Fehler entstehen immer und je nach Komplexität sind 1,5 Stunden danach zu suchen jetzt nicht wirklich viel. Gerade wenn der Fehler in Laborbedingungen nicht auftritt und man die Daten vom Kunden benötigt und erst mal den Datensatz unter den Millionen finden muss, der für den Fehler verantwortlich ist. Auch nett sind Speicherprobleme, die mal sporadisch auftreten. Da sitzt man gerne mal ein paar Tage, um heraufzufinden, was eigentlich los sei. Nach meiner Erfahrung entstehen aber die meisten Fehler häufig durch unstrukturierten Code. Code, der zu viel auf einmal macht und Seiteneffekte produziert oder es wird irgendwo Null zurückgegeben, obwohl Null keinen Sinn macht, etc. Gerade bei objektorientierten Sprachen ist es aus meiner Sicht wichtig, die SOLID-Prinzipien verinnerlicht zu haben und sie auch einsetzt. Es klappt nicht immer aber wenn man immer wieder versucht, sich daran zu halten, dann wird der Code schon übersichtlicher. Dafür muss aber der Code aber erstmal testbar sein. Wenn ich das richtig verstehe, ist @dnyc ein Quereinsteiger und ich weiß nicht, was er schon über Unittests weiß. Das ist leider immer noch so ein Kapitel, die Quereinsteiger/Anfänger erst so richtig mitbekommen, wenn es eigentlich schon zu spät ist, da man solche Themen in der Fachliteratur gerne ausklammert.
  3. WinForms wird mit .NET Core 3.0 unterstützt. WinForms ist vielleicht nicht mehr das neueste Framework aber bei kleineren Programmen, die nicht eine fancy Oberfläche benötigen und auch nicht web-fähig sein müssen, finde ich WinForms geeigneter als WPF. Wenn die Operanden und Operatoren eh per Button eingetragen werden sollen, wie bei einem Taschenrechner, dann musst du die Textbox auch so einstellen, dass dort nichts reingeschrieben werden darf. Also die Eigenschaft "ReadOnly" auf True setzen. Oder habe ich dich falsch verstanden?
  4. Neben dem Aspekt "OOP vs. Funktional" hat OOP das Problem, wenn man es auf die Spitze treibt, sog. Ravioli-Code erzeugt, der zwar extrem lose gekoppelt ist aber eben zu mehr Code führt. OOP kann also auch zu mehr Code führen, anstatt zu weniger, weil man extrem viele kleine Klassen erzeugt, die alle ein Overhead besitzen. Im schlimmsten Fall Tausende Klassen mit nur einer Methode. Dadurch wird auch die Navigation im Code unübersichtlicher. Es gibt also zwei Extreme: Spaghetti- und Ravioli-Code und die Kunst ist es, die Balance zu finden.
  5. Das Problem ist, dass es durchaus nicht nur um Grundlagen geht. Ich hatte auch mal so ein Gespräch, um eine Junior-Stelle. Dort hatte man mir dann Fragen zum Nibernate gestellt. Ich hatte zuvor damit nie gearbeitet. Nur gehört, dass es ein O/R-Mapper ist. In der Stellenbeschreibung stand auch nichts von Nibernate. Nur dass Java- und SQL-Kenntnisse von Nöten sind. Ohne jetzt die Fragen zu kennen, kann man schlecht sagen, ob es nur um Grundwissen geht.
  6. Es ist ja auch gar nicht vorgesehen, dass dort eine gültige E-Mail-Adresse stehen muss. Das ist ein einfaches Freitextfeld. Da kann jeder Mist drinnen stehen.
  7. Ich verstehe die Frage nicht. Wenn du das Programm unter Visual Studio startest, ist es doch schon ein fertiges Programm und du könntest im Grunde das Programm so in die Citrix-Umgebung reinkopieren. Für gewöhnlich wird aber fürs Kompilieren ein sog. Buildserver eingesetzt, der das Programm dann kompiliert, mit weiteren Dateien einreichert (z.B. Konfigurationsdateien oder Dokumentationen) und in ein Setup verpackt.
  8. Ich selber habe eine Assistentenausbildung abgeschlossen. Allerdings waren die meisten Kurse mit FH-Studenten zusammen. Eine Ausbildung könnte sehr wohl an das Niveau eines Studiums rankommen. Dafür müsste man aber die Ausbildung umkrempeln und alte Zöpfe abschneiden. Zudem braucht man auch geeignete Berufsschullehrer, die sich wirklich mit der tiefer gehenden Materie auskennen aber da krankt es ja an allen Ecken. Ich denke, dass es sich langfristig ausgeäfft hat, da die Anforderungen und Systeme immer komplexer werden. Vielfach kann man da keinen mehr hinsetzen, der gerade mal die Syntax versteht und irgendwas "runterprogrammiert". Der Fachinformatiker ist auch nicht mehr zeitgemäß, da man immer noch sehr stark auf das "Kaufmann" wert legt.
  9. Die Berichtshefte sind essentiell für die Zulassung zur Abschlussprüfung. Keine Berichtshefte, keine Zulassung. https://www.gesetze-im-internet.de/bbig_2005/__43.html Allerdings hätte dein Ausbilder dich auch darauf hinweisen müssen, was er wohl auch nicht getan hat.
  10. Es gibt doch auch diese digitalen Preisschilder in Supermärkten. Wäre sowas nicht besser? Man müsste man sich mal erkundigen, wie teuer diese sind. Meines Wissens nach können sie ja auch per WLAN aktualisiert werden. https://www.e-shelf-labels.de/produkte/elektronische-preisschilder.html
  11. Irgendwie ist das doch total dämlich, schon vor der Ausbildung an Weiterbildungen nachzudenken. Das führt doch zu nichts. Ein hohes Gehalt ist doch nicht alles im Leben. Was bringt mir ein hohes Gehalt, wenn ich aber 60+ Stunden in der Woche arbeiten muss? Mache doch erst mal eine Sache fertig (Studium oder Ausbildung) und sehe dann weiter. Dann sieht die Welt auch schon wieder ganz anders aus.
  12. 22 ist noch kein Alter. Du bist sogar noch sehr jung. Daran liegt es nicht, dass du nicht zu Bewerbungsgesprächen eingeladen wirst, falls du dich überhaupt bewirbst. Wissen muss auch nicht vorhanden sein, denn dazu gibt es die Ausbildung. Ich vermute Mal, dass dein Anschreiben evtl. nicht gut ist. Du kannst ja mal hier anonymisiert ein Anschreiben zeigen. Dann könnte man dir evtl. ein paar Tipps geben.
  13. Probiere es doch aus. Schmeiß doch selber einfach eine Exception. Ich würde das Programm an deiner Stelle auch umschreiben, denn es ist zu fehleranfällig. Separiere die Aufgaben und mache nicht alles auf einmal. Die foreach-Schleife sammelt doch die Daten, also packe die Daten in eine geeignete Datenstruktur und wenn er damit durch ist, schreibe dann die werte in die Datei. Das macht den Code verständlicher und leserlicher und du wirst den Fehler schneller lokalisieren können. Auch solche Konstrukte, wie public void Foo(Bar bar) { if(bar != null) { // Tu etwas } } Würde ich vermeiden, weil es eine unnötige Verschachtelung ist. Besser wäre public void Foo(Bar bar) { if(bar == null) return; // Tu etwas } So liegt die if-Abfrage und die eigentliche Aufgabe auf der selben Verschachtelungsebene und der Code wird übersichtlicher. Mir wird aber auch nicht so ganz klar, was genau das Programm eigentlich tun soll, weil einfach zu viel auf einmal passiert. Es fehlt offenbar auch Code, um überhaupt zu erkennen, was du da gebaut hast. Wofür genau ist der StreamWriter da? Was soll er denn schreiben? Wieso werden die Dateien noch verschoben? Exceptions sollen auch nur Ausnahmen bzw. Fehler behandeln. Das befreit dich aber nicht davon, dass du dein Programm nicht gegen Fehlerfälle absichern musst. Anstatt also auf die Exception zu reagieren, ob die Datei vorhanden ist, solltest du im Vorwege dies selbst überprüfen und darauf reagieren. Dann brauchst du auch kein Try-Catch-Block. Den StreamReader brauchst du eigentlich auch nicht, da man über XDocument.Load() schon die XML-Datei einlesen kann.
  14. Mag sein, aber galt es bei PHP nicht immer als ein cooles Feature, dass die Sprache schwach typisiert war? Ich persönlich finde es noch grauenvoller, wenn eine Sprache schwach- und stark typisiert ist. Der eine macht es so und der andere so. Da ist das Chaos erst recht vorprogrammiert.
  15. Nee, da wird der Datentyp gleich ganz weggelassen, weil man ja ganz Toll Strings mit Zahlen addieren kann. Ab Java 9 besitzt Java auch Type Inference, also var. https://www.journaldev.com/12849/javase9-var-for-local-variables Und glaub mir, man kommt auch ohne explizite Typendefinition gut aus. In meiner Firma gab es auch ältere Entwickler, die das sehr zweifelhaft finden aber inzwischen haben sie sich auch daran gewöhnt und denen fehlt auch nichts.
  16. Die Frage ist, ob du die Explizität überhaupt brauchst? Die Factory gibt dir doch auch nur ein Typ einer abstrakten Klasse oder ein Interface zurück. Die konkrete Implementierung kennst du zur Entwicklungszeit auch nicht. Ob ich jetzt: var whatever = AwesomeWhateverFactory.Create(); oder: IAwesomeWhatever whatever = AwesomeWhateverFactory.Create(); schreibe, hilft mir jetzt auch nicht wirklich weiter, denn im Grunde sagt der Name der Factory schon, was ich zurückbekomme und wenn nicht, dann im Zweifel der Rückgabewert von Create().
  17. Und das zu Recht! dynamic umgeht ja den Luxus der Typüberprüfung zur Kompilierzeit. D.h. im schlimmsten Fall kommt erst der Fehler beim Kunden vor. Es geht beides, da die Create()-Methode ja einen Rückgabewert hat und whatever ist dann von diesem Typ. Wenn Create() ein object zurückliefert, dann ist whatever ebenfalls ein object.
  18. var ist kein Datentyp. var ist eine implizite Typendeklaration um obligatorischen Code zu sparen. Anstatt TolleKlasse klasse = new TolleKlasse(); kannst du auch einfach var klasse = new TolleKlasse(); schreiben. Der Datentyp ist zur Entwicklungszeit bekannt, also muss man auch den Datentyp explizit nicht angeben. Dass var kein Datentyp ist, kannst du auch sehen, dass du var nicht als Methodenparameter verwenden kannst. Beispiel public void TolleMethode(var parameter) { // ... } Dies schmeißt ein Kompilierfehler, weil eben nicht zur Entwicklungszeit der konkrete Datentyp ermittelt werden kann. Aus meiner Sicht kann var schon den Code sauberer halten aber das ist wohl Geschmackssache.
  19. Wenn ich mir aber so durchlese, was hier im Forum über Berufsschulen geschrieben wird und auch so bedenke, was ich schon so für Stories in Berufsschulen gehört habe, bezweifle ich, dass man in den Berufsschulen überhaupt programmieren lernt. Dafür fehlt einfach zu viel.
  20. Ehrlich gesagt, finde ich es aufwendiger, wenn man erst mal alles aufschreiben muss. Da halte ich die Lösung von @ErB777 einfacher. Es ist halt nur ein bisschen Fleißarbeit. Man fängt halt mit den UND-Gattern an: A ∧ B -B ∧ C Nun kann man diese Logiken in die ODER-Gatter einfügen. Beispiel für das links-obere ODER-Gatter: (A ∧ B ) ∨ B ∨ (-B ∧ C) usw. Wenn man bei x angekommen ist, hat man die gesamte Formel. Dann kann man die Wahrheitstabelle aufbauen, Werte einsetzen und auswerten.
  21. Vorher können muss man gar nichts, denn dazu ist die Ausbildung ja da. Allerdings finde ich es persönlich nicht schlecht, wenn man eine gewisse Affinität mitbringt und vielleicht schon mal in das eine oder andere reingeschnuppert hat, um ein Gefühl dafür zu bekommen, ob das einen wirklich interessiert. Ob du jetzt Node.js, Vue.js, etc. lernst, hängt von dem jeweiligen Berieb an, wo du die Ausbildung machst. Ein Betrieb nimmt auch nicht jeden Hype mit und entwickelt auch nicht für jede Plattform. Ein Android-Entwickler wird z.B. kaum bis gar nichts mit Node.js oder Vue.js zu tun haben. Er wird hauptsächlich mit Java arbeiten. Ich selber arbeite hauptberuflich mit C# und PL/SQL. Mit JavaScript habe beruflich ich (noch) keine Berührungspunkte aber das wird sich wohl in einigen Jahren ändern. Zu deiner zweiten Frage: Es kommt drauf an, wonach du suchst bzw. die Betriebe suchen. Deutsche Betriebe suchen schon gezielt nach Spezialisten in bestimmten Bereichen. So ist es also üblich, dass z.B. C#- oder Java-Entwickler gesucht werden. Die müssen dann nicht PHP können.
  22. Es ist ja nicht so, als wäre dieser Missstand nicht bekannt, da der Name des Ausbilders im Ausbildungsvertrag steht und bei Änderung der IHK gemeldet werden muss.
  23. Und was bringt dir die "Dame aus der Personalabteilung"? Im Endeffekt muss der Azubi sich auch in diesem Fall selbst ausbilden. Die Ausbilderin kann fachlich nichts beitragen. Vielfach sind die Probleme hausgemacht, weil man nicht gewillt ist, einen Azubi vernünftig auszubilden, weil man nur die Kosten sieht aber nicht den Nutzen. Es geht ja schon damit los, dass man den Ausbilder kaum Freiraum lässt, um wirklich den Azubi zu betreuen. Denke schon, dass man einen Azubi auch in einen 5-Mann-Betrieb gut ausbilden könnte, wenn man will aber wie du schon sagst: Vielfach werden sie nur als billige Arbeitskräfte abgestempelt, die nur die Drecksarbeit machen sollen.
  24. Ein Ausbilder ist aber nicht nur dafür da, um Pläne zu machen und den Azubi von A nach B zu schicken, sondern ein Ausbilder ist sowohl ein fachlicher Ansprechpartner, als auch eine Vertrauensperson. Wenn also die "Dame aus der Personalabteilung" die Aufgabe als Ausbilderin übernimmt und der Azubi nur in der IT-Abteilung rumhängt, weil er dort ausgebildet wird, dann lässt sich schwieriger eine Vertrauensbasis aufbauen, weil beide kaum Berührungspunkte haben. Dazu gehört auch, dass man den Azubi in seiner Entwicklung beobachten und ggf. Maßnahmen ergreifen muss. Wenn bestimmte Probleme auftreten (z.B. der Azubi kommt regelmäßig zu spät), dann hat der Ausbilder die Aufgabe herauszufinden, warum das so ist und den Azubi zu helfen. Dies geht aber nicht, wenn die "Dame aus der Personalabteilung" zwei Stockwerke höher sitzt und den Azubi vielleicht einmal die Woche zu Gesicht bekommt und der Azubi behauptet, es sei alles toll, weil kein Vertrauen existiert.
  25. Wie gesagt, es kommt drauf an. Wenn der Speicher für die Anwendungen nicht reicht, fängt das Betriebssystem an zu swappen. D.h. es wird der Festplatten/SSD-Speicher als Arbeitsspeicher verwendet. Solche Speichermedien sind deutlich langsamer als der RAM und dann geht die Performance in den Keller. Wenn der Speicher aber ausreicht, gibt es keine Performanceprobleme. Was aber auch noch für zusätzliche Performance sorgt, ist die Anzahl der verbauten RAM-Module. Die Mainboards unterstützen sog. Dual Channel. D.h. es können mehrere RAM-Module zur selben Zeit angesprochen werden, was die Performance erhöht. Zwei RAM-Module mit jeweils 2GB sind also schneller als ein 4 GB RAM-Modul.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...