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

9
Лицензия MIT об авторских правах на производные работы

Мы думаем об использовании некоторого программного обеспечения с открытым исходным кодом MIT в одном из наших веб-проектов ( плагин jQuery datetime ). Первая строка лицензии MIT: Авторское право (c) [год] [правообладатели] Если мы включим плагин «как есть» (без внесения каких-либо изменений), я...

9
Действительно ли Haskell / Clojure не подходит для динамических систем, таких как моделирование частиц?

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

9
Как инкапсулировать «глобальные» переменные в C #? / лучшая практика

Хотите улучшить этот пост? Предоставьте подробные ответы на этот вопрос, включая цитаты и объяснение того, почему ваш ответ правильный. Ответы без достаточной детализации могут быть отредактированы или удалены. В C #, что является лучшим методом для инкапсуляции переменных, которые мне нужно...

9
Есть ли разница между интерфейсами и абстрактными классами, которые имеют только абстрактные методы?

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

9
Наименование связанных классов и интерфейсов

Я создал ObjectParserкласс, который анализирует данные в строго типизированные объекты, используя в IObjectParserDataSourceкачестве источника данных (данные могут быть файлом Excel, текстовым файлом, массивом, строкой запроса и т. Д.). Примеры моих реализаций IObjectParserDataSource:...

9
Создание отношения сущности в REST: Могу ли я создать родителя, опубликовав идентификатор ребенка?

В настоящее время мы разрабатываем REST API для доступа к классическим данным клиентов. Одним из элементов API являются активы пользователя. Активы добавляются в рамках данной услуги. Внутренний API добавит ресурс только пользователю в рамках данной службы. Таким образом, нет отношения Пользователь...

9
Получение максимального значения из диапазона в несортированном массиве

У меня есть несортированный массив . У меня есть запросы, в которых я даю диапазон, а затем должно быть возвращено максимальное значение из этого диапазона. Например: array[]={23,17,9,45,78,2,4,6,90,1}; query(both inclusive): 2 6 answer: 78 Какой алгоритм или структуру данных я создаю, чтобы быстро...

9
Обеспечение того, что заголовки явно включены в файл CPP

Я думаю, что это обычно хорошая практика для #includeзаголовка для любых типов, используемых в файле CPP, независимо от того, что уже включено через файл HPP. Так что я мог бы #include <string>, например, и в моем HPP, и в CPP, даже если бы я мог компилировать, если пропустил его в CPP. Таким...

9
Agile MVP (самый ценный игрок / программист)

Недавно я принимал участие в гибком проекте (с использованием scrum), где руководству пришла в голову идея, что команда назначит разработчика «MVP», а также QA «MVP» в конце каждого спринта, за который проголосовали команда. MVP затем получает небольшое денежное вознаграждение и бесплатный обед, а...

9
Почему так много числовых типов (bit, int, float, double, long)?

Я изучил PHP, Java и C. Теперь мне интересно, почему существует так много типов числовых типов данных, как bit, int, float, double и long. Почему бы не сделать только один тип для чисел? Есть ли польза от этого? Может быть, если мы будем использовать целые числа для хранения таких маленьких чисел,...

9
Значение MVVM в бизнес-приложениях (и современные методы разработки)

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

9
Как внедрение зависимостей не просто переносит сложность в отдельный класс?

На этой неделе я изучал использование среды Typhoon для внедрения зависимостей. Я понял, что разделение конструкции объектов полезно для замены произвольных компонентов на макеты во время модульного тестирования, и до сих пор я видел преимущества только от этого. Но я не могу не думать, что раньше,...

9
Отслеживание всех объектов класса

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

9
Если модель проверяет данные, не должны ли они генерировать исключения при неправильном вводе?

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

9
Является ли композиция функций Haskell экземпляром архитектурного шаблона трубы и фильтра?

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

9
Что мешает приложениям HTML5 и JS работать так же хорошо, как нативные приложения?

Из того, что я понимаю, HTML - это язык разметки, равно как и содержимое XAML, XIB и всего, что использует Android, и других собственных сред разработки пользовательского интерфейса. JavaScript - это язык программирования, используемый вместе с ним для обработки сценариев на стороне клиента,...

9
Существуют ли какие-либо программы, иллюстрирующие большинство функций и использование различных языков программирования?

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

9
Как лучше организовать сайт Jekyll + Bootstrap + Git?

Итак, после многих, многих лет создания сайтов с нуля (и я сам много занимался подъемом), я погрузил свои пальцы в два проекта, которые я избегал в течение нескольких лет: Bootstrap и Jekyll. Проектирование было очень индивидуальной, и мне пришлось копаться в LESS, поэтому у меня есть исходные...