Entwickler-Ecke

Freeware Projekte - Kochentscheidungsprogramm in c#


12profi - Di 07.09.10 15:11
Titel: Kochentscheidungsprogramm in c#
Hallo wie findet ihr das Programm? :http://entwicklen.jimdo.com/app/download/4449299664/4c8674ea/5df809950dbe93786a561f93d37ded96741abec0/Was+soll+ich+nur+Kochen.rar?t=1283722759
Bitte seit fair und schreibt nicht einfach irrgend ein Schrott ;)
Es ist ein Entscheidungshilfeprogramm zum Kochen.Mann kann für die ganze woche essen einteilen(entscheiden lassen)und für die Schnelle auch entscheiden lassen.
Bitte einfach mal vorbeischauen ;)


Moderiert von user profile iconChristian S.: Topic aus Off Topic verschoben am Di 07.09.2010 um 16:30
Moderiert von user profile iconChristian S.: Direkten Downloadlink eingefügt


Nersgatt - Di 07.09.10 15:15

Für den Anfang ist es ja schon ganz nett.

Ich würde den ersten Bildschirm (wo man "Los" klicken muss) weglassen. Wenn ich ein Programm starten, dann möchte ich doch sofort damit arbeiten und nicht noch einen extra Klick machen, oder?
Die Soundeffekte würde ich rausnehmen. Ist zwar eine hübsche Spielerei, tut aber nichts zur Funktion.
Das Formular selbst solltest Du vielleicht ein bisschen aufräumen. Ich musste erste wirklich überlegen, wie man das Programm bedient. Die Textboxen, wo Du das Ergebnis ausgibst, sollten Read Only sein. Oder Du verwendest gleich ein Label. Da muss der Benutzer ja nichts eingeben können.


12profi - Di 07.09.10 15:17

Hallo,danke erstmal für die schnelle antwort jetzt weiß ich was du meinst.Ja ist erst VS:1.0 aber du hast mir Mut für VS:2.0 und Idden gegeben/gemacht danke :)

mfg 12profi


bakachan - Di 07.09.10 15:20

Naja du hast ja pro Tag deine 3 Textboxes woraus zufällig ausgewählt wird und daneben das wo das Ergebnis steht. Die Ergebnisbox könnte man ReadOnly machen. Außerdem hab ich mal gespeichert und danach geladen -> alles doppelt, einfach hintereinandergeschrieben.


Nersgatt - Di 07.09.10 15:20

Die Programmausgabe mein ich, das Ergebnis der Berechnung. Dort muss der Benutzer nichts eingeben können. (die Textboxen direkt unter den "Auswählen"-Buttons).


12profi - Di 07.09.10 15:23

Hab meiner Obere aussage verbessert ;)

Und bakachan:Du darfst nicht so oft drücken Gedult Gedult ;)


Nersgatt - Di 07.09.10 15:25

user profile icon12profi hat folgendes geschrieben Zum zitierten Posting springen:
Und bakachan:Du darfst nicht so oft drücken Gedult Gedult ;)

Du musst beim Programmieren immer vom dümmsten anzunehmenden Benutzer ausgehen. Die Benutzer machen alles falsch, was man falsch machen kann. Deshalb muss das Programm alle Fehlbedienungen abfangen.


12profi - Di 07.09.10 15:31

Hmm bei sowas ist das aber schwer


Nersgatt - Di 07.09.10 15:35

Mach Dir keine Sorgen. Um im Vorfeld zu erkennen, welche Fehler die Benutzer machen werden, braucht man lange Erfaung. Das kommt mit der Zeit. Und selbst dann denkt man nicht an alle Eventualitäten. Ich arbeite seit > 10 Jahren als Programmierer und mach den Job 8 Stunden am Tag. Trotzdem bin ich immer wieder überrascht, auf was für dämliche Ideen die Benutzer kommen, wo ich nicht dran gedacht hab.
Also nimm die Kritik einfach an, beim nächsten Mal denkst Du vorher dran.


bakachan - Di 07.09.10 15:36

Wenn ich nicht so oft drücken darf dann lass es doch erst garnicht zu außerdem passiert genau das gleiche wenn ich einfach was in die Ergebnistextbox schreibe und dann auf Öffnen drücke. Da wird auch einfach angehangen anstatt zu ersetzen.

