2010-12-10 4 views
1

Какое максимальное число? Повреждает ли моя программа, если она превышает определенный номер? Есть ли такой стандарт, как 5 для параметров метода?Максимальное количество переменных в классах

+8

Его 37. После этого ваша программа воспроизводится в обратном направлении, и вы слышите Led Zeppelin. –

+0

Забавный !!!!!!!!!!! – javaguy

+0

Где я могу получить копию этого стандарта? Тот, который говорит, что вы должны использовать максимум 5 параметров в ваших методах. –

ответ

9

Ответ на такой вопрос будет зависеть от языка, который вы используете, но, вообще говоря, нет никакого ограничения на количество переменных или параметров метода.

является колпачком на объем данных, который вы можете обрабатывать, и это объем памяти, доступный вашей системе, но это ограничение на размер фактических данных, хранящихся в переменных.

Не рекомендуется использовать большое количество переменных или методов внутри класса, потому что ваш код может стать незавершенным очень быстро. Это связано с Single Responsibility Principle: ваш класс должен нести ответственность за одну вещь, и только одно, и что одна вещь редко нуждается в том, чтобы многие переменные точно отображали ее состояние. В случае, если это так, используйте Object Composition: определите небольшие структуры, которые возникли внутри класса и разбивают их на более мелкие классы, а затем добавляют ссылки на объекты этих классов в исходный класс, эффективно создавая связь «имеет» между первоначальный класс и меньшие классы.

Например, автомобиль имеет двигатель:

class Car { 
    Engine engine; 
}; 
+4

+1 для напоминания о SRP. –

2

Это вряд ли будет проблемой. Хотя я бы предположил, что это зависит от языка, о котором вы говорите,

6

Ваш код станет нечитаемым задолго до того, как вы достигнете каких-либо жестких ограничений, установленных языком программирования, как для переменных, так и для параметров метода.

1

А почему бы вам не попробовать закодировать все свои программы только один файл, а только с одной функцией? :)

Потому что он не читается и не поддается контролю, поэтому он полон ошибок, и поэтому он не будет работать очень хорошо.

Это своего рода реальный предел числа переменных-членов да.

0

Несмотря на отсутствие жесткого ограничения, никогда не рекомендуется использовать большое количество переменных в параметрах класса или метода. В некоторых случаях для повторного использования можно использовать шаблон дизайна композиции или наследование. Последний должен использоваться экономно. Я бы редко использовал более 25 переменных в классе или 5 в параметрах метода.

Смежные вопросы