Evolution Flashcards

1
Q

refactor

A

One of the most common ways of managing change. helps developers modify the architecture of a program while keeping its behavior the same, enabling them to implement or modify functionality more easily.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

version control

A

help developers track changes to code, allowing them to revert, merge, fork, and clone projects in a way that is traceable and reliable.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

centralized version control

A

representing one single ground truth of a project’s code, usually stored on a server. Commits to centralized repositories become immediately available to everyone else on a project.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

distributed version control (aka git)

A

allowing one copy of a repository on every local machine. Commits to these local copies don’t automatically go to everyone else; rather, they are pushed to some central copy, from which others can pull updates.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

build

A

compiling source, data, and other resources into an executable format suitable for testing (and possibly release).
- Build systems can be as simple as nothing and as complex is hundreds and thousands of lines of build script code, compiling, linking, and managing files in a manner that prepares a system for testing

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

continuous integration

A

completely automating not only builds, but also the running of a collection of tests, every time a bundle of changes is pushed to a central version control repository.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

benefit of continuous integration

A

every major change is quickly built, tested, and ready for deployment, shortening the time between a change and the discovery of failures. This only works if builds are fast.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

continuous delivery systems

A

ensure that complete builds are readily available for release (potentially multiple times per day for software on the web).

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Good release management should

A

archive new versions of software, automatically post the version online, make the version accessible to users, keep a history of who accesses the new version, and provide clear release notes describing changes from the previous version

How well did you know this?
1
Not at all
2
3
4
5
Perfectly