Что такое legacy код

Что такое legacy код

Legacy code is source code that relates to a no-longer supported [ citation needed ] or manufactured operating system or other computer technology. The term can also mean code inserted into modern software for the purpose of maintaining an older or previously supported feature – for example supporting a serial interface even though many modern systems do not have a serial port. It may also be in the form of supporting older file formats [ citation needed ] that may have been encoding in non-ASCII characters, such as EBCDIC. [ citation needed ]

In practice, most source code has some dependency on the platform for which it is designed – even if a programmer uses a platform-independent programming language like Java, it is hard to write a large, useful program that is totally independent of its environment. When the manufacturer upgrades a platform (or the platform is superseded), the code may no longer work without changes, and becomes legacy code. A large part of the task of a software engineer is to continually alter code to prevent this.

While the term usually refers to source code, it can also apply to executable code that no longer runs on a later version of a system, or requires a compatibility layer to do so. An example would be a classic Macintosh application which will not run natively on Mac OS X, but runs inside the Classic environment, or a Win16 application running on Windows XP using the Windows on Windows feature in XP.

Modern interpretations [ edit ]

More recently, the software engineering community has developed other interpretations for the term legacy code. Among the most prevalent are source code inherited from someone else and source code inherited from an older version of the software. Eli Lopian, CEO of Typemock, has defined it as "code that developers are afraid to change". [1] Michael Feathers [2] introduced a definition of legacy code as code without tests, which reflects the perspective of legacy code being difficult to work with in part due to a lack of automated regression tests. He also defined characterization tests to start putting legacy code under test.

Читайте также:  Перестал открываться пуск в windows 10

Ginny Hendry characterized creation of code as a challenge to current coders to create code that is "like other legacies in our lives—like the antiques, heirlooms, and stories that are cherished and lovingly passed down from one generation to the next. What if legacy code was something we took pride in?". [3]

Англо-русский толковый словарь терминов и сокращений по ВТ, Интернету и программированию. . 1998-2007 .

Смотреть что такое "legacy code" в других словарях:

Legacy code — is source code that relates to a no longer supported or manufactured operating system or other computer technology. The term can also mean code inserted into modern software for the purpose of maintaining an older or previously supported feature… … Wikipedia

legacy code — noun Source code that relates to a no longer supported or manufactured operating system or other computer technology. See Also: legacy system … Wiktionary

Legacy system — A legacy system is an old method, technology, computer system, or application program that continues to be used, typically because it still functions for the users needs, even though newer technology or more efficient methods of performing a task … Wikipedia

Legacy port — A legacy port is a port or connector on a PC that is considered fully or partially obsolete. Some manufacturers, particularly in laptops, remove the legacy ports in lieu of modern ports such as USB ports. The modern ports usually provide much of… … Wikipedia

Code refactoring — Refactor redirects here. For the use of refactor on Wikipedia, see Wikipedia:Refactoring talk pages. Code refactoring is disciplined technique for restructuring an existing body of code, altering its internal structure without changing its… … Wikipedia

Читайте также:  Здесь люди кажется боятся знакомиться

Legacy Interactive — is a game developer and publisher founded in 1998. Located in Hollywood, California, it develops casual games. The executive team is headed by founder and video game industry veteran Ariella Lehrer. To date, Legacy has created 3 new game genres,… … Wikipedia

Legacy Of Kain: Soul Reaver — Legacy of Kain Soul Reaver Éditeur Eidos Interactive Développeur Crystal Dynamics Date de sortie 1999, 2000 Genre Action aventure Mode de … Wikipédia en Français

Legacy Of Kain — Soul Reaver — Legacy of Kain: Soul Reaver Legacy of Kain Soul Reaver Éditeur Eidos Interactive Développeur Crystal Dynamics Date de sortie 1999, 2000 Genre Action aventure Mode de … Wikipédia en Français

Legacy of kain: soul reaver — Legacy of Kain Soul Reaver Éditeur Eidos Interactive Développeur Crystal Dynamics Date de sortie 1999, 2000 Genre Action aventure Mode de … Wikipédia en Français

Legacy of Kain: Soul Reaver — Legacy of Kain Soul Reaver Éditeur Eidos Interactive Développeur Crystal Dynamics Date de sortie 1999, 2000 Genre Médiéval Fantastique Mode de jeu … Wikipédia en Français

Code of Vengeance — Title card for the 1985 TV movie Also known as Dalton and Dalton s Code of Vengeance Genre … Wikipedia

Не могу найти перевод. Можете объяснить в двух словах что это такое? Что за понятие?

Ответы (4 шт):

Legacy code — тяжелая наследственность : ) Устаревший код, который более не поддерживается и не обновляется, но используется. Второе значение — код от сторонних разработчиков, или из старых версий.

@sergiks все написал верно, но все таки уточню: вообще термин Legacy в программировании означает прилагательное означающее принадлежность к традиционному. Скажем, Legacy Driver — означает драйвер от производителя и т.д.

Читайте также:  Подключение камеры заднего вида к смартфону андроид

Суммирорав все определения, которые встречались, для себя вывел следующее.

Legacy code — код, подпадающий под один или несколько признаков:

  • написан другими разработчиками, возможно, уже недоступными для контакта;
  • не покрыт юнит-тестами;
  • сохранён для совместимости с предыдущими версиями системы;
  • устарел и/или более не поддерживается в связи с развитием системы (написан на предыдущем языке, под старую архитектуру, аппаратную платформу, операционную систему и т.д.).

Требование "опыт работы с legacy кодом" в вакансии означает, что вам достанется код, написанный лет 10-20 назад давно уволившимися программистами. Не исключено, что он изначально был плохо написан, что требования к проекту менялись уже много раз и каждый раз код правился как придётся в режиме жёсткого дедлайна, что документацию никто не писал и рефакторинг не делал. Поэтому вместо того чтобы писать новый код на прогрессивных технологиях, вам большую часть времени придётся разбираться в старом и править его, ловя потом каскады багов. Добро пожаловать в чудесный мир кровавого энтерпрайза, основного потребителя Java.

Ссылка на основную публикацию
Через какое время отключают сим карту мегафон
Часто можно слышать, что некоторые люди вместо одной сим-карты предпочитают пользоваться двумя или сразу несколькими. Это объясняется лояльной политикой компании...
Утилиты асус для ноутбука
Драйверы и утилиты от производителя для ноутбуков и нетбуков ASUS под операционную систему Windows 10 / 8.1 / 8 /...
Утилиты для виндовс 10 64 бит
Скачать антивирус NOD32 на компьютер Windows 10 бесплатно на русском языке для защиты ноутбука или ПК от вирусов и потенциального...
Через прямую l провести плоскость перпендикулярно данной
Не будет преувеличением утверждать, что построение взаимно перпендикулярных прямых и плоскостей наряду с определением расстояния между двумя точками являются основными...
Adblock detector