WinFuture-Forum.de: Möchte Gerne Von Null Anfangen ! - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 3 Seiten +
  • 1
  • 2
  • 3

Möchte Gerne Von Null Anfangen !

#31 Mitglied ist offline   skelle 

  • Gruppe: aktive Mitglieder
  • Beiträge: 793
  • Beigetreten: 15. Juli 04
  • Reputation: 0

geschrieben 02. Dezember 2005 - 17:03

mir geht es ähnlich
wir haben jetzt inner schule ein bisschen mit delphi angefangen (und ich mein ein bisschen^^)
würde mich auch intensiver damit beschäftigen wollen, da es mir in der schule zu langsam geht ^^
also hier scheinen sich ja gerade java/C# als Empfehlungen rauszukristalliesieren
Welche is denn nu wirklich zu empfehlen oder ist es egal?
ich bin im Moment, und ich denk auch in nächster Zeit, in der Lage riesige Programme zu schreiben.
Mein Ziel ist es eher, erstma das Programmieren zu lernen und vllt ein paar kleine Windows Tools zu basteln die mir n bissle Arbeit abnehmen :D
Bekommt man eine der beiden kostenlos als Schüler erwerben ohne auf wichtige Features zu verzichten?
Wenn ich mich entschieden hab, werd ich mich ma nach Büchern und nach Tutorials im Netz umsehen
mfg skelle
0

Anzeige



#32 Mitglied ist offline   AgentSmith 

  • Gruppe: Mitglieder
  • Beiträge: 14
  • Beigetreten: 14. Februar 05
  • Reputation: 0

geschrieben 03. Dezember 2005 - 12:29

Beitrag anzeigenZitat (Sepultura: 01.12.2005, 20:53)

Manuelle Speicherverwaltung - Mit new und delete umzugehen ist nicht besonders schwer.

Richtig. New und delete aufzurufen ist nicht besonders schwer. Das ist aber auch schon alles.
Ich arbeite in der Softwareentwicklung und kenne es aus eigener Erfahrung wie mühsam, frustrierend und kompliziert es ist, die Ursache für eine Access Violation oder gar ein Speicherleck in C++ zu finden (das letztere ist meist noch um Potenzen schwieriger).
Ich bestreite daher, dass manuelle Speicherverwaltung einfach ist. Selbst das Programmieren einer relativen simplen Datenstruktur (z.B. doppelt verkettete Liste) stelle ich mir für einen Anfänger, der wahrscheinlich auch kaum mit einem Debugger umgehen kann, extrem schwierig vor. Ich kann mir da Dutzende Fallstricke vorstellen: z.B. richtige Initialisierung mit NULL vergessen (macht C++ ja nicht automatisch), Access Violation weil Speicher versehentlich doppelt freigegeben wird (beim Zerstören der Liste), usw.
Bei komplexeren Datenstrukturen wird's überhaupt kompliziert. Schonmal versucht eine Datenstruktur mit möglichen zyklischen Abhängigkeiten zuverlässig und richtig freizugeben? In Java bzw. C# 1 Codezeile (reference = null;).

Beitrag anzeigenZitat (Sepultura: 01.12.2005, 20:53)

Und Vorteil ist dabei, man kann selbst entscheiden dadurch wieviel Speicher dort angefordert wird.

Ich kenne keine virtuelle Maschine (.net oder Java), die Speicher anfordert, der nicht benötigt wird. Ich verstehe daher nicht ganz, welchen Vorteil Du meinst.
Zudem ist die Speicherverwaltung Java (und sicher auch .net) sogar effizienter als die der C++-Runtime, da eine virtuelle Maschine den Heap aufräumen kann (compacting - Objekte können verschoben werden), während der Heap bei C++ fragmentiert (new/delete). Das heisst nichts anderes, als dass das Anlegen eines neuen Objekts in Java so schnell ist, wie das Anlegen von Speicher auf dem Stack, während bei C++ immer erst die "Lücke" gesucht werden muss.

Beitrag anzeigenZitat (Sepultura: 01.12.2005, 20:53)

Und zum Thema GUI - Wer brauch ne GUI? Eine W32Konsolenanwendung würde es schon Anfangs tun. Erstmal auf der Konsole arbeiten, dann mit GUI anfangen. Bei C/C++ gibt es viele Methoden: MFC, Diese GUI von Borland, ATL, etc.

