Модераторы: Daevaorn

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Объем класса в строках кода 
:(
    Опции темы
 
Сколько строк как максимум должен занимать класс?
1-100 [ 6 ]  [19.35%]
100-500 [ 5 ]  [16.13%]
500-1000 [ 4 ]  [12.90%]
1000-3000 [ 2 ]  [6.45%]
3000-5000 [ 1 ]  [3.23%]
5000-10000 [ 3 ]  [9.68%]
10000-20000 [ 1 ]  [3.23%]
20000-50000 [ 1 ]  [3.23%]
50000-100000 [ 1 ]  [3.23%]
>100000 [ 7 ]  [22.58%]
Всего проголосовавших: 19
В этом опросе возможны множественные ответы
Гости не могут голосовать 
ZZZkoderZZZ
Дата 16.3.2013, 23:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 54
Регистрация: 11.3.2013

Репутация: нет
Всего: -2



Есть общепринятое мнение, что размер метода должен быть не более 100 строк. А есть ли подобное ограничение для объема класса?
Подразумевается объем заголовка класса (объявление переменных и методов без их реализации). Файл реализации следовательно может быть в 100 раз больше.

Это сообщение отредактировал(а) ZZZkoderZZZ - 17.3.2013, 16:45
PM MAIL   Вверх
bsa
Дата 17.3.2013, 00:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



Есть - разумное проектирование. Класс который не делает все на свете в принципе не может быть очень большим. А если он таковым становится, то это повод задуматься о его делении и инкапсуляции.
PM   Вверх
VSB
Дата 17.3.2013, 00:23 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 113
Регистрация: 23.8.2007

Репутация: 1
Всего: 2



Но если класс - обертка над API (привет, MFC) то ничего не поделаешь...
PM MAIL   Вверх
bsa
Дата 17.3.2013, 00:25 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 9185
Регистрация: 6.4.2006
Где: Москва, Россия

Репутация: 63
Всего: 196



VSB, ты считаешь, что 100 методов - это нормально?
PM   Вверх
borisbn
Дата 17.3.2013, 10:46 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



Человек, ответивший >100000, выйди из сумрака! Кто ты?


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
feodorv
Дата 17.3.2013, 14:05 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 11
Всего: 45



Цитата(borisbn @  17.3.2013,  11:46 Найти цитируемый пост)
Человек, ответивший >100000, выйди из сумрака! Кто ты?

Я!
А что Вы хотите? Какой вопрос, такой и ответ:
Цитата(ZZZkoderZZZ @  17.3.2013,  00:47 Найти цитируемый пост)
Сколько строк как максимум должен занимать класс?

Насколько я знаю, никаких ограничений на данный момент не существует.
Другое дело, если бы вопрос формулировался так:
Цитата

Как вы считаете, каким разумным количеством строк стоит ограничиться при проектировании класса?

И то, сам класс может занимать 10% от объёма кода, остальное - подробное описание: комментарии учитывать? Пустые строки? Оформление кода? Где пункт: "зависит от задачи"?
10000 строк кода на один класс - не так уж и много для некоторых задач. При этом описание класса вполне может занимать < 500 строк. И как отвечать при этом: 100-500 или 5000-10000?

Цитата(VSB @  17.3.2013,  01:23 Найти цитируемый пост)
Но если класс - обертка над API (привет, MFC) то ничего не поделаешь... 

Я вот себе представил стартовый код какой-нибудь новой суперобъектной версии MS Windows 2050:
Код

#include <mswindows>

int main( void )
{
  MSWindows win;
  return win.run();
}

Будут там себя ограничивать разработчики или нет, никто не знает... 


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
ZZZkoderZZZ
Дата 17.3.2013, 16:47 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 54
Регистрация: 11.3.2013

Репутация: нет
Всего: -2



Цитата(feodorv @ 17.3.2013,  14:05)
Цитата(borisbn @  17.3.2013,  11:46 Найти цитируемый пост)
Человек, ответивший >100000, выйди из сумрака! Кто ты?

Я!
10000 строк кода на один класс - не так уж и много для некоторых задач.

Цитата

Подразумевается объем заголовка класса

10 тыс. может и не много, но вы же выбрали вариант 100 тысяч. Тогда реализация займет 10 млн. строк!

Это сообщение отредактировал(а) ZZZkoderZZZ - 17.3.2013, 16:49
PM MAIL   Вверх
feodorv
Дата 17.3.2013, 17:08 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Комодератор
Сообщений: 2214
Регистрация: 30.7.2011

Репутация: 11
Всего: 45



Цитата(ZZZkoderZZZ @  17.3.2013,  17:47 Найти цитируемый пост)
Подразумевается объем заголовка класса

Ок))) Прошу прощения, не заметил. Но всё равно, ограничений нет.

