Gleichzeitig im Team in Echtzeit Code Programmieren

  • C++/CLI

Es gibt 19 Antworten in diesem Thema. Der letzte Beitrag () ist von MrTrebron.

    Gleichzeitig im Team in Echtzeit Code Programmieren

    Hallo VB Community

    Vorab: Die gleiche frage stellt sich mir auch bei Java, falls sich einer damit auskennt.

    Kann man gleichzeitig in echtzeit an z.B. zwei Klassen Programmieren? Also in Eclipse bzw. Visual Studio? Man soll mit dem Team Foundation Servern wohl dateien übertragen können, aber ich denke da eher halt an Echtzeit-Übertragung, oder etwas was dem sehr nahe kommt. Ich würde mich natürlich auch über Links freuen. Mir fehlen halt nur Begriffe von den Modulen die so etwas bewerkstelligen, deshalb finde ich da nichts.

    Mit freundlichen Grüßen
    Julian
    Aber in Echtzeit stelle ich mir sehr problematisch vor. Der eine löscht ne Zeile, der andere will die gleiche löschen und löscht dann aus versehen die darüber. Wie soll das denn beim Debuggen funktionieren? Wenn weiter synchronisiert wird, dann stimmt der Code nicht mehr mit dem Programm überein und Breakpoints/Fehlermeldungen funktionieren nicht mehr richtig.

    In Echtzeit zu Programmieren ist keine gute Idee, nehmt lieber ein System wie z. B. Git, da bleiben euch eine Menge dämliche Fehler erspart und ihr könnt trotzdem eine Menge Spaß haben, es spricht ja nichts dagegen, alle 5 Minuten einen Commit zu machen, welcher von dem anderen dann direkt synchronisiert wird.
    Mfg
    Vincent

    @popopirat97 Echtzeit ist eine Eigenschaft von Betriebssystemen und speziell compilierten Programmen, dass Ereignisse (Timer_Tick, Prozeduraufrufe, IO-Operationen) zu sehr wohldefinierten Zeiten / Intervallen stattfinden und nicht etwa irgendwann (Windows und .NET können dies nicht).
    Wenn Du "gleichzeitig", "parallel", ... an einer Datei / ... an einem Projekt meinst, stelle das bitte klar.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    @RodFromGermany unter

    Quellcode

    1. ​Echtzeit
    kann man aber auch eine geringe Verzögerung verstehen.

    Und wenn man liest was der TO schreibt, kommt man dahin das er gerne mit wenig Verzögerung sehen will was der oder die andere(n) geschrieben haben. Oder gar die Eingaben direkt sehen.
    Wer Google Wave noch kennt, der kennt das Prinzip.

    Nur hat sich weder Google Wave durchgesetzt noch wird sich dass wohl in der Programmierung durchsetzen.

    Denn wenn einer der andren noch nicht mit seinem Code fertig ist, nützt es mir nichts wenn ich diesen schon hab. Ein kompilieren um den eigenen Code zu testen könnte deshalb zu Fehlern führen.

    So ist schon TFS (VSO) oder GIT die richtige Wahl. Jeder checked seinen Code ein wenn er Lauffähig ist.
    Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.
    OHa. Ich hatte noch nicht das Vergnügen, mit ferneren Leuten als 20 Meter (Wegstrecke, nicht Luftlinie) an einem Projekt zusammen zu programmieren.
    Allerdings war da immer klar, wer an welchem Modul arbeitet und wer nicht.

    MrTrebron schrieb:

    Jeder checked seinen Code ein wenn er Lauffähig ist
    ==> wenn er compiliert.
    Lauffähig ist dann ja erst der zusammengesetzte Code.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    MrTrebron schrieb:

    welchen Begriff man her nimmt
    Das sind zwei verschiedene Sachverhalte.
    Mein Code compiliert, aber er läuft nicht, weil ich z.B. einen Algorithmus noch nicht implementiert habe. Da steht dann in einer Prozedurhülse:

    C#-Quellcode

    1. throw new NotImplementedException();
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!

    popopirat97 schrieb:

    Man soll mit dem Team Foundation Servern wohl dateien übertragen können

    Der TFS ist für das arbeiten an einem Projekt gedacht. Jeder "checkt" den Teil den Programmes an dem er Arbeitet Exklusiv aus und wenn die Bearbeitung abgeschlossen ist wird der Teil wieder frei gegeben und die neue Version am Server abgelegt. Die anderen Programmierer werden dann informiert das es an einem Teil eine Änderung gegeben hat und können diese übernehmen.
    So können 2 Programmierer gleichzeitig an verschiedenen Teilen des Programms arbeiten. Was hierbei nicht geht ist das gleichzeitige Arbeiten in einem Modul.
    Für dieses Projekt habe ich keine Lösung. Hier würde ich wohl TeamViewer benutzen und dann einfach den Code besprechen :)
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    @Schamash Mit dem TFS können (sehr) viele Programmierer gleichzeitig an einem Projekt arbeiten, nicht nur zwei.
    Falls Du diesen Code kopierst, achte auf die C&P-Bremse.
    Jede einzelne Zeile Deines Programms, die Du nicht explizit getestet hast, ist falsch :!:
    Ein guter .NET-Snippetkonverter (der ist verfügbar).
    Programmierfragen über PN / Konversation werden ignoriert!
    Es muss aber wie immer (ob man nun Git, TFS oder das lokale Netzwerk mit C&P benutzt) abgesprochen werden, wer an welchem Modul arbeitet. Muss man gleichzeitig an zwei abhängigen Stücken Code arbeiten lohnt es sich im vorraus die Funktionen festzulegen und entsprechende Interfaces anzulegen. Und wenn wir schon bei Interfaces sind wäre IoC (Inversion of Control) vielleicht ganz interessant.

    RodFromGermany schrieb:

    nicht nur zwei.

    Das ist richtig. Aber der TE und seine Freundin sind nur 2 :)
    There is no CLOUD - just other people's computers

    Q: Why do JAVA developers wear glasses?
    A: Because they can't C#

    Daily prayer:
    "Dear Lord, grand me the strength not to kill any stupid people today and please grant me the ability to punch them in the face over standard TCP/IP."
    Erstmal danke für die Antworten.

    Also an der gleichen klasse arbeiten ist nicht zwingend notwendig, nur ich denke halt an etwas automatisiertes. Beispiel wäre zum beispiel ein rechtsklick auf den tab der klasse, und dann eine möglichkeit wie Veröffentlichen. Also eine sehr schnelle möglichkeit, klassen zu übertragen.

    Ich werde die gefallenen Begriffe mal googlen und mich über die Methoden schlau machen.

    Bin natürlich für weitere vorschläge offen.

    Grüße
    Julian
    Visual Studio Online gibt dir die Möglichkeit den TFS von Microsoft für ein paar Projekte gratis zu nutzen. Ansonsten hatte ich sowas auch schon mal mit einem Kollegen per Dropbox gemacht. Da kannst du ja auch mit einem Klick die Synchronisation anhalten und zwischendurch wieder kurz an machen. Hat ganz gut geklappt, aber nicht perfekt.
    Wenn schon äh, dann Visual Studio Team Services ist Visual Studio Online. Der Name VSO ist nicht mehr.

    VSTS ist quasi ein TFS in der Cloud
    Die deutsche Sprache ist Freeware, du kannst sie benutzen, ohne dafür zu bezahlen. Sie ist aber nicht Open Source, also darfst du sie nicht verändern, wie es dir gerade passt.