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

52
Как вы разрабатываете программы на Haskell или других функциональных языках программирования?

У меня есть некоторый опыт работы с объектно-ориентированными языками программирования, такими как c # или ruby. Я знаю, как проектировать программу в объектно-ориентированном стиле, как создавать классы и объекты и как определять отношения между ними. Я также знаю некоторые шаблоны дизайна. Как...

52
Если ваш код модульного теста «пахнет», это действительно имеет значение?

Обычно я просто собираю свои модульные тесты, используя копирование и вставку, и другие виды плохой практики. Модульные тесты обычно выглядят довольно некрасиво, они полны «запаха кода», но действительно ли это имеет значение? Я всегда говорю себе, пока «реальный» код «хорош», и это все, что имеет...

52
Как мы можем сделать agile приятным для разработчиков, которым нравится лично, самостоятельно иметь большие куски от начала до конца

Мы находимся примерно на полпути через наш переход от водопада к ловкому с использованием схватки; мы перешли от больших команд в бункерах технологий / дисциплин к меньшим кросс-функциональным командам. Как и ожидалось, переход на agile подходит не всем. Есть несколько разработчиков, которые с...

52
Нужно ли создавать базу данных с как можно меньшим количеством таблиц?

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

52
Есть ли каноническая книга по математике для программистов? [закрыто]

Я программист-самоучка. Я, честно говоря, не очень хорош в математике. Какой совет вы можете дать, чтобы улучшить свои математические навыки, чтобы я не чувствовал себя так неуверенно среди моих коллег-программистов? Какие шаги или рекомендации вы можете порекомендовать для улучшения моих...

52
Завершение проекта успешно, несмотря на враждебное управление? [закрыто]

Я работаю в филиале крупной всемирной компании. Это была не дочерняя компания с самого начала, это была компания, купленная более крупной компанией. Кажется, мы движемся к маршу смерти, и мне интересно, могу ли я (или моя команда) что-либо сделать, чтобы решить проблемы управления или завершить...

52
Как лучше всего упорядочить параметры в функции?

Иногда (редко) кажется, что создание функции, которая принимает приличное количество параметров, является наилучшим маршрутом. Однако, когда я это делаю, я чувствую, что часто выбираю порядок параметров случайным образом. Я обычно выбираю «по важности», сначала выбираю самый важный параметр. Есть...

52
Почему презрение к COBOL? [закрыто]

Когда люди упоминают КОБОЛ, он обычно встречается с фырканьем или стоном. Я не знаю много о COBOL, но я видел несколько программ, написанных на нем. Я вижу, что это многословно, и для непосвященных глаз, таких как мои, неразборчиво. Но не правда ли, все языки программирования не являются...

52
Нормально ли думать о проблеме дизайна в течение нескольких дней без написания кода? [закрыто]

Иногда я тупо смотрю в пространство или делаю наброски идей и пишу псевдокоды на бумаге. Затем я вычеркиваю это и начинаю снова, затем, когда я думаю, что у меня есть правильное решение проблемы, я начинаю писать код. Нормально ли думать дни без написания какого-либо кода? Это признак того, что я...

52
Каков наилучший способ оценить новых программистов? [закрыто]

Каков наилучший способ оценить лучших кандидатов, чтобы получить новую работу (говоря просто с точки зрения навыков программирования)? В моей компании было много плохого опыта с людьми, которые имеют хорошие оценки, но не имеют реальных навыков программирования. Их навыки похожи на код обезьян, без...

52
Какое лучшее место для школьного программиста, чтобы его работу заметили? [закрыто]

Я 16-летний школьник со страстью к компьютерному программированию. Я учусь в 11 классе и изучаю его в рамках школьной программы около 8 месяцев. Я вышел за рамки того, чему учат в школе, и стал свидетелем нескольких (достаточно хороших) заявлений. Я программирую на языке C ++ на платформе Windows....

52
Лучшие практики / Шаблоны для двусторонней синхронизации данных

Довольно часто в моей работе возникает идея двусторонней синхронизации данных между системами баз данных. Классический пример - две слегка отличающиеся системы CRM (скажем, Raiser's Edge и Salesforce) и необходимость двухсторонней синхронизации данных контактов между ними. Помимо соображений API,...

52
Действительно ли объектно-ориентированное программирование моделирует реальный мир? [закрыто]

Я часто повторял, что объектно-ориентированное программирование основано на моделировании реального мира, но так ли это? Мне кажется, что это не относится ни к чему вне бизнес-уровня. Мои классы GUI / классы доступа к данным ничего не моделируют в реальном мире. Даже на уровне моего бизнеса у меня...

52
Должны ли разработчики понимать сферу деятельности или спецификации должно быть достаточно?

Я работаю в компании, для которой область действительно трудна для понимания, потому что это высокие технологии в электронике, но это применимо к любой разработке программного обеспечения в сложной области. Приложение, над которым я работаю, отображает много информации, диаграмм и метрик, которые...

52
Преимущества и недостатки создания одностраничного веб-приложения [закрыто]

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

52
Как управлять разработчиком, у которого плохие навыки общения

Я управляю небольшой командой разработчиков над приложением, которое находится на середине своего жизненного цикла, в большой фирме. Это, к сожалению, означает, что обычно 30/70 делят задачи по программированию на «другие технические работы». Эта работа включает в себя: Работа с командами DBA /...

52
Должен ли я позаботиться о гоночных условиях, которые почти наверняка не имеют шансов произойти?

Давайте рассмотрим что-то вроде приложения с графическим интерфейсом, в котором основной поток обновляет интерфейс практически мгновенно, а другой поток опрашивает данные по сети или что-то, что гарантированно займет 5-10 секунд для завершения работы. Я получил много разных ответов на это, но...

52
Каково доминирующее соглашение по именованию переменных в PHP: верблюд или подчеркивание? [закрыто]

Похоже, консенсус заключается в том, что нужно следовать соглашению платформы, для которой они разрабатывают. Видеть: Подчеркивание или верблюд? Соглашения об именах: camelCase или underscore_case? Тем не менее, PHP, кажется, строго не следует никаким внутренним соглашениям (никаких сюрпризов) даже...

52
Помогает ли специальное техническое обслуживание карьере программиста? [закрыто]

Большая часть моей работы за последние три года была в основном связана с обслуживанием устаревших систем, которые требовали исправления или периодического обновления, прежде чем они снова были проданы. Я понимаю, какую важную роль играют специализированные программисты в компаниях с большим...

52
Будет ли изучение какого-либо естественного языка, в частности, вашей карьере программиста? [закрыто]

Кажется очевидным, что английский является доминирующим международным языком для программирования, основанным на предыдущих вопросах P.SE (хотя комментарий с высоким голосом правильно указывает на то, что задание такого вопроса на преимущественно английском сайте искажает результаты). Однако есть...