Kann man alles programmieren?
Hey Leute, ich gehe in die 2. Klasse einer EDV Abteilung.
Dort programmieren wir natürlich auch sehr viel.
Jetz habe ich eine Frage:
Kann man eigentlich alles Programmieren? (im bezug auf Softwareentwicklung, hauptsächlich Spiele, Programme (Emulatoren usw.)
Also ich programmiere mit "C" im Visual Studio 2008.
**also kann man ales programmieren also wirklich alles was ich mir vorstelle, kann ich das alles mit einem programm verwirklichen, oder bin ich da irgendwie eingeschwänkt von der anzahl der befehle in c?? ** mfg
PS: und kann ich in einem Programm, wenn ich z.b. 5 Dateien habe, 2 davon mit C schreiben und die 3 anderen z.B. mit C++ oder Java, ,oder muss das alles mit der gleichen Programmiersprache geschrieben sein?
Vielen Dank für die antwortetn im Vorraus ;)
8 Antworten
Hallo,
die Antwort auf deine Frage heißt leider nein. Mit C kann man fast alles programmieren. Um wirklich alles zu programmieren was dein PC hergibt musst du auf die Sprache des Prozessors zurückgreifen.
"Assembler"
Da man C auf fast allen Prozessorsystemen programmieren kann, ist es verständlich das prozessorspezifische Sachen nicht in der Sprache untergebracht werden können.
Gruß
Nicky
Nein, kann man nicht.
Grundlage eines jeglichen Programms ist mindestens ein Algorithmus, der das vorgegebene Problem löst.
Guckt dir diese Seite zum Thema Turingmaschine mal an: http://www.matheprisma.uni-wuppertal.de/Module/Turing/
Zu deiner Frage im PS: Erstmal Nein, zumindest nicht mit den Programmen, die du aufgeführt hast. Anders ist es mit den .NET-kompatiblen Sprachen. Da kannst du eine Datei in C++.NET, die andere in C#, die dritte in VB.NET entwickeln und die kompilierten Assemblies später gemeinsam verwenden.
Keyword für die Websuche:
.net, dotnet, framework, clr, il, msil, jit compiler
Ja, mit der Sprache C bist du nur durch eine einzige Sache eingeschränkt: deine eigene Fantasie. Was immer ein PC theoretisch kann - mit C kannst du es auch programmieren. Allerdings solltest du, wenn du genug Erfahrung hast, auf C++ umsteigen. C++ kann nicht mehr oder weniger als C, aber es macht dir einiges bequemer. Es hat aber auch mehr Fallstricke. Irgend ein bekannter Programmierer hat mal den inzwischen legendären Satz gesagt: "C macht es dir leicht, dir in den Fuß zu schießen. C++ macht es schwieriger, aber wenn du es tust, reißt es dir das ganze Bein ab."
Die meisten Programmiersprachen geben dir in irgend einer Form die Möglichkeit, in anderen Sprachen geschriebene Programmteile einzubinden.
Die Frage war nicht, ob man mit C alles bequem und mit guten Erfolgsaussichten machen kann, sondern ob man mit C alles programmieren kann. Und das kann man. Und nein, die von dir aufgezählten Dinge sind nicht "mehr" - all das kannst du mit C auch haben, du musst es nur per Hand machen, ohne die entsprechenden sprachlich vorgefertigten Abstraktionen.
Aber ich habe von einem Programmierer gehört, man kann ALLES programmieren, weil man die Befehle (if, struct usw. usw) ja beliebig kombinieren kann,,,stimmt das??
Nein. Es gibt etliche Probleme, welche sich (noch) nicht algorithmisch umsetzen lassen, und viele davon wohl auch nie werden.
Ich denke mal, du must für manche Sachen sehr kreativ sein, aber es gibt ja wirklich viele Befehle, deshalb denke ich mal, man kann alles programmieren.
Auf jeden Fall eine gute Frage! Gruß Kaiser
Eine arg romantisierte Vorstellung, welche aber ziemlich an der Realität vorbeigeht. In richtigen Softwareprojekten hat die Wahl der technologischen Plattform einen erheblichen Einfluss auf die Erfolgsaussichten und Umsetzbarkeit des Projektes. Mit Low-Level-Sprachen wie C kannst du dir ganz gewaltig ins Knie schießen, was die Beherrschbarkeit der Komplexität der Aufgabenstellung und die Modellierung und Implementierung des Systems anbelangt.
Objektorientierung, Templates, Namespaces, Exception Handling etc. sind also "nicht mehr"?