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

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

8
Разница между «параллельным» и «параллельным» исполнением?
В чем разница между терминами параллельного и параллельного выполнения? Я никогда не мог понять разницу. Тег определяет параллелизм как способ запуска двух процессов одновременно, но я думал, что параллелизм - это одно и то же, то есть: отдельные потоки или процессы, которые потенциально могут выполняться на отдельных процессорах. Кроме того, …

4
IPv4 в IPv6. где находится IPv5?
Как все мы знаем, что после IPv4 появился IPv6. Как этот переход произошел? Я просто хочу знать, был ли какой-либо IPv5 также? или есть какая-то другая логика в названии этой версии IP как IPv6?

9
Действительно ли шаблоны проектирования действительно важны в наши дни?
Я читал «Программисты на работе» и столкнулся с тем фактом, что некоторые из опрошенных в книге специалистов не так увлечены шаблонами проектирования. Я думаю, что для этого есть две основные причины: Шаблоны дизайна заставляют нас думать по-своему. Другими словами, почти невозможно изобрести что-то новое (возможно, лучше). Шаблоны дизайна не вечны. …

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

15
Когда оптимизировать память по сравнению с быстродействием метода?
Я недавно давал интервью на Amazon. Во время сеанса кодирования интервьюер спросил, почему я объявил переменную в методе. Я объяснил свой процесс, и он предложил мне решить ту же проблему с меньшим количеством переменных. Например (это было не из интервью), я начал с метода A, а затем улучшил его до …

13
Какое «соглашение об именах версий» вы используете? [закрыто]
Подходят ли разные соглашения об именах версий для разных проектов? Что вы используете и почему? Лично я предпочитаю номер сборки в шестнадцатеричном формате (например, 11BCF), его следует увеличивать очень регулярно. А затем для клиентов простой трехзначный номер версии, т.е. 1.1.3. 1.2.3 (11BCF) <- Build number, should correspond with a revision …

9
Боязнь веб-приложения не быть «будущим»
Я веб-разработчик небольшого локального веб-приложения SaaS. В настоящее время у него около полдюжины клиентов. По мере того, как я продолжаю разрабатывать приложение, мне становится все сложнее убедить себя в любое время посвятить себя проекту, который произошел на начальном этапе. Привязавшись к проекту и коду, который я уже написал, я боюсь, …

11
С чего начать моей команде с того, чтобы стать «современным»? [закрыто]
Я относительно новый разработчик, только что из колледжа. Во время учебы в колледже и во время последующего поиска работы я понял, что у меня не хватает многих «современных» методологий разработки программного обеспечения: модульное тестирование, ведение журнала, нормализация базы данных, гибкая разработка (в отличие от общих гибких концепций), стиль кодирования руководства, …
106 agile  teamwork 

13
Как вы оправдываете написание большего количества кода, следуя правилам чистого кода?
Заметка модератора На этот вопрос уже отправлено 17 ответов . Прежде чем опубликовать новый ответ, пожалуйста, прочитайте существующие ответы и убедитесь, что ваша точка зрения еще не покрыта должным образом. Я следовал некоторым рекомендациям, рекомендованным в книге «Чистый код» Роберта Мартина, особенно тем, которые относятся к типу программного обеспечения, с …

10
Почему Python используется для высокопроизводительных / научных вычислений (а Ruby нет)?
Вот цитата из выступления на PyCon 2011 : По крайней мере, в нашем магазине (Аргоннская национальная лаборатория) у нас есть три общепринятых языка для научных вычислений. В этом порядке они являются C / C ++, Fortran во всех его диалектах и ​​Python. Вы заметите абсолютное и полное отсутствие Ruby, Perl, …

15
Почему структуры данных так важны в интервью? [закрыто]
Я должен признаться, что я не был настолько силен в структурах данных, когда я закончил колледж. Во время учебы в университетском городке во время моего окончания я был свидетелем того, что большинство крупных технологических компаний, таких как Amazon, Microsoft и т. Д., В основном занимались структурами данных. Кажется, что структуры …

22
Объявления работы преувеличивают их требования? [закрыто]
Я чувствую себя достаточно квалифицированным программистом, но я сталкиваюсь с большим количеством сообщений о работе, которые заставляют меня чувствовать себя иначе. Почти все они разделяют квалификации на требования и пожелания, но даже часть требований может быть пугающей. Я видел много публикаций, в которых говорится, что им требуется несколько лет (2 …
106 skills 

16
Должен ли я указать на ошибки, связанные с правописанием / грамматикой, в чьем-то коде? [закрыто]
Просматривая код сотрудника, я столкнулся с некоторыми орфографическими ошибками в именах функций, а также грамматическими ошибками, такими как «doesUserHasPermission ()» вместо «doUserHavePermission ()» в именах функций и переменных. Должен ли я указать ему на это или я слишком педантичен, замечая это?

6
Почему именно XML называют «языком»?
Мне было интересно, почему в названии XML есть буква L. Сам по себе XML ничего не «делает». Это просто формат хранения данных, а не язык! Языки "делают" вещи. Чтобы заставить XML «делать» что-то, превращать его в язык, нужно добавить xmlnsатрибуты к его корневому элементу. Только тогда он сообщает окружающей среде, …

5
В Java, я должен использовать «final» для параметров и локальных, даже если мне не нужно?
Java позволяет помечать переменные (поля / локальные объекты / параметры) как final, чтобы предотвратить переназначение в них. Я нахожу это очень полезным с полями, так как это помогает мне быстро увидеть, являются ли некоторые атрибуты - или целый класс - неизменяемыми. С другой стороны, я считаю, что это гораздо менее …
105 java  coding-style  final 

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