Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

$nooc

Alter Hase

  • »$nooc« ist der Autor dieses Themas

Beiträge: 873

Wohnort: Österreich / Kärnten

Beruf: Schüler

  • Private Nachricht senden

1

10.08.2006, 16:04

Blöcke

tachen leute!
heute hab ich mal eine - meiner meinung nach - komische frage bezüglich 'guter programmier stil'

ist es 'schick' wenn man kleinere operationen in blöcke schmeißt? zb wie das füllen eines arrays oder sonstwas, wozu man keine funktion aufruft!

damit ihr versteht was ich meine ein kleines beispiel:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
int main()
{
    int SIZE = 10;
    int *pArray = new int[SIZE];

    {  // Array füllen

        pArray[0] = 9;
        pArray[1] = 2;
        pArray[2] = 3;
        pArray[3] = 4;
        pArray[4] = 5;
        pArray[5] = 6;
        pArray[6] = 7;
        pArray[7] = 8;
        pArray[8] = 1;
        pArray[9] = 0;
    }; // Array füllen


    {  // Array ausgeben

        int i;
        for (i=0; i<10; i++)
        {
            cout << pArray[i];
        }
        cout << endl;
    }; // Array ausgeben


    BubbleSort(pArray);

    {  // Array ausgeben

        int i;
        for (i=0; i<10; i++)
        {
            cout << pArray[i];
        }
        cout << endl;
    }; // Array ausgeben


    system("pause");
    return 0;
}



das soll keinen sinn haben! es dient nur zur 'formulierung' meiner frage:

ist von solchen blöcken abzuraten?
ich finde dass man dadurch den code etwas lesbarer machen kann!
zudem kommt dass variablen wie zb: int i; wirklich nur so lange existend sind, wie man sie braucht! das könnte doch bei größeren variablen hilfreich sein oder?

was haltet ihr von solchen 'blöcken'?
Am Anfang der Weisheit steht die eigene Erkenntnis, dass man selbst nichts weiß! - Sokrates

big_muff

Alter Hase

Beiträge: 460

Wohnort: Schweiz

Beruf: Informatikstudent (4. Semester)

  • Private Nachricht senden

2

10.08.2006, 16:13

Ich benutze es nicht und finde es auch irgendwie irreführend, da Blöcke bei mir halt immer Funktionen, Schleifen, Bedingungen,usw enthalten.

Allerdings bin ich auch der Meinung das sowas nicht zu "gutem" oder "schlechtem"-Programmierstil gehört. Es gibt gewisse allgemein anerkannte Dinge, die "gut" oder "schlecht" sind. Aber solche rein optischen Dinge sind denke ich jedem selbst überlassen wenn er alleine arbeitet. Wenn du im Team arbeitest sollte eine demokratische Lösung getroffen werden...
Nur Idioten halten Ordnung, ein Genie beherrscht das Chaos.[size=7]

[/size]HardFate - Ein Start, Ein Ziel, Viele Wege[size=7]

[/size]Ein Mitglied der VEGeiCoUndGraSonMaWiGeS Bewegung.

Anonymous

unregistriert

3

10.08.2006, 16:13

Ich halte von diesem Code persönlich nichts und von "guter Programmierstil" möchte ich nicht mal Ansatzweise reden.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
int main (void) 
{ 
    unsigned long array[10] = { 9, 2, 3, 4, 5, 6, 7, 8, 1, 0 };

        // Array ausgeben:

    for (unsigned long i=0; i<10; ++i) 
        std::cout << array[i]; 

        // Zeilenseperator einfügen

    std::cout << std::endl; 

        // BubbleSort durchführen

    ::bubble_sort (array); 

        // Array ausgeben:

    for (unsigned long i=0; i<10; ++i) 
        std::cout << array[i]; 

        // Zeilenseperator einfügen

    std::cout << std::endl; 

        // RETURN abfragen

    std::cin.get ();

    return 0; 
}
Direkte Frage an Dich: Welchen Code findest Du schöner? Meinen oder Deinen?

Ich persönlich eher meinen.

Dazu fehlt mir bei Dir ein delete.

Black-Panther

Alter Hase

Beiträge: 1 443

Wohnort: Innsbruck

  • Private Nachricht senden

4

10.08.2006, 16:22

Also ich finds extrem irreführend... Total komisch dienen Code zu lesen...
stillalive studios
Drone Swarm (32.000 Dronen gleichzeitig steuern!)
facebook, twitter

Steven77

Alter Hase

Beiträge: 515

Wohnort: Münster - Gievenbeach

Beruf: Wissenschaftlicher Mitarbeiter

  • Private Nachricht senden

5

