Hallo,
ich bin selber Neuling auf der C#-Ebene und meine Programmiererfahrung beschränkt sich auf einen Grundkurs in C und Matlab.
Bei meinem Job soll momentan etwas programmiert werden, was kein Riesenaufwand ist und wo ich angeboten habe ich sollte das schaffen.
Nach ein bißchen Recherche welche Sprache ich dafür nutzen sollte wurde mir C# empfohlen.
Deshalb wollte ich mal bei euch hören ob es die richtige Wahl ist(ich will bei dem Projekt gerne auch etwas für mich lernen) oder ob C# mit Kanonen auf Spatzen geschossen ist. Prinzipiell ist das Programm (fast) wie eine Powerpointpräsentation zu sehen. Soll aber natürlich als eigenes Programm mit Barcodescanner funktionieren.
Prinzipiell geht es um folgendes:
Ich hoffe ihr könnt euch vorstellen was ich meine. Meint ihr C# ist hierfür geeignet oder würdet ihr ggf. eine einfachere Sprache empfehlen? Ist die Arbeit so überschaubar wie ich es mir vorgestellt habe oder hab ich mic hda in was reingeritten? 😉
Programmieren würde ich mit MS Visual Studio 2013.
Vielen Dank schonmal für jede Hilfe/jeden Tip.
Viele Grüße
Dandelon
Ich muss gestehen, so ganz ist mir nicht klar, was Du vor hast.
Allerdings kann ich sagen, dass C# für fast alles gut geeignet ist, solange es nur auf Windows laufen soll. Soweit ich weiß gibt es mittlerweile aber auch seitens Microsoft eine Möglichkeit, C# auf Linux und Mac zu entwickeln, ich weiß allerdings nicht, wie weit das bereits ist.
Ansonsten bietet C# in Verbindung mit den kostenlos von Microsoft angebotenen Frameworks für beinahe jeden Anwendungsbereich die nötigen Komponenten an, inklusive Web-Entwicklung.
Wenn dann mal eine C++-Bibliothek notwendig ist, dann ist es auch möglich, die in C# zu nutzen. Was da für Vorbereitungen in der Bibliothek notwendig sind, ist mir allerdings nicht bekannt.
Zum Lesen von Barcodes sollte es aber bereits C#-Snippets oder Bibliotheken geben, die dann mit einem Bild arbeiten.
Im Bezug auf den Vorteil für dich musst Du dir denke ich auch keine Sorgen machen, da C# bereits ziemlich weit verbreitet ist und auch die Informations-Quellen im Internet ziemlich umfangreich sind.
NuGet Packages im Code auslesen
lock Alternative für async/await
Beim CleanCode zählen nicht die Regeln, sondern dass wir uns mit diesen Regeln befassen, selbst wenn wir sie nicht befolgen - hoffentlich nach reiflichen Überlegungen.
Hi,
das mit den Folien ist mir zwar unklar - aber das sollte nicht wirklich stören.
Die meisten Scanner schicken quasi eine Texteingabe an das aktuell fokussierte Control - sobald du ein Fenster mit Textbox hast -> kein Problem.
In der Praxis sollte dein Vorhaben sehr sehr leicht umzusetzen sein mit C#.
LG
PS: Bitte tu dir den Gefallen und programmier die Artikel nicht fest ein. Meinetwegen reicht ein XML-Config-File - aber mit fest einprogrammieren tust du dir und anderen keinen Gefallen 😉
@Taipi88
Es ist unerheblich, ob die Artikel fest einprogrammiert sind oder nicht. Nur die Anwendung selber sollte sich davon nicht abhängig machen. Die sollte einfach einen IArticleQueryService fragen, der im ersten Step eben die fest einprogrammierten Artikel liefert. Irgendwann später kann man dann eine Implementierung erstellen die mit einer Xml-Datei oder einer Datenbank XY oder einem Webservice oder oder oder ...
Wichtig ist immer, dass der konkrete Beschaffungsort für die Anwendung selber abstrakt ist.
So, ich habe mich jetzt mal nach ein wenig einarbeiten und Tutorials daran begeben mit dem Projekt zu beginnen.
Das Projekt ist sehr einfach eigentlich. Vielleicht ist aber auch mein Gedankengang falsch oder zu kompliziert.
Ich habe es so geplant dass es nur 2 Bilderboxen, 2 Buttons, 3 Labels gibt. Diese sollen je nach Zustand verschieden angeordnet/belegt sein.
Deshalb habe ich eine variable definiert und wollte, dass sich je nach Wert dieser Variable die Anordnung/Größe/Sichtbarkeit... ändert.
Ich glaube hierbei handelt es sich um ein Grundsätzliches Verständnisproblem.
Ich habe mal einen Beispielcode angehängt der darstellt was ich vorhabe. Leider ändert sich auch bei drücken auf den Button nichts an der Anordnung.
namespace Programm
{
public partial class Form1 : Form
{
int Zustand;
public Form1()
{
InitializeComponent();
}
// cmdTest und lblTest habe ich genutzt um es für mich zu visualisieren und zu testen
private void cmdTest_Click(object sender, EventArgs e)
{
Zustand = Zustand + 1;
lblTest.Text = "Zustand: " + Zustand;
}
private void Form1_Load(object sender, EventArgs e)
{
if (Zustand == 1)
{
lblMain.Location = new Point(10, 200);
}
else if (Zustand == 2)
{
lblMain.Location = new Point(200, 200);
}
}
}
}
Ich habe mir überlegt es so zu machen damit ich im Designer-Programm nicht alles voll mit verschiedenen Buttons habe und es unübersichtlich wird.
Zudem gibt es nur 4 "Ansichten" mit eigentlich nur unterschiedlichen Inhalten/Verknüpfungen. Wenn es eine einfachere Möglichkeit gibt bin ich natürlich auch davon nicht abgetan.
Bitte in Zukunft nur ein Thema pro Thread
[Hinweis] Wie poste ich richtig? 1.2
- performance is a feature -
Microsoft MVP - @Website - @AzureStuttgart - github.com/BenjaminAbt - Sustainable Code
Das Load der Form wird nur 1x beim Öffnen gerufen.
Ah ok danke. Sehe ich das richtig dass mein Problem hiermit behoben wäre:
Form.Activated Event
@Abt:
Ok sorry, bin das aus anderen Foren anders gewohnt.
"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)
Ich steige leider nicht ganz durch, wie erstelle ich es denn so dass es sich fortlaufend aktualisiert?
Du kannst doch z.B. beim Klick eine Positionierungsfunktion aufrufen.
Ich habe es so geplant dass es nur 2 Bilderboxen, 2 Buttons, 3 Labels gibt. Diese sollen je nach Zustand verschieden angeordnet/belegt sein.
Das heisst, dass du ein Ereignis brauchst, das eintritt, wenn der Zustand sich ändert. "Load" ist ein Ereignis, das eintritt, wenn das Formular geladen wird (also nur einmal in der Regel). Abhängig davon, WANN der Zustand sich ändert, ist also auch die Wahl des Ereignisses. Beim Klicken eines Buttons beispielsweise wäre dann das "Click"-Ereignis dieses Buttons. Welches genau du nimmst, kannst du selbst am besten beurteilen.
LaTino
"Furlow, is it always about money?"
"Is there anything else? I mean, how much sex can you have?"
"Don't know. I haven't maxed out yet."
(Furlow & Crichton, Farscape)
Das sind alles Dinge die Du bereits durch deinen C Kurs kennen und auch lösen können solltest.
Ich würde Dir erst einmal ein paar Grundlagenübungen empfehlen. Das beantwortet automatisch alle deine bisherigen Fragen.
Visual C# 2012 aus der Sammlung Openbooks des Rheinwerk Verlags.
C# Tutorials
Visual C# Videos