Und wenn ich bei der 2. Möglichkeit(unten) einfach nichts eingebe, wozu öffnet er mir dann eine Messagebox ohne Meldung? Wäre es nicht sinnvoller in dem Fall überhauptnichts oder eine Fehlermeldung, die den Benutzer darauf hinweist was er falsch macht, auszugeben?

(Und versteh das hier nicht falsch ich versuche nicht dein Programm hier schlechtzureden sondern dir dabei zu helfen es zu verbessern)


Christian S. - Di 07.09.10 16:31

Hallo!

Bitte gebe Deinem Thread einen aussagekräftigeren Titel, beschreibe im ersten Posting, was Dein Programm macht und gib einen direkten Downloadlink an. Außerdem beherzige alles, was hier [http://www.c-sharp-forum.de/topic_Bitte+vor+dem+posten+lesen_7836.html] drin steht.

Grüße
Christian


12profi - Di 07.09.10 18:04

Ein noch direkteren Link gibt es nicht.Ich mein man muss doch noch auf "Downlaod"Klicken können


12profi - Di 07.09.10 18:07

user profile iconbakachan:Keine Sorge ich nimm es dankend weil ich die Tipps hofentlich bei VS:2.0 anwenden will.Vielen dank


elundril - Di 07.09.10 18:11

"Mein erstes richtiges C# Programm" ist denke ich nicht mit aussagekräftig gemeint. Probier es mal mit dem Titel "Kochentscheidung"

Dieser [http://entwicklen.jimdo.com/app/download/4449299664/4c8673bf/420e48c5fe85412f3fc27b36c0f65a13a2030236/Was+soll+ich+nur+Kochen.rar?t=1283722759] Link ist der direkte Downloadlink und diesen sollst du im ersten Post angeben oder die .rar-Datei hier hochladen. ;)


Für den Anfang nicht schlecht, ich schließ mich meinen Vorrednern aber in allen Punkten an. (Btw, wozu die 7 Dateien in dem Ordner mit den Buchstaben als Name?)

lg elundril

P.S.: Das Wort "Softwares" gibt es nicht. Software heißt auch in der Mehrzahl Software. Und man kann Beiträge editieren anstatt Doppelposts zu schreiben ;)


12profi - Di 07.09.10 19:15

Hallo,danke aber der Link ähh klick ihn mal an er findet es nicht und die 7 datein sind für den STreamwriter (Die sind sehr wichtig,wenn man die löscht dann speichert er die Ergebnisse nicht mehr.Trotzdem vielen dank


elundril - Di 07.09.10 19:21

user profile icon12profi hat folgendes geschrieben Zum zitierten Posting springen:
Hallo,danke aber der Link ähh klick ihn mal an er findet es nicht


Kunststück wenn du deine Seite umbaust und dein Programm auf eine andere Seite gibst. Hab jetzt den Link mal korrigiert und er funktioniert. Nachweislich. Habs getestet. Außer du schupfst das Programm wieder herum. Aber dann änderst du bitte selbst den Link.

lg elundril


Christian S. - Di 07.09.10 19:24

Ich habe jetzt den direkten Downloadlink eingefügt. Demnächst selber machen! :mahn:


12profi - Di 07.09.10 19:30

OK,danke aber wie macht man das ich meine auf download klicken und dann den Link?


Christian S. - Di 07.09.10 19:37

Ich versteh kein Wort.


Trashkid2000 - Di 07.09.10 19:46

Hi, muss auch mal mein Statement zu dem Programm abgeben.
Hmmm...
Also, mit der Bedienung habe ich mich erst sehr schwer getan (bzw. bin da immer noch nicht durchgestiegen).

Dann die große Frage - warum dauert es so lange, wenn ich auf Start drücke? Da werden doch noch gar keine Daten geladen!? Wenn man ein bisschen wartet, bevor man auf Start klickt (was ich auch ziemlich unnütze finde), dann startet der Rest sofort. Womit wird denn beim Starten wertvolle Rechenzeit vergeudet?

Gut, wenn dann die erste Wartezeit überbrückt ist, also die Benutzeroberfläche:
Also, den Sonntag bekomme ich nur noch halb angezeigt, selbst, wenn das Fenster maximiert ist. Dabei habe ich schon eine Auflösung von 1280 x 1024. Um alles zu sehen, muss ich das Fenster erst verschieben. Das stört. Dabei ist doch genug Platz auf der Form. Aber die Anordnung ist halt nicht toll.
Über das Design mit dem Hintergrund lässt sich auch streiten. Und das, was @bakachan mit den TextBoxen angesprochen hat. Einfach mal nicht

C#-Quelltext
1:
textBox1.Text += "Bla";                    

sondern

C#-Quelltext
1:
textBox1.Text = "Bla"                    

schreiben. Dann wird der Test auch nicht jedes Mal angehängt.

Als letzten Punkt fällt mir noch auf, dass die Dateien, die denn warsch. zur Arbeit des Programmes benötigt werden, keine Dateiendung haben. Ist das so gewollt? Und wozu sind eigentlich die Dateien a-l? Sind die nur zum Temp-zwischenspeichern? Da gibt es bessere Lösungen!!

Tut mir leid, dass ich das so zweifelnd ansehe. Aber so ist es immer, wenn ein Programm vorgestellt wird.

Marko


12profi - Di 07.09.10 22:10

Hallo,
1.Es dauert weil es redet.Ja das Programm redet hör halt mal zu ;)
2.Mit der Textbox Ok ich muss das verbessern ist erst VS:1.0
3.Mit dem Sonntag tut mir leid


Trashkid2000 - Di 07.09.10 22:31

Sorry, hatte kein Sound an meinem Rechner an. Deswegen die Frage.
Aber ich finde es ehrlich gesagt immer störend, wenn irgendwas ungefragt einen Ton von sich gibt...

Gruss, Marko


12profi - Mi 08.09.10 09:14

Achso sorry das wusste ich nicht.Und die Buchstaben sind für den Streamwriter(sehr wichtug ohne die Speichert er die sachen nicht)

mfg 12profi


Nersgatt - Mi 08.09.10 09:25

Zeig doch mal die Quellcodestellen, wofür die Buchstabendateien nötig sind. Ich bin sicher, dass man eine andere Lösung finden kann, die ohne die Buchstaben auskommt.


bakachan - Mi 08.09.10 09:26

Ist ja schön das du immer wieder betonst das die Dateien wichtig sind und ohne die der StreamWriter(du meinst das Speichern oder?) nicht funktioniert aber die eigentliche Frage ist doch: Warum ->7<- Dateien? Wäre es nicht sinnvoller es in 1 Datei zu schreiben? Da könnte man auch gleich eine kleine Übung mit XML draus machen.


12profi - Mi 08.09.10 09:43

Ja 7 streamwriter für jeden Tag einen

C#-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
          
            StreamWriter sw = new StreamWriter("Was sie gespeichert haben");
            sw.Write(textBox4.Text);
            sw.Close();
            StreamWriter se = new StreamWriter("f");
            se.Write(textBox6.Text);
            se.Close();
            StreamWriter sb = new StreamWriter("b");
            sb.Write(textBox5.Text);
            sb.Close();
            StreamWriter sk = new StreamWriter("a");
            sk.Write(textBox7.Text);
            sk.Close();
            StreamWriter sh = new StreamWriter("g");
            sh.Write(textBox8.Text);
            sh.Close();
            StreamWriter st = new StreamWriter("k");
            st.Write(textBox9.Text);
            st.Close();
            StreamWriter sz = new StreamWriter("l");
            sz.Write(textBox10.Text);
            sz.Close();


Nersgatt - Mi 08.09.10 09:56

Wenn die Streamwriter so erstellt werden:

C#-Quelltext
1:
StreamWriter se = new StreamWriter("f", True);                    

dann wir die Datei erstellt, sofern sie noch nicht existiert. Dann kannst Du Dir das Ausliefern der Dateien sparen, denn sie werden ggf. automatisch erstellt.


12profi - Mi 08.09.10 10:02

und beim streamreader kann er das dann noch normal öffnen (lesen)


Christian S. - Mi 08.09.10 10:05

Hallo!

Bitte besprecht Fragen zur Programmierung in den dafür vorgesehen Sparten des Forums. Danke! :-)