10.08.2006, 16:26

Innerhalb von switch-Blöcken unterhalb einer case-Marke, wenn dort (und nur dort) eine temporäre Variable benutzt wird, finde ich das ganz praktisch. Ansonsten ist es, wie big_muff und nix da schon angedeutet haben, Geschmackssache.
Kommen Sie nie mit einem Schwert zu einer Schießerei.

$nooc

Alter Hase

  • »$nooc« ist der Autor dieses Themas

Beiträge: 873

Wohnort: Österreich / Kärnten

Beruf: Schüler

  • Private Nachricht senden

6

10.08.2006, 16:28

@nix da:
das muss sich ja jetzt nicht speziell an dieses beispiel richten. das habe ich oben ein paarmal gesagt!
ich meine allgemein! in manchen fällen könnte das zur übersicht dienen ..

C-/C++-Quelltext

1
delete pArray;

...

@Black_Panther
wessen code meinst du?


*edit:
eine frage noch nix da:
warum schreibst du zb bei dem aufruf der funktion Bubble_Sort noch den :: operator dazu?
::Bubble_Sort(..)
das nervt doch oder?
Am Anfang der Weisheit steht die eigene Erkenntnis, dass man selbst nichts weiß! - Sokrates

Anonymous

unregistriert

7

10.08.2006, 16:31

$nooc
Ich sehe keinen Bereich wo dies Übersichtlichkeit bringt. Dazu ist deine delete-Anweisung falsch.

T-VIRUS

Alter Hase

Beiträge: 548

Wohnort: Göttingen(West)/Nordhausen(Ost)

Beruf: Schüler

  • Private Nachricht senden

8

10.08.2006, 16:32

Zitat von »"nix da"«

Ich halte von diesem Code persönlich nichts und von "guter Programmierstil" möchte ich nicht mal Ansatzweise reden.

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
int main (void) 
{ 
    unsigned long array[10] = { 9, 2, 3, 4, 5, 6, 7, 8, 1, 0 };

        // Array ausgeben:

    for (unsigned long i=0; i<10; ++i) 
        std::cout << array[i]; 

        // Zeilenseperator einfügen

    std::cout << std::endl; 

        // BubbleSort durchführen

    ::bubble_sort (array); 

        // Array ausgeben:

    for (unsigned long i=0; i<10; ++i) 
        std::cout << array[i]; 

        // Zeilenseperator einfügen

    std::cout << std::endl; 

        // RETURN abfragen

    std::cin.get ();

    return 0; 
}
Direkte Frage an Dich: Welchen Code findest Du schöner? Meinen oder Deinen?

Ich persönlich eher meinen.

Dazu fehlt mir bei Dir ein delete.


Ich mach es so inetwa wie du :)

Hier mal ein getipptest ungetestet mit Fehlern übersehtes Programm:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
//Inkludes:

#include <iostream>

//Namespaces und co

//Ja das ist kein guter Stil :p

using namespace std;

int main()
{
 cout<<"Programm beginnt"<<endl;

 int Value=1;
 if(Value<0)
  {
   Value=2;
  }

 for(int i=1; i<Value;i++)
 { 
  cout<<"i ist "<<i<<" und Value ist "<<Value<<endl;
 }

 cout<<"Programm ist beendet"<<endl;
 system(Pause");
}


Ist ne Weile her das ich in dbox programmiert hab :)
Meine Blog:)

Wer Bugs im Text findet kann sie melden, fix erscheint irgendwann :D

MFG T-VIRUS

$nooc

Alter Hase

  • »$nooc« ist der Autor dieses Themas

Beiträge: 873

Wohnort: Österreich / Kärnten

Beruf: Schüler

  • Private Nachricht senden

9

10.08.2006, 16:34

C-/C++-Quelltext

1
delete[] pArray;
Am Anfang der Weisheit steht die eigene Erkenntnis, dass man selbst nichts weiß! - Sokrates

10

10.08.2006, 16:49

@ T_VIRUS:

C-/C++-Quelltext

1
2
3
4
5
6
7
8
#include <iostream> 

int main()
{ 
    std::cout << "Programm beginnt!" << std::endl; 
    std::cout << "Programm ist beendet." << std::endl; 
    std::cin.get();
} 
... Was war das denn? :D T-VIRUS: Dein code ist Hirnfrei :D
Devil Entertainment :: Your education is our inspiration
Der Spieleprogrammierer :: Community Magazin
Merlin - A Legend awakes :: You are a dedicated C++ (DirectX) programmer and you have ability to work in a team? Contact us!
Siedler II.5 RttR :: The old settlers-style is comming back!

Also known as (D)Evil

Werbeanzeige