Добавлено через 2 минуты и 6 секунд
Кстати, последний ответ набирает обороты, что говорит о неправильном вопросе...


--------------------
Напильник, велосипед, грабли и костыли - основные инструменты программиста...
PM MAIL   Вверх
ZZZkoderZZZ
Дата 17.3.2013, 18:16 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 54
Регистрация: 11.3.2013

Репутация: нет
Всего: -2



Цитата
Ок))) Прошу прощения, не заметил.

это не ты не заметил, а я сегодня добавил, чтобы всем понятнее было smile 

Это сообщение отредактировал(а) ZZZkoderZZZ - 17.3.2013, 18:17
PM MAIL   Вверх
volatile
Дата 17.3.2013, 23:39 (ссылка) |    (голосов:2) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 2107
Регистрация: 7.1.2011

Репутация: 37
Всего: 85



feodorv,  smile 
Цитата(ZZZkoderZZZ @  16.3.2013,  23:47 Найти цитируемый пост)
Сколько строк как максимум должен занимать класс?

добавте пункт "ограничено свободным местом на жестком диске"

И ваще хватит идиотских вопросов.
можно делать всё. Единственное ограничение - здравый смысл, который должен быть.
А если его нет, то никакие запреты не помогут.

PM MAIL   Вверх
NoviceF
Дата 18.3.2013, 20:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 313
Регистрация: 13.3.2012
Где: Ростов-на-Дону

Репутация: нет
Всего: 2



Цитата(volatile @  18.3.2013,  00:39 Найти цитируемый пост)
добавте пункт "ограничено свободным местом на жестком диске"


вот сейчас могу не угадать, но вроде бы же должно быть ограничение на сегмент кода в ia-32 (ну или там x86-64)? В ia-16 точно было, причём сегмент кода был довольно небольшим и особо талантливым программистам давалось его переполнить smile

Это я к тому, что если данная проблема существует на относительно современных архитектурах, мы упрёмся в неё раньше, чем в объём жёсткого диска.
PM MAIL   Вверх
borisbn
Дата 18.3.2013, 21:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 4875
Регистрация: 6.2.2010
Где: Ростов-на-Дону

Репутация: 22
Всего: 135



> мы упрёмся в неё раньше, чем в объём жёсткого диска
Жёсткого диска может не быть вовсе

А вообще - согласен с отписАвшимися, что вопрос не корректен в принципе


--------------------
Женщины отличаются от программистов тем, что у них чары состоят из стрингов
PM MAIL Jabber   Вверх
mes
Дата 18.3.2013, 22:43 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


любитель
****


Профиль
Группа: Участник Клуба
Сообщений: 7954
Регистрация: 14.1.2006

Репутация: 144
Всего: 250



Цитата(NoviceF @  18.3.2013,  19:35 Найти цитируемый пост)
 вроде бы же должно быть ограничение на сегмент кода в ia-32

хм.. а какая разница в классе будут строки или вне его ?!


--------------------
PM MAIL WWW   Вверх
baldina
Дата 18.3.2013, 23:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Завсегдатай
Сообщений: 3433
Регистрация: 5.12.2007
Где: Москва

Репутация: 32
Всего: 101



ответил >100000. искал вариант 10e7, не нашел :-(
ведь это же 
Цитата(ZZZkoderZZZ @  16.3.2013,  23:47 Найти цитируемый пост)
общепринятое мнение


PM MAIL   Вверх
NoviceF
Дата 19.3.2013, 07:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 313
Регистрация: 13.3.2012
Где: Ростов-на-Дону

Репутация: нет
Всего: 2



Цитата(mes @  18.3.2013,  23:43 Найти цитируемый пост)
хм.. а какая разница в классе будут строки или вне его ?! 


да, впринципе, никакой. Мой вопрос просто про ограничения архитектуры, может кто в курсе smile
PM MAIL   Вверх
Ответ в темуСоздание новой темы Создание опроса
Правила форума "С++:Общие вопросы"
Earnest Daevaorn

Добро пожаловать!

  • Черновик стандарта C++ (за октябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика(4.4мб).
  • Черновик стандарта C (за сентябрь 2005) можно скачать с этого сайта. Прямая ссылка на файл черновика (3.4мб).
  • Прежде чем задать вопрос, прочтите это и/или это!
  • Здесь хранится весь мировой запас ссылок на документы, связанные с C++ :)
  • Не брезгуйте пользоваться тегами [code=cpp][/code].
  • Пожалуйста, не просите написать за вас программы в этом разделе - для этого существует "Центр Помощи".
  • C++ FAQ

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | C/C++: Общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.1120 ]   [ Использовано запросов: 24 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.