💡 Инструкция: Выберите один ответ из пяти. На тест отведено 85 минут; после ответа можно открыть объяснение.
Вопрос 6 из 30
Раздел «Аллокации»: какой разбор этого кода останется точным после переименования переменных?
Visual Basic / VB.NET Visual Basic · Производительность .NET-приложения Копировать
Module Demo
Function BuildLines(values As IEnumerable(Of Integer)) As String
Dim builder = New Text.StringBuilder()
For Each value In values
builder.Append(value).AppendLine()
Next
Return builder.ToString()
End Function
End Module
Разбор фрагмента: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Разбор фрагмента: аллокации не оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Разбор фрагмента: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле не повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Разбор фрагмента: при работе с Аллокации нарушение «Аллокации оценивают по частоте и времени жизни» не меняет результат, если выполняется «временные массивы, строки и замыкания в горячем цикле повышают давление на GC».
Разбор фрагмента: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ не создаёт более тяжёлую проблему.
Вопрос 7 из 30
Раздел «Аллокации»: какая претензия к возможной правке относится к поведению программы?
Visual Basic / VB.NET Visual Basic · Производительность .NET-приложения Копировать
Option Strict On
Namespace ReviewCase25_2
Module Demo
Function BuildLines(reviewValues As IEnumerable(Of Integer)) As String
Dim reviewBuilder = New Text.StringBuilder()
For Each value In reviewValues
reviewBuilder.Append(value).AppendLine()
Next
Return reviewBuilder.ToString()
End Function
End Module
End Namespace
Не менять условие: при работе с Аллокации нарушение «Аллокации оценивают по частоте и времени жизни» не меняет результат, если выполняется «временные массивы, строки и замыкания в горячем цикле повышают давление на GC».
Не менять условие: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле не повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Не менять условие: аллокации не оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Не менять условие: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Не менять условие: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ не создаёт более тяжёлую проблему.
Вопрос 8 из 30
Раздел «Аллокации»: для участка с BuildLines нужен отрицательный тест. Какой контракт стоит проверить, меняя только одно условие?
Visual Basic / VB.NET Visual Basic · Производительность .NET-приложения Копировать
Option Explicit On
Option Infer On
Namespace BoundaryCase25_2
Module Demo
Function BuildLines(edgeValues As IEnumerable(Of Integer)) As String
Dim edgeBuilder = New Text.StringBuilder()
For Each value In edgeValues
edgeBuilder.Append(value).AppendLine()
Next
Return edgeBuilder.ToString()
End Function
End Module
End Namespace
Зафиксировать ожидаемое поведение: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле не повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Зафиксировать ожидаемое поведение: аллокации не оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Зафиксировать ожидаемое поведение: при работе с Аллокации нарушение «Аллокации оценивают по частоте и времени жизни» не меняет результат, если выполняется «временные массивы, строки и замыкания в горячем цикле повышают давление на GC».
Зафиксировать ожидаемое поведение: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Зафиксировать ожидаемое поведение: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ не создаёт более тяжёлую проблему.
Вопрос 9 из 30
Раздел «Аллокации»: что стоит закрепить в коде и тестах, а не прикрывать общим обработчиком?
Закрепить рабочее решение: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле не повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Закрепить рабочее решение: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Закрепить рабочее решение: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ не создаёт более тяжёлую проблему.
Закрепить рабочее решение: при работе с Аллокации нарушение «Аллокации оценивают по частоте и времени жизни» не меняет результат, если выполняется «временные массивы, строки и замыкания в горячем цикле повышают давление на GC».
Закрепить рабочее решение: аллокации не оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Вопрос 10 из 30
Раздел «Аллокации»: какое обобщение не зависит от случайных деталей показанного примера?
Надёжное обобщение: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ не создаёт более тяжёлую проблему.
Надёжное обобщение: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле не повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Надёжное обобщение: аллокации не оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Надёжное обобщение: аллокации оценивают по частоте и времени жизни; временные массивы, строки и замыкания в горячем цикле повышают давление на GC, но кэш без границ создаёт более тяжёлую проблему.
Надёжное обобщение: при работе с Аллокации нарушение «Аллокации оценивают по частоте и времени жизни» не меняет результат, если выполняется «временные массивы, строки и замыкания в горячем цикле повышают давление на GC».
Вопрос 21 из 30
Раздел «Риски безопасности»: код использует FastRead. Какой вывод останется верным при других допустимых входных данных?
Visual Basic / VB.NET Visual Basic · Производительность .NET-приложения Копировать
Module Demo
Function FastRead(path As String, user As User) As String
Authorization.RequireRead(user, path)
PathPolicy.Validate(path)
Return File.ReadAllText(path)
End Function
End Module
Контракт кода: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение не должно учитывать и время безопасной ветви, и риск нового обхода.
Контракт кода: нарушение условия «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» допустимо, если тест подтверждает «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Контракт кода: достаточно выполнить одно из двух условий: «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» или «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Контракт кода: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать и время безопасной ветви, и риск нового обхода.
Контракт кода: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать только время быстрой ветви, а риск нового обхода можно оценить отдельно.
Вопрос 22 из 30
Раздел «Риски безопасности»: какая претензия к возможной правке относится к поведению программы?
Visual Basic / VB.NET Visual Basic · Производительность .NET-приложения Копировать
Option Strict On
Namespace ReviewCase25_5
Module Demo
Function FastRead(reviewPath As String, reviewUser As User) As String
Authorization.RequireRead(reviewUser, reviewPath)
PathPolicy.Validate(reviewPath)
Return File.ReadAllText(reviewPath)
End Function
End Module
End Namespace
Проверить перед объединением: нарушение условия «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» допустимо, если тест подтверждает «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Проверить перед объединением: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение не должно учитывать и время безопасной ветви, и риск нового обхода.
Проверить перед объединением: достаточно выполнить одно из двух условий: «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» или «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Проверить перед объединением: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать только время быстрой ветви, а риск нового обхода можно оценить отдельно.
Проверить перед объединением: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать и время безопасной ветви, и риск нового обхода.
Вопрос 23 из 30
Раздел «Риски безопасности»: какой результат следует зафиксировать до запуска отрицательного сценария?
Visual Basic / VB.NET Visual Basic · Производительность .NET-приложения Копировать
Option Explicit On
Option Infer On
Namespace BoundaryCase25_5
Module Demo
Function FastRead(edgePath As String, edgeUser As User) As String
Authorization.RequireRead(edgeUser, edgePath)
PathPolicy.Validate(edgePath)
Return File.ReadAllText(edgePath)
End Function
End Module
End Namespace
Закрепить тестом: нарушение условия «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» допустимо, если тест подтверждает «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Закрепить тестом: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать только время быстрой ветви, а риск нового обхода можно оценить отдельно.
Закрепить тестом: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать и время безопасной ветви, и риск нового обхода.
Закрепить тестом: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение не должно учитывать и время безопасной ветви, и риск нового обхода.
Закрепить тестом: достаточно выполнить одно из двух условий: «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» или «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Вопрос 24 из 30
Раздел «Риски безопасности»: что стоит закрепить в коде и тестах, а не прикрывать общим обработчиком?
Сделать явным правилом модуля: достаточно выполнить одно из двух условий: «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» или «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Сделать явным правилом модуля: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать только время быстрой ветви, а риск нового обхода можно оценить отдельно.
Сделать явным правилом модуля: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать и время безопасной ветви, и риск нового обхода.
Сделать явным правилом модуля: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение не должно учитывать и время безопасной ветви, и риск нового обхода.
Сделать явным правилом модуля: нарушение условия «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» допустимо, если тест подтверждает «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Вопрос 25 из 30
Какое утверждение точнее отделяет «Риски безопасности» от соседних механизмов?
Рабочее правило: достаточно выполнить одно из двух условий: «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» или «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Рабочее правило: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать и время безопасной ветви, и риск нового обхода.
Рабочее правило: нарушение условия «Ускорение не оправдывает отключение проверок длины, прав доступа или сертификата» допустимо, если тест подтверждает «измерение должно учитывать и время безопасной ветви, и риск нового обхода».
Рабочее правило: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение не должно учитывать и время безопасной ветви, и риск нового обхода.
Рабочее правило: ускорение не оправдывает отключение проверок длины, прав доступа или сертификата; измерение должно учитывать только время быстрой ветви, а риск нового обхода можно оценить отдельно.