Grüße
Christian


12profi - Mi 08.09.10 10:08

OK ;)


HeftCD - Mi 08.09.10 11:38

mhh, Wozu so ein kompliziertes Programm ???


Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
begin
  Randomize;
  A := Random(6 + 2);
  case A of
    1: Spaghetti
      2: Pizzaaa
      3: Dönersch
      4: Milchreis
      5: SchiPo(Schnitzel & Pommes)
      6: von gestern nochmal
  end
else
  goto MACDonals;

  MACDonals:
  begin
    result := ' *KOTZEN* ';
  end;
end.


12profi - Mi 08.09.10 12:37

Ähh 1.Es ist mit c# geschrieben
2.Ähhh es soll von der Eingabe des user auswählen ;)

mfg 12profi


elundril - Mi 08.09.10 14:02

user profile iconHeftCD hat folgendes geschrieben Zum zitierten Posting springen:
mhh, Wozu so ein kompliziertes Programm ???


Ähmm, übung macht den Meister und jeder fängt mal klein an? Ich nehm an dein erstes Programm war auch nicht gerade die Steuerungssoftware für CERN oder ein Programm zum Berechnen der Form von Enzymen. (Mein war nämlich ein "Fang den Button"-Scherzprogramm)

lg elundril


12profi - Mi 08.09.10 15:36

