Schrift
[thread]1381[/thread]

Neue Programmiersprache (Seite 3)

Leser: 2


<< |< 1 2 3 4 >| >> 34 Einträge, 4 Seiten
esskar
 2003-10-19 20:51
#24042 #24042
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
[quote=kabel,19.10.2003, 15:25]die erste implementation von C++ ein präprozessor war, der C++ code nach C code übersetzt hat.[/quote]
das stimmt auch...
war sehr lang auch noch so...

ich würde mit C anfangen...
ich finde eh, das Programmierer die nie C programmiert haben, oftmals keine Ahnung haben, was sie eigentlich tun...
selbst C++ kann einem alles mögliche abnehmen!

also, schnapp dir ein C buch und fang an...
kabel
 2003-10-19 22:00
#24043 #24043
User since
2003-08-04
704 Artikel
BenutzerIn
[default_avatar]
[quote=SirLant,19.10.2003, 17:59]Wer richtiges OOP will [...][/quote]
ahhh ja :)
-- stefan
SirLant
 2003-10-21 00:17
#24044 #24044
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
[quote=kabel,19.10.2003, 20:00][quote=SirLant,19.10.2003, 17:59]Wer richtiges OOP will [...][/quote]
ahhh ja :)[/quote]
Versteh ich jetzt irgendwie nich ???
Das OOP von Java ist "besser" als das von C++, da es in C++ nur
aufgesetzt ist, in Java allerdings direkt integriert, da gibt es ja keine
Alternative.
Daher ist das OOP von Java im ganzen durchdachter, das meinte ich.
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
kabel
 2003-10-21 01:53
#24045 #24045
User since
2003-08-04
704 Artikel
BenutzerIn
[default_avatar]
mich hat nur die formulierung "richtig" gestört, das gibt es leider nicht ;)
C++ wurde extra wegen OOP entwickelt 8) sorry, falls das nicht deutlich
genug aus den anderen posts hervorgegangen ist. es ist nicht aufgesetzt.
-- stefan
esskar
 2003-10-21 02:43
#24046 #24046
User since
2003-08-04
7321 Artikel
ModeratorIn

user image
ja... java zwingt dich dazu, klassen zu erzeugen, die dann die basis zu objekten bilden...

ich kann aber auch in einer Klasse mein komplettes problem implementieren ohne andere Klassen zu bauen und andere klassen zu benutzen...

was hab ich denn dann ?


und nochwas: oo != klassen
betterworld
 2003-10-21 13:30
#24047 #24047
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
[quote=kabel,20.10.2003, 23:53]C++ wurde extra wegen OOP entwickelt[/quote]
...und hat sich dabei aber an C halten muessen. Somit sind immer noch einige Gedanken in C++, die nicht von Anfang an dafuer ausgelegt waren, fuer Objektorientierung verwendet zu werden, und sich teilweise etwas mit der Idee stoeren:

1) die Systemaufrufe ueber die Standard-C-Header
2) die ganze Geschichte mit den Pointern. Das ist in Java intelligenter geloest. Auch wenn man es natuerlich in C++ nicht vollstaendig so wie in Java machen kann, weil man effizient bleiben will
3) Sowas wie "foo" + "bar"... (da kommt natuerlich Muell raus). Man muss immer schreiben string("foo") + "bar". Es waere doch besser, wenn man Literale fuer die string-Klasse vergeben wuerde. Das bekaeme man bestimmt auch so hin, dass Pointer-Arithmetik trotzdem noch moeglich waere
4) u.v.m.
kabel
 2003-10-21 13:50
#24048 #24048
User since
2003-08-04
704 Artikel
BenutzerIn
[default_avatar]
die aussage steht und ist richtig. es ist leider nicht das einzige design-ziel von C++. ich zitiere:
Quote
In more detail, the main design goals of C++ may be summarized as follows:

* data abstraction and oo features
* better static type checking
* backwards compatibility with C. In other words, most C code should compile as legal C++, without requiring significant changes to the code
* efficiency of compiled code, according to the principle "If you do not use a feature, you should not pay for it"

$schlaues_buch = {
TITEL => "concepts in programming languages",
AUTOR => "John C. Mitchell",
VERLAG => "Cambridge University Press",
ANSPRUCH => "mittel", # für eine geeignete interpretation von mittel
};

