نوعدهی قوی و ضعیف
From Wikipedia, the free encyclopedia
در برنامهنویسی رایانهای، زبانهای برنامهنویسی معمولاً به صورت محاورهای به دو نوع، بر اساس آنکه «سیستم نوع زبان» نوعدهی قوی یا نوعدهی نیرومند (به انگلیسی: strongly typed)،و نوعدهی ضعیف یا نوعدهی کمزور (به انگلیسی: weakly typed) (نوع دهی سست (به انگلیسی: loosely typed)) باشد، طبقهبندی میشود.[1]
معمولاً یک زبان نوعدار نیرومند، دارای قواعد نوع دهی سختگیرانهتری در زمان کامپایل میباشند که به معنی ضمنی آن است که خطاها و استثناها به احتمال بیشتر در مدت کامپایل رخ میدهند. زبانهای نوعدهی پویا (که در آن بررسی نوع در زمان اجرا رخ میدهد) نیز میتوانند نوع دهی نیرومند باشند. بیشتر این قواعد روی انتساب متغیرها تأثیر میگذارند، همچنین قواعد میتوانند روی مقادیر برگردانده شده و فراخوانی تابع تأثیر بگذارند.[1]
یک زبان نوع دهی کمزور قواعد نوع دهی سستتری دارد، و میتواند نتایج غیرقابل پیشبینی ایجاد کند، یا میتواند تبدیل نوع ضمنی در زمان اجرا انجام دهد.[2] یک مفهوم مرتبط اما متفاوت «نوعدهی پنهان» است.[1]