نامتغیر ها کدامند ؟ توضیح دهید.
نامتغیر ها کدامند ؟ توضیح دهید.
بعضی از لیستها ”خوشفرم“ هستند و برخی دیگر نه. براي مثال اگر لیستی شامل یـک حلقـه باشد، منجر به خراب شدن بسیاري از متدهاي ما میشود. بنابراین ممکن است بخواهیم که لیسـتهـا شامل هیچ حلقهاي نباشند. نیاز دیگر ما این است که مقدار length در شـیء LinkedList بایـد برابر با تعداد واقعی گرهها در لیست باشد. نیازمنديهایی همچون اینها نامتغیر نامیده میشوند، زیرا در شرایط مطلوب آنها باید براي هـر شیء تمام مدت درست باشند. مشخص کردن نامتغیرها براي اشیاء یک تمرین برنامهنویسی مفید است، زیرا آنها درستی کد برنامه را ثابت میکنند، صحت ساختمانهاي داده را بررسی مـیکننـد و خطاهـا را شناسایی مینمایند. چیزي که گاهی اوقات دربارة نامتغیرها گیجکننده است، این است که زمانهایی وجود دارد کـه آنها مختل میشوند. براي مثال در وسط addFirst بعد از اینکه ما گرهی را اضافه کـردیم و قبـل از اینکه length را افزایش دهیم، نامتغیر مختل شده است. این نوع اختلال پـذیرفتنی اسـت؛ در واقـع اغلب اوقات، تغییر یک شیء بدون اینکه نامتغیر حتی براي مدت کوتاهی تغییر کند، غیـرممکن اسـت. به طور معمول لازم است هر متدي که نامتغیر را مختل میکند دوباره آن را به حال اول برگرداند.
برای اموزش های ویدیویی زبان پایتون به بستر ویدیو های اموزشی بروید