Schon klar. Würde auch zuerst mit einer Konsolenanwendung anfangen. Aber sobald ich den Schritt zur GUI gehen will, muss ich mir für C/C++ entweder eine Bibliothek holen oder das API des OS selbst programmieren. Bei Java und .net ist alles schon drin.
Zudem finde ich selbst die MFC in einigen Teilen immer noch zu kompliziert.

Beitrag anzeigenZitat (skelle: 02.12.2005, 17:03)

mir geht es ähnlich
wir haben jetzt inner schule ein bisschen mit delphi angefangen (und ich mein ein bisschen^^)
würde mich auch intensiver damit beschäftigen wollen, da es mir in der schule zu langsam geht ^^
also hier scheinen sich ja gerade java/C# als Empfehlungen rauszukristalliesieren
Welche is denn nu wirklich zu empfehlen oder ist es egal?
ich bin im Moment, und ich denk auch in nächster Zeit, in der Lage riesige Programme zu schreiben.
Mein Ziel ist es eher, erstma das Programmieren zu lernen und vllt ein paar kleine Windows Tools zu basteln die mir n bissle Arbeit abnehmen ;)
Bekommt man eine der beiden kostenlos als Schüler erwerben ohne auf wichtige Features zu verzichten?
Wenn ich mich entschieden hab, werd ich mich ma nach Büchern und nach Tutorials im Netz umsehen
mfg skelle

Witi wird mir da sicher beipflichten: Im Grunde genommen ist es egal, welche von beiden Sprachen Du nimmst. Beide bieten sehr viel und man kann sehr schnell ziemlich mächtigen Code schreiben. Allein schon durch die riesigen Klassenbibliotheken ersparst Du dir eine Menge Handarbeit und kannst Dich auf das Konzentrieren, was Dein Programm tun soll.
Ich persönlich (meine Meinung) würde dir aus den bereits genannten Gründen (und aus praktischer Erfahrung) Java empfehlen.
0

#33 Mitglied ist offline   Sepultura 

  • Gruppe: aktive Mitglieder
  • Beiträge: 663
  • Beigetreten: 18. September 05
  • Reputation: 7
  • Geschlecht:Männlich
  • Wohnort:Dresden
  • Interessen:PC, Internet, C/C++

geschrieben 03. Dezember 2005 - 16:21

Beitrag anzeigenZitat (AgentSmith: 03.12.2005, 12:29)

Richtig. New und delete aufzurufen ist nicht besonders schwer. Das ist aber auch schon alles.
Ich arbeite in der Softwareentwicklung und kenne es aus eigener Erfahrung wie mühsam, frustrierend und kompliziert es ist, die Ursache für eine Access Violation oder gar ein Speicherleck in C++ zu finden (das letztere ist meist noch um Potenzen schwieriger).
Ich bestreite daher, dass manuelle Speicherverwaltung einfach ist. Selbst das Programmieren einer relativen simplen Datenstruktur (z.B. doppelt verkettete Liste) stelle ich mir für einen Anfänger, der wahrscheinlich auch kaum mit einem Debugger umgehen kann, extrem schwierig vor. Ich kann mir da Dutzende Fallstricke vorstellen: z.B. richtige Initialisierung mit NULL vergessen (macht C++ ja nicht automatisch), Access Violation weil Speicher versehentlich doppelt freigegeben wird (beim Zerstören der Liste), usw.
Bei komplexeren Datenstrukturen wird's überhaupt kompliziert. Schonmal versucht eine Datenstruktur mit möglichen zyklischen Abhängigkeiten zuverlässig und richtig freizugeben? In Java bzw. C# 1 Codezeile (reference = null;).
Ich kenne keine virtuelle Maschine (.net oder Java), die Speicher anfordert, der nicht benötigt wird. Ich verstehe daher nicht ganz, welchen Vorteil Du meinst.
Zudem ist die Speicherverwaltung Java (und sicher auch .net) sogar effizienter als die der C++-Runtime, da eine virtuelle Maschine den Heap aufräumen kann (compacting - Objekte können verschoben werden), während der Heap bei C++ fragmentiert (new/delete). Das heisst nichts anderes, als dass das Anlegen eines neuen Objekts in Java so schnell ist, wie das Anlegen von Speicher auf dem Stack, während bei C++ immer erst die "Lücke" gesucht werden muss.

Dafür gibt es C-Funktionen: Malloc und Calloc. Calloc Initilisiert alle nochmals mit 0 laut "C/C++ Referenz"
http://www.amazon.de/exec/obidos/ASIN/3772...4522905-0173040

Zitat

