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

49
Являются ли библиотеки только для заголовков более эффективными?

Предположения Одним из преимуществ библиотек только для заголовков для C ++ является то, что их не нужно компилировать отдельно. В C и C ++ inlineимеет смысл только если функция определена в заголовочном файле *. Традиционно в C использовался макет .c / .h, где заголовок представляет минимальный...

49
Должны ли мы избегать пользовательских объектов в качестве параметров?

Предположим, у меня есть пользовательский объект, студент : public class Student{ public int _id; public String name; public int age; public float score; } И класс Window , который используется для отображения информации об ученике : public class Window{ public void showInfo(Student student); } Это...

49
Каковы улучшения MVP по сравнению с MVC?

В течение трех дней я читал о шаблонах Model-View-Controller (MVC) и Model-View-Presenter (MVP) . И есть один вопрос, который меня очень беспокоит. Почему разработчики программного обеспечения изобрели MVP, когда уже был MVC? С какими проблемами они столкнулись, что MVC не решил (или решил плохо),...

49
«Легко рассуждать» - что это значит? [закрыто]

Я много раз слышал, как другие разработчики используют эту фразу, чтобы «рекламировать» некоторые шаблоны или разрабатывать лучшие практики. Большую часть времени эта фраза используется, когда вы говорите о преимуществах функционального программирования. Фраза «Легко рассуждать» использовалась как...

49
Чистый код: функции с несколькими параметрами [закрыто]

Я прочитал первые главы « Чистого кода » Роберта С. Мартина, и мне кажется, что это довольно хорошо, но у меня есть сомнения, в одной части упоминается, что хорошо (познавательно), что функции должны иметь как можно меньше параметров насколько это возможно, он даже предполагает, что 3 или более...

49
Почему плохая идея создать универсальный сеттер и геттер с отражением?

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

49
Почему многие функции, которые возвращают структуры в C, фактически возвращают указатели на структуры?

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

49
Должна ли сгенерированная документация храниться в репозитории Git?

Когда вы используете такие инструменты, как jsdocs , он генерирует статические HTML-файлы и их стили в вашей кодовой базе на основе комментариев в вашем коде. Должны ли эти файлы быть добавлены в репозиторий Git или их следует игнорировать с помощью...

49
Как сохранить согласованность в архитектуре приложения по мере роста команды?

Как единственный разработчик в стартапе, я мог позволить себе принимать много решений в архитектуре и инфраструктуре нашего приложения. Перенесемся через 4 года и приобретением позже, у меня есть команда из 5 человек, и часто это похоже на дикий запад. Люди, принимающие любое дизайнерское решение,...

48
Как угробить кабину? [закрыто]

Мне бы очень хотелось выбраться из «кабины» 9-5 и сделать что-нибудь, где я могу работать из дома, снимать, когда захочу, и т. Д. Не поймите меня неправильно ... Я не против усердно работать , но я просто не наслаждаюсь всей корпоративной вещью, где установлены мои часы, дни отпуска, дресс-код,...

48
Как мне изучить Python с нуля до веб-разработки? [закрыто]

Я изучаю Python для веб-разработки. Предполагая, что у меня уже есть некоторый базовый опыт веб-разработки с Java (JSP / Servlets), я уже знаком с веб-дизайном (HTML, CSS, JS), базовыми концепциями программирования и что я совершенно новичок в Python, как мне поступить изучать Python...

48
Как мне начать с Lisp? [закрыто]

Я программирую уже много лет, прорабатывая различные итерации Blub (BASIC, Assembler, C, C ++, Visual Basic, Java, Ruby без какого-либо конкретного порядка «Blub-ness»), и я хотел бы научиться Лисп. Тем не менее, у меня много интертаций с ограниченным временем (семья, работа на полную ставку и т....

48
Как получить деньги от неохотного клиента? [закрыто]

Я закончил этот сайт 4 месяца назад. (Я хотел бы сохранить анонимность веб-сайта - если эта публикация будет появляться в поиске Google клиентами, это негативно повлияет на их бизнес). Мы сделали несколько итераций, клиент был очень требовательным (и любопытным), я выполнил все, что хотел, включая...

48
Выбор функционального языка программирования [закрыто]

В последнее время я много читал о функциональных языках программирования (фактически, почти в прошлом году). Я действительно хотел бы выбрать один и изучить это полностью. В прошлом семестре [курс] я познакомился со Схемой. Я люблю это. Мне очень понравилась крайняя простота синтаксиса, принцип...

48
Что такое инварианты, как их можно использовать, и использовали ли вы их когда-либо в своей программе?

Я читаю Coders at Work , и в нем много говорят об инвариантах. Насколько я понял, инвариант - это условие, которое выполняется до и после выражения. Они, помимо прочего, полезны для доказательства правильности цикла, если я правильно помню курс по логике. Мое описание верно, или я что-то пропустил?...

48
Важно ли владение отдельным кодом? [закрыто]

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

48
Что я могу сделать, если интервьюер не знает ответа на свой вопрос? [закрыто]

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

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

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

48
Большинство программистов копируют и вставляют код? [закрыто]

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

48
Как вы боретесь с усталостью программирования? [закрыто]

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