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

Q & A для профессионалов, преподавателей и студентов, работающих в жизненном цикле разработки систем

7
Насколько плоха идея использовать файлы Python в качестве файлов конфигурации?
Я всегда использовал файлы JSON для настройки своих приложений. Я начал использовать их с того времени, когда много программировал на Java, и сейчас я работаю в основном над разработкой Python на стороне сервера и наукой о данных и не уверен, что JSON - это правильный путь. Я видел, как Celery …

5
Почему так мало C-компиляторов?
Си является одним из наиболее широко используемых языков в мире. На его долю приходится огромная доля существующего кода, и он продолжает использоваться для огромного количества нового кода. Он пользуется популярностью среди пользователей, настолько широко портирован, что возможность запуска C является для многих неофициальным определением платформы , и его поклонники хвалят …

5
Есть ли корреляция между масштабом проекта и строгостью языка?
Объясняя разницу между строгостью языков и парадигм моей коллеге, я кончил тем, что: Толерантные языки, такие как динамические и интерпретируемые языки, лучше всего используются для прототипов и небольших проектов или веб-приложений среднего размера. При выборе элегантных динамических языков, таких как Python или JavaScript, с Node.js, преимуществами являются: Быстрое развитие, Сокращенный …

10
Почему первый компилятор был написан до первого интерпретатора?
Первый компилятор был написан Грейс Хоппер в 1952 году, в то время как интерпретатор Lisp был написан в 1958 году учеником Джона Маккарти Стивом Расселом. Написание компилятора кажется гораздо более сложной задачей, чем интерпретатор. Если это так, то почему первый компилятор был написан за шесть лет до первого интерпретатора?

10
Имеет ли смысл писать тесты для унаследованного кода, когда нет времени для полного рефакторинга?
Я обычно стараюсь следовать советам книги Эффективная работа с унаследованным Cod е . Я нарушаю зависимости, перемещаю части кода в @VisibleForTesting public staticметоды и в новые классы, чтобы сделать код (или, по крайней мере, его часть) тестируемым. И я пишу тесты, чтобы убедиться, что я ничего не нарушаю, когда я …

17
Как я могу попросить моего босса (вежливо) прокомментировать его код?
Меня обучает мой начальник (я только что закончил школу, и он хотел кого-то с небольшим опытом программирования, поэтому он выбрал меня, чтобы обучить меня тому, на чем специализируется эта компания) и начал работать с приложениями ASP.NET MVC , некоторыми HTML и CSS , Я в порядке с вещами веб-дизайна, которые …
72 comments 

14
Как я должен помнить, что я делал и почему в проекте три месяца назад?
Я работал над проектом три месяца назад, а затем внезапно появился другой срочный проект, и меня попросили перевести мое внимание. С завтрашнего дня я вернусь к старому проекту. Я понимаю, что я не помню, что именно я делал. Я не знаю с чего начать. Как я могу задокументировать проект так, …

8
Полезно ли использовать ветки для поддержки разных версий одного и того же программного обеспечения?
У нас есть продукт, который имеет несколько разных изданий. Различия незначительны: разные строки здесь и там, очень мало дополнительной логики в одном, очень мало различий в логике в другом. Когда программное обеспечение разрабатывается, большинство изменений необходимо добавлять в каждую редакцию; однако, есть некоторые, которые этого не делают, и некоторые, которые …
72 git  branching 

9
Зачем использовать частичные классы?
В моем понимании partialключевое слово делает только то, что позволяет разделить класс между несколькими исходными файлами. Есть ли причина для этого, кроме как для организации кода? Я видел, как это используется в сгенерированных классах пользовательского интерфейса. Кажется, плохая причина для создания целого ключевого слова. Если класс достаточно большой, чтобы требовать …

2
Каковы ключевые моменты Code Complete? [закрыто]
Я слышал, что многие упоминают Code Complete как книгу, которую стоит прочитать. К сожалению, я так занят, что у меня нет времени, чтобы прочитать его, поэтому кто-нибудь может сказать мне, каковы ключевые моменты книги?

12
SQL: пустая строка против значения NULL
Я знаю, что эта тема немного противоречива, и в Интернете много разных статей / мнений. К сожалению, большинство из них предполагают, что человек не знает, в чем разница между NULL и пустой строкой. Таким образом, они рассказывают истории об удивительных результатах с объединениями / агрегатами и обычно делают более продвинутые …
72 design  database  sql  strings  null 

29
Стоит ли сертификация?
Вскоре я заканчиваю колледж по программированию и изучаю следующие шаги, которые необходимо предпринять для дальнейшей карьеры. Одним из вариантов, который я рассматривал, является получение сертификата или серии сертификатов в области разработки, в которой я хочу работать. Эти сертификаты стоят времени и денег? Работодатели придают им большое значение?
72 skills 

30
Какое хорошее объяснение для указателей? [закрыто]
В ваших собственных исследованиях (самостоятельно или в классе) был ли у вас момент "ах-ха", когда вы, наконец, действительно поняли указатели? У вас есть объяснение, которое вы используете для начинающих программистов, которое кажется особенно эффективным? Например, когда новички впервые сталкиваются с указателями в C, они могут просто добавлять &s и *s, …

30
Как обращаться с людьми, которые лгут в своем резюме [закрыто]
Я провожу технические интервью, чтобы заполнить несколько позиций .NET. Многие из людей , которых я интервью действительно ли знаю .NET довольно хорошо, но я считаю , по крайней мере 90% приукрасить свой набор навыков в любом месте между «немного» к «довольно резко». Иногда они вырабатывают навыки, соответствующие должности, на которую …

9
Что ХХХ означает в комментарии? [закрыто]
Что люди обычно имеют в виду, когда вы видите XXXв комментарии. Иногда я увижу такой комментарий: # XXX - This widget really should frobulate the whatsit Конечно, я могу сказать, что означает комментарий, но что обычно означает XXX? Это говорит "Это взлом" или, может быть, "Мы должны вернуться к этому …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.