^^Danke für die gute Aufmunterung


Nersgatt - Mi 08.09.10 15:48

Vor allem hat das Programm Lernpotenzial.
Erweiterung 1: Das Programm könnte in Zukunft vielleicht mal die Vorschläge aus einer Liste auswählen, die man nur einmal eingeben muss. Also eine Menü-Datenbank.
Erweiterung 2: Das Programm könnte das ganze Rezept speichern und ausgeben
Erweiterung 3: Man sagt, dem Programm "Ich hab Nudeln, Lachs und Ketchup im Kühlschrank, such mir mal ein Rezept mit diesen Zutaten".

Wie Du siehst, Du kannst an dem Programm noch lange arbeiten und vieles Lernen. Bleib einfach dran.


12profi - Mi 08.09.10 16:06

Hmm das mit der datenbank ist eine gute Idde hat mein Bruder auch schon gesagt.Was sagt ihr soll ich eine VS:2.0 machen ?


Trashkid2000 - Mi 08.09.10 17:36

Da Du ja in einem anderen Thread eh ein Buch für Datenbanken suchst, um das zu lernen, würde sich das bestimmt anbieten. Jedenfalls zum lernen. Ansonsten finde ich eine DB für so ein kleines Projekt ziemlich Overhead.

Für eine Anwendung, die man verteilen möchte, würde sich eine kompakte Datenbank wie z.B. Microsoft SQL Server Compact
anbieten. Manche Funktionen vermisst man zwar dabei (die man halt vom MS SQL Server kennt), aber man kann schon damit arbeiten, finde ich.

Kannst Du Dir ja mal anschauen.


12profi - Mi 08.09.10 17:53

Ok,vielen dank ;)


Tankard - Mi 08.09.10 18:12

user profile iconTrashkid2000 hat folgendes geschrieben Zum zitierten Posting springen:
Da Du ja in einem anderen Thread eh ein Buch für Datenbanken suchst, um das zu lernen, würde sich das bestimmt anbieten. Jedenfalls zum lernen. Ansonsten finde ich eine DB für so ein kleines Projekt ziemlich Overhead.

Für eine Anwendung, die man verteilen möchte, würde sich eine kompakte Datenbank wie z.B. Microsoft SQL Server Compact
anbieten. Manche Funktionen vermisst man zwar dabei (die man halt vom MS SQL Server kennt), aber man kann schon damit arbeiten, finde ich.

Kannst Du Dir ja mal anschauen.


Es gibt kein Projekt was zu klein für eine Datenbank ist. Für kleinere Sachen benutze ich meisten SQLite, um zB Konfigurationen etc. zu speichern.

http://www.thomasbelser.net/2009/01/25/c-sharp-und-sqlite-eine-kleine-einfuhrung/
biete für SQLite ne kleines Beispiel wie man sowas einbindet. Für Anfänger ganz interessant.

Für nicht C# sollte man sich mal die ZEOSLib anschauen, dann kann man recht einfach die unterschiedlichen Datenbanksysteme ansprechen.

http://sourceforge.net/projects/zeoslib/


Gruss
Tankard


12profi - Mi 08.09.10 19:06

Hmmm danke sows ist ein richitger "Post" ;)