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

34
Что такое табличное программирование?

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

34
Есть ли проблемы с реализацией пользовательских методов HTTP?

У нас есть URL в следующем формате / Экземпляр / {instanceType} / {InstanceId} Вы можете вызвать его стандартными методами HTTP: POST, GET, DELETE, PUT. Однако есть еще несколько действий, которые мы предпринимаем, такие как «Сохранить как черновик» или «Куратор» Мы подумали, что можем просто...

34
Синхронизация репозиториев на разных хостах

Я думаю о запуске небольшого проекта и хочу создать его версию с помощью git. Bitbucket кажется хорошим вариантом для меня с их бесплатным планом. Я хочу использовать его в качестве основного инструмента для работы с git, поскольку у них есть хорошие инструменты, такие как веб-интерфейс, клиент Mac...

34
Что такое поток байтов на самом деле?

Может кто-нибудь объяснить мне, что поток байтов на самом деле содержит? Содержит ли он байты (шестнадцатеричные данные) или двоичные данные или только английские буквы? Меня также смущает термин «необработанные данные». Если кто-то попросил меня «перевернуть 4-байтовые данные», то что я должен...

34
В разработке Java обычно используется больше подклассов, чем в C # / .NET?

Я недавно начал смотреть на разработку Android. Это вернуло меня в мир разработки программного обеспечения на Java. В прошлый раз, когда я работал с Java, я должен признать, что ООП я не понимал почти так же, как (я думаю), что я делаю сейчас. Поскольку я в основном использовал C # в своей карьере,...

34
RESTful API стимулируют анемичные доменные модели?

Я работаю над проектом, в котором мы пытаемся применить как доменный дизайн, так и REST к сервис-ориентированной архитектуре. Мы не беспокоимся о 100% соблюдении REST; вероятно, было бы лучше сказать, что мы пытаемся создать ресурсно-ориентированные HTTP API (~ Уровень 2 модели зрелости REST...

34
Как улучшить шаблон Bloch's Builder Pattern, чтобы сделать его более подходящим для использования в расширяемых классах

На меня сильно повлияла книга Джошуа Блоха «Эффективная Java» (2-е издание), вероятно, больше, чем с любой книгой по программированию, которую я читал. В частности, его Образец Строителя (пункт 2) оказал наибольший эффект. Несмотря на то, что за последние несколько месяцев программист Блоха сделал...

34
Общепринято ли вызывать NotImplementedError для методов, реализация которых находится на рассмотрении, но не планируется абстрагироваться?

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

34
Проект Forking GPL: есть ли у меня полные права на новый форк или все еще зависимости от первоначального владельца?

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

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

Посмотрев на некоторые языки для функционального программирования, я всегда задавался вопросом, почему некоторые языки fp используют один или несколько пробельных символов для приложения функции (и определения), тогда как большинство (все?) Императивных / объектно-ориентированных языков используют...

34
Что конкретно означает выразительная сила?

Выразительная сила определяется Википедией как: ... широту идей, которые могут быть представлены и переданы на этом языке. Относятся ли «идеи» к вещам (операциям, структурам, алгоритмам и т. Д.?), Которые мы можем передать машине ? Или это относится к «человеческим» понятиям, которые можно уловить...

34
Почему разработчики не делают мастеров установки на Linux? [закрыто]

Я уверен, что дело не в лени или чем-то в этом роде, но я не понимаю, почему разработчики приложений, в основном ориентированных на потребителя, не делают никакого мастера установки, чтобы перейти к следующему-следующему этапу. У одних и тех же приложений обычно есть установщики для Windows и Mac...

34
Имя для функции, которая возвращает свои аргументы?

Функция, которая ничего не делает, не принимает аргументов и ничего не возвращает, традиционно называется a noopили no-op. Пример noop ниже: function noop(){} http://en.wikipedia.org/wiki/NOP Так есть ли имя для функции, которая предназначена только для того, чтобы возвращать свои аргументы и...

34
Какой смысл в реализации стека с использованием двух очередей?

У меня следующий домашний вопрос: Реализуйте методы стека push (x) и pop (), используя две очереди. Это кажется мне странным, потому что: Стек - это очередь (LIFO) Я не понимаю, зачем вам нужно две очереди для его реализации Я искал вокруг: GeeksForGeeks Переполнение стека и нашел пару решений. Вот...

34
Переопределение Object.finalize () действительно плохо?

Основными двумя аргументами против переопределения Object.finalize()является то, что: Вы не можете решить, когда это называется. Это не может быть вызвано вообще. Если я правильно понимаю, я не думаю, что это достаточно веские причины, чтобы Object.finalize()так сильно ненавидеть . Именно...

34
СУХОЙ не связанный, но почти идентичный код

У меня есть некоторый код, который почти идентичен, но использует абсолютно разные типы, без наследования между ними, в основной переменной. В частности, я пишу анализатор с Roslyn для C # и VB.NET следующих типов: Microsoft.CodeAnalysis.CSharp.Syntax.AttributeSyntax...

34
Как мне протестировать систему, в которой объекты трудно подделать?

Я работаю со следующей системой: Network Data Feed -> Third Party Nio Library -> My Objects via adapter pattern Недавно у нас возникла проблема, когда я обновил версию библиотеки, которую использовал, что, помимо прочего, приводило к тому, что метки времени (которые возвращает сторонняя...

34
Являются ли Python mixins анти-паттерном?

Я полностью осознаю, что pylintи другие инструменты статического анализа не являются всезнающими, и иногда их советам нужно не подчиняться. (Это относится к различным классам сообщений, а не только к convention.) Если у меня есть классы, такие как class related_methods(): def a_method(self):...

34
Почему большинство основных языков не поддерживают синтаксис «x <y <z» для трехсторонних логических сравнений?

Если я хочу сравнить два числа (или другие хорошо упорядоченные объекты), я бы сделал это с x < y. Если я захочу сравнить три из них, ученик средней школы по алгебре предложит попробовать x < y < z. Затем программист во мне ответит: «Нет, это не правильно, вы должны это сделать x < y...