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

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

3
Происхождение отступа кода
Мне интересно узнать, кто ввел отступ кода, а также когда и где он был введен. Это кажется настолько важным для понимания кода, но оно не было универсальным. Большая часть кода на Фортране и Базовом языке была (есть?) Без отступов, и то же самое относится и к Коболу. Я почти уверен, …

6
Хорошо ли иметь запах кода, если он допускает более простое решение другой проблемы? [закрыто]
Группа друзей и я работали над проектом в последнее время, и мы хотели изобрести хороший ООП-способ представления сценария, специфичного для нашего продукта. По сути, мы работаем над пули-адом в стиле Тохоу , и мы хотели создать систему, в которой мы могли бы легко представить любое возможное поведение пули, которое мы …

6
Является ли создание новых исключений RuntimeException в недоступном коде плохим стилем?
Мне поручили поддерживать приложение, написанное некоторое время назад более опытными разработчиками. Я наткнулся на этот кусок кода: public Configuration retrieveUserMailConfiguration(Long id) throws MailException { try { return translate(mailManagementService.retrieveUserMailConfiguration(id)); } catch (Exception e) { rethrow(e); } throw new RuntimeException("cannot reach here"); } Мне любопытно, если бросок RuntimeException("cannot reach here")оправдан. Я, вероятно, …

8
Прямое использование Make считается устаревшим? [закрыто]
Поэтому я сталкивался со многими комментариями / публикациями / и т. Д., Касающимися непосредственного создания make-файлов, и того, как это глупо делать в 2015 году. Мне известны такие инструменты, как CMake, и я на самом деле довольно часто использую CMake. Дело в том, что CMake просто создает Makefile для вас …
31 c++  c  builds  make  cmake 

9
Объясните MVC непрограммистам [закрыто]
У меня есть необходимость объяснить MVC непрограммистам. А именно, руководителям других отделов, в контексте отчета о проделанной работе. Одна из вещей, которые я делаю, - это рефакторинг нашей кодовой базы в сторону разделения MVC. Какое разделение MVC они могут спросить? Зачем они могут спросить? После прочтения довольно технического ответа вроде …
31 mvc 

10
Разумно ли предположить, что любая физическая величина может быть представлена ​​64-разрядным целым числом без переполнения или переполнения?
Исходный алгоритм двоичного поиска в JDK использовал 32-разрядные целые числа и имел ошибку переполнения if (low + high) > INT_MAX( http://googleresearch.blogspot.com/2006/06/extra-extra-read-all-about-it-nearly.html ) , Если мы переписали тот же алгоритм двоичного поиска с использованием (подписанных) 64-разрядных целых чисел, можем ли мы предположить, что low + highон никогда не превысит INT64_MAX, поскольку …

3
Могу ли я использовать лицензионные плагины Apache Software License, версии 2.0 и GNU LGPL 3 в своем коммерческом веб-приложении?
У меня есть два плагина. Один имеет лицензию GNU LGPL 3, а другой - лицензию на программное обеспечение Apache версии 2.0. Могу ли я использовать их в моем коммерческом приложении? И если да, какие меры предосторожности я должен предпринять?

7
Возможно ли, чтобы бизнес-логика не попадала в поле зрения?
За последние 3 года я разработал несколько проектов веб-приложений, как личных, так и рабочих, и я не могу понять, возможно ли, по крайней мере, некоторая бизнес-логика не оказаться в слое представления приложения. В большинстве случаев возникают проблемы, такие как «Если пользователь выбрал опцию x, то приложение должно позволить ему предоставить …

10
Как я могу скрыть свою подпись в программе? [закрыто]
У нас есть курс по университетскому программированию, и наши студенты задают несколько вопросов по программированию в нашей группе на Facebook. Я немного не решаюсь поделиться всеми своими программами, особенно если это что-то классное для одного из заданий, поскольку на них смотрят ТП, и они могут заметить, если у кого-то есть …
31 copyright 

3
GCC умирает без поддержки потоков в Windows? [закрыто]
Мне нужно мнение. GCC всегда был очень хорошим компилятором, но в последнее время он теряет «привлекательность». Я только что обнаружил, что в Windows GCC нет std::threadподдержки, заставляющей пользователей Windows использовать другой компилятор, потому что самая захватывающая функция все еще отсутствует. Но почему на самом деле GCC до сих пор не …

8
Когда вам понадобятся «сотни тысяч» тем?
Erlang, Go и Rust так или иначе заявляют, что поддерживают параллельное программирование с дешевыми «потоками» / сопрограммами. В Go Справка гласит: Целесообразно создавать сотни тысяч подпрограмм в одном и том же адресном пространстве. Rust Учебник говорит: Поскольку задачи значительно дешевле в создании, чем традиционные потоки, Rust может создавать сотни тысяч …

2
Как модульные тесты Guava генерируются автоматически?
В Гуаве автоматически создаются тестовые случаи : В Гуаве огромное количество модульных тестов: по состоянию на июль 2012 года пакет guava-tests включает более 286 000 отдельных тестовых случаев. Большинство из них генерируются автоматически , а не пишутся от руки, но тестовое покрытие Guava очень тщательно, особенно для com.google.common.collect. Как они …

5
Лучшие практики для выполнения ненадежного кода
У меня есть проект, в котором мне нужно разрешить пользователям запускать произвольный ненадежный код Python ( примерно так ) на моем сервере. Я довольно новичок в python, и я хотел бы избежать ошибок, которые могут привести к дырам в системе безопасности или другим уязвимостям в системе. Существуют ли передовые практики, …

2
Что такое C ++ / CX и C ++ / CLI и как они связаны с C ++ и WinRT?
Я думал о том, чтобы взять на себя задачу изучения C ++ для разработки приложений Metro, и именно тогда я наткнулся на C ++ / CX. Могут ли приложения Metro быть написаны на C ++ 11? Они требуют C ++ / CX для работы? А что именно C ++ / …
31 c++  windows-8  winrt 

10
Почему так сложно заставить сотрудников обновлять систему отслеживания проблем?
У меня всегда была такая борьба, чтобы люди обновляли свои проблемы, как в моей компании, так и на работе. У меня было несколько случаев, когда люди действительно делали это по доброй воле своего сердца, но ~ 70% времени мне приходилось гоняться за людьми. Будучи тем, кто обычно осуществляет ту или …

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