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

60
Лучшая практика по если / возврат

Я хочу знать, что считается лучшим способом возвращения, когда у меня есть ifзаявление. Пример 1: public bool MyFunction() { // Get some string for this example string myString = GetString(); if (myString == null) { return false; } else { myString = "Name " + myString; // Do something more here......

60
Почему использование абстракций (таких как LINQ) так запрещено? [закрыто]

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

60
Это плохая практика, чтобы пропустить экземпляры через несколько слоев?

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

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

Я возглавляю команду с 5+ разработчиками. У меня есть разработчик (назовем его A ), который является хорошим программистом, который пишет хороший чистый, понятный код. Однако им сложно управлять, и иногда я задаюсь вопросом, действительно ли он неэффективен или нет. Наша компания требует, чтобы...

60
R против Python для анализа данных [закрыто]

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

60
Почему языки не включают импликацию как логический оператор?

Это может быть странный вопрос, но почему во многих языках нет смысла в качестве логического оператора (Java, C, C ++, Python Haskell - хотя, как и в прошлом, пользовательские операторы добавили его тривиально, чтобы добавить его)? Я считаю, что логическое значение гораздо яснее писать (особенно в...

60
Конечный слеш в RESTful API

У меня были споры о том, что делать с косой чертой в RESTful API. Допустим, у меня есть ресурс под названием собаки и подчиненные ресурсы для отдельных собак. Поэтому мы можем сделать следующее: GET/PUT/POST/DELETE http://example.com/dogs GET/PUT/POST/DELETE http://example.com/dogs/{id} Но что нам...

60
Использование перечисляемых областей для битовых флагов в C ++

enum X : int(С #) или enum class X : int(C ++ , 11) представляет собой тип , который имеет скрытое внутреннее поле , intкоторый может содержать любое значение. Кроме того, Xв перечислении определен ряд предопределенных констант . Можно привести перечисление к его целочисленному значению и наоборот....

60
Какова наилучшая практика оформления сторонних библиотечных лицензий на «бумажную работу»?

Я занимаюсь разработкой небольшого проекта с открытым исходным кодом. В приложении используется множество сторонних библиотек, выпущенных с различными лицензиями: Apache, MIT, BSD, LGPL и CDDL. Каждая из этих лицензий имеет свои требования к оформлению документов. Например, лицензия Apache v2.0...

60
Является ли изменение входящего параметра антипаттерном? [закрыто]

Я программирую на Java, и я всегда делаю конвертеры вроде этого: public OtherObject MyObject2OtherObject(MyObject mo){ ... Do the conversion return otherObject; } На новом рабочем месте шаблон: public void MyObject2OtherObject(MyObject mo, OtherObject oo){ ... Do the conversion } Для меня это...

60
Кодирование на стороне клиента: как предотвратить злонамеренное использование?

За последние несколько лет тенденция для клиентских (браузерных) приложений действительно взлетела. Для моего последнего проекта я решил попробовать идти в ногу со временем и написать приложение на стороне клиента. Часть этого приложения включает отправку электронных писем о транзакциях...

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

Автоматическое создание документации может быть выполнено с помощью различных инструментов, причем GhostDoc является одним из наиболее заметных. Однако по определению все, что он генерирует, является излишним. Он рассматривает имена методов, классов и т. Д. И выводит английский язык, который может...

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

Существуют очень сложные проекты с открытым исходным кодом, и для некоторых из них, я думаю, я мог бы внести свой вклад, и я бы хотел, но барьер для входа слишком высок по одной причине: для изменения одной строки кода при большой проект, вы должны понять все это. Вам не нужно читать весь код (даже...

60
Почему C предоставляет языковые «привязки», где C ++ терпит неудачу?

Недавно я задавался вопросом, когда использовать C над C ++, и наоборот? К счастью, кто-то уже опередил меня, и хотя мне потребовалось некоторое время, я смог переварить все ответы и комментарии на этот вопрос. Однако, один пункт в этом посте продолжает рассматриваться снова и снова, без...

60
Лучше ли вызывать функцию, которая не имеет эффекта в этот момент, ЕСЛИ она улучшает ясность кода?

У меня есть три вида в моей программе (приложение для iOS). Только один из них когда-либо активен одновременно, поэтому я отключаю видимость для двух из них и переключаю видимость, когда пользователь нажимает кнопки. Представления инициализируются как видимые, поэтому я отключил видимость в коде,...

60
Нужно ли проверять каждую маленькую ошибку в C?

Как хороший программист, нужно писать надежные коды, которые будут обрабатывать каждый результат его программы. Однако почти все функции из библиотеки C будут возвращать 0, -1 или NULL в случае ошибки. Иногда очевидно, что необходима проверка ошибок, например, когда вы пытаетесь открыть файл. Но я...

60
Должен ли я определить отношения между таблицами в базе данных или просто в коде?

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

60
Когда использовать Parser Combinator? Когда использовать Parser Generator?

Недавно я глубоко погрузился в мир парсеров, желая создать свой собственный язык программирования. Однако я обнаружил, что существуют два несколько разных подхода к написанию парсеров: Генераторы парсеров и Комбинаторы парсеров. Интересно, что мне не удалось найти какой-либо ресурс, объясняющий, в...

60
Можем ли мы сделать общие заявления о производительности интерпретируемого и скомпилированного кода?

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

60
Плохо ли использовать компилятор C ++ только для перегрузки функций?

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