Tag: magic numbers

避免魔术字符串和数字

我正在研究过去几年由各种程序员编辑过的应用程序,我偶然发现了使用String Literals访问MenuItems的问题。 例如:在很多地方都有类似的代码 mainMenu.MenuItems[1].MenuItems[0].Visible=true; 要么 mainMenu.MenuItems[“View”].MenuItems[“FullScreen”].Visible=true; 如何更改用于标识MenuItem的字符串并捕获它用于访问的所有位置? 菜单和菜单项被声明为公共,并在整个大型应用程序中使用 什么是防止使用这些魔术索引的正确方法。 每次添加新项目或更改名称时,我都会预测会被破坏。 PS我已经开始使用枚举字典方法,其中每个menuItem都与一个键配对。 但这仍然不会强迫其他开发人员使用我的实现,也不是问题2的最优雅的解决方案