Programme in C optisch gestalten

Zitat von Crash Kid Beitrag anzeigen
Also, um mich auch mal wieder zu Wort zu melden...
Akeshihiro bringt meine Meinung voll auf den Punkt! Ich finde auch das eben die selbst geschriebene Benutzeroberfläche besser zu versteh ist, vor allem am Anfang.
Geschenkt...
Geschenke nehme ich immer gern an...:D

Dann hast du das Prinzip eines Frameworks bereits angewendet. Denn wenn man Framework mal eindeutscht: "Rahmen-Werk". Es gibt also einen Rahmen, den man an seine derzeitigen Bedürfnisse anpasst. Demzufolge hast du ein Rahmen-Werk erstellt, und greifst also immer auf die Basis zu, erweiterst sie aber um die projekt-spezifischen Bedürfnisse.
Richtig, im Prinzip ja. Aber eben mein eigenes Framework dann und nicht eines vom Computer bzw. Programm erstelltes. Das ist ein gewaltiger unterschied.

Allein die Tatsache, dass das Framework aus deiner eigenen Feder stammt, ist dann ein Diskussionspunkt. Schließlich kannst du deinen Code zwar kennen, aber du bist vor eigenem Code viel betriebsblinder als vor fremden. Daher halte ich Frameworks, die von Community-Projekten (z.B. Tapestry für Java) kommen, für robuster und fehlerfreier.
Das unterschreibe ich nicht ganz, ich denke wenn ich die Vorlage schon sehr oft verwendet habe und noch nie ein Fehler aufgetaucht ist, kann man davon ausgehen, dass keine Fehler drin sind...

Wie oben, nur das ich eine andere Meinung dazu habe: Ein Projekt besteht i.d.R. aus mehreren Personen. Einem Analysten, der die funktionelle Beschreibung liefert. Sprich, wie soll das Programm aussehen, was sollen für Funktionen implementiert werden, wie soll die Benutzerschnittstelle aussehen, etc. Einem Architekten, der sich darum Gedanken macht, welche Programmier-Standards angewendet werden sollen, der die Programm-Architektur vorgibt. Und dem Entwickler, der zwar seine eigene Stilblüte einbringt, aber grundsätzlich nach den Vorgaben des Analysten und Archtikten implementiert. Deine Sätze zeigen mir eines: Du hast noch nicht in einem größeren Team gearbeitet, wo du Vorgaben bekommst, wie etwas zu implementieren ist. Vielleicht kommt das ja noch ....
Da muss ich dir zustimmen, ich habe noch nicht wirkich ein einem Team gearbeitet. Bis jetzt immer alleine gewesen. Ich habe aber trotzdem schon an Projekten gearbeitet, wo mir eine ne Vorlage gegeben hat wie es aussehen soll etc. Sind super klar gekommen und erfolgreich abgeschlossen. Ich programmiere auch nicht beruflich, sondern nur als Hobby und privat. Deswegen auch mein FAZIT

Fazit: Jeder programmiert so wie er es für richtig hält, der eine mit der Hilfe der andere komplett ohne. Jeder wie er am besten damit zurecht kommt.
 
@saftmeister
Ich habe gesagt, dass ich die GUI von Hand zusammenstelle, nicht dass ich GUI und Logik zusammenkloppe o.O Ich habe dabei bestimmte Sachen aus dem Eclipse-VE und andere aus Netbeans übernommen, weil für mich persönlich bei nur einem Editor immer was gefehlt hat. Vom Prinzip her find ich den generierten Code vom VE in Eclipse ganz gut, nur irgendwie nicht ganz perfekt, weshalb ich einen abgewandelten Stil nutze, der bestimmte Parts von bestimmten Editoren beinhaltet, also ein Gemisch ist.

So, zu der Logiksache. Ich halte es bei meinen Projekten so, dass ich das MVC-Pattern implementiere, wodurch ich jederzeit die einzelnen Bestandteile austauschen kann, da entsprechende Interfaces existieren. Das gilt aber nicht nur für die grafische Verarbeitung, ich versuche soweit es geht mit Interfaces zu arbeiten, damit das Ganze unabhängig von der Implementierung bleibt.

