В рамках приложения, когда влияние производительности может быть проигнорировано (максимум 10-20 событий в секунду), что является более обслуживаемым и гибким для использования в качестве предпочтительного средства связи между модулями - события или фьючерсы / обещания / монады ? Часто говорят, что события (pub / sub, mediator) допускают слабую связь и, …
Раньше я был поклонником требования XML-комментариев для документации. С тех пор я передумал по двум основным причинам: Как и хороший код, методы должны быть понятны. На практике большинство XML-комментариев представляют собой бесполезный шум, который не дает никакой дополнительной ценности. Много раз мы просто используем GhostDoc для генерации общих комментариев, и …
Учитывая этот пример Javascript, я нашел var sum = function() { var i, sum = 0; for(i = 0; i < arguments.length; i += 1) { sum += arguments[i]; } return sum; }; Какое преимущество имеет назначение функции для переменной?
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …
Я заметил, что 26 июля (мой день рождения) действительно часто используется в различных примерах PHP, связанных с предотвращением http-кэширования с использованием Expiresзаголовка, например: /programming/12398714/cache-issue-with-private-networking-stream /programming/2833305/how-to-expire-page-in-php-when-user-logout http://expressionengine.com/archived_forums/viewthread/81945/ Что особенного в этой дате?
Я начал использовать gitflow для проекта, и у меня есть выдающаяся ветвь функций, а также недавно созданное исправление. В соответствии с рабочим процессом gitflow исправление применяется как к основной, так и к развивающей ветвям, но ничего не сказано или не сделано в отношении существующих ветвей функций. Тем не менее, я …
В чем разница между перегрузкой метода и его переопределением в Java? Есть ли разница в сигнатуре метода, спецификаторе доступа, типе возврата и т. Д.?
В общем, хорошо избегать таких слов, как «handle» или «process», как части имен рутины и имен классов, если вы не имеете дело с (например) дескрипторами файлов или (например) процессами unix. Однако абстрактные классы часто не знают, что они собираются делать с чем-то, кроме, скажем, обработки. В моей текущей ситуации у …
Я унаследовал довольно интересный проект, в котором есть хорошая возможность взять существующее программное обеспечение и превратить его в веб-приложение SaaS. Поскольку проект наследуется, база кода / каркас уже определены как C ++ и MySQL. Само приложение компилируется и запускается как EXE на Windows Server. Пользовательский интерфейс веб-и приложение работает как …
В настоящее время мы злоупотребляем нашей системой контроля версий и используем ее ... почти как FTP для хранения больших выпусков (4+ ГБ). Мы стремимся отойти от этой ужасной практики, которая имеет и продолжает перераспределять и использовать все больше и больше ИТ-ресурсов, нанося вред процессам интеграции и выпуска. Решением для этого …
Я разрабатываю программное обеспечение как сервисный проект, доступ к которому возможен только онлайн. У меня может быть жесткая зависимость от исполняемого файла, на который распространяется GNU GPL (v2 или более поздняя версия). Я понимаю, что мой код, если я когда-либо распространял его, должен распространяться также на условиях GPL. Я почти …
Наша компания наняла пять новых младших разработчиков, чтобы помочь мне разработать наш продукт. К сожалению, новые функции и входящие исправления ошибок обычно требуют более глубоких знаний, чем обычно имеет недавно законченный разработчик (многопоточность / параллелизм, устранение узких мест производительности в сложной системе и т. Д.) Делегирование (и планирование) задач, которые …
Если у меня есть функция в моем коде, которая выглядит следующим образом: class Employee{ public string calculateTax(string name, int salary) { switch (name) { case "Chris": doSomething($salary); case "David": doSomethingDifferent($salary); case "Scott": doOtherThing($salary); } } Обычно я реорганизовал бы это, чтобы использовать Ploymorphism, используя фабричный класс и шаблон стратегии: public …
Есть ли какая-то статистика, показывающая ок. количество пользователей, которыми пользуются популярные языки программирования, и скорость, с которой это число увеличивается со временем?