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

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

10
Почему Today () является примером нечистой функции?
Кажется, что, читая что-то вроде этой статьи в Википедии о «чистых функциях» , они приводят Today()в качестве примера нечистую функцию, но она кажется мне довольно чистой. Это потому, что нет формального входного аргумента? Почему фактическое время дня не рассматривается как «входные данные для функции», и в этом случае, если вы …

9
Управление памятью в программировании становится неактуальной проблемой?
История вопроса Я повторно посетил старый (но отличный) сайт, на котором я не был целую вечность - Alioth Language Shootout ( http://benchmarksgame.alioth.debian.org/ ). Я начал программировать на C / C ++ несколько лет назад, но с тех пор работал почти исключительно на Java из-за языковых ограничений в проектах, в которых …

4
Какими были «основные» пакеты API Java 1.0?
Читая о деле Google v Oracle, я столкнулся с этими вопросами (по-видимому, от председательствующего судьи) ... Согласны ли, что верно следующее, по крайней мере, с 1996 года? Ниже перечислены основные интерфейсы программирования приложений Java: java.lang, java.util и java.io. Относится ли язык программирования Java к каким-либо методам, классам или пакетам, кроме …
38 java  history 

5
Pass ID или объект?
При предоставлении метода бизнес-логики для получения объекта домена должен ли параметр принимать объект или идентификатор? Например, мы должны сделать это: public Foo GetItem(int id) {} или это: public Foo GetItem(Foo foo) {} Я верю в передачу объектов вокруг, в целом, но как насчет того случая, когда мы получаем объект, и …

12
Компилируемые современные альтернативы C / C ++ [закрыто]
Я подумываю написать новый программный продукт. Производительность будет иметь решающее значение, поэтому я опасаюсь использовать интерпретированный или язык или тот, который использует слой эмуляции (читай java). Что заставляет меня задуматься об использовании C (или C ++), однако оба они довольно длинные в зубе. Я не использовал ни один в течение …

2
Вы должны войти из кода библиотеки?
Если я разрабатываю библиотеку Java, будет ли хорошей практикой выдавать операторы журнала из кода библиотеки? Регистрация в библиотеке сделает отладку и устранение неполадок более прозрачной. Однако, с другой стороны, мне не нравится засорять мой библиотечный код инструкциями журналирования. Есть ли какие-либо последствия для производительности, которые следует учитывать?
38 java  logging 


4
Где мы должны поставить проверку для модели домена
Я все еще ищу лучшие практики для проверки модели предметной области. Это хорошо, чтобы поставить проверку в конструкторе модели предметной области? мой пример проверки модели домена выглядит следующим образом: public class Order { private readonly List<OrderLine> _lineItems; public virtual Customer Customer { get; private set; } public virtual DateTime OrderDate …

4
Почему скобки требуются для try-catch?
На разных языках (по крайней мере, на Java, подумайте также C #?) Вы можете делать такие вещи, как if( condition ) singleStatement; while( condition ) singleStatement; for( var; condition; increment ) singleStatement; Поэтому, когда у меня есть только одно утверждение, мне не нужно добавлять новую область с помощью { }. …

3
Обвинение сегодняшних бед в техническом долге вчера
Удивительное количество проблем с качеством, масштабируемостью и нагрузкой возникло в приложении, которое я в настоящее время поддерживаю и которое я изначально не писал. К счастью, у меня есть новые проекты, которые я делал с нуля, чтобы сохранить некоторое подобие моего здравомыслия. Первоначальная команда состояла из 20 разработчиков (большинство из них …
38 management 

5
Разработка на Java Python: какие концепции мне нужны, чтобы обернуть голову?
Предыстория: я пробежал несколько уроков и написал несколько небольших проектов. Все идет хорошо, используя Google и StackOverflow . Несколько раз за последние несколько дней я задавался вопросом: «Что мне не хватает?» - Я чувствую, что все еще думаю о Java, как я пишу на Python. Этот вопрос в StackOverflow полон …

5
Лучшие практики использования пространств имен в C ++ [закрыто]
Я прочитал « Чистый код» дяди Боба несколько месяцев назад, и это сильно повлияло на то, как я пишу код. Даже если бы казалось, что он повторяет вещи, которые должен знать каждый программист, объединение их всех и применение на практике приводит к гораздо более чистому коду. В частности, я обнаружил, …
38 design  c++  namespace 

10
WPF против WinForms - взгляд программиста на Delphi?
Я прочитал большинство основных тем, посвященных WPF и WinForms, и обнаружил, что застрял в неудачной амбивалентности, с которой вы можете столкнуться при выборе между проверенной и настоящей предыдущей технологией (Winforms) и ее преемником (WPF). Я многолетний программист на Delphi, который, наконец, делает прыжок на C #. Мои коллеги-программисты на Delphi …
38 c#  wpf  winforms  delphi  microsoft 

8
Можете ли вы порекомендовать хороший шаблон сообщения / рекомендации для обеспечения соблюдения в компании? [закрыто]
В Git можно установить и применить хороший шаблон коммита. Можете ли вы порекомендовать (желательно с аргументацией) хороший шаблон фиксации / руководящие принципы для применения в компании?

12
Являются ли устаревшие комментарии городским мифом?
Я постоянно вижу людей, заявляющих, что «комментарии имеют тенденцию устаревать». Дело в том, что, думаю, я видел, может быть, два или три устаревших комментария за всю мою карьеру. Устаревшая информация в отдельных документах встречается постоянно, но по моему опыту устаревшие комментарии в самом коде чрезвычайно редки. Мне просто повезло, с …
38 comments  myth 

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