Программная инженерия

Q & A для профессионалов, преподавателей и студентов, работающих в жизненном цикле разработки систем

14
Почему механизм предотвращения SQL-инъекций развивался в направлении использования параметризованных запросов?
На мой взгляд, атаки с использованием SQL-инъекций можно предотвратить с помощью: Тщательный скрининг, фильтрация, кодирование ввода (перед вставкой в ​​SQL) Использование подготовленных операторов / параметризованных запросов Я предполагаю, что у каждого есть свои плюсы и минусы, но почему №2 взлетел и стал более или менее де-факто способом предотвращения инъекционных атак? …

10
Лучше Show () + Hide () или SetVisible (bool видимый)?
Что лучше и почему? (С точки зрения дизайна интерфейса): а) иметь два Show()и Hide()функции б) иметь одну SetVisible(bool visible)функцию РЕДАКТИРОВАТЬ: Например, некоторые объекты имеют состояние видимости, и эта функция используется для его изменения. в) иметь все три Show(), Hide(), SetVisible(bool visible)функции
59 java  c++  interfaces 

3
Как зовут ** в Python?
При программировании на Python я иногда делаю **конверсию. Я понимаю, что он делает, но какими структурами данных я манипулирую? А dictкакой другой? array? Есть ли название для **оператора?

24
Как я могу объяснить разницу между NULL и нулем?
Работа над проблемой, которая использует формулу процентного изменения: percent change = 100 * [(new value - old value) / old value] Как бы я объяснил разницу new value or old value = NULL, а не 0тому, кто не может быть программистом? Моему боссу интересно, почему в TextBox есть пустая строка, …
59 null  tsql 

12
Должен ли я повторно использовать переменные?
Должен ли я повторно использовать переменные? Я знаю, что многие лучшие практики говорят, что вы не должны этого делать, однако позже, когда другой разработчик отлаживает код и имеет 3 одинаковые переменные, и единственное отличие состоит в том, что они создаются в разных местах кода, он может смущенный. Модульное тестирование является …

11
Когда совершать код?
При работе над проектом код может быть разработан достаточно быстро в течение одного дня или по крупицам в течение длительного периода в несколько недель / месяцев / лет. Поскольку коммиты кода начинают рассматриваться как мера разработки проекта, это вовсе не означает, что в них написано больше кода, чем в проекте …

15
Насколько важна многопоточность в современной индустрии программного обеспечения? [закрыто]
У меня почти 3 года опыта написания веб-приложений на Java с использованием MVC-фреймворков (например, Struts). До сих пор я никогда не писал многопоточный код, хотя я написал код для крупных розничных сетей. Я получаю несколько вопросов о многопоточности во время интервью и отвечаю на них обычно (в основном простые вопросы). …

13
Философия, лежащая в основе неопределенного поведения
Спецификации C \ C ++ оставляют большое количество вариантов поведения, открытых для компиляторов, чтобы реализовать их по-своему. Есть ряд вопросов, которые постоянно задают здесь о том же самом, и у нас есть несколько отличных постов об этом: https://stackoverflow.com/questions/367633/what-are-all-the-common-undefined-behaviour-that-ac-programmer-should-know-abo https://stackoverflow.com/questions/4105120/what-is-undefined-behavior https://stackoverflow.com/questions/4176328/undefined-behavior-and-sequence-points Мой вопрос не о том, что такое неопределенное поведение, или …

12
Как работают компьютеры? [закрыто]
Это почти неловко спрашивать ... У меня есть степень в области компьютерных наук (и вторая в процессе). Я работаю постоянным разработчиком .NET почти пять лет. Я вообще, кажется, компетентен в том, что я делаю. Но я не знаю, как работают компьютеры! Пожалуйста, держись со мной на секунду. Быстрый Google «Как …

8
Почему люди отключают JavaScript?
Я задал вопрос вчера Должен ли я заниматься разработкой для JavaScript отключен? , Я думаю, что согласие таково: да, я должен разработать для JavaScript отключен. Теперь я просто хочу понять, почему пользователи отключают JS. Кажется, многие разработчики (я думаю, люди, которые ответили на вопросы, являются разработчиками) отключают JS. Почему это. …

17
Зачем использовать ОО-подход вместо гигантского «переключателя»?
Я работаю в .Net, C # shop, и у меня есть коллега, который настаивает на том, чтобы мы использовали гигантские операторы Switch в нашем коде с большим количеством «падежей», а не с более объектно-ориентированными подходами. Его аргумент последовательно восходит к тому факту, что оператор Switch компилируется в «таблицу переходов процессора» …

25
Насколько велика команда, которая вам нужна для отслеживания ошибок? [закрыто]
Моя команда разработчиков только выросла на 100% (с 1 разработчика до 2). Моя новая группа хочет инвестировать в программное обеспечение для отслеживания ошибок. Есть ли преимущества такого программного обеспечения для такой маленькой команды?

3
Каковы самые большие различия между F # и Scala?
F # и Scala являются языками функционального программирования, которые не заставляют разработчика использовать только неизменяемые типы данных. Они оба поддерживают объекты, могут использовать библиотеки, написанные на других языках, и работать на виртуальной машине. Оба языка основаны на ML. Каковы самые большие различия между F # и Scala, несмотря на то, …

19
Что отличает исключительных программистов от действительно хороших? [закрыто]
Ты знаешь кто они. Они рок-звезды программирования: Они кодируют в 10 раз быстрее. Их код просто работает. Они не только знают свой основной язык внутри и снаружи, но также знают, как он работает под капотом. Они знают ответ на большинство вопросов, прежде чем вы его зададите. Некоторые из них изобрели …

17
Одно утверждение, если блок - фигурные скобки или нет? [закрыто]
Что лучше / более общепринятым? Этот: if(condition) { statement; } Или же: if(condition) statement; Я предпочитаю первый, потому что я думаю, что он упрощает определение того, что на самом деле принадлежит блоку if, он спасает других от добавления фигурных скобок позже (или создания ошибки, забыв), и делает все ваши операторы …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.