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

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

23
Стоит ли университетское образование для хорошего программиста? [закрыто]
Я занимаюсь дизайном и программированием столько, сколько себя помню. Если есть проблемы с программированием, я могу разобраться. (Хотя по общему признанию , переполнение стека позволило мне пропустить выяснить и получить прямо к делать во многих случаях.) Я сделал игры, эзотерические языки программирования, а также виджеты и вещицы в изобилии. В …
37 education 

2
PHP: когда использовать массивы и когда использовать объекты для конструкций кода, в основном для хранения данных?
PHP - это язык смешанной парадигмы, позволяющий использовать и возвращать необъектные типы данных, такие как массивы. Я задаю вопрос, чтобы попытаться прояснить некоторые рекомендации по выбору массивов и объектов при принятии решения о том, какую программную конструкцию использовать в конкретной ситуации. Это действительно вопрос о способах кодирования данных с использованием …

8
Какая польза от преобразования исходного кода в байт-код Java?
Если нужны разные JVM для разных архитектур, я не могу понять, какова логика внедрения этой концепции. В других языках нам нужны разные компиляторы для разных машин, но в Java нам требуются разные JVM, так какова логика введения концепции JVM или этого дополнительного шага?
37 java  jvm  bytecode 

6
Модульные тесты и базы данных: в какой момент я на самом деле подключаюсь к базе данных?
Есть ответы на вопрос о том, как тестовые классы подключаются к базе данных, например, «Должны ли сервисные тестовые классы подключаться ...» и «Модульное тестирование - приложение, связанное с базой данных» . Итак, вкратце, давайте предположим, что у вас есть класс A, который должен подключаться к базе данных. Вместо того, чтобы …


5
Как вы разоружаете ковбойского кодера? [закрыто]
Я нашел вопрос (кодовый ковбой в команде), но он был больше связан с «Ninja Coder», чем с проблемой, с которой я столкнулся. У меня есть член команды, который является живым примером « Ковбойского кодера ». Я понимаю, что нельзя изменить людей, но есть ли способ заставить его перестать вести себя …

11
Методы модульного тестирования с неопределенным выходом
У меня есть класс, который предназначен для генерации случайного пароля длины, которая также случайна, но ограничена, чтобы быть между определенной минимальной и максимальной длиной. Я создаю модульные тесты и столкнулся с интересной небольшой проблемой с этим классом. Вся идея модульного теста заключается в том, что он должен быть повторяемым. Если …

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

4
Могу ли я минимизировать Javascript, который требует уведомления об авторских правах?
Я думаю, что это на самом деле юридический вопрос, но это касается программного обеспечения. Я собираюсь включить плагин JS в проект. Комментарии включают в себя: При повторном распространении исходного кода должно сохраняться указанное выше уведомление об авторском праве, этот список условий и следующий отказ от ответственности. * При повторном распространении …
37 copyright 

16
Стоит ли жертвовать читабельностью кода тем, насколько он эффективен? [закрыто]
Стоит ли жертвовать читабельностью кода тем, насколько он эффективен? например, 3 строки кода в 1 строку. Я прочитал в Code Craft Питом Гудлиффом, что читабельность - это ключ. Твои мысли?

3
Предназначены ли интеграционные тесты для повторения всех модульных тестов?
Допустим, у меня есть функция (написана на Ruby, но должна быть понятна всем): def am_I_old_enough?(name = 'filip') person = Person::API.new(name) if person.male? return person.age > 21 else return person.age > 18 end end В модульном тестировании я бы создал четыре теста, чтобы охватить все сценарии. Каждый будет использовать макет Person::APIобъекта …

3
Это антипаттерн, чтобы использовать peek () для изменения элемента потока?
Предположим, у меня есть поток вещей, и я хочу «обогатить» их серединой потока, я могу использовать peek()это, например: streamOfThings.peek(this::thingMutator).forEach(this::someConsumer); Предположим, что изменение объектов в этой точке в коде является правильным поведением - например, thingMutatorметод может установить в поле «lastProcessed» текущее время. Однако peek()в большинстве случаев означает «смотри, но не трогай». …

3
таблицы со ссылками, хорошие или плохие? [закрыто]
Представляя географические местоположения в приложении, проект базовой модели данных предлагает два четких варианта (или, может быть, больше?). Одна таблица с самоссылающейся колонкой parent_id uk - london (london parent id = UK id) или две таблицы с отношением один ко многим с использованием внешнего ключа. Я предпочитаю одну таблицу со ссылками …

14
Как определить «или» логически
Недавно я столкнулся с проблемой, которая требовала от меня определения логического оператора «ИЛИ» программно, но без использования самого оператора. Я придумал вот что: OR(arg1, arg2) if arg1 = True and arg2 = True return True else if arg1 = True and arg2 = False return True else if arg1 = …

15
Как вы эффективно конкурируете с проектом с открытым исходным кодом?
Компании с солидным проектом с открытым исходным кодом, конкурирующим с традиционным продуктом с закрытым кодом, кажется, невозможно победить. Я прочитал эту статью, в которой автор излагает этот сценарий: Предположим, можно разделить рынок программного обеспечения - скажем, управление сетью - между двумя продуктами. Один делал все возможное и стоил 1 миллион …

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