Zum Inhalt springen

realisticer

Mitglieder
  • Gesamte Inhalte

    33
  • Benutzer seit

  • Letzter Besuch

Beiträge von realisticer

  1. Klar schadet es nichts in Source-Dateien, aber dies macht man generell nicht bzw. sieht man nicht gerne.

    Es kommt, imho, auf den einzelnen Fall an. Hier zu pauschalisieren ist m. A. nach

    schwachfug.

    Dann merkt man unter Umständen einige Sachen nicht, wenn man den namsepace std "öffentlich" macht.

    Du meinst Namenskonflikte? Sicherlich merkst du die, denn der Compiler

    wird dich darauf aufmerksam machen.

    Und zu faul wird ja wohl keiner sein, da immer 'std::' davor zu schreiben, oder?

    Es ist fuer _mich_ definitiv nicht akzeptabel, sich damit staendig abzuquaelen.

    Es hilft mir auch nicht bei der Lesbarkeit.

    Mir fallen auch gerade nicht wirklich die Argumente ein, warum nicht ist schon so lange her. Aber ich werde nochmal forschen...

    Es gibt pro und contra Argumente fuer die using-Direktive als auch fuer die

    using-Deklaration.

    mfg

    realisticer

  2. 
    std::ostream& operator<<(std::ostream& os, const Adresse& addr)
    
    {
    
        os << addr.get_vorname() << '\t' << addr.get_name() << '\n';
    
        // ... und so weiter, halt eine Format wählen, wie es ausgegeben werden soll
    
    }
    
    
    Wobei wir hier 'os' natuerlich auch am Ende wieder zurueckgeben, schliesslich wollen wir ja auch sowas wie
    
    cout<<addr1<<addr2<<addr3;
    
    

    schreiben koennen ;)

    mfg

    realisticer

  3. ...das nächste mal das ganze etwas bunter und mit mehr animationen machen...

    Ja, nachdem was ich so gehoert habe, frage ich mich, ob das bei vielen

    Pruefern wichtiger ist, als der Inhalt der praesentiert wird.

    Ausserdem scheint bei uns es auch wichtiger zu sein, wo den die Navi zu

    sein hat. Ob oben, unten, links oder rechts...jedes Jahr anders.

    Das ist natuerlich unglaublich wichtig.

    mfg

    realisticer

  4. @realisticer, danke für die Links, zwei kenne ich schon, trotzdem nochmals danke und sorry fürs nerven...

    Es geht gar nicht darum dass du nervst. Das tust du nicht.

    Es ist nur offentsichtlich so, dass du mit der Aufgabe nicht zurecht kommst und

    nicht zurecht kommen wirst. Nicht bedingt dadurch, dass du zu bloed dazu

    waerst, sondern schlicht weg aus dem Grund, dass dir die noetigen Grundlagen

    dazu fehlen.

    Du kannst natuerlich Fragen stellen, nur wirst du viele Antworten nicht

    verstehen, da dir die eben angesprochenen Grundlagen fehlen.

    Das ist wie eine Art Teufelskreislauf. Du Fragst, wir erklaeren. Du verstehst

    es nicht und fragst und wir versuchen wieder etwas einfacher zu erklaeren.

    Nur: So kommen wir natuerlich nicht weiter. Die Funktion open_port ist ja

    jetzt soweit fertig. Du musst sie und die anderen Funktionen nun in der

    main-Funktion zusammenfuehren, so dass ein entsprechendes Programm

    herauskommt, welches eine spezifische Aufgabe erledigt.

    Es kommt so vieles auf einmal zusammen und es duerfte schwer fuer dich

    sein, den roten Faden im Auge zu behalten.

    Es ist nichts hier boese gemeint.

    mfg

    realisticer

  5. Nun,

    1.) eine Quelltextdatei ist nicht ausfuehrbar

    2.) das programm tut ja auch nichts, als das device oeffnen. Du hast null Funktionalitaet

    implementiert

    3.) Ich sehe das jetzt nur noch als "Hoppla, da will mir jemand einen Baeren aufbinden" an

    mfg

    realisticer

  6. Weisst du eigentlich, wie ein gueltiges C/C++-Programm aussieht?

    Ich empfehle dir mal folgendes:

    http://tutorial.schornboeck.net/inhalt.htm

    
    #include <stdio.h>   // Standard input/output definitions
    
    #include <string.h>  // String function definitions
    
    #include <unistd.h>  // UNIX standard functiondefinations
    
    #include <fcntl.h>   // File controll definations
    
    #include <errno.h>   // Error number definations
    
    #include <termios.h> // POSIX terminal controll definations
    
    
    /*
    
     * 'open_port()' - Open serial port 1.
    
     *
    
     * Returns the file descriptor on success or -1 on error.
    
     */
    
    
    int open_port()
    
    {
    
        int fd; // File discriptor for the Port
    
    
        fd = open("/dev/ttyS0", O_RDWR | O_NOCTTY | O_NDELAY);
    
        if (fd == -1)
    
        {
    
    	/*
    
    	 * Could not open Port.
    
    	 */
    
    
    	perror("open_port: Unable to open /dev/ttyS0 - ");
    
        }
    
    
        else
    
    	fcntl(fd, F_SETFL, FNDELAY);
    
    
        return (fd);
    
    }
    
    
    int main(int argc, char* argv[]) {
    
        /*das ist die hauptfunktion deines programms.
    
         *von hieraus wird alles aufgerufen.
    
         *z.b.:
    
        */
    
       int fd = open_port();
    
       //tue irgendwas mit fd (was weiss ich, lesen, schreiben etc.)
    
       return 0;
    
    }
    
    

    mfg

    realisticer

  7. Malzeit,

    ich habe gestern und heute vormittag mal folgenden Code zusammengesucht/-geschrieben

    Ja, das ist auch das Hauptproblem.

    Phade@isesrv101:~/C-Programme> gcc port.cpp
    
    /usr/lib/gcc-lib/i586-suse-linux/3.3.3/../../../crt1.o(.text+0x18): In function `_start':
    
    ../sysdeps/i386/elf/start.S:98: undefined reference to `main'
    
    /tmp/ccGWuVPS.o(.eh_frame+0x11): undefined reference to `__gxx_personality_v0'
    
    collect2: ld returned 1 exit status
    
    Phade@isesrv101:~/C-Programme>

    Weiß eventuell jemand was ich da falsch gemacht habe :confused:

    Ich finde einfach keinen Anfangspunkt.

    (Zur Verteidigung, den Anfang habe 1:1 übernommen)

    Thanx,

    gcc durch g++ ersetzen. Oder du musst explizit libstdc++ mitlinken.

    mfg

    realisticer

  8. Morgen,

    falls es von Interesse ist, so ist man etwas flexibler:


    template<size_t bitfieldSize>
    struct bits {
    size_t bit : bitfieldSize;
    void write(ostream& out) const {
    for(int i = bitfieldSize; i >= 0; --i)
    if(bit & (1 << i))
    out<<"1";
    else
    out<<"0";
    }

    bits& operator<<(const std::string& data) {
    memcpy(this, data.c_str(), min(bitfieldSize, data.size()));
    return *this;
    }

    bits& operator<<(const long& data) {
    memcpy(this, &data, min(bitfieldSize, sizeof(data)));
    return *this;
    }

    bits& operator<<(const double& data) {
    memcpy(this, &data, min(bitfieldSize, sizeof(data)));
    return *this;
    }
    };

    template<size_t bitfieldSize>
    ostream& operator<<(ostream& out, const bits<bitfieldSize>& {
    b.write(out);
    return out;
    }
    [/PHP]

    Als kleines Beispielprogramm:

    [PHP]
    int main() {
    const char* text = "test";
    bits<32> bit;
    bit << text;
    cout<<bit<<endl;
    size_t i = 4;
    bit << static_cast<long>(i);
    cout<<bit<<endl;
    }

    mfg

    realisticer

  9. HS 5) Artikel-Aus-Datenbank-Hol-Dingens: Hier gabs auch keine wirkliche Schwierigkeit. Die Funktionen SubStr sowie strPos finden sich in ähnlicher Weise fast in jeder Sprache. Wo lag das Problem

    Wenn ich mich noch recht erinnere, dann gab es keine Funktion, mit der du die

    Laenge des Strings bestimmen konntest. D. h. du konntest den letzten Teilstring

    nicht extrahieren, da kein "_" mehr vorhanden war.

    Hab die Aufgabe aber leider nicht mehr komplett im Kopf.

    mfg

    realisticer

  10. Ja, die GA 1 war zeitmaessig der Hammer. Hatte nur noch ne 15min, war gerade

    mit HS 4 fertig. Die 5 und 6 schnell angeschaut. Erstmal die 6 niedergekritzelt

    und dann noch die 5. Zeit leider nicht voellig ausreichend, hab die 5 nicht zu

    100% fertig machen koennen.

    Die GA 2 war ok. Im Grossen und Ganzen sehr viel zu schreiben. Wiso ging.

    Nach der GA 1 war die Stimmung im Saal bzw. draussen in der kurzen Pause...

    naja, das Zeitproblem hatten _sehr_ viele. Es wurde eigentlich fast ueberall

    ueber dieses Problem geredet. Hab auch von einigen gehoert, die, wie ich,

    eine Aufgabe zum Schluss nicht 100% beenden konnten.

    Von den SI's hab ich auch gehoert, dass die GA 1 echt der Hammer war.

    Jetzt heisst es abwarten.

    mfg

    realisticer

  11. wie ich hier bereits wiederholt geschrieben habe, nehme ich ich zu Anfragen bzgl. kompletter Anträge, Dokus usw. - auch zu denen, die mir als PersMail zugeschickt werden - grundsätzlich nicht Stellung.

    Mein Urteil über eine solche Arbeit hätte sowieso keine juristisch verwertbare Aussagekraft, da mir die örtlichen Vergleichskriterien des Anfragenden fehlen.

    Und ich will vermeiden, dass aufgrund meines Urteils als PA-Mitglied hier jemand eine präjudizierende Wirkung in meine ganz persönliche Meinung hineininterpretiert. Denn ich bin nur EIN Mitglied des PA FISI hier in Bonn - nicht DER Prüfungsausschuss.

    Auf gezielte Fragen gebe ich im Forum immer gerne Antworten - soweit ich dazu etwas zu sagen weiss.

    gruss, timmi

    Ich interpretiere nirgends etwas ein. Das ist wie mit einer Deutscharbeit. Gib

    sie 4 verschiedenen Lehrern aus 4 verschiedenen Bundeslaendern und du

    erhaelst 4 verschiedene Noten.

    Aber es ist etwas, woran man sich orientieren kann.

    Mein Prüfungsantrag war insgesamt etwa halb so lang und wurde kommentarlos vom PA akzeptiert.

    Ich weiß nicht wie es bei euch ist, aber ich (IHK Nürnberg) hatte in dem Antrag praktisch keine technischen Details stehen, eher ein allgemeiner Überblick über das Projekt, ich schätze mal das ist es worauf es ankommt.

    Nun, ich habe Projektantraege gesehen, die weniger und die mehr als ich

    drin hatten, welche genehmigt worden sind.

    Es kommt immernoch auf die Person an, welche den Antrag zu bewerten hat.

    mfg

  12. Tjä, komisch ist nur, dass ich beim Lesen des Antrags genau diese Hinweise auch gegeben hätte. Und ich bin Vorsitzender der PA FISI in Bonn.

    ...Jetzt kannst Du entweder über meine "langjährige Praxis und Erfahrung" nachdenken - oder aber über Deine Selbstkritik-Fähigkeit. ;)

    gruss, timmi

    Vielleicht koenntest du dir meine ueberarbeitete Version mal anschauen und mir

    Kritik oder Verbesserungsvorschlaege geben.

    mfg

  13. Ich habe zwar noch keine Praesentation, aber wenn du ein Medium hast, ist

    es denke ich nicht so schlimm, wenn man ein anderes nicht nutzt.

    Ist die Angabe nicht eher ein Vorschlag? Oder ist die wirklich so verbindlich,

    dass die jetzt darauf bestehen?

    Letztlich bleibt dir natuerlich nichts anderes uebrig, als deine Praesentation

    durchzuziehen. Vielleicht faellt dir ja doch noch was ein, was du auf dem

    Flipchart zeigen koenntest (vielleicht waehrend des Fachgespraeches?).

    mfg

  14. Morgen allerseits,

    ich habe das alles nochmal ueberarbeitet. Bitte schaut euch das doch mal an.

    ------

    1.Projektbeschreibung

    1.1Problembeschreibung (Ist-Zustand)

    Die in unserer Firma eingesetzten Router vom Typ Bintec (hier speziell Modell X1200) protokollieren verschiedene Informationen zu Betriebszuständen. Diese können entweder über die im Router integrierte Konfigurationskonsole in einer Auflistung angesehen, kontinuierlich angezeigt oder per UDP-Protokoll an einen beliebigen Client ausgegeben werden.

    Für die Mitschrift der Protokollierungsdaten per UDP stellt die Firma Bintec ein Programm zur Verfügung, das diese Daten in eine Textdatei ablegt.

    Alle Darstellungen, sowohl die Router eigenen, als auch die des Zusatzprogramms haben den Nachteil, das keinerlei Filterung der ausgegebenen Daten nach Bestimmten Kriterien z.B. Protokoll, IP-Adressen, usw. möglich ist. Dadurch ist eine sinnvolle Auswertung der Daten zur Diagnose von Fehlern oder Überwachung des Betriebszustandes des Routers nicht möglich.

    1.2Ziel des Projektes (Soll-Zustand)

    Im Rahmen meiner Projektarbeit soll eine Anwendung entwickelt werden, welche die Möglichkeit

    der Filterung nach bestimmten Kriterien und die übersichtliche Präsentation der gefilterten Daten

    ermöglicht. Dazu gehört das Programmdesign, sowie Entwicklung des Back- und Frontends.

    Features der Anwendung:

    1. Filter nach folgenden Kriterien

      1. Ein- und ausgehende Verbindungen
      2. IP-Adresse
      3. Art des verwendeten Protokolls

    [*]Filtermanager

    1. anzeigen, erstellen, löschen von Filterregeln
    2. Filterkriterien sollen beliebig mit den Junktoren UND, ODER und NICHT
      kombinierbar sein

    [*]Profilmanager

    1. anzeigen, erstellen, löschen von Routerprofilen
    2. Auswahl der Art und Weise, wie Routerprofile gespeichert werden sollen (z.
      B. INI-Datei)

    [*]Schnellfilter

    1. mit Hilfe einer solchen Regel soll der Anwender ohne den Filtermanager eine
      Regel schnell erstellen und anwenden können

    [*]Lauffähigkeit (oder sollte ich es Zielplattform nennen?)

    1. Die Anwendung soll auf den Betriebssystemen Linux/*BSD und MS Windows
      lauffähig sein

    Zum Abschluss des Projektes steht unseren Technikern ein Programm zur Verfügung, mit

    welchem sich die Protokollierungsdaten des Routers übersichtlich auswerten und anzeigen lassen.

    2.Beschreibung des technischen Umfeldes / Systembeschreibung

    Die eingesetzte Programmiersprache wird C++ sein. Zur Erstellung der grafischen Oberfläche wird

    die Bibliothek 'gtkmm' eingesetzt. Weiterhin wird die Boost-Bibliothek verwendet, welche unter

    anderem eine Bibliothek zur Verarbeitung von Regulären Ausdrücken zur Verfügung stellt, sowie

    eine Socket Bibliothek von Toni Schornböck, welche die Netzwerkfunktionalität der

    Betriebssysteme Linux/*BSD und Windows kapselt.

    Als Entwicklungsumgebung wird das frei verfügbare MinGW Developer Studio eingesetzt, welche

    den C++ Kompiler aus der GNU Compiler Collection (gcc) einsetzt.

    3.Projektphasen mit Zeitplan in Stunden

    1. Analysephase 12

    [*]Designphase 10

    1. Programmdesign
    2. Erstellung eines Klassendiagramms
    3. Erstellung eines DV-Konzeptes

    [*]Realisierung 27

    Entwicklung des Back- und Frontends

    [*]Testphase 07

    1. Testen der Anwendung auf Funktionalität
    2. Erstellen der Testdokumentation

    [*]Übergabe 03

    1. Übergabe des Programms an die Techniker und Einführung in das Programm

    [*]Dokumentation 11

    1. Erstellung der Projektdokumentation

    Gesamtstundenzahl 70

    4.Geplante Dokumentation zur Projektarbeit

    1.Fachkonzept

    2.Klassendiagramm

    3.DV-Konzept

    4.Testdokumentation

    5.Quelltext

    ------

    Tut mir leid, aber die Formatierung geht hier natuerlich etwas verloren, hoffe

    es ist trotzdem recht uebersichtlich.

    Was sagt ihr zu dieser Version?

    mfg

    Analyse des Ist-Zustandes
    Definition des Soll-Zustandes
    Erstellung eines Fachkonzeptes

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...