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

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

2
Какова цель NaN бокса?
Чтение 21-го века C Я пришел к главе 6 в разделе «Маркировка исключительных числовых значений с помощью NaN» , где объясняется использование битов в мантиссе для хранения некоторых произвольных битовых комбинаций, для их использования в качестве маркеров или указателей (упоминается в книге что WebKit использует эту технику). Я не совсем …

5
Почему Java не делает вывод типов?
Я всегда удивлялся, почему Java не делает вывод типов, учитывая, что язык такой, какой он есть, и его виртуальная машина очень зрелая. Google Go - это пример языка с превосходным выводом типов, который уменьшает количество набираемых текстов. Есть ли какая-то особая причина того, что эта функция не является частью Java?

4
Прощение Python против Разрешения и Утиной Печати
В Python я часто слышу, что лучше «просить прощения» (перехват исключений), а не «спрашивать разрешение» (проверка типа / условия). Что касается принудительного набора утки в Python, это try: x = foo.bar except AttributeError: pass else: do(x) лучше или хуже чем if hasattr(foo, "bar"): do(foo.bar) else: pass с точки зрения производительности, …

3
Где разместить бизнес-логику в дизайне MVC?
Я создал простое Java-приложение MVC, которое добавляет записи через формы данных в базу данных. Мое приложение собирает данные, проверяет и сохраняет их. Это связано с тем, что данные поступают онлайн от разных пользователей. данные в основном числовые по своей природе. Теперь, когда числовые данные хранятся в базе данных (сервер SQL), …

4
Должен ли сопровождающий github переписать автора в запросах на получение доступа?
Я не программист по профессии, но я немного программирую и использую github. Я столкнулся с неожиданной ситуацией. Я очень знаком с Git. Есть проект, в котором я обнаружил (маленькую) ошибку, которая меня затронула. Я провел день, находя и исправляя это. Я раздвоил репозиторий, зафиксировал изменение и выдал запрос на удаление. …
44 git  github 

6
Является ли инициализация char [] строковым литералом плохой практикой?
Я читал тему под названием «strlen vs sizeof» на CodeGuru , и в одном из ответов говорится, что «в любом случае [так] плохая практика - инициализировать [sic] charмассив со строковым литералом». Это правда или это только его (хотя и "элитный член") мнение? Вот оригинальный вопрос: #include <stdio.h> #include<string.h> main() { …

10
Является ли написание программного обеспечения при отсутствии требований навыком или ситуацией, которую мне следует избегать?
Я нахожу, что некоторые разработчики программного обеспечения очень искусны в этом, и часто хвалят за способность представить работающую концепцию с абстрактными требованиями. Честно говоря, это сводит меня с ума, и я не люблю «придумывать» на ходу. Раньше я думал, что это проблематично, но я начал ощущать сдвиг, и мне интересно, …

7
Как я могу оценить знания кандидата в области HTML / CSS во время интервью? [закрыто]
Я пытаюсь определить несколько хороших вопросов для интервью, чтобы оценить способность людей приходить на работу по HTML / CSS, однако эта тема чрезвычайно широка, и я не уверен, какие вопросы я могу задать, чтобы правильно оценить чей-то HTML / Знание CSS. Какие вопросы я могу задать, чтобы оценить способности кандидата …

15
Плохо ли называть неиспользуемую переменную одним подчеркиванием?
Часто, когда синтаксис языка требует, чтобы я назвал переменную, которая никогда не используется, я назову ее _. На мой взгляд, это уменьшает беспорядок и позволяет мне сосредоточиться на значимых переменных в коде. Я нахожу это ненавязчивым, так что он производит эффект «с глаз долой, с ума». Типичным примером того, где …

15
Как языки повлияли на дизайн процессора? [закрыто]
Нам часто говорят, что аппаратному обеспечению не важно, на каком языке написана программа, поскольку оно видит только скомпилированный двоичный код, однако это не вся правда. Например, рассмотрим скромный Z80; его расширения к набору команд 8080 включают в себя такие инструкции, как CPIR, которые полезны для сканирования строк в стиле C …

1
Что такое неуправляемая ошибка?
Я студент, изучающий информатику. Когда я пытался сообщать об ошибках в нескольких проектах, я часто сталкивался с классификацией без изменений . Веб-поиск не совсем объяснил, что это значит. Не могли бы вы сказать мне, что такое неуправляемая ошибка?

13
Шаблоны дизайна - вы их используете?
Будучи студентом IT, один из наших преподавателей недавно дал мне некоторое представление о шаблонах проектирования. Я понял, для чего они, но некоторые аспекты все еще продолжают беспокоить меня. Они действительно используются большинством программистов? Говоря об опыте, у меня были некоторые проблемы при программировании, вещи, которые я не мог решить некоторое …

12
Какие методы помогают сохранить знания программирования? [закрыто]
Как вы помните программирование связанных вещей? Было ли у вас ощущение, что вы столкнулись с ошибкой, которая была у вас до этого прямо сейчас, несколько лет назад, и вы могли поклясться, что знали причину тогда, но теперь вы ее забыли? Работали ли вы с разбором строки xsl некоторое время назад, …


17
Является ли хорошей практикой называть возвращаемую переменную «результатом»? [закрыто]
Является ли хорошей практикой вызывать переменную, возвращаемую методом с именем переменной result? Например: public Zorglub calculate() { Zorglub result = [...] [...] return result; } Или я должен назвать его по типу? public Zorglub calculate() { Zorglub zorglub = [...] [...] return zorglub; } Я видел как в дикой природе, …

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