Re: Качество кода open-source
От: Cyberax Марс  
Дата: 22.05.08 16:14
Оценка: 5 (2)
Здравствуйте, Lonely Dog, Вы писали:

LD>Т.е., пришли в функцию, что-то сделали, и вышли, сохранив номер строки из которой мы вышли. В следующий раз мы продолжим выполнение с этого же места. Этот код не компилируется в студии если установлен режим сохранения отладочной информации Edit and continue. Выводится ошибка "case label not a constant" или типа того. Меняем эту настройу на что-нибудь другое, и все работает.

LD>Как это поддерживать? Какой смысл в открытости кода, если поддерживать его могут только авторы?
Нормально его поддерживают. Я вот Putty на GTK2 под Линукс помог перенести, сейчас пакет делаю (https://launchpad.net/putty2).

LD>2. В файле window.c приведена функция TranslateKey длиной в 800 строк! Это же убиться можно.

LD>3. Мой любимый пример. Функция term_out из файла terminal.c. Она занимает 1830 строк. Там реализован какой-то офигенный конечный автомат. С какими-то вложенными состояниями и метками case вида:
Используется подход с С coroutines, описаный вот здесь: http://www.chiark.greenend.org.uk/~sgtatham/coroutines.html

Об этом, кстати, в их доке по разработке сказано.

LD>4. Также советую посмотреть на то, какое количество статических и глобальных переменных используется в этом коде.

Об этом там тоже сказано.
Sapienti sat!
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.