Changes for page Glossary

Last modified by chrisby on 2024/09/19 10:50

From version 14.1
edited by chrisby
on 2023/10/13 10:48
Change comment: Rollback to version 13.2
To version 16.2
edited by chrisby
on 2023/10/13 11:03
Change comment: There is no comment for this version

Summary

Details

Page properties
Syntax
... ... @@ -1,1 +1,1 @@
1 -XWiki 2.1
1 +Markdown 1.2
Content
... ... @@ -1,5 +4,43 @@
1 -(% class="box infomessage" %)
2 -(((
3 -(% style="text-align: justify;" %)
4 4  The explanations given here do not claim to be complete. They merely serve as a brief description to give an idea of the respective term. For more detailed information, the Internet should be consulted. Note that some of these technical terms are fuzzy, overlap with other terms, or have different meanings depending on the context or the people using them. This Glossary is an attempt to structure these terms in a concise manner. Be open to variations as you talk and work with other developers.
5 -)))
2 +
3 +| ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
4 +| **Term** | **Explanation** |
5 +| Abstraction |
6 +
7 +* The counterpart to 'Concretion', refers to interfaces and abstract classes that define behavior (function signatures) but leave the internal operacommand-line interfacestion of these functions undefined.
8 +* A higher-level, generalized unit of code. Duplication across multiple functions can be resolved by creating an 'abstraction' - a separate function containing the shared code. This adheres to the DRY principle. |
9 +| Assertion | Pertains to an assertion function, a crucial part of testing. If the input values don't satisfy a certain condition, the test containing the assertion fails. Example: 'assertEquals(expectedResult, actualResult)'. |
10 +| Awareness | A class A is aware of class B if it contains a reference to class B in its source code. If no such reference exists, class A is unaware of class B. |
11 +| Best Practices | Widely accepted guidelines designed to enhance programming productivity and code quality. Adherence can prevent many potential issues. |
12 +| Concretion | The counterpart to 'abstraction', also known as 'implementation'. In OOP, refers to non-abstract classes that implement the methods of interfaces or abstract classes. A concretion provides the 'concrete' code defining the workings of these abstract functions. |
13 +| Constructor Injection | A type of dependency injection in which dependencies are provided to an object through constructor arguments.
14 + |
15 +| Command-Line Interface (CLI) | "[...] a means of interacting with a computer program by inputting lines of text [...]".^[[src](https://en.wikipedia.org/wiki/Command-line_interface)]^ For example, tools/commands used when working with a (Linux) terminal. |
16 +| Component | In software architecture, a module capable of independent operation, often compiled or packaged into an executable such as a .jar or .exe file. |
17 +| Daemon | A program running in the background of a system, typically without a GUI. |
18 +| Data Structure | A class primarily meant to hold data and provide basic operations to access and manipulate that data. May contain only public fields, or private fields with associated getter and setter methods. |
19 +| Dependency | In context of classes, a dependency is an object required by another object to perform its functions. Often, dependencies are provided via dependency injection. |
20 +| Dependency Cycle | A situation where two or more classes depend on each other to be instantiated. This situation creates a circular dependency that makes object creation impossible. The dependency graph should be a directed acyclic graph rather than a cycle. |
21 +| Dependency Injection (DI) | A technique where an object's dependencies are provided from outside, rather than being created within the object itself. |
22 +| Dirty | Code that is messy, unreadable, or poorly designed. Often refers to 'quick-and-dirty' code written under time pressure. |
23 +| Distribution | A version of an OS packaged with specific software and configurations, designed for specific use cases. Examples: Ubuntu, Fedora, and Arch Linux, all based on Linux. |
24 +| Dynamic | Behaviors/properties determined at runtime. Examples: dynamic dependencies can be replaced at runtime; dynamically-typed languages determine an object's type at runtime. |
25 +| Entity |
26 +
27 +1. In the OOP context, this means that two separately constructed objects of the same type, even with identical field values, are still distinct entities.
28 +
29 +2. In software architecture, refers to classes representing application data models and core business logic. A banking application might have entity classes like Account, Order, Customer, or Employee with methods like myCustomer.executeOrder(someOrder). |
30 +| | |
31 +| | |
32 +| | |
33 +| | |
34 +| | |
35 +| | |
36 +| | |
37 +| | |
38 +| | |
39 +| | |
40 +| | |
41 +| | |
42 +
43 +