Ich geb dir aber Recht, GUI und Logik, die zusammengesetzt wurden, sind nicht wiederverwendbar, aber das tut (hoffentlich) auch keiner, der sein Projekt vernünftig aufsetzt. Ich gehe dabei auch auf das Thema Teamarbeit ein. Durch gegebene Interfaces und verteilte Aufgaben hat jeder seinen eigenen Part, in dem er sich austoben kann. Er muss sich lediglich an die Vorgaben halten. Solange das funktioniert, ist alles ok. Im Falle der GUI-Entwicklung ist es dann ja so, dass einer dafür zuständig ist, die anderen haben an der GUI nix zu suchen. Was interessiert es denjenigen dann, ob ein anderer damit klar kommt? Er hat damit doch gar nichts zu tun o.O Wenn es dabei um die Verwendung einer grafischen Vorschau geht, naja, jeder hat eigene Vorlieben für Editoren und sogar der selbe Editor kann in unterschiedlichen Versionen diverse Unterschiede mit sich bringen, womit ein alter Code komplett wahrlos dargestellt werden kann. Schon allein deswegen sollte man sich auch zur Not im Code zurechtfinden, weil der GUI-Editor Mist anzeigt.

Ein guter Programmierer zeichnet sich nicht nur durch sein Wissen aus, sondern auch dadurch, dass er seine Werkzeuge alle perfekt einzusetzen weiß. Da sage ich auch nichts gegen, meine Erfahrung mit anderen Programmierern zeigt aber, dass viele solche IDEs zu nutzen wissen, auch sofort mit ihnen angefangen haben zu arbeiten, oft Visual Studio, aber wenn es dann Probleme im generierten Code gab, dann wussten sie nicht mehr weiter. Das Gleiche auch bei Anfägern, die meinen man muss unbedingt mit grafischen Oberflächen arbeiten, aber keine Grundlagen drauf haben und dann meinen sie können programmieren, weil sie einen Button in ein Vorschaufenster ziehen können und dann dieses von der IDE generierte Fenster starten können.

Ich habe es bislang immer so gehalten, dass ich mir Grundlagen angeeignet habe und erst dann zu Frameworks griff, als ich wusste, wie das Prinzip dahinter ist. Was bringt es mir, wenn ich ein Framework super einsetzen kann, aber dann beim Debuggen hängen bleibe, weil Wissen fehlt? Mir persönlich ist das Wissen wichtiger, als der Umgang mit Klicki-Bunti-Editoren, vielleicht liegt das aber auch daran, dass ich meist in der Klasse rumlaufen und gucken muss, wo der Fehler steckt und mich somit meist mit Debugging befasse.
 
Zuletzt bearbeitet:
Ich sehe, hier streiten zwei verschiedene Sorten Programmierer.

Saftmeister, der an professionellen Team-Projekten arbeitet, große und komplexe Programme schreibt und sich daher in die zur Verfügung stehenden Werkzeuge eingearbeitet hat und diese verwendet. --> produktiver Programmierer

Crash Kid, der allein kleine Anwendungen schreibt und seinen Code gerne bis aufs letzte Zeichen selbst geschrieben und verstanden hat. --> Bastler

Und ich sitz hier und lern auf meine Softwaretechnik-Prüfung. Ich bin grad noch ein Crash Kid, will aber bald ein Saftmeister sein :-)

Viele Grüße,
Frezl
 
Durch das "herumbasteln" lernt man am meisten. Der größte lernerfolg wird durch einfaches ausprobieren erziehlt.
die Menschheit ist auf die besten Technologien gestoßen durch einfaches "ausprobieren und herumbasteln". (Man war das grad philosophisch :-))
Ich muss Frezel recht geben, wir diskutieren sonst nur noch ins Uferlose.
 
@ Crash Kid:

Wenn du Lust und Zeit hast, dich bezüglich der Softwareentwicklung weiterzubilden, dann kann ich dir die Vorlesung "Softwaretechnik 1" von Professor Göhner an der Uni Stuttgart wärmstens ans Herz legen. Du findest die Aufzeichnungen der Vorlesung und der Übungen hier:

http://www.ias.uni-stuttgart.de/st1/

Das Institut hat das super aufbereitet und v.a. in den Übungen lernt man wirklich einiges!

Falls dir die Videos zu lange gehn (jeweils eine VL = 90 min), kannst du dir auch das Skript (Umdruck) runterladen...

Grüße, Frezl
 
Macht nix, Lernen hilft im Leben trotzdem weiter. Und das Institut vermittelt die Inhalte echt vorbildlich ;-) Ist zwar sehr umfangreicher Stoff in der VL, aber du brauchst ja nicht alles durchlesen. Interessant sind für dich v.a. die Kapitel über Vorgehensmodelle und Projektmanagement...

Grüße, Fred
 
Damit ich auch mal wieder meinen Senf dazugebe:
@Cromon: Wenn du es schon "dümmlich" nennst, gib uns doch ein Beispiel, wofür man unbedingt Resourcen braucht.

Abgesehen davon, dass du mein Posting falsch verstanden hast möchte ich dir doch noch Beispiele geben:
- Flexibilität
- Effizienz beim Programmieren
- Kosten-Nutzen-Optimierung
- Wartbarkeit

--> Bei allen ernsthaften Projekten.
 
Zurück