Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Coding Styles Horror
der-schlingel
myCSharp.de - Member

Avatar #avatar-3239.jpg


Dabei seit:
Beiträge: 820
Herkunft: Österreich/Wien

beantworten | zitieren | melden

Bei uns in der Firma heißt es zwar nach offiziellen Coding-Richtlinien, dass con == true nicht verwendet werden soll, aber insbesondere die Kollegen aus Bratislava bauen es ein mit der Argumentation, dass sich dann die Mitarbeiter aus der Customer Service Abteilung besser zurechtfinden im Code.

Ich frag mich da immer, wenn die Leute schon bei IF-Bedingungen Hilfe brauchen, werden sie kaum den restlichen Code verstehen.
As a man thinketh in his heart, so he is.
- Jun Fan
Es gibt nichts Gutes, außer man tut es.
- Erich Kästner
Krawutzi-Kaputzi
- Kasperl
private Nachricht | Beiträge des Benutzers
herbivore
myCSharp.de - Experte

Avatar #avatar-2627.gif


Dabei seit:
Beiträge: 52329
Herkunft: Berlin

beantworten | zitieren | melden

Hallo zusammen,

das Thema == true oder nicht hat durchaus einiges Potenzial für lange und gleichzeitig unfruchtbare Diskussionen. Deshalb sollten wir dabei belassen, dass zumindest im Rahmen dieses Forums die Empfehlung zu dem Thema, die in [Tipp] Anfängerfehler == true / == false ausgeführte ist. Dass einige Firmen oder einzelne Programmierer das anders handhaben, finde ich wie meine beiden Vorredner befremdlich, aber deshalb steht es ja auch hier unter "Coding Styles Horror". :-) Damit sollten wir es gut sein lassen.

herbivore
private Nachricht | Beiträge des Benutzers
m0rius
myCSharp.de - Member

Avatar #avatar-3125.png


Dabei seit:
Beiträge: 1043

beantworten | zitieren | melden

Hallo,

neulich gesehen:

public void Abort()
{
    // ...
    
    throw new BadCodingException("Do not abort threads manually!");
}

m0rius
Mein Blog: blog.mariusschulz.com
Hochwertige Malerarbeiten in Magdeburg und Umgebung: M'Decor, Ihr Maler für Magdeburg
private Nachricht | Beiträge des Benutzers
ujr
myCSharp.de - Experte



Dabei seit:
Beiträge: 1770

beantworten | zitieren | melden

Hallo,

leider hatte ich keine Gelegenheit, mir diese Perle im Original zu kopieren. Also aus dem Gedächtnis etwas schematisch - hätte ich's nicht selbst gesehen, hätte ich es wohl nicht für möglich gehalten.


class c1 {
  ...
  void Send(c1 c, byte[] cmd, String strIP, String strPort) {

    c=this;
    int iPort=Convert.ToInt32(strPort);
    IPEndPoint ipe=new IPEndPoint(IPAddress.Parse(strIP), iPort);

    c.Sender.Sender.Send(cmd, cmd.Length, ipe);
  }
  ...
}

class Window1 : Window {
  c1 c;
  ...
  void Send(byte[] cmd) {
    ...
    String IP=c.Sender.Sender.IPSender.Address.ToString();
    String Port=c.Sender.Sender.IPSender.Port.ToString();
    ...
    c.Send(c, cmd, IP, Port);
    ...
  }
  ...
}

Zudem handelt es sich nicht mal um ein Einzelstück - in dem Code war/ist noch mehr davon. Begleitet von ganz vielen ToString() - unabhängig vom Datentyp, also auch bei Strings - sicher ist sicher.
private Nachricht | Beiträge des Benutzers
MarsStein
myCSharp.de - Experte

Avatar #avatar-3191.gif


Dabei seit:
Beiträge: 3430
Herkunft: Trier -> München

beantworten | zitieren | melden

Hallo,

