Gespür fürs Programmieren
-
Gregor schrieb:
Scheppertreiber schrieb:
Im Prinzip fehlt aber 99,99 % der Poster hier das Wissen was ein Computer
eigentlich ist. Einen Lötkolben haben die nie in der Hand gehabt, die kleine
schwarzen Käfer ? Igitt - Ungeziefer ...BTW: Was ist da eigentlich Dein Maßstab? Was sollte man alles wissen, um zu wissen, was ein Computer ist?
Der Frage schließe ich mich an.
Muss man wissen, wie ein Schaltregler funktioniert?
Muss man wissen, warum ein Feldeffekt-Transistor funktioniert?Das sind beides Beispiele für absolut notwendige Bauteile aktueller PCs.
Oder meinst du doch eher die High-Level-Sicht?
-
Kenner der Anfänger schrieb:
Wenn man aber eigentlich die Basics eines Computers kennen würde, würde man wissen, das man eigentlich aus einer Datei nicht wirklich was löschen kann.
Das ist natürlich grundfalsch.
Denn selbstverständlich kannst du Informationen aus einer Datei löschen.
Es genügt wenn du einen Bereich der Datei mit Nullen überschreibst und damit sind die Informationen gelöscht.
-
Kenner der Kenner der Anf schrieb:
Kenner der Anfänger schrieb:
Wenn man aber eigentlich die Basics eines Computers kennen würde, würde man wissen, das man eigentlich aus einer Datei nicht wirklich was löschen kann.
Das ist natürlich grundfalsch.
Denn selbstverständlich kannst du Informationen aus einer Datei löschen.
Es genügt wenn du einen Bereich der Datei mit Nullen überschreibst und damit sind die Informationen gelöscht.Ja, er meint, dass man nur überschreiben kann und nicht wie bei ner Tafel die Kreide mit Wasser und Schwamm "löschen" kann. Wenn ihr das noch weiter Diskutieren wollt, dann macht nen eigenen Thread auf. Danke.
zwutz schrieb:
sie fangen gerader erst an... das Gespür für sowas kommt mit der Zeit
Bei einigen hat man den Eindruck, dass die mit viel Arbeit mal eine menge Wissen ansammeln können um dann standard Probleme lösen zu können, aber wirklich komplexe neue Aufgaben, für die sie noch nie ne Lösung gesehen haben, werden die nicht lösen können. Wie einer der ein Instrument spielen kann, weil er viel übt, aber nicht in der Lage ist was neues zu komponieren, weil ihm da einfach das Talent fehlt.
-
Grundsatzfrage schrieb:
Ja, er meint, dass man nur überschreiben kann und nicht wie bei ner Tafel die Kreide mit Wasser und Schwamm "löschen" kann.
De Kreide wird aber nicht gelöscht, sondern nur entfernt.
Die Kreidepartikel vermischen sich nämlich mit dem Wasser und stecken daher bestenfalls im Schwamm drin oder werden auf der Tafel verschmiert.
Bei den Dateien ist es ähnlich, da werden die Magnetfelder auf der Festplatte
umgepolt, man kann das verschmieren der Kreide auf der Tafel also mit dem Umpolen der Magnetfeldlinien vergleichen.
-
Kenner der Kenner der Anf schrieb:
Kenner der Anfänger schrieb:
Wenn man aber eigentlich die Basics eines Computers kennen würde, würde man wissen, das man eigentlich aus einer Datei nicht wirklich was löschen kann.
Das ist natürlich grundfalsch.
Denn selbstverständlich kannst du Informationen aus einer Datei löschen.
Es genügt wenn du einen Bereich der Datei mit Nullen überschreibst und damit sind die Informationen gelöscht.Nein, ebend nicht. Du sagst ja selber "mit Nullen überschreibst". Fällt dir was auf? Eben, du kannst nur Werte schreiben oder lesen. Du sagst selber nicht mal "löschen". Das ist physikalisch nicht anders möglich. Und Null ist auch ein Wert, der lediglich semantisch als "Nichts" von einem Programm interpretiert werden kann.
Aber kannst du sowas machen?
Das soll ein Dateiinhalt sein:
Da wird der Hund in der Pfanne verrückt!
So, und manchmal kommen solche Fragen: "Wie kann ich Hund aus der Datei löschen?"
So das sowas raus kommt:Da wird der in der Pfanne verrückt!
Aber das geht ja nicht! Ich muß die Datei im schlimmsten Fall komplett neu auf die Platte schreiben. Im optimalen Fall, kann ich ab Hund einfach einen neuen Text (den restlichen Text hinter Hund) schreiben.
Das was du jetzt mir als Lösung angeboten hast, ist sowas:
Da wird der [NULL][NULL][NULL][NULL] in der Pfanne verrückt!
Ist aber nicht Löschen! Löschen gibt es nicht. Ich muß neu schreiben/überschreiben.
-
Und wüssten Anfänger solche Basics, würden sie nicht die Frage stellen sondern einfach in ihr Programm die Datei einlesen, ändern und neu rausschreiben. Dann ist ein bestimmter Wert oder Bytefolge nicht mehr vorhanden.
-
Kenner der Anfänger schrieb:
Und wüssten Anfänger solche Basics, würden sie nicht die Frage stellen sondern einfach in ihr Programm die Datei einlesen, ändern und neu rausschreiben. Dann ist ein bestimmter Wert oder Bytefolge nicht mehr vorhanden.
nur leider ist das komplett falsch. denn es koennte ja ein interface fuers dateihandling geben dass genau dieses rausloeschen ermoeglicht.
ein zu niedriges abstraktionslevel ist genauso schlimm wie ein zu hohes.
nur weil man mit bits und bytes auf du-und-du ist, muss man noch lange keine ahnung vom programmieren haben. das ganze besteht aus mehreren abstraktionsschichten und nur eine zu kennen ist zu wenig.
-
Grundsatzfrage schrieb:
Ist euch sicher auch schon mal aufgefallen, dass hier manchmal relativ triviale Fragen gestellt werden wie dieses oder jenes Programmiert werden kann.
Den meisten hier fehlt einfach nur die Übersicht über ihr eigenes Programm (Projektmanagement!).
Viele Fragen drehen sich um Probleme, die entweder noch gar nicht anliegen dürften oder die gar nicht erst aufgetaucht wären.
-
Kenner der Anfänger schrieb:
Nein, ebend nicht. Du sagst ja selber "mit Nullen überschreibst". Fällt dir was auf? Eben, du kannst nur Werte schreiben oder lesen. Du sagst selber nicht mal "löschen". Das ist physikalisch nicht anders möglich. Und Null ist auch ein Wert, der lediglich semantisch als "Nichts" von einem Programm interpretiert werden kann.
Ich sagte es werden die Informationen gelöscht und das ist auch richtig so,
wenn du die Daten mit Nullen überschreibst dann sind die Informationen ausgelöscht.Und auf die Information im Speichermedium kommt es an, nicht auf das Datensubstrat.
Aber kannst du sowas machen?
Das soll ein Dateiinhalt sein:
Da wird der Hund in der Pfanne verrückt!
So, und manchmal kommen solche Fragen: "Wie kann ich Hund aus der Datei löschen?"
Ich kann dir aus
Da wird der Hund in der Pfanne verrückt!
so etwas machen:
Wie du siehst sind die Informationen ausgelöscht.
-
Ihr redet aneinander vorbei.
Der eine sagt man kann nicht löschen nur überschreiben und der andere sagt man kann es überschreiben und dadurch löschen.
Das ist doch alles nur eine Sache der Definition von "löschen" man kann es in sofern löschen, dass man es vom Datenträger entfernen kann, aber man kann es nicht löschen ohne die Informationen zu überschreiben, also im Prinzip nicht direkt löschen.
-
Eine Datei ist ein abstraktes Konzept was mit der physikalischen Anordnung auf dem Datenträger nicht direkt in Verbindung steht. Eine Datei existiert auf Dateisystemebene - nicht auf der Festplattenebene.
Der Inhalt einer Datei wird über das Dateisystem abgerufen, wird ein Teil aus der Datei gelöscht, so ist dieser nicht mehr länger abrufbar über das Dateisystem und somit nicht mehr in dieser Datei vorhanden.
-
@ Ursprüngliches Thema:
Ich will niemanden zu nahe treten, aber bei einem Großteil der Leute, die wirklich sehr triviale Fragen stellen, habe ich zum Teil das Gefühl, dass ihr Leitmotto "5 Minuten doofstellen erspart oft meist eine Stunde Arbeit". Soll heißen, dass viele lieber eine fertige Lösung für ein Problem haben wollen, als Ratschläge, die sie dann selber zu einer Lösung führen könnten. Abgesehen davon, dass viele Anfänger offensichtlich nicht mal mehr ein gutes Buch zur Hand nehmen...es fählt ihnen dann auch am nötigen Ernst wirklich was lernen zu wollen.
-
dann könnte man sich aber auch noch fragen, ob es der C++ Gemeinde nicht an Toleranz mangelt, indem sie nicht versteht, dass nicht jeder das wirklich lernen will.
-
JustAnotherNoob schrieb:
dann könnte man sich aber auch noch fragen, ob es der C++ Gemeinde nicht an Toleranz mangelt, indem sie nicht versteht, dass nicht jeder das wirklich lernen will.
Die C++ Gemeinde muss ja auch nicht gleich jedem helfen wollen.
-
JustAnotherNoob schrieb:
dann könnte man sich aber auch noch fragen, ob es der C++ Gemeinde nicht an Toleranz mangelt, indem sie nicht versteht, dass nicht jeder das wirklich lernen will.
Meine Bereitschaft jemanden zu helfen hat nichts mit dem Thema, hier C++, zu tun sondern damit, ob ich 1. überhaupt helfen kann und 2. ob ich demjenigen überhaupt helfen will. Meine Bereitschaft steigt damit, wie mir jemand gegenüber tritt. Mit "ey leudz, ich verstehe diese Scheiße mit switch nicht" kommt bei mir niemand weit, weil 1. das eine Ausdrucksweise ist, bei der sich mir die Nackenhaare aufrichten, 2. derjenige sich nicht mal ansatzweise mit seinem Problem auseinander gesetzt hat.