An Entity of Type: Inflection113803782, from Named Graph: http://dbpedia.org, within Data Space: dbpedia.org

In computer science, an operation, function or expression is said to have a side effect if it modifies some state variable value(s) outside its local environment, which is to say if it has any observable effect other than its primary effect of returning a value to the invoker of the operation. Example side effects include modifying a non-local variable, modifying a static local variable, modifying a mutable argument passed by reference, performing I/O or calling other functions with side-effects. In the presence of side effects, a program's behaviour may depend on history; that is, the order of evaluation matters. Understanding and debugging a function with side effects requires knowledge about the context and its possible histories.

Property Value
dbo:abstract
  • في علم الكمبيوتر، يقال ان دالة أو تعبير لها آثار جانبية إذا غيرت بعض الحالات خارج نطاقها أو لديها تفاعل ملحوظ مع دوال الاتصال الخاصة بها أو بالعالم الخارجي إلى جانب إرجاع قيمة.على سبيل المثال، قد تقوم دالة معينة بتعديل متغير شامل المجال أو متغير ثابت، أو تعديل إحدى المتغيرات الوسيطة، أو رفع استثناء، أو كتابة البيانات إلى شاشة أو ملف، أو قراءة البيانات من لوحة مفاتيح أو ملف، أو استدعاء وظائف أخرى ذات تأثير جانبي. في وجود آثار جانبية، قد يعتمد سلوك البرنامج على التاريخ. والذي هو، ترتيب مسائل التقييم. يتطلب فهم وتصحيح دالة ذات تأثيرات جانبية معرفة السياق وتاريخه المحتمل.ويقال إن الدالة أو التعبير -دون تأثيرات جانبية- تكون نقية. تعد التأثيرات الجانبية أكثر الطرق شيوعًا في تفاعل البرنامج مع العالم الخارجي (الأشخاص، أنظمة الملفات، أجهزة الكمبيوتر الأخرى على الشبكات). تعتمد درجة استخدام التأثيرات الجانبية على نمط البرمجة. تشتهر البرمجة الامرية Imperative programming لاستخدامها المتكرر للآثار الجانبية. في البرمجة الوظيفية نادرا ما تستخدم الآثار الجانبية. ويؤدي عدم وجود آثار جانبية إلى تسهيل إجراء عمليات التحقق الرسمية من البرنامج. لا تحد اللغات الوظيفية مثل Standard ML و Scheme و Scala من الآثار الجانبية، ولكن من المعتاد أن يتجنبها المبرمجون.تعبر اللغة الوظيفية Haskell عن تأثيرات جانبية مثلI/O وحسابات أخرى ذات أهمية باستخدام monadic actions. يجب أن يكون مبرمجي لغة تجميع Assembly على دراية بالآثار الجانبية المخفية - التعليمات التي تقوم بتعديل أجزاء من حالة المعالج التي لم يتم ذكرها في instruction's mnemonic. المثال الكلاسيكي لأثر جانبي مخفي هو تعليمة حسابية تقوم بتعديل شرط الأكواد بشكل ضمني (تأثير جانبي مخفي) أثناء تعديلها بشكل صريح ل register (الأثر الصريح). أحد العوائق المحتملة لمجموعة تعليمات ذات تأثيرات جانبية مخفية هو أنه إذا كان للعديد من التعليمات تأثيرات جانبية على حالة واحدة، مثل شرط الأكواد، فإن المنطق مطلوب لتحديث تلك الحالة بشكل تسلسلي وقد يؤدي إلى ضعف الأداء. المشكلة عصيبة بشكل خاص على بعض المعالجات المصممة مع خط الانابيب (منذ عام 1990) أو مع out-of-order execution . قد يتطلب مثل هذا المعالج دوائر تحكم إضافية لاكتشاف الآثار الجانبية المخفية وتوقف خط الانابيب إذا كانت التعليمات التالية تعتمد على نتائج تلك التأثيرات. (ar)
  • Vedlejší účinek (anglicky side effect) je pojem, který v programování představuje situaci, kdy volaná funkce nebo výpočetní výraz mění i jiný stav procesu, než je návratová hodnota funkce nebo výrazu nebo změna hodnoty parametru odkazovaného přes odkaz referencí. Vedlejší účinek může být úmyslný nebo neúmyslný. Neúmyslný vedlejší účinek je častým zdrojem mnoha programátorských chyb. Úmyslný vedlejší účinek je základem procedurálního přístupu k tvorbě software a pokud se používá přehledně a účelně, může zjednodušit implementaci programového kódu. Naopak v deklarativním přístupu tvorby software je vedlejší účinek zakázán a často není ani možný. Z pohledu současných programovacích jazyků je vedlejší účinek považován spíše za programátorský antivzor a je snahou vedlejší účinky minimalizovat pomocí neměnných dat. S pojmem vedlejšího účinku souvisí také pojem , která ze své podstaty brání vzniku vedlejších účinků. (cs)
  • Στον προγραμματισμό, λέμε ότι μια έχει παρενέργειες (side effects) αν, εκτός από την τιμή που επιστρέφει, τροποποιεί και διάφορα άλλα στοιχεία. Για παράδειγμα, μία συνάρτηση θα μπορούσε να τροποποιεί μία καθολική ή μία στατική μεταβλητή, να αλλάζει την τιμή μιας ή περισσοτέρων από τις παραμέτρους της, να γράφει δεδομένα σε ένα αρχείο για εμφάνιση, ή να διαβάζει κάποια δεδομένα από άλλες συναρτήσεις που επίσης έχουν παρενέργειες. Οι παρενέργειες συχνά κάνουν πιο δύσκολη την κατανόηση της συμπεριφοράς ενός προγράμματος. Οι προστακτικές γλώσσες είναι γνωστές για την στράτευση των παρενεργειών προκειμένου να υλοποιήσουν τις συναρτήσεις ενός προγράμματος. Αντίθετα, οι συναρτησιακές γλώσσες προγραμματισμού είναι γνωστές για την ελαχιστοποίηση ή εξάλειψη των παρενεργειών. (el)
  • In der theoretischen Informatik bezeichnet Wirkung die Veränderung des Zustands, in dem sich eine abstrakte Maschine befindet. Manchmal wird auch von Seiteneffekt gesprochen, eine Bezeichnung, die auf eine Rückübersetzung des englischen side effect (deutsch: Nebenwirkung) zurückgeht. (de)
  • En programado, funkcio aŭ esprimo havas kromefikon, se ĝi ŝanĝas ion krom la staton de siaj lokaj objektoj, t.e. havas ankoraŭ alian observeblan efikon krom la liveron de sia valoro (rezulto). Tia kromefiko povas konsisti en valorizo de neloka variablo, aŭ de statika variablo (eĉ se tiu havas lokan videblejon), plenumo de eneliga operacio. Ĝenerale, se iu funkcio f havas kromefikon, tiam oni ne rajtas redukti du sinsekvajn vokojn de f kiaj y := f(x); y := f(x); al unu sola y := f(x); eĉ se la valoro de la argumento x restas senŝanĝa; oni do iam nomas tiajn funkciojn neredukteblaj (termino de PL/I). Ekz‑e en la programo P el la arikolo «Malloka variablo» la stakomanipulaj subprogramoj surstakigu kaj elstakigu kromefike ŝanĝas la valoron de la neloka variablo pinto. (eo)
  • En ciencias de la computación se dice que una función o expresión tiene efecto colateral, efecto de lado o efecto secundario si esta, además de retornar un valor, modifica el estado de su entorno. Por ejemplo, una función puede modificar una variable global o estática, modificar uno de sus argumentos, escribir datos a la pantalla o a un archivo, o leer datos de otras funciones que tienen efecto secundario. Los efectos secundarios frecuentemente hacen que el comportamiento de un programa sea más difícil de predecir. La programación imperativa generalmente emplea funciones con efecto secundario para hacer que los programas funcionen, la programación funcional en cambio se caracteriza por minimizar estos efectos. En el diseño de CPU las instrucciones con efecto colateral son aquellas instrucciones que modifican valores internos del CPU de forma no explícita - de hecho, la instrucción ADD puede o no modificar otros registros (carry, zero, overflow, etc). Esto causa un problema cuando se diseña un CPU que usa "pipeline" de instrucciones y soporta instrucciones con efecto colateral. Se debe prestar especial cuidado para evitar este riesgo. (es)
  • En informatique, une fonction est dite à effet de bord (traduction mot à mot de l'anglais side effect, dont le sens est plus proche d'effet secondaire) si elle modifie un état en dehors de son environnement local, c'est-à-dire a une interaction observable avec le monde extérieur autre que retourner une valeur. Par exemple, les fonctions qui modifient une variable locale statique, une variable non locale ou un argument mutable passé par référence, les fonctions qui effectuent des opérations d'entrées-sorties ou les fonctions appelant d'autres fonctions à effet de bord. Souvent, ces effets compliquent la lisibilité du comportement des programmes et/ou nuisent à la réutilisabilité des fonctions et procédures. Un langage comme Haskell les restreint délibérément dans des composants nommés monades. Plus communément, un effet de bord apparaît la plupart du temps lorsqu'une modification d'un programme cohérent (valeurs et états pris conformes aux spécifications) aboutit à des valeurs ou des comportements non prévus, à cause de la non prise en compte de la portée, de l'ensemble de définition de variables, ou du contrat des fonctions. (fr)
  • In computer science, an operation, function or expression is said to have a side effect if it modifies some state variable value(s) outside its local environment, which is to say if it has any observable effect other than its primary effect of returning a value to the invoker of the operation. Example side effects include modifying a non-local variable, modifying a static local variable, modifying a mutable argument passed by reference, performing I/O or calling other functions with side-effects. In the presence of side effects, a program's behaviour may depend on history; that is, the order of evaluation matters. Understanding and debugging a function with side effects requires knowledge about the context and its possible histories. Side effects play an important role in the design and analysis of programming languages. The degree to which side effects are used depends on the programming paradigm. For example, imperative programming is commonly used to produce side effects, to update a system's state. By contrast, declarative programming is commonly used to report on the state of system, without side effects. Functional programming aims to minimize or eliminate side effects. The lack of side effects makes it easier to do formal verification of a program. The functional language Haskell eliminates side effects such as I/O and other stateful computations by replacing them with monadic actions. Functional languages such as Standard ML, Scheme and Scala do not restrict side effects, but it is customary for programmers to avoid them. Assembly language programmers must be aware of hidden side effects—instructions that modify parts of the processor state which are not mentioned in the instruction's mnemonic. A classic example of a hidden side effect is an arithmetic instruction that implicitly modifies condition codes (a hidden side effect) while it explicitly modifies a register (the intended effect). One potential drawback of an instruction set with hidden side effects is that, if many instructions have side effects on a single piece of state, like condition codes, then the logic required to update that state sequentially may become a performance bottleneck. The problem is particularly acute on some processors designed with pipelining (since 1990) or with out-of-order execution. Such a processor may require additional control circuitry to detect hidden side effects and stall the pipeline if the next instruction depends on the results of those effects. (en)
  • In informatica si dice che una funzione produce un effetto collaterale quando modifica un valore o uno stato al di fuori del proprio scoping locale. Per esempio, una funzione ha un effetto collaterale quando modifica una variabile globale o statica, quando modifica uno dei suoi argomenti, quando scrive dati su di un display o su di un file o quando invoca altre funzioni con effetti collaterali. (it)
  • 컴퓨터 과학에서 함수가 결과값 이외에 다른 상태를 변경시킬 때 부작용이 있다고 말한다. 예를 들어, 함수가 전역변수나 정적변수를 수정하거나, 인자로 넘어온 것들 중 하나를 변경하거나 화면이나 파일에 데이터를 쓰거나, 다른 부작용이 있는 함수에서 데이터를 읽어오는 경우가 있다. 부작용은 프로그램의 동작을 이해하기 어렵게 한다. 명령형 프로그래밍은 부작용을 사용하여 프로그램이 동작하게 하는 것으로 알려져 있다. 함수형 프로그래밍은 부작용을 최소화하는 것으로 알려져 있다. (ko)
  • プログラミングにおいて、式の評価による作用には、主たる作用とそれ以外の副作用(side effect)とがある。式は、評価値を得ること(※関数では「引数を受け取り値を返す」と表現する)が主たる作用とされ、それ以外のコンピュータの論理的状態(ローカル環境以外の状態変数の値)を変化させる作用を副作用という。 副作用の例としては、グローバル変数や静的ローカル変数の変更、ファイルの読み書きなどのI/O実行、などがある。一方、高水準言語における、正弦、余弦、平方根などの数学関数では、関数内でノーマルなローカル変数の変更ぐらいしか伴わないため、副作用がない。 なお、コンピュータの論理的状態(ローカル環境以外の状態)を変化させる機能、つまり副作用を起こす機能は、それ以降で得られる結果に影響を与える。手始めに、与えられた数字を二倍して返す機能"double"があるとする。これは主たる作用しかなく、副作用のない例である。 double: x -> 2*x例:4 <- double: 2 このような機能では次のことが成立する。 1. * 同じ条件を与えれば必ず同じ結果が得られる 2. * 他のいかなる機能の結果にも影響を与えない このような性質を参照透過性という。参照透過な機能はそれ自身状態を持たないことで、副作用とは縁がない。 一方、状態を持つ機能"add"を考える。addが、機能内部からグローバル変数eを参照し、それを増加させて返すものとすれば: add: x -> e:e+x例:e: 12 <- add:12 <- e... のようになるだろう。このような機能では機能の外側の状態を変化させてしまうために、参照透過性の一つ目の仮定が崩れ、また、eを利用する他の機能の結果も変化させるので二つ目の仮定も成立しない。addは副作用を持つ機能である。 副作用を前提とするノイマン型のアーキテクチャ、つまり、大半のプログラミング言語では、addのようなグローバル変数への破壊的代入、参照渡しされた引数に対するいわゆる“破壊的操作”、そしてインスタンス(レシーバ)に対する破壊的メソッドなどがある。一方、関数型言語では原則として副作用を存在しないものとみなし、モナドなどの手法で抽象化している。 機能が副作用を持たないことの利点は、いかなる状況でも常に同じ結果が得られるために数理論理学に基づく形式的な検証ができ、状況依存でのバグの発生が抑えられ、宣言型プログラミングができるということである。反面、副作用を持たない言語設計はノイマン型アーキテクチャと反りが合わず、効率の点で不利になることが多い。また、単純な逐次処理を行う場合は状態を中心に命令的な思考をした方が扱いやすい場合がある。このためLISPやMLなどは原則として関数型ながら、副作用を許容する設計になっている。 (ja)
  • In de informatica heeft een functie of expressie een of meer neveneffecten als het naast het teruggeven van een waarde ook een toestand aanpast. Voorbeelden hiervan zijn het aanpassen van een globale variabele of het wegschrijven van informatie naar een bestand of beeldscherm. Door neveneffecten wordt het gedrag van het programma mogelijk moeilijker te voorspellen. Een operatie die geen neveneffecten heeft kan veilig worden uitgevoerd zonder dat de toestand van het systeem wordt aangepast. Het opvragen van een waarde is een voorbeeld van een veilige operatie. In imperatieve programmeertalen hebben veel berekeningen neveneffecten, terwijl functies in functionele programmeertalen weinig tot geen neveneffecten hebben. Wil een functie of expressie referentieel transparant zijn, dan is een van de vereisten daarvoor dat de functie geen neveneffecten heeft. (nl)
  • Skutek uboczny, efekt uboczny (ang. side effect) – dowolny efekt wyrażenia lub wywołania funkcji, który wykracza poza zwrócenie wartości, np. interakcja z systemem operacyjnym lub zmiana wartości zmiennej globalnej. Innymi słowy skutek uboczny następuje, gdy modyfikowany zostaje jakiś programu poza swoim lokalnym środowiskiem, to znaczy następuje zauważalna interakcja ze „światem zewnętrznym”, oprócz zwracania wartości. Pomimo nazwy (nieco mylącej) wiele funkcji jest wywoływanych właśnie w celu uzyskania skutku ubocznego. Np. wyrażenie 2 + 3 nie ma skutków ubocznych, natomiast wyrażenie a = 2 + 3 ma oczywisty skutek uboczny na zmiennej nielokalnej a – modyfikuje jej wartość. Innym przykładem skutku ubocznego jest poniższa funkcja w Perlu: sub add { my $val = 0; $count++; $val += $_ foreach (@_); return $val;} Jej zasadniczym celem jest zwrócenie sumy wartości podanych argumentów, ale efektem ubocznym jest wyłącznie zwiększenie wartość pewnej zmiennej globalnej $count. (pl)
  • Sidoeffekter är inom datorprogrammering och datalogi effekter vid exempelvis funktionsanrop som inte är uppenbara att de ska inträffa. Sidoeffekter kan vara önskade och medvetet införda, eller oönskade och omedvetet införda. Ett vanligt exempel är att variabelvärden som andra delar av programvaran är beroende av, , ändras. Det anses vara dålig programmeringssed [källa behövs] att införa sidoeffekter eftersom de drabbar programvarans överskådlighet och dessutom ofta inför felaktigheter i programvarans funktion. (sv)
  • Функція або вираз мають побічний ефект, якщо, на додаток до повернення значення, вони змінюють якийсь стан програми або проводять видиму взаємодію з викликальною функцією або зовнішнім світом. Наприклад, функція може змінювати глобальну або статичну змінну, змінювати один зі своїх аргументів, спричиняти виняткову ситуацію, виводити дані на пристрій виведення або у файл, читати дані або викликати інші функції з побічними ефектами. За наявності побічних ефектів, поведінка програми залежить від історії; тобто порядок обчислень має значення. Розуміння програми з побічними ефектами вимагає знання про контекст та історію; навіть при наявності цих знань важко добрати перебіг програми, а також зневадити її. Побічні ефекти — найзвичніший спосіб взаємодії з зовнішнім світом (людьми, файловою системою, іншими комп'ютерами в мережі). Ступінь використання побічних ефектів залежить від парадигми програмування. Імперативне програмування відоме частим використанням побічних ефектів. У функціональному програмуванні побічні ефекти використовують зрідка. Функціональні мови такі як Standard ML або Scheme не забороняють побічні ефекти, але зазвичай програмісти уникають їх. Функціональна мова Haskell обмежує побічні ефекти через статичну систему типізації; вона використовує концепцію монад. Розробники на мові асемблера мають зважати на приховані побічні ефекти — інструкції, які змінюють частину стану процесора без зазначення цього в своїх назвах. Класичний приклад прихованого побічного ефекту — арифметична інструкція, яка явно змінює регістр (явний ефект (англ. overt effect)) і неявно змінює коди умов (прихований побічний ефект). Наприклад, прапорці, що вказують на те, що в результаті отримано нуль або переповнення. Один з недоліків набору інструкцій з багатьма побічними ефектами полягає в можливості впливу на одну частинку стану, наприклад коди умов, тоді коли вимога оновлювати ці стани послідовно може стати вузьким місцем швидкодії. Проблема постає особливо гостро на процесорах розроблених з конвеєром команд (з 1990) або з позачерговим виконанням. Такі процесори можуть потребувати додаткову схему для перевірки на побічні ефекти і зупиняти конвеєр, якщо наступна інструкція залежить від наслідків цих ефектів. (uk)
  • Побо́чные эффе́кты (англ. side effects) — любые действия работающей программы, изменяющие среду выполнения (англ. execution environment). Например, к побочным эффектам относятся: * доступ (чтение или запись) к объекту, определённому с модификатором volatile (англ.); * изменение (запись) объекта; * изменение файла; * изменение поведения инструкций процессора, обрабатывающих числа с плавающей точкой (см. floating-point environment (англ.)); * вызов функции, выполняющей любое из перечисленных выше действий. Побочный эффект функции — возможность в процессе выполнения своих вычислений: читать и модифицировать значения глобальных переменных, осуществлять операции ввода-вывода, реагировать на исключительные ситуации, вызывать их обработчики. Если вызвать функцию с побочным эффектом дважды с одним и тем же набором значений входных аргументов, может случиться так, что в качестве результата будут возвращены разные значения. Такие функции называются недетерминированными функциями с побочными эффектами. (ru)
  • 在计算机科学中,函数副作用指当调用函数时,除了返回可能的函数值之外,还对主调用函数产生附加的影响。例如修改全局变量(函数外的变量),修改参数,向主调方的终端、管道输出字符或改变外部存储信息等。 在某些情况下函数副作用会给程序设计带来不必要的麻烦,给程序带来十分难以查找的错误,并降低程序的可读性与可移植性。严格的函数式语言要求函数必须无任何副作用,但功能性静态函数本身的目的正是产生某些副作用。在生命科学中,副作用往往带有贬义,但在计算机科学中,副作用有时正是“主要作用”。 下面是函数的副作用相关的几个概念,、、。 (zh)
dbo:wikiPageID
  • 29519 (xsd:integer)
dbo:wikiPageLength
  • 10056 (xsd:nonNegativeInteger)
dbo:wikiPageRevisionID
  • 1104967033 (xsd:integer)
dbo:wikiPageWikiLink
dbp:cs1Dates
  • y (en)
dbp:date
  • December 2021 (en)
dbp:wikiPageUsesTemplate
dcterms:subject
rdf:type
rdfs:comment
  • Στον προγραμματισμό, λέμε ότι μια έχει παρενέργειες (side effects) αν, εκτός από την τιμή που επιστρέφει, τροποποιεί και διάφορα άλλα στοιχεία. Για παράδειγμα, μία συνάρτηση θα μπορούσε να τροποποιεί μία καθολική ή μία στατική μεταβλητή, να αλλάζει την τιμή μιας ή περισσοτέρων από τις παραμέτρους της, να γράφει δεδομένα σε ένα αρχείο για εμφάνιση, ή να διαβάζει κάποια δεδομένα από άλλες συναρτήσεις που επίσης έχουν παρενέργειες. Οι παρενέργειες συχνά κάνουν πιο δύσκολη την κατανόηση της συμπεριφοράς ενός προγράμματος. Οι προστακτικές γλώσσες είναι γνωστές για την στράτευση των παρενεργειών προκειμένου να υλοποιήσουν τις συναρτήσεις ενός προγράμματος. Αντίθετα, οι συναρτησιακές γλώσσες προγραμματισμού είναι γνωστές για την ελαχιστοποίηση ή εξάλειψη των παρενεργειών. (el)
  • In der theoretischen Informatik bezeichnet Wirkung die Veränderung des Zustands, in dem sich eine abstrakte Maschine befindet. Manchmal wird auch von Seiteneffekt gesprochen, eine Bezeichnung, die auf eine Rückübersetzung des englischen side effect (deutsch: Nebenwirkung) zurückgeht. (de)
  • In informatica si dice che una funzione produce un effetto collaterale quando modifica un valore o uno stato al di fuori del proprio scoping locale. Per esempio, una funzione ha un effetto collaterale quando modifica una variabile globale o statica, quando modifica uno dei suoi argomenti, quando scrive dati su di un display o su di un file o quando invoca altre funzioni con effetti collaterali. (it)
  • 컴퓨터 과학에서 함수가 결과값 이외에 다른 상태를 변경시킬 때 부작용이 있다고 말한다. 예를 들어, 함수가 전역변수나 정적변수를 수정하거나, 인자로 넘어온 것들 중 하나를 변경하거나 화면이나 파일에 데이터를 쓰거나, 다른 부작용이 있는 함수에서 데이터를 읽어오는 경우가 있다. 부작용은 프로그램의 동작을 이해하기 어렵게 한다. 명령형 프로그래밍은 부작용을 사용하여 프로그램이 동작하게 하는 것으로 알려져 있다. 함수형 프로그래밍은 부작용을 최소화하는 것으로 알려져 있다. (ko)
  • Sidoeffekter är inom datorprogrammering och datalogi effekter vid exempelvis funktionsanrop som inte är uppenbara att de ska inträffa. Sidoeffekter kan vara önskade och medvetet införda, eller oönskade och omedvetet införda. Ett vanligt exempel är att variabelvärden som andra delar av programvaran är beroende av, , ändras. Det anses vara dålig programmeringssed [källa behövs] att införa sidoeffekter eftersom de drabbar programvarans överskådlighet och dessutom ofta inför felaktigheter i programvarans funktion. (sv)
  • 在计算机科学中,函数副作用指当调用函数时,除了返回可能的函数值之外,还对主调用函数产生附加的影响。例如修改全局变量(函数外的变量),修改参数,向主调方的终端、管道输出字符或改变外部存储信息等。 在某些情况下函数副作用会给程序设计带来不必要的麻烦,给程序带来十分难以查找的错误,并降低程序的可读性与可移植性。严格的函数式语言要求函数必须无任何副作用,但功能性静态函数本身的目的正是产生某些副作用。在生命科学中,副作用往往带有贬义,但在计算机科学中,副作用有时正是“主要作用”。 下面是函数的副作用相关的几个概念,、、。 (zh)
  • في علم الكمبيوتر، يقال ان دالة أو تعبير لها آثار جانبية إذا غيرت بعض الحالات خارج نطاقها أو لديها تفاعل ملحوظ مع دوال الاتصال الخاصة بها أو بالعالم الخارجي إلى جانب إرجاع قيمة.على سبيل المثال، قد تقوم دالة معينة بتعديل متغير شامل المجال أو متغير ثابت، أو تعديل إحدى المتغيرات الوسيطة، أو رفع استثناء، أو كتابة البيانات إلى شاشة أو ملف، أو قراءة البيانات من لوحة مفاتيح أو ملف، أو استدعاء وظائف أخرى ذات تأثير جانبي. في وجود آثار جانبية، قد يعتمد سلوك البرنامج على التاريخ. والذي هو، ترتيب مسائل التقييم. يتطلب فهم وتصحيح دالة ذات تأثيرات جانبية معرفة السياق وتاريخه المحتمل.ويقال إن الدالة أو التعبير -دون تأثيرات جانبية- تكون نقية. (ar)
  • Vedlejší účinek (anglicky side effect) je pojem, který v programování představuje situaci, kdy volaná funkce nebo výpočetní výraz mění i jiný stav procesu, než je návratová hodnota funkce nebo výrazu nebo změna hodnoty parametru odkazovaného přes odkaz referencí. Z pohledu současných programovacích jazyků je vedlejší účinek považován spíše za programátorský antivzor a je snahou vedlejší účinky minimalizovat pomocí neměnných dat. S pojmem vedlejšího účinku souvisí také pojem , která ze své podstaty brání vzniku vedlejších účinků. (cs)
  • En programado, funkcio aŭ esprimo havas kromefikon, se ĝi ŝanĝas ion krom la staton de siaj lokaj objektoj, t.e. havas ankoraŭ alian observeblan efikon krom la liveron de sia valoro (rezulto). Tia kromefiko povas konsisti en valorizo de neloka variablo, aŭ de statika variablo (eĉ se tiu havas lokan videblejon), plenumo de eneliga operacio. Ĝenerale, se iu funkcio f havas kromefikon, tiam oni ne rajtas redukti du sinsekvajn vokojn de f kiaj y := f(x); y := f(x); al unu sola y := f(x); (eo)
  • En ciencias de la computación se dice que una función o expresión tiene efecto colateral, efecto de lado o efecto secundario si esta, además de retornar un valor, modifica el estado de su entorno. Por ejemplo, una función puede modificar una variable global o estática, modificar uno de sus argumentos, escribir datos a la pantalla o a un archivo, o leer datos de otras funciones que tienen efecto secundario. Los efectos secundarios frecuentemente hacen que el comportamiento de un programa sea más difícil de predecir. (es)
  • In computer science, an operation, function or expression is said to have a side effect if it modifies some state variable value(s) outside its local environment, which is to say if it has any observable effect other than its primary effect of returning a value to the invoker of the operation. Example side effects include modifying a non-local variable, modifying a static local variable, modifying a mutable argument passed by reference, performing I/O or calling other functions with side-effects. In the presence of side effects, a program's behaviour may depend on history; that is, the order of evaluation matters. Understanding and debugging a function with side effects requires knowledge about the context and its possible histories. (en)
  • En informatique, une fonction est dite à effet de bord (traduction mot à mot de l'anglais side effect, dont le sens est plus proche d'effet secondaire) si elle modifie un état en dehors de son environnement local, c'est-à-dire a une interaction observable avec le monde extérieur autre que retourner une valeur. Par exemple, les fonctions qui modifient une variable locale statique, une variable non locale ou un argument mutable passé par référence, les fonctions qui effectuent des opérations d'entrées-sorties ou les fonctions appelant d'autres fonctions à effet de bord. Souvent, ces effets compliquent la lisibilité du comportement des programmes et/ou nuisent à la réutilisabilité des fonctions et procédures. Un langage comme Haskell les restreint délibérément dans des composants nommés monad (fr)
  • プログラミングにおいて、式の評価による作用には、主たる作用とそれ以外の副作用(side effect)とがある。式は、評価値を得ること(※関数では「引数を受け取り値を返す」と表現する)が主たる作用とされ、それ以外のコンピュータの論理的状態(ローカル環境以外の状態変数の値)を変化させる作用を副作用という。 副作用の例としては、グローバル変数や静的ローカル変数の変更、ファイルの読み書きなどのI/O実行、などがある。一方、高水準言語における、正弦、余弦、平方根などの数学関数では、関数内でノーマルなローカル変数の変更ぐらいしか伴わないため、副作用がない。 なお、コンピュータの論理的状態(ローカル環境以外の状態)を変化させる機能、つまり副作用を起こす機能は、それ以降で得られる結果に影響を与える。手始めに、与えられた数字を二倍して返す機能"double"があるとする。これは主たる作用しかなく、副作用のない例である。 double: x -> 2*x例:4 <- double: 2 このような機能では次のことが成立する。 1. * 同じ条件を与えれば必ず同じ結果が得られる 2. * 他のいかなる機能の結果にも影響を与えない このような性質を参照透過性という。参照透過な機能はそれ自身状態を持たないことで、副作用とは縁がない。 (ja)
  • In de informatica heeft een functie of expressie een of meer neveneffecten als het naast het teruggeven van een waarde ook een toestand aanpast. Voorbeelden hiervan zijn het aanpassen van een globale variabele of het wegschrijven van informatie naar een bestand of beeldscherm. Door neveneffecten wordt het gedrag van het programma mogelijk moeilijker te voorspellen. Een operatie die geen neveneffecten heeft kan veilig worden uitgevoerd zonder dat de toestand van het systeem wordt aangepast. Het opvragen van een waarde is een voorbeeld van een veilige operatie. (nl)
  • Skutek uboczny, efekt uboczny (ang. side effect) – dowolny efekt wyrażenia lub wywołania funkcji, który wykracza poza zwrócenie wartości, np. interakcja z systemem operacyjnym lub zmiana wartości zmiennej globalnej. Innymi słowy skutek uboczny następuje, gdy modyfikowany zostaje jakiś programu poza swoim lokalnym środowiskiem, to znaczy następuje zauważalna interakcja ze „światem zewnętrznym”, oprócz zwracania wartości. Pomimo nazwy (nieco mylącej) wiele funkcji jest wywoływanych właśnie w celu uzyskania skutku ubocznego. (pl)
  • Побо́чные эффе́кты (англ. side effects) — любые действия работающей программы, изменяющие среду выполнения (англ. execution environment). Например, к побочным эффектам относятся: * доступ (чтение или запись) к объекту, определённому с модификатором volatile (англ.); * изменение (запись) объекта; * изменение файла; * изменение поведения инструкций процессора, обрабатывающих числа с плавающей точкой (см. floating-point environment (англ.)); * вызов функции, выполняющей любое из перечисленных выше действий. (ru)
  • Функція або вираз мають побічний ефект, якщо, на додаток до повернення значення, вони змінюють якийсь стан програми або проводять видиму взаємодію з викликальною функцією або зовнішнім світом. Наприклад, функція може змінювати глобальну або статичну змінну, змінювати один зі своїх аргументів, спричиняти виняткову ситуацію, виводити дані на пристрій виведення або у файл, читати дані або викликати інші функції з побічними ефектами. За наявності побічних ефектів, поведінка програми залежить від історії; тобто порядок обчислень має значення. Розуміння програми з побічними ефектами вимагає знання про контекст та історію; навіть при наявності цих знань важко добрати перебіг програми, а також зневадити її. (uk)
rdfs:label
  • تأثير جانبي (علم الحاسوب) (ar)
  • Vedlejší účinek (programování) (cs)
  • Wirkung (Informatik) (de)
  • Παρενέργεια (υπολογιστές) (el)
  • Kromefiko (programada) (eo)
  • Efecto secundario (informática) (es)
  • Effet de bord (informatique) (fr)
  • Effetto collaterale (informatica) (it)
  • 부작용 (컴퓨터 과학) (ko)
  • 副作用 (プログラム) (ja)
  • Neveneffect (nl)
  • Skutek uboczny (informatyka) (pl)
  • Side effect (computer science) (en)
  • Sidoeffekt (datorprogrammering) (sv)
  • Побочный эффект (программирование) (ru)
  • 副作用 (计算机科学) (zh)
  • Побічний ефект (програмування) (uk)
owl:sameAs
prov:wasDerivedFrom
foaf:isPrimaryTopicOf
is dbo:wikiPageDisambiguates of
is dbo:wikiPageRedirects of
is dbo:wikiPageWikiLink of
is foaf:primaryTopic of
Powered by OpenLink Virtuoso    This material is Open Knowledge     W3C Semantic Web Technology     This material is Open Knowledge    Valid XHTML + RDFa
This content was extracted from Wikipedia and is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License