?( ich kann nur sagen: Fantastisch.
Da muss man erst mal drauf kommen

Gruß, MarsStein --> amüsiert
Non quia difficilia sunt, non audemus, sed quia non audemus, difficilia sunt! - Seneca
private Nachricht | Beiträge des Benutzers
ujr
myCSharp.de - Experte



Dabei seit:
Beiträge: 1770

beantworten | zitieren | melden

Hallo,

es gab noch eine Variante unter Einbeziehung von Klassenmembern. Natürlich in der Folge mit schwer zu findenden Bugs. Aber das war so abstrus, dass es hier zu viel Code gewesen wäre bzw. ich mir hätte sinngemäß neu ausdenken müssen.
Wenn's wenigstens "nur" ein Praktikant gewesen wäre, bestünde vielleicht noch Hoffnung...
private Nachricht | Beiträge des Benutzers
webstarg
myCSharp.de - Member



Dabei seit:
Beiträge: 562
Herkunft: München, Deutschland

beantworten | zitieren | melden

public bool Methode1(string parameter) { ... }

public void Methode2(string parameter)
{
  //...
  if (Methode1(parameter).ToString() == "False")
  {
     //...
  }
  //...
}
private Nachricht | Beiträge des Benutzers
inflames2k
myCSharp.de - Experte

Avatar #AARsmmPEUMee0tQa2JoB.png


Dabei seit:
Beiträge: 2354

beantworten | zitieren | melden

Wer lässt sich denn sowas einfallen?

Ich nutz zukünftig auch die ToString() Methode für sowas.
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von inflames2k am .
Wissen ist nicht alles. Man muss es auch anwenden können.

PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager | Spielkartenbibliothek
private Nachricht | Beiträge des Benutzers
userid14268
myCSharp.de - Member



Dabei seit:
Beiträge: 1620

beantworten | zitieren | melden

Wie geil
Aber wichtig, erst ein ToLower() ausführen und gegen "false" vergleichen, ist sicherer :D
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von userid14268 am .
private Nachricht | Beiträge des Benutzers
m0rius
myCSharp.de - Member

Avatar #avatar-3125.png


Dabei seit:
Beiträge: 1043

beantworten | zitieren | melden

Hallo CSL,

und bei der Prüfung am besten noch ein == true hinten dranhängen, um zu sehen, ob der Vergleich erfolgreich war.

m0rius
Mein Blog: blog.mariusschulz.com
Hochwertige Malerarbeiten in Magdeburg und Umgebung: M'Decor, Ihr Maler für Magdeburg
private Nachricht | Beiträge des Benutzers
inflames2k
myCSharp.de - Experte

Avatar #AARsmmPEUMee0tQa2JoB.png


Dabei seit:
Beiträge: 2354

beantworten | zitieren | melden

Quatsch!

Folgendermaßen:


if(Convert.ToBoolean(Convert.ToBoolean(Methode1(parameter).ToString()) == false).ToString()) == true)
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von inflames2k am .
Wissen ist nicht alles. Man muss es auch anwenden können.

PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager | Spielkartenbibliothek
private Nachricht | Beiträge des Benutzers
dr4g0n76
myCSharp.de - Experte

Avatar #avatar-1768.jpg


Dabei seit:
Beiträge: 3047
Herkunft: Deutschland

beantworten | zitieren | melden

edit: Code als CSharp-Blöcke markiert

bei uns seit neuestem:

CheckForIllegalCrossThreadCalls = false

(In jedem Form und Control)

und

if (b==true)

wenn ich das wirklich machen muss, werd ich ab jetzt überall (wenn b ein Wert sein sollte) auch schreiben:

if (b > 5 == true) 

usw.

So ein Quatsch.
Dieser Beitrag wurde 2 mal editiert, zum letzten Mal von dr4g0n76 am .
Seit der Erkenntnis, dass der Mensch eine Nachricht ist, erweist sich seine körperliche Existenzform als überflüssig.
private Nachricht | Beiträge des Benutzers
Gelöschter Benutzer

beantworten | zitieren | melden

@webstarg:

schlag demjenigen doch mal vor, das er es doch lieber so machen soll :D:D:D


