English | Russian |
Consider the case of a superstate on a statechart that is decomposed into two lower-level concurrent statecharts | Рассмотрим случай надсостояния на диаграмме состояний, разложенной на две параллельные диаграммы более низкого уровня (см. Designing Concurrent, Distributed, and Real-time Applications with UML Object Technology Series by Hassan Gomaa ssn) |
Exercise: Show that the usual primal-dual complementary slackness for optimality is a special case of 2b | Упражнение. Показать, что обычное свойство дополняющей нежёсткости оптимальных решений для прямой и двойственной задач является частным случаем 2б (ssn) |
extension use case that is invoked to perform the alternative action | расширенный вариант использования, который выполняется для достижения альтернативного результата (ssn) |
in contemporary practice, CASE and programming development tools can effectively assist in performing refactorings. Many tools contain catalogs of supported refactorings. Fowler 1999 is a principal source of reference that lists and documents in excess of sixty refactoring methods. The following discussion illustrates the use of refactoring methods by discussing just three of them | в современной практике CASE и инструментальные средства разработки программ могут существенно помочь в реализации рефакторинга. Многие инструментальные средства содержат каталоги поддерживаемых рефакторингов. Фаулер 1999 является основным источником ссылок, который перечисляет и документирует более шестидесяти методов рефакторинга. Следующее обсуждение иллюстрирует использование методов рефакторинга, рассматривая только три из них (см. Maciaszek L.A. and Liong B.L. 2005: Practical Software Engineering) |
in contemporary practice, CASE and programming development tools can effectively assist in performing refactorings. Many tools contain catalogs of supported refactorings. Fowler 1999 is a principal source of reference that lists and documents in excess of sixty refactoring methods. The following discussion illustrates the use of refactoring methods by discussing just three of them | в современной практике CASE– и инструментальные средства разработки программ могут существенно помочь в реализации рефакторинга. Многие инструментальные средства содержат каталоги поддерживаемых рефакторингов. Фаулер 1999 является основным источником ссылок, который перечисляет и документирует более шестидесяти методов рефакторинга. Следующее обсуждение иллюстрирует использование методов рефакторинга, рассматривая только три из них (см. Maciaszek L.A. and Liong B.L. 2005: Practical Software Engineering) |
in this case, the first item of data is often the count of data items that follow | Тогда первый элемент набора данных часто является счётчиком числа последующих элементов |
one of refactoring targets is called large class – a class that does too much and/or has too many data members. Large classes can result from excessive minimization of coupling between classes. In case of the large class target, two methods relevant to Iteration 1 code are: Extract Class and Extract Interface Fowler, 1999 | Одна из целей использования рефакторинга называется большим классом – классом, который делает слишком много и/или имеет слишком много элементов данных. Большие классы могут возникнуть из-за чрезмерной минимизации связей между классами. В случае большого класса в коде итерации 1 уместны два метода: Класс извлечения и Интерфейс извлечения (Фаулер, 1999; см. Maciaszek L.A. and Liong B.L. (2005): Practical Software Engineering) |
Speculative generality can be spotted when the only users of a method or class are test cases. If you find such a method or class, delete it and the test case that exercises it. If you have a method or class that is a helper for a test case that exercises legitimate functionality, you have to leave it in, of course | Теоретическая общность может быть обнаружена, когда единственными пользователями метода или класса являются контрольные примеры. Найдя такой метод или класс, удалите его и контрольный пример, его проверяющий. Если есть вспомогательный метод или класс для контрольного примера, осуществляющий разумные функции, его, конечно, надо оставить (см. Refactoring: Improving the Design of Existing Code by Martin Fowler et al. 1999 ssn) |
this is not the case for application-level state machines that are called when the application goes from one discrete mode of operation or user interface display into another | Однако для конечных автоматов, работающих на уровне приложения, которые вызываются при переходе приложения из одного режима выполнения операций или отображения пользовательского интерфейса в другой, такие ситуации не характерны (см. "Writing Mobile Code Essential Software Engineering for Building Mobile Applications" by Ivo Salmre 2005 ssn) |