Schon klar. Würde auch zuerst mit einer Konsolenanwendung anfangen. Aber sobald ich den Schritt zur GUI gehen will, muss ich mir für C/C++ entweder eine Bibliothek holen oder das API des OS selbst programmieren. Bei Java und .net ist alles schon drin.
Zudem finde ich selbst die MFC in einigen Teilen immer noch zu kompliziert.

Es gibt ja auch andere, nicht nur MFC. MS hat ATL, etc. Borland hat VCL, soll einfacher sein.

Zitat

Witi wird mir da sicher beipflichten: Im Grunde genommen ist es egal, welche von beiden Sprachen Du nimmst. Beide bieten sehr viel und man kann sehr schnell ziemlich mächtigen Code schreiben. Allein schon durch die riesigen Klassenbibliotheken ersparst Du dir eine Menge Handarbeit und kannst Dich auf das Konzentrieren, was Dein Programm tun soll.
Ich persönlich (meine Meinung) würde dir aus den bereits genannten Gründen (und aus praktischer Erfahrung) Java empfehlen.

Da ich C/C++ schon seit längerem mache, würde ich C/C++ nehmen, da ich es für die schönere Sprache finde. Außerdem kann man bei C++ auch C-Funktionen benutzen.

Gibt es kostenlose Java IDEs?
Wer Japanische Produkte kauft, unterstützt den grausamen Walfang
Boykottiert JAPAN
0

#34 Mitglied ist offline   AgentSmith 

  • Gruppe: Mitglieder
  • Beiträge: 14
  • Beigetreten: 14. Februar 05
  • Reputation: 0

geschrieben 05. Dezember 2005 - 14:27

Beitrag anzeigenZitat (Sepultura: 03.12.2005, 16:21)

Dafür gibt es C-Funktionen: Malloc und Calloc. Calloc Initilisiert alle nochmals mit 0 laut "C/C++ Referenz"
http://www.amazon.de/exec/obidos/ASIN/3772...4522905-0173040

Richtig. Malloc und calloc initialisieren mit 0. Allerdings ändert das an den anderen Problemen mit der manuellen Speicherverwaltung nichts. Bei Verwendung von malloc und calloc in C++ wäre ich allerdings vorsichtig, denn diese kommen noch von C her und sind mit der Speicherverwaltung durch new/delete AFAIK nicht kompatibel, d.h. einen mit malloc allokierten Speicherbereich darf ich nur mit free wieder freigeben. Verwendete ich stattdessen delete gibt's böse Probleme.

Beitrag anzeigenZitat (Sepultura: 03.12.2005, 16:21)

Es gibt ja auch andere, nicht nur MFC. MS hat ATL, etc. Borland hat VCL, soll einfacher sein.

Stimmt. Es gibt sicher einfachere Frameworks als MFC.

Beitrag anzeigenZitat (Sepultura: 03.12.2005, 16:21)

Da ich C/C++ schon seit längerem mache, würde ich C/C++ nehmen, da ich es für die schönere Sprache finde. Außerdem kann man bei C++ auch C-Funktionen benutzen.

C/C++ hat sicher seine Berechtigung und ist daher immer noch eine der weitverbreitetsten Sprachen. Allerdings würde ich heutzutage C/C++ nicht mehr für Anwendungsentwicklung empfehlen und schon gar nicht für einen Anfänger.

Beitrag anzeigenZitat (Sepultura: 03.12.2005, 16:21)

Gibt es kostenlose Java IDEs?

Allerdings. Sowohl NetBeans, als auch das von mir präferierte Eclipse sind kostenlos erhältlich. Von der Mächtigkeit her stehen sie anderen IDEs (Visual Studio) IMHO in nichts nach.
0

#35 Mitglied ist offline   Witi 

  • Gruppe: aktive Mitglieder
  • Beiträge: 5.947
  • Beigetreten: 13. Dezember 04
  • Reputation: 43
  • Geschlecht:Männlich
  • Wohnort:Kingsvillage
  • Interessen:Frickeln

geschrieben 05. Dezember 2005 - 19:31

Da fällt mir wieder mein allseits beliebter Spruch ein...

Als C und C++ herauskam, haben die Assembler-Programmierer gemeckert, was das eigentlich soll, die Sprachen seein viel zu langsam.
Als das .NET Framework bzw. Java herauskam, haben die C++ Programmierer gemeckert, was das eigentlich soll, die Dinger seein viel zu langsam.

In diesem Sinne schließe ich mich AgentSmith noch einmal an und sage Java oder C#
0

Thema verteilen:


  • 3 Seiten +
  • 1
  • 2
  • 3

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0