Logo
Pattern

Discover published sets by community

Explore tens of thousands of sets crafted by our community.

Software Engineering Principles

20

Flashcards

0/20

Still learning
StarStarStarStar

Abstraction

StarStarStarStar

Simplifying complex systems by modeling them at a more general level, omitting details.

StarStarStarStar

YAGNI (You Aren't Gonna Need It)

StarStarStarStar

A principle of extreme programming that states to not add functionality until deemed necessary.

StarStarStarStar

Encapsulation

StarStarStarStar

Bundling data with the methods that operate on it, while keeping both safe from outside interference

StarStarStarStar

Scalability

StarStarStarStar

The capability of a system to handle a growing amount of work or its potential to accommodate growth.

StarStarStarStar

Coupling

StarStarStarStar

A measure of how interdependent software modules are.

StarStarStarStar

Cohesion

StarStarStarStar

The degree to which elements of a module belong together.

StarStarStarStar

Concurrency

StarStarStarStar

Property of systems that allow for multiple computations to happen simultaneously.

StarStarStarStar

Refactoring

StarStarStarStar

The process of restructuring existing code without changing its external behavior.

StarStarStarStar

Waterfall Model

StarStarStarStar

A linear sequential flow in which progress is seen as flowing steadily downwards through several phases.

StarStarStarStar

SOLID Principles

StarStarStarStar

A group of five principles for object-oriented programming and design: Single-responsibility, Open-closed, Liskov substitution, Interface segregation, and Dependency inversion.

StarStarStarStar

Design Patterns

StarStarStarStar

Typical solutions to common problems in software design.

StarStarStarStar

DevOps

StarStarStarStar

A set of practices that combines software development (Dev) and IT operations (Ops).

StarStarStarStar

Continuous Integration (CI)

StarStarStarStar

A software development practice where developers regularly integrate their code changes into a central repository.

StarStarStarStar

Binary Search Algorithm

StarStarStarStar

A fast search algorithm with complexity of O(log n) that repeatedly divides the range of searched elements in half.

StarStarStarStar

DRY (Don't Repeat Yourself)

StarStarStarStar

A principle aimed at reducing the repetition of software patterns.

StarStarStarStar

KISS (Keep It Simple, Stupid)

StarStarStarStar

Design principle that states most systems work best if they are kept simple rather than made complex.

StarStarStarStar

Modularity

StarStarStarStar

Dividing a program into distinct features with as little overlap as possible.

StarStarStarStar

Agile Methodology

StarStarStarStar

A group of modern software development methodologies based on iterative development.

StarStarStarStar

Separation of Concerns

StarStarStarStar

Design principle for separating a computer program into distinct sections.

StarStarStarStar

Test-Driven Development (TDD)

StarStarStarStar

A software development process based on the repetition of a very short development cycle.

Know
0
Still learning
Click to flip
Know
0
Logo

© Hypatia.Tech. 2024 All rights reserved.