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

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

Я чувствую, что побочные эффекты - это естественное явление. Но это что-то вроде табу в функциональных языках. Каковы причины? Мой вопрос относится к стилю функционального программирования. Не все языки программирования /...

69
Почему коллекции Java были реализованы с помощью «дополнительных методов» в интерфейсе?

Во время моей первой реализации, расширяющей инфраструктуру Java-коллекции, я был очень удивлен, увидев, что интерфейс коллекции содержит методы, объявленные как необязательные. Ожидается, что разработчик выдаст исключение UnsupportedOperationException, если оно не поддерживается. Это сразу...

69
Что случилось с Borland Delphi? [закрыто]

У меня сложилось впечатление, что Delphi больше не очень популярен. Но теперь на работе мне пришлось внести некоторые изменения в старую программу Delphi, которую мы все еще используем. Я использовал Borland Developer Studio 2006, и работать с ним было очень приятно и интуитивно понятно, хотя я...

69
Я вынужден писать плохой код. Как мне сохранить лицо? [закрыто]

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

69
попробуй поймай в javascript… разве это не хорошая практика?

В javascript есть условие для блока try-catch . В то время как в java или любом другом языке обязательно иметь обработку ошибок, я не вижу, чтобы кто-нибудь использовал их в javascript для большей степени. Разве это не хорошая практика или просто мы не нуждаемся в них в...

69
Какие алгоритмы / структуры данных я должен «распознавать» и знать по имени? [закрыто]

Я хотел бы считать себя довольно опытным программистом. Я программирую уже более 5 лет. Мое слабое место, хотя это терминология. Я самоучка, поэтому, хотя я знаю, как программировать, я не знаю некоторые из более формальных аспектов информатики. Итак, что такое практические алгоритмы / структуры...

69
Запросить образец кода компании на собеседовании [закрыто]

Просить соискателя показать какой-то код - довольно распространенная практика для софтверной компании. Однако допустимо ли для кандидата попросить интервьюера показать ему небольшой фрагмент кода, который он считает хорошо...

69
Мой предложенный дизайн обычно хуже, чем у моего коллеги - как мне стать лучше? [закрыто]

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

69
Почему исследовательские работы, в которых упоминается пользовательское программное обеспечение, не выпускают исходный код? [закрыто]

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

69
«Все это карта», я делаю это правильно?

Я смотрел выступление Стюарта Сьерры « Мышление в данных » и использовал одну из идей в качестве принципа дизайна в этой игре, которую я делаю. Разница в том, что он работает в Clojure, а я работаю в JavaScript. Я вижу некоторые основные различия между нашими языками в этом: Clojure - идиоматически...

69
Почему так много проектов предпочитают «git rebase», а не «git merge»?

Одним из преимуществ использования DVCS является рабочий процесс edit-commit-merge (по сравнению с edit-merge-commit, часто применяемый CVCS). Благодаря тому, что каждое уникальное изменение записывается в хранилище независимо от слияний, DAG точно отражает истинную родословную проекта. Почему так...

69
Зачем вам хранить перечисление в БД?

Я видел ряд вопросов, таких как этот , спрашивающих совета о том, как хранить перечисления в БД. Но мне интересно, зачем ты это делаешь. Итак, допустим, что у меня есть сущность Personс genderполем и Genderперечислением. Тогда в моей личной таблице есть пол столбца. Помимо очевидной причины...

68
Что вы делаете, когда сталкиваетесь с идиотским вопросом на собеседовании? [закрыто]

Я брал интервью у человека, «слишком гордого своими навыками Java». Он спросил меня: " Что ты знаешь о классах Java IO .. скажем .. хэш-карты? " Он попросил меня написать кусок java-кода на бумаге - создать экземпляр класса и вызвать один из методов экземпляра. Когда я закончил, он сказал, что моя...

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

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

68
Почему С преобладал над Паскалем? [закрыто]

Насколько я понимаю, в 1980-х, а возможно, и в 1990-х, Паскаль и Си были в значительной степени непосредственными, как производственные языки. Является ли окончательная кончина Паскаля только из-за пренебрежения Борланда Дельфи ? Или что-то еще, например, невезение или что-то не так с Паскалем...

68
Существуют ли альтернативы с открытым исходным кодом для Bitbucket, Github, Kiln и аналогичных инструментов просмотра и управления DVCS? [закрыто]

Мне известны несколько инструментов / сервисов, которые обеспечивают просмотр и управление DVCS , такие как Bitbucket , Github , Kiln , SCM-Manager и Rhodecode . Тем не менее, рассматриваемый мной вариант использования таков: Любой исходный код должен находиться на внутренних серверах работодателя....

68
Насколько важно сделать уровень обслуживания?

Я начал создавать приложение в 3 слоя (DAL, BL, UI) [оно в основном обрабатывает CRM, некоторые отчеты о продажах и инвентарь]. Коллега сказал мне, что я должен перейти к шаблону сервисного уровня, что разработчики пришли к сервисному шаблону из своего опыта, и это лучший подход для разработки...

68
Название этого антипаттерна? Поля как локальные переменные [закрыто]

В некотором коде, который я рассматриваю, я вижу вещи, которые морально эквивалентны следующему: public class Foo { private Bar bar; public MethodA() { bar = new Bar(); bar.A(); bar = null; } public MethodB() { bar = new Bar(); bar.B(); bar = null; } } Поле barздесь является логически локальной...

68
Зачем хранить функцию внутри словаря Python?

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