if((Methode1(parameter).ToString().ToLowerInvariant().Contains("false")==true)
edsplash
myCSharp.de - Member

Avatar #avatar-3111.jpg


Dabei seit:
Beiträge: 411

beantworten | zitieren | melden


FileStream fs = new FileStream("Eine wohl noch nicht erstellte Datei", FileMode.Append);
fs.Close();

StreamWriter sw = new StreamWriter("die selbe Datei", true, Encoding.ASCII);
sw.Write("...");
sw.Close();


Ohne Worte
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von edsplash am .
using Skill
private Nachricht | Beiträge des Benutzers
Absturztaube
myCSharp.de - Member

Avatar #avatar-2699.png


Dabei seit:
Beiträge: 61
Herkunft: Wallis, Schweiz

beantworten | zitieren | melden

Das Teil hab ich in einem Perl Modul gefunden, dass ein Arbeitskollege geschrieben hat.
$myvar->{'events'} = $myvar->{'events'} if(!defined $myvar->{'events'});
private Nachricht | Beiträge des Benutzers
edsplash
myCSharp.de - Member

Avatar #avatar-3111.jpg


Dabei seit:
Beiträge: 411

beantworten | zitieren | melden

Versteh ich so wenig von Perl oder macht dieser Code überhaupt keinen Sinn?
Was hat denn if(...); für eine Wirkung? :S
using Skill
private Nachricht | Beiträge des Benutzers
inflames2k
myCSharp.de - Experte

Avatar #AARsmmPEUMee0tQa2JoB.png


Dabei seit:
Beiträge: 2354

beantworten | zitieren | melden

Der Code macht doch an folgender Stelle schon keinen Sinn.

$myvar->{'events'} = $myvar->{'events'}
Wissen ist nicht alles. Man muss es auch anwenden können.

PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager | Spielkartenbibliothek
private Nachricht | Beiträge des Benutzers
der-schlingel
myCSharp.de - Member

Avatar #avatar-3239.jpg


Dabei seit:
Beiträge: 820
Herkunft: Österreich/Wien

beantworten | zitieren | melden

Ich glaube, dass ist so wie bei Ruby wo du am Ende einer Anweisung when oder if anhängen kannst und die Zuweisung von der Bedingung abhängt. In dem Fall ist es doppelt toll, da die definierten Events an die definierten Events zugewiesen werden wenn sie definiert sind.
As a man thinketh in his heart, so he is.
- Jun Fan
Es gibt nichts Gutes, außer man tut es.
- Erich Kästner
Krawutzi-Kaputzi
- Kasperl
private Nachricht | Beiträge des Benutzers
Gelöschter Benutzer

beantworten | zitieren | melden

Zitat
wenn sie definiert sind.

wenn sie nicht definiert sind oder? ich meine da ist doch ein ausrufezeichen?

also in (nicht compalierbaren) c# ausgedrückt:


if(!IsDefined(myvar.Events)
{
   myvar.Events = myvar.Events;
}
[email protected]
myCSharp.de - Member



Dabei seit:
Beiträge: 407

beantworten | zitieren | melden

Also manchmal platz mir fast der Kragen...

Ich hab grad einen "Bug-Fix" von einem unserer Entwickler bekommen.
Das Teil lief eigentlich ohne Probleme, nur bei einer Berechnung war ein Fehler...

und dann sowas und noch dazu 2 Mal...
(ist zwar PHP dennoch muss man sowas herzeigen)


[php]

while($shopitemid=$shop_article_item->getShopArticleItem_ID()){
$shop_price = new DB_ShopPrice();
//.... tut noch ein paar Sachen...
}else{
$message = "...ErrorMessage...";
$pearlogger->log($message, PEAR_LOG_ERR);
}

[/php]
private Nachricht | Beiträge des Benutzers
inflames2k
myCSharp.de - Experte

Avatar #AARsmmPEUMee0tQa2JoB.png


Dabei seit:
Beiträge: 2354

beantworten | zitieren | melden

While & else? Fehlt da was oder wollt er dich verschaukeln?
Wissen ist nicht alles. Man muss es auch anwenden können.

PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager | Spielkartenbibliothek
private Nachricht | Beiträge des Benutzers
m0rius
myCSharp.de - Member

Avatar #avatar-3125.png


Dabei seit:
Beiträge: 1043

beantworten | zitieren | melden

Hallo,

ich hätte jetzt auf ein if statt auf ein while und auf == statt = getippt ...

m0rius
Mein Blog: blog.mariusschulz.com
Hochwertige Malerarbeiten in Magdeburg und Umgebung: M'Decor, Ihr Maler für Magdeburg
private Nachricht | Beiträge des Benutzers
mo#
myCSharp.de - Member

Avatar #avatar-3131.jpg


Dabei seit:
Beiträge: 191
Herkunft: Baden

beantworten | zitieren | melden

vor ein paar Tagen von schwedischen Kollegen:

public bool IsListconntSmalleThaOne(IList<IContact> listOfResults) {
  if (listOfResults.Count ≥ 1)
  {
    return false;
  }
  else
  {
    return true;
  }
}
private Nachricht | Beiträge des Benutzers
Femaref
myCSharp.de - Member



Dabei seit:
Beiträge: 253

beantworten | zitieren | melden

haste das auch auf dailywtf gepostet?
private Nachricht | Beiträge des Benutzers
mo#
myCSharp.de - Member

Avatar #avatar-3131.jpg


Dabei seit:
Beiträge: 191
Herkunft: Baden

beantworten | zitieren | melden

Zitat von Femaref
haste das auch auf dailywtf gepostet?
Nee das kam anfang der Woche in ner Kettenmail.
Aber auf der Seite wird das auch schon heftig diskutiert.

EDIT:
Danke für die Seite, mit arbeiten wird das heute nichts mehr ;-)
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von mo# am .
private Nachricht | Beiträge des Benutzers
Gelöschter Benutzer

beantworten | zitieren | melden

            try
            {
                ...
                throw new Expection(...);
            }
            catch (Expection)
            {
                ...
            }
        }
    }

    public class Expection : Exception
    {
        ...
    }

