Стиль функционального программирования должен описать то, что Вы хотите, а не как получить его. т.е.: вместо того, чтобы создать для цикла с переменной итератора и идти через массив, делающий что-то к каждой ячейке, Вы сказали бы, что эквивалент "этой маркировки относится к версии этого массива, где эта функция была сделана на всех элементах".
Функциональное программирование перемещает более основные идеи программирования в компилятор, идеи, такие как понимания списка и кэширование.
самое большое преимущество Функционального программирования является краткостью, потому что код может быть более кратким. Функциональная программа не создает переменную итератора, чтобы быть центром цикла, таким образом, это и другие виды издержек устраняются из Вашего кода.
другое главное преимущество является параллелизмом, который легче сделать с функциональным программированием, потому что компилятор заботится о большинстве операций, которые раньше требовали вручную устанавливающих переменных работоспособного состояния (как итератор в цикле).
Некоторые выигрыши в производительности видны в контексте однопроцессорного также, в зависимости от способа, которым записана программа, потому что большинство функциональных языков и расширений поддерживают отложенные вычисления. В Haskell можно сказать, что "эта маркировка представляет массив, содержащий все четные числа". Такой массив является бесконечно большим, но можно попросить 100,000-й элемент того массива в любой момент, не имея необходимость знать - во время инициализации массива - что самое большое значение, Вы собираетесь нуждаться. Значение будет вычислено только при необходимости в нем, и не далее.
Для Firefox (любая версия > 2.0) используйте Firebug .
Расширение Speed Tracer для Google Chrome выглядит чрезвычайно полезным.
Для Firefox 3.5 используйте Firebug. Для IE8 используйте Инструменты разработчика
Для отладки ничто не может сравниться с firefox: firebug
и для IE, если однажды в синюю луну я использую IE, я использую, Панель инструментов разработчика Internet Explorer
В Internet Explorer или других браузерах, кроме FireFox:
Для IE: либо Инструменты разработчика, включенные в IE 8, либо Панель инструментов разработчика .
Firebug по-прежнему имеет самые продвинутые функции, но другие их догоняют.
Firebug / Firebug lite, конечно :) JS-консоль Google Chrome тоже очень хороша
Я предлагаю использовать DIV
с id = "debug"
, а затем добавить к нему текст для отладки. Это позволяет накладывать HTML-код на вывод отладки и не блокирует поток приложения. Используйте z-index
, чтобы убедиться, что он остается наверху, и придать ему прозрачность, чтобы вы могли видеть сквозь него. См. этот ответ для CSS.
Или откройте новое окно и добавьте туда свои отладочные сообщения.
Вы можете использовать это с вложенными DIV
, чтобы реализовать полноценное ведение журнала. Взгляните на эту статью на A List Apart и на log4js , чтобы получить некоторые идеи.
Использование Firefox, в дополнение к Firebug (как многие упоминали ранее), я нахожу отладчик JavaScript Mozilla Venkman довольно удобным время от времени.
Серия стратегически расположенных вызовов функции window.alert удобна в крайнем случае. Если есть возможность, я стараюсь использовать Firebug Lite.