1

Почему такие программы, как Microsoft Excel, Gnumeric и OpenOffice.org Calc, разработаны с жестко заданными ограничениями на количество строк и столбцов? Это похоже на архаичный метод программирования, когда электронные таблицы считались требовательным приложением, а динамическое распределение памяти считалось «high-end». Я бы предположил, что это указывает на то, что какой-то ресурс статически распределяется, с предположением, что «никто больше никогда не понадобится больше», таким образом вводя очень произвольное ограничение в приложение. Какова его логика?Почему в большинстве таблиц содержится жестко закодированное ограничение на количество строк и столбцов?

Примечание: Я знаю, что некоторые люди будут утверждать, что этот вопрос не связан с программированием. Вот превентивное опровержение: этот вопрос связан с программированием, потому что он спрашивает, почему используется повсеместная и, казалось бы, устаревшая методология программирования.

ответ

2

Первоначальная причина заключалась в производительности и пространстве, поскольку (например) обработка 65536 строк требует только двух байтов. Эти исторические причины ушли с Office 2007 (если не остальные), поэтому ваш вопрос также устарел.

+3

Не совсем верно. Они на самом деле не ушли, они просто стали больше. Предел теперь составляет 1048576 (2^20) строк. –

+0

@John Feminella: Точно моя точка. Да, это больший предел, но он по-прежнему является произвольным жестким ограничением. – dsimcha

+0

@dsimcha: вы действительно думаете, что электронная таблица является правильным инструментом для обработки наборов данных на 100 миллионов строк? с таким типом вселенной, почему бы не использовать настоящую базу данных и sql? – kloucks

1

Потому что проще справляться со ссылками на ячейки как пара индексов, и у них есть предел?

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

0

Следующая Gnumeric версия позволит значительно увеличить листы, до 8M строк и 8k столбцов. Просто, если вам действительно нужны такие большие листы, купите несколько TBytes ОЗУ.

0

В записи записи бикса Excel97 столбец хранится как 0xff, строка хранится как 0xFFFF numner. Таким образом, он ограничивает количество столбцов до 255 и строку до 65535, если вы хотите сохранить больше строк/столбцов в Excel2003 (если это поддержка в среде IDE), она не будет сохранена.