der verantworliche war wohl auf einem trip?
inflames2k
myCSharp.de - Experte

Avatar #AARsmmPEUMee0tQa2JoB.png


Dabei seit:
Beiträge: 2354

beantworten | zitieren | melden

Bis auf das Erben der Exception hab ich ähnliches auch schon programmiert, dies hing aber mit den Umständen zusammen.

Heut weis ich, dass ich keine Exception selbst werfe wenn diese sowieso direkt wieder gefangen wird...

Also in dem Fall: Ob der verantwortliche dafür auf einem Trip war kann ich nicht sagen. - Aber für sowas muss ich mir selbst auch auf die Finger haun.
Wissen ist nicht alles. Man muss es auch anwenden können.

PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager | Spielkartenbibliothek
private Nachricht | Beiträge des Benutzers
Gelöschter Benutzer

beantworten | zitieren | melden

... ich fand eher den namen erwähnenswert... und ich bezweifle das du das schon mal programmiert hast, ohne von exception zu erben, da man nichts fangen kann, das nicht von exception erbt....
frisch
myCSharp.de - Member

Avatar #avatar-1724.gif


Dabei seit:
Beiträge: 2118
Herkunft: Coburg / Oberfranken

beantworten | zitieren | melden

Zitat von JAck30lena
... ich fand eher den namen erwähnenswert... und ich bezweifle das du das schon mal programmiert hast, ohne von exception zu erben, da man nichts fangen kann, das nicht von exception erbt....
Er hat es halt erwartet :D
Es ist toll jemand zu sein, der nichts von der persönlichen Meinung Anderer hält. - frisch-live.de
private Nachricht | Beiträge des Benutzers
inflames2k
myCSharp.de - Experte

Avatar #AARsmmPEUMee0tQa2JoB.png


Dabei seit:
Beiträge: 2354

beantworten | zitieren | melden

Zitat von JAck30lena
... ich fand eher den namen erwähnenswert... und ich bezweifle das du das schon mal programmiert hast, ohne von exception zu erben, da man nichts fangen kann, das nicht von exception erbt....


Gut wenn du direkt die Exception meinst, nein das hab ich nicht getan... wozu auch? Hatte bisher noch keinen Fall wo ich eigene Exceptions brauchte.

// Edit: Und ansosnten reicht eine einfache ApplicationException...
Wissen ist nicht alles. Man muss es auch anwenden können.

PS Fritz!Box API - TR-064 Schnittstelle | PS EventLogManager | Spielkartenbibliothek
private Nachricht | Beiträge des Benutzers