Zum Inhalt springen

JustALurker

Mitglieder
  • Gesamte Inhalte

    73
  • Benutzer seit

  • Letzter Besuch

Letzte Besucher des Profils

1,029 Profilaufrufe
  1. Jeder der selbst programmiert hält sich für einen "echten" Programmierer und die, die etwas in einem anderen Bereich machen sind dann natürlich irgendwas anderes. Der Bereich alleine hat eigentlich recht wenig mit der Komplexzität der Entwicklung zu tun, ob ich jetzt eine aufwendige Webapp in Python entwickle oder die LED von meinem Raspberry PI mit einem in Assembler geschrieben Skript zum Aufleuchten bringe, macht schon einen gewissen Unterschied, auch wenn die Webapp ja nur von einem Webentwickler erstellt wurde :p Was ich aber wie @KeeperOfCoffee schon angemerkt hat Unterscheiden würde ist der Unterschied zwischen einem einfachen Programmierer der nur Geplantes umsetzt oder einem Entwickler, der auch selbst bei der Planung und Architektur tätig wird.
  2. Das ist wirklich schade das hier so wenig Arbeit in die Aufgaben gesteckt wird, besonders wenn es um Grundlagen geht. Aussagekräftige Variablen-/ und Funktionsbezeichnungen in einfachen und sinnvollen Beispielen würden das nachvollziehen um einiges einfach machen. Aber gut da es kein Buch, sondern ein Kurs ist, kann man da nicht viel machen. In C hast du die Möglichkeit, einen Parameter über zwei unterschiedliche Wege zu übergeben. Hierbei ist es auch unabhängig, ob der Parameter ein einfacher Datentyp ist oder eine Struktur oder etwas anderes ist. Pass By Value ist wohl der gängigste Typ Angenommen ich habe jetzt zwei Variablen zahl1, zahl2, vom Typen int die ich nun übergebe: Beim Aufruf dieser Methode wird jetzt eine Kopie von zahl1 und zahl2 erstellt, es werden also im Speicher zwei weitere Variablen angelegt, die auch zusätzlichen Speicherplatz benötigen. Die beiden Variablen "firstNumber" und "secondNumber" kann ich jetzt frei innerhalb meiner add Methode überschreiben, ohne das die "originalen" Variablen zahl1 und zahl2 verändert werden. Der andere Weg ist Pass By Reference hier wird einfach nur ein Verweis an die add Methode übergeben. firstNumber und secondNumber zeigen jetzt also auf die gleiche Adresse wie die von zahl1 und zahl2. Wenn ich jetzt in firstNumber einen anderen Wert zuweise, wird auch gleichzeitig zahl1 verändert.
  3. Welche Stellen sind denn zurzeit noch unklar? Wie würdest du Strukturen definieren und wann denkst du, lohnt es sich diese zu verwenden? Sind eigentlich alle Beispiele/Aufgaben in deinem Kurs/Buch(?) in dieser nicht aussagekräftigen Art geschrieben? Ich glaube, mit sinnvollen Beispielen für Strukturen wäre das auch direkt viel klarer. z. B. sowas: Ich glaube, dass eigentliche Hauptaugenmerk bei der Aufgabe ist die Funktion f die einmal einen direkten Wert als Parameter verlangt und einmal eine Referenz. Ich nenne mal hier die beiden Begriffe Pass by Value und Pass by Reference, wenn du die beiden Konzepte verinnerlicht hast, erklärt sich auch warum der Output bei der Aufgabe 1 und 2 ist und nicht 7 und 2.
  4. Am einfachsten lassen sich solche Code Ausschnitte in kleinen Konsolenanwendungen testen in denen man einen Haltepunkt setzt und dann Zeile für Zeile die Variablen prüft wie diese sich Verändern. In Zeile 6 und 7 werden die beiden Arrays vom Typ Integer erstellt und mit den entsprechenden Werten initialisiert. In Zeile 8 wird nun ein Zeiger auf ein Array mit der Größe 2 vom Typen Integer definiert und mit den beiden Adressen von feld1 und feld2 initalisiert. ipf[] beinhaltet nun also 2 Adressen und diese sind die von feld1 und feld2. Die Adressen von einem Array zeigen immer auf das erste Element im Array also z. B: Zeile 9 ist ein weiterer Zeiger auf eine Integer Variable die, die gleiche Adresse erhält wie feld1 also: Zeile 10 dereferenziert ipf[1] und addiert dann noch den Wert 1 dazu. ipf[1] entspricht der Adresse des Arrays feld2 bzw. dessen ersten Element also 29. Und 29 + 1 sind eben 30, was die Ausgabe auch nochmal bestätigt. In der letzten interessanten Zeile wird die Adresse ipf[0], welche dem ersten Element von feld1 entspricht also 13, subtrahiert mit der Adresse auf die ip zeigt, welche sich aus Zeile 9 ergibt, es zeigen also beide auf die gleiche Adresse, also 13 - 13 = 0. Was mich an der Aufgabe etwas überrascht hat war, das man in der Zeile 11: keine Sterne angeben musste um die Adresse wieder zu dereferenzieren, also eigentlich hätte ich es so erwartet, was zum gleichen Output führt: möglicherweise wird die Ausgabe wohl direkt als Wert ausgegeben wenn man mit zwei Adressen Rechenoperationen durchführt, hier bin ich mir aber nicht sicher.
  5. Seit Oktober 2018 ist das zumindest unter Windows 10 obsolet geworden. Quelle: https://www.techbook.de/pc-mac/hardware/usb-stick-sicher-entfernen
  6. Wenn du in der Datei "Form1.cs [Entwurf]" einen Button hinzufügst, wird dieser automatisch von Visual Studio in der Datei "Form1.Designer.cs" hinterlegt. Die Funktionalität, die du erhältst, wenn du doppelt auf diesen Button im Entwurfsfenster klickst, befindet sich dann in der Datei "Form1.cs", die du ja in dem beigefügten Screenshot schon an der korrekten Stelle offen hast. Ich finde es auch etwas schade, dass das Buch dich direkt in ein scheinbar fertiges Beispielprojekt reinwirft und nicht wie andere bereits erwähnt haben von vorne mit den Grundlagen beginnt. Klar sieht die Konsole, dann nicht so schön aus wie eine Anwendung mit GUI, aber es wäre um ein vielfaches einfacher nachzuvollziehen, wie der Programmcode funktioniert. Wenn es aber trotzdem mit GUIs und der Hilfe von Visual Studio weitergehen soll, würde ich dir empfehlen, unabhängig vom Buch einfach ein neues Projekt zu erstellen, dir alle Dateien und Klassen mal anzuschauen, dann mal einen Button hinzufügen und prüfen welche Dateien sich verändert haben, dann doppelt auf den Button klicken und noch mal festzustellen, welchen Code Visual Studio für dich generiert hat.
  7. Das ist auch vollkommen in Ordnung und zeigt Interesse, aber die meisten Fragen, die du bisher gestellt hast, haben nicht wirklich etwas mit Erfahrung zu tun, sondern stehen einfach auf den entsprechenden Webseiten. Es bringt dir nichts, wenn ein Security-Experte mit 5 Jahren Berufserfahrung dir sagt, welchen Durchschnitt er damals für sein Zeugnis benötigt hat, um an der Universität aufgenommen zu werden. Das ändert sich jedes Halbjahr und ist bei jeder Hochschule/Universität unterschiedlich. Erster Ansprechpartner sollte eine Suchmaschine deiner Wahl sein und im zweiten Schritt dann die entsprechende Universität selbst auf ihrer Homepage oder ggf. die Studienberatung. Man fragt ja auch später nicht die Organisation, die man hacken möchte, wo denn ihre Sicherheitslücken sind und welche Tools sie dafür empfehlen würden, sondern schaut erstmal selbst ganz Allgemein was es für Möglichkeiten gibt und arbeitet sich dann in die vielversprechendsten Optionen ein.
  8. Ziel einer Ausbildung ist ja gerade das Ausbilden einer Fachkraft, besondere Vorkenntnisse oder Lehrgänge sind in den meisten Fällen nicht notwendig und die Firmen die darauf bestehen, dass der Azubi schon seit Tag 1 erweiterte Fähigkeiten hat, wollen auch in der Regel nicht ausbilden, sondern suchen eine günstige Arbeitskraft. Wenn du einen guten Realschulabschluss hast und in den entscheidenden Fächern fit bist, ist die Grundlage auf jeden Fall gegeben. Wenn du dich aber dennoch in deiner Freizeit schonmal darauf einstellen möchtest was so auf dich zukommen wird, ist das IT-Handbuch, so die klassische Lektüre für Fachinformatiker jeder Fachrichtung und auch während der Ausbildung dann ganz nützlich. Zu dem Punkt mit den lernen von JavaScript. Die Programmiersprache, die du im Laufe der Ausbildung lernen wirst, ist abhängig von dem Unternehmen, das dich ausbildet und in der Schule wird meist auch noch die objektorientierte Programmierung (meist mithilfe von Java/C#) grundlegend erklärt. Grundlegend ist es nicht verkehrt mal 1-2 kleinere Programme geschrieben zu haben einfach, um mal ein Gefühl für die Programmierung zu bekommen. Aber vom aktivem lernen würde ich dir vor der Ausbildung abraten. Bevor du dir über YouTube Tutorials oder Online Kurse Halbwissen aneignest, das dir dein zukünftiger Ausbilder erstmal wieder umlernen muss, ist es besser frisch anzufangen und es direkt so zu lernen wie es im Unternehmen angewendet wird.
  9. JustALurker

    Dienst?

    Einfach ausgedrückt kann man einen Dienst als eine Software (genauer Systemsoftware) bezeichnen, die das Betriebssystem oder eine Anwendungssoftware um zusätzliche (Hilfs-)Funktionalitäten erweitert. Ein Dienst läuft still im Hintergrund und erfordert keine Interaktion des Anwenders. Das Betriebssystem oder die Anwendungssoftware greift über eine Schnittstelle, die der Dienst anbietet, auf die Funktionen zu, die in dem Dienst(programm) enthalten sind.
  10. Zu dem Punkt mit der Ausbildungsverkürzung: Neben dem Verkürzen der Ausbildungszeit vor Ausbildungsbeginn, durch schulische Vorbildung nach (§ 8 BBiG), steht dir auch noch die Möglichkeit offen während der Ausbildung (in der Regel kurz nach der Zwischenprüfung) einen Antrag auf die vorzeitige Zulassung zur Abschlussprüfung nach (§ 45 BBiG) zu beantragen und damit deine Ausbildungszeit um 6 Monate zu verkürzen, wenn deine schulischen und betrieblichen Leistungen dann entsprechend sind. Wenn du dir also unsicher bist, kannst du zunächst die Berufsausbildung regulär beginnen und im Laufe der Zeit, wenn du merkst was in der Ausbildung auf dich zukommt, entscheiden ob du dir zutraust die Ausbildung zu verkürzen oder eben nicht.
  11. Eigene Attribute hinzuzufügen wird nicht möglich sein, aber du könntest in einer der vordefinierten Metainformationen die Bezeichnungen für die jeweiligen Dateitypen eintragen und diese Spalte dann im Explorer einblenden lassen. Der Explorer selbst kennt nur die Metainformationen der Datei, nicht den Inhalt. Die Anzahl der verfügbaren Spalten ist auch recht umfangreich, vielleicht findet sich da ja ein passendes Attribut.
  12. Ein Anwendungsbeispiel will ich dir noch nicht direkt geben, aber die folgenden Links sollte dir die Infos vermitteln die du brauchst, um das Problem zu lösen: - https://en.wikipedia.org/wiki/POSIX_Threads - https://www.geeksforgeeks.org/multithreading-c-2/ - https://dev.to/quantumsheep/basics-of-multithreading-in-c-4pam Wenn du danach noch Fragen oder Unklarheiten dazu hast, helfe ich dir aber natürlich gern weiter.
  13. Hey, der sleep() - Befehl bewirkt, das der aktuell aktive Thread für die als Parameter übergebene Zeit in Millisekunden pausiert wird. Der Grundgedanke mit dem 5 Sekunden warten wäre damit erfüllt, dies wird dann aber direkt zum nächsten Problem führen - während der aktuelle Prozess pausiert ist, nimmt er natürlich auch keine Benutzereingaben mehr für diese Zeit an und deine Anwendung hängt sich auf. An der Nutzung von einem weiteren Thread, Stichpunkt Multithreading wirst du nicht vorbeikommen. Dieser eigenständige Watcher-Thread hat dann die Aufgabe regelmäßig zu überwachen ob der Benutzer schon etwas eingeben hat und seine Eingabe bestätigt ist (z. B. durch Enter). Hier im Watcher-Thread wäre auch das vorher vorgeschlagene sleep() nicht verkehrt (du willst ja nicht dauerhaft Prozessorzeit beanspruchen um zu sehen, ob es schon Eingaben gibt, so eine Überprüfung kann man auch alle x Millisekunden durchführen). Der Watcher-Thread könnte dann also vorzeitig beendet werden nachdem der Benutzer seine Eingabe bestätigt hat oder eben solange laufen bis der Timeout erreicht wurde, dannach kann der Watcher-Thread sich wieder mit dem Haupt-Thread synchronisieren und du kannst die Eingabe auswerten. Hoffe, das ist als Ansatz hilfreich
  14. Hey, ohne den Projektantrag gesehen zu haben ist es natürlich nur eine Vermutung, aber: Ich vermute, die Frage ist in die andere Richtung gemeint. Für mich klingt es so als wären die Prüfer unsicher darüber, ob diese gesamte Softwarelösung überhaupt in einer Woche realisierbar ist oder du dich da etwas überschätzt oder doch eigentlich nur einen Teilbereich eines Gesamtprojekts realisierst. Hier ist den Prüfern nicht ganz ersichtlich in welcher Form dieses Projekt überhaupt realisiert wird, ist es ein simples Skript? oder doch eine Desktop-Application mit GUI? Auf welchen Betriebssystemen soll es später laufen? Sind schon Frameworks vorgegeben? In der Regel ist dieser Punkt schon vorgegeben. Die Information ist ganz interessant um den Gesamtaufwand für das Projekt besser abzuschätzen. Kommt auf den Inhalt des Projektantrags an.
  15. Hey, woran hängt es denn aktuell bei den Erklärungen im Internet?

Fachinformatiker.de, 2020 SE Internet Services

fidelogo_small.png

if_icon-6-mail-envelope-closed_314900.pnSchicken Sie uns eine Nachricht!

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

Fachinformatiker.de App


Get it on Google Play

Kontakt

Hier werben?
Oder senden Sie eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...

Wichtige Information

Fachinformatiker.de verwendet Cookies. Mehr dazu in unserer Datenschutzerklärung