Gestern schrieb ich einen Artikel "Alle zerstörerischen Methoden, die Datenwissenschaftler kennen sollten" und erhielt die folgende Meinung von einem Freund. Es war.
Ich war ein wenig besorgt, aber "destruktive Methode" und "zerstörungsfreie Methode" sind keine allgemeine Programmierung, sondern Ruby-Begriffe und bedeuten nicht "Methode zum Wechseln des Empfängers"? Wenn Sie es wagen, es beim Namen zu nennen, scheint die Ersetzungsmethode korrekt zu sein. (Ich kann kein Japanisch finden) https://discuss.pytorch.org/t/what-is-in-place-operation/16244 https://ja.wikipedia.org/wiki/In-place Algorithmus
Darüber hinaus verwendet pandas beispielsweise auch den Argumentnamen "inplace" (https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.rename.html), also für Datenwissenschaftler. Dann wurde gesagt, dass an Ort und Stelle vertrauter sein könnte.
Natürlich denke ich, dass die meisten Artikel, die als "destruktiv" erscheinen, von Ruby stammen. Ich war ein wenig besorgt, also sah ich auf und verglich die Wörter "destruktiv" und "an Ort und Stelle" in Dokumenten in verschiedenen Sprachen.
[Nach Dokumentation gesucht](https://docs.python.org/ja/3.8/search.html?q=%E3%82%A4%E3%83%B3%E3%83%97%E3%83% AC% E3% 83% BC% E3% 82% B9 & check_keywords = yes & area = default) Übrigens scheint das Wort "an Ort und Stelle" tatsächlich häufig verwendet zu werden. Beispiel: "[Programmier-FAQ](https://docs.python.org/ja/3.8/faq/programming.html?highlight=%E3%82%A4%E3%83%B3%E3%83%97%E3%" In "83% AC% E3% 83% BC% E3% 82% B9 # wie-ich-einen-String an Ort und Stelle modifiziere" ist es wie folgt.
Wie ändere ich einen String in In-Place? ¶
Sie können das nicht tun, weil die Zeichenfolge unveränderlich ist. In den meisten Fällen sollten Sie einfach eine neue Zeichenfolge aus den einzelnen Teilen zusammensetzen, die Sie zusammenbauen möchten.
Andererseits wird in gewissem Umfang auch das Wort "destruktiv" verwendet. Beispielsweise enthält die Dokumentation zu Python2.7 das Wort "destruktiv". Die neueste Version des Dokuments lautet "Löschen und zurückgeben", aber nur die japanische Übersetzung hat sich geändert.
Ähnlich wie der Set-Algorithmus ist
popitem ()
nützlich, um Wörterbücher destruktiv zu iterieren. Wenn das Wörterbuch leer ist, löst der Aufruf von "popitem ()" "KeyError" aus.
Selbst in Python 3.8 enthält "Flüche --- Terminaloperation zur Behandlung der Anzeige von Zeichenzellen" zerstörungsfrei (zerstörungsfrei (zerstörungsfrei) ( Das Wort "zerstörungsfrei" wurde gefunden.
Überlagern Sie das Fenster mit
destwin
. Die Fenster müssen nicht gleich groß sein, nur die überlappenden Bereiche werden dupliziert. Diese Kopie ist zerstörungsfrei.
Es gibt auch "destruktiv" in der Ferne.
Überschreiben Sie den Inhalt des Fensters über
destwin
. Die Fenster müssen nicht gleich groß sein, nur die überlappenden Bereiche werden dupliziert. Diese Kopie ist destruktiv.
In den offiziellen Ruby-FAQ gab es den Punkt "Was ist eine destruktive Methode?". Für die japanische Version wurde keine Übersetzung gefunden.
The plain version creates a copy of the receiver, makes its change to it, and returns the copy. The “bang” version (with the !) modifies the receiver in place.
Das Wort "an Ort und Stelle" wird auch in der Beschreibung verwendet.
Ich habe in der Dokumentation nicht viel getroffen, also werde ich mir Rubima ansehen. Immerhin wird oft das Wort "destruktiv" verwendet. Zum Beispiel aus "Ruby Code Impressions [2nd] WikiR".
force_encoding ist eine destruktive Methode, obwohl es schwierig ist, sie nur anhand des Namens zu erkennen, da sie keine hat! Daher muss der Rückgabewert nicht dem Text zugewiesen werden. Das ist genug.
An einigen Stellen wurde das Wort an Ort und Stelle in der "Sitzung am 10. Juni morgens" verwendet.
Syntaktisch wurde der Ertrag gestört, als der Ertrag zuerst eintrat und später mit blockierten Argumenten eingeführt wurde. Außerdem mutiere ich nicht direkt mit String, aber es ist nicht gut, durcheinander zu sein. Ich bedauere 98% der integrierten Variablen, die ich von Perl erhalten habe.
Es scheint, dass sowohl die Wörter "an Ort und Stelle" als auch "destruktiv" verwendet werden. Es scheint, dass diese Teile noch nicht ins Japanische übersetzt wurden?
Aus "Ds \ Sequence :: sort"
Sorts the sequence in-place, using an optional comparator function.
Von Ds \ PriorityQueue :: toArray.
Hinweis:
This method is not destructive.
Ich wollte mir auch Smalltalk ansehen, das Ruby beeinflusste, aber es war nicht klar. Wenn Sie sich jedoch die Dokumentation zu [Smalltalk-72] ansehen (http://bitsavers.informatik.uni-stuttgart.de/pdf/xerox/parc/techReports/Smalltalk-72_Instruction_Manual_Mar76.pdf), gibt es mindestens ein Wort, das nicht destruktiv ist. Es wurde stellenweise verwendet.
Note that you can make non-destructive text by using xor ink which complements the background so that reshowing the text crases it while restoring what was underneath.
Ich habe mir auch Haskell angesehen, das im Grunde unveränderliche Variablen enthält, aber nur diejenigen gefunden, deren destruktiv verwendet wurde, um "eine Aktualisierung einer Sprachspezifikation zu bedeuten, die in der Vergangenheit nicht kompatibel war". Ich gab auf, weil das Lesen selbst mir jetzt weh tat.
Außerdem wird es in Ruby in der Nähe der richtigen Nomenklatur "destruktive Methode" verwendet, während destruktiv in anderen Sprachen als allgemeines Adjektiv verwendet zu werden scheint. Vielleicht ist der Begriff "destruktive Methode" ein Begriff, der in der Ruby-Community verwendet wurde, aber auf Japanisch als Programmierbegriff anerkannt und verbreitet wurde. Ich werde es noch einmal überprüfen, wenn ich eine Chance habe.
Recommended Posts