Skip to content
EntityQ1754278· pop 17· linked from 53 articles

شفافية مرجعية

Sign in to save

property of a computer software expression or subroutine that replacing it in the code with its evaluated result does not change the program's behavior

Wikidata facts

Instance of
quality
Show 2 more facts
facet of
substitution
characteristic of
source code
Sources (1)

via Wikidata · CC0

Article · العربية

يشير كلا المصطلحين: الشفافية المرجعية (بالإنجليزية: Referential transparency)‏ و العتامة المرجعية (بالإنجليزية: referential opaqueness)‏ إلى خصائصٍ لأجزاءٍ من برمجيات الحاسوب. حيث يُقال أن (بالإنجليزية: Expression (computer science))‏ شفافٌ مرجعياً إن أُمْكِنَ استبداله (بالإنجليزية: Value (computer science))‏ بدون تغيير البرنامج (بصيغةٍ أخرى، إنتاج برنامج له نفس تأثيرات ومخرجات على نفس المدخل). في حين يعتبر النقيض لتلك العملية تعبيراً يُطلق عليه «عاتم مرجعياً». وبينما تكون كل تطبيقات الدوال الوظيفية في الرياضيات شفافةً مرجعياً، ففي برمجيات الحاسوب ليس الوضع هكذا دائماً. فأهمية الشفافية تتمثل في أنها تسمح للمبرمج والمترجم (المصرف) بتعليل وتبرير سلوك أداء برنامجٍ ما. وقد يساعد هذا في إثبات (بالإنجليزية: Correctness (computer science))‏، تبسيط الخوارزميات، المساعدة في تعديل الكود بدون كسره وتدميره، أو مواءمة الكود باستخدام وسائل التوازي أو إزالة التعابير الفرعية الشائعة (بالإنجليزية: common subexpression elimination)‏. مما يجعل الشفافية المرجعية أحد مباديء البرمجة الوظيفية؛ حيث لا تتحول سوى الوظائف شفافة أو جلية المرجعية فقط إلى وظائفٍ مكافئةٍ أو مماثلةٍ تخبيء النتائج. فبعض لغات البرمجة توفِّر وسيلةً لضمان الشفافية المرجعية. في حين تُلزم بعض لغات البرمجة الوظيفية وجود الشفافية المرجعية لكل الوظائف جميعها. وبسبب أن الشفافية المرجعية تتطلب نفس النتائج لمجموعةٍ متاحةٍ من المدخلات في أي نقطةٍ زمنيةٍ، فنتيجةً لذلك يصبح التعبير الجلي أو الشفاف مرجعياً قطعي التعريف.

Abstract from DBpedia / Wikipedia · CC BY-SA