das wird im weiteren noch detailliert ausgeführt. der dritte punkt ist der kasus knackus. aber andererseits, zeiger sind doch was feines ;)

[SCNR]
"foo" + "bar" - die aesthetischte art, ein stringliteral im code zu verwenden. auf den plätzen 2 und 3 folgen:
2 - "foobar"
3 - "f" + "o" + "o" + "b" + "a" + "r"
[/SCNR]

das ist das erbe von C. "'s is halt so". ;)
-- stefan
Crian
 2003-10-21 13:54
#24049 #24049
User since
2003-08-04
5873 Artikel
ModeratorIn
[Homepage]
user image
C und C++ unterscheiden sich sehr hinsichtlich der Ideologie oder der Betrachtungsweise der Welt.

Beides hat seine Reize, aber ich würde auf keinen Fall "C/C++" lernen und wenn Du beides lernen willst, fang mit C an, aber stell Dich darauf ein, beim späteren Übergang zu C++ Konzepte und Vorgehensweisen über Bord zu werfen.

Ich kann für beide Sprachen sehr die deutschen Newsgroups zum jeweiligen Standard empfehlen, da bekommt man ein sehr gutes Gefühl für die Sprache, wenn auch der Ton rauher ist als hier.

Mich persönlich würde der neue C Standard reizen, aber ich kenne ja auch schon C (89) und C++ schon ;-)
Und erstmal gibt es noch sooo viel in Perl zu lernen oder zu optimieren, was mir dann auch unmittelbar bei der Arbeit nutzt, dass ich dabei bleibe im Moment.

Falls Du Dich für C++ entscheidest, tu Dir den Gefallen und mach erst mal eine ganze Weile "Trockenübungen" ohne graphische Oberflächen, um Dich in die STL und OO einzuarbeiten (gründlich), bevor Du Dich auf die MFC oder vergleichbares stürzt.

Es gibt eine sehr interessante amerikanische C++-Zeitschrift, die ich ab und zu gekauft habe, wenn Du willst kann ich den Titel mal raussuchen, falls ich meine Exemplare wiederfinde.
In Hamburg konnte man sie am Hauptbahnhof bekommen, ob man sie hier irgendwo kaufen kann weiß ich gar nicht...
s--Pevna-;s.([a-z]).chr((ord($1)-84)%26+97).gee; s^([A-Z])^chr((ord($1)-52)%26+65)^gee;print;

use strict; use warnings; Link zu meiner Perlseite
SirLant
 2003-10-21 21:44
#24050 #24050
User since
2003-08-04
516 Artikel
BenutzerIn
[default_avatar]
Man sollte auch noch www.c-plusplus.de ermpfehlen, ist auch
wirklich eine sehr gute Seite und vor allem das Board :)
--Programming today is a race between Software Enginers striving to build bigger and better idiot-proof Programs,
and the Universe trying to produce bigger and better idiots.
So far, the Universe is winning!
betterworld
 2003-10-21 22:09
#24051 #24051
User since
2003-08-21
2614 Artikel
ModeratorIn

user image
[quote=kabel,21.10.2003, 11:50][SCNR]
"foo" + "bar" - die aesthetischte art, ein stringliteral im code zu verwenden. auf den plätzen 2 und 3 folgen:
2 - "foobar"
3 - "f" + "o" + "o" + "b" + "a" + "r"
[/SCNR][/quote]
OK, "foo" + "bar" ist natuerlich etwas dumpfsinnig, aber ich wollte das Problem halt moeglichst einfach beschreiben. Jetzt kommt ein reales Beispiel: Neulich habe ich mit der CGIC-Bibliothek programmiert (in C++, aber die Bib ist in Ansi-C geschrieben... vielleicht erinnert Ihr Euch noch an meine Thread dazu). Da gibt es so einen char* cgiPathInfo. Und wenn ich da dann schreibe:
Code: (dl )
cgiPathInfo + "/sonstwas"

geht es eben nicht, weil das beides Pointer sind.
<< |< 1 2 3 4 >| >> 34 Einträge, 4 Seiten



View all threads created 2003-10-18 23:24.