... |
... |
@@ -11,6 +11,7 @@ |
11 |
11 |
| 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. | |
12 |
12 |
| [[Constructor Injection|doc:Software Engineering.Architecture.Dependency Injection.Types of Dependency Injection.WebHome]] | A type of dependency injection in which dependencies are provided to an object through constructor arguments. | |
13 |
13 |
| 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. | |
|
14 |
+| Commitment | Binding promise to complete a specific task within a set period of time. | |
14 |
14 |
| Component | Often used to refer to a set of units, modules, or "architectural" components without a clearer specification. In software architecture, it refers to a module capable of independent operation, often compiled or packaged into an executable such as a `.jar` or `.exe` file. | |
15 |
15 |
| Daemon | A program running in the background of a system, often without a GUI. | |
16 |
16 |
| 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. | |
... |
... |
@@ -17,10 +17,12 @@ |
17 |
17 |
| 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. | |
18 |
18 |
| 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. | |
19 |
19 |
| [[Dependency Injection|doc:Software Engineering.Architecture.Dependency Injection.WebHome]] (DI) | A technique where an object's dependencies are provided from outside, rather than being created within the object itself. | |
|
21 |
+| Developer | Skilled programmer with advanced technical knowledge in areas such as software design, coding best practices, technical concepts, etc. | |
20 |
20 |
| Dirty (Code) | Code that is messy, unreadable, or poorly designed. | |
21 |
21 |
| 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. | |
22 |
22 |
| Dynamic | Behaviors/properties determined at runtime. Examples: dynamic dependencies can be replaced at runtime; dynamically-typed languages determine an object's type at runtime. | |
23 |
23 |
| Entity | 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. 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)`. | |
|
26 |
+| Estimates | Intelligent guesses about the resources needed to complete a task. No binding promises as opposed to commitments. | |
24 |
24 |
| [[Field Injection|doc:Software Engineering.Architecture.Dependency Injection.Types of Dependency Injection.WebHome]] | A type of dependency injection where a dependency is injected directly into an object's field via reflection, bypassing encapsulation. | |
25 |
25 |
| Graphical User Interface (GUI) | A user interface that allows users to interact with the system through graphical elements like icons, buttons, windows, and menus. | |
26 |
26 |
| Isolation/Isolated | The opposite of integration. Isolation is the separation of a unit or component from the rest of the system in order to test, develop or understand it independently and ensure that it works correctly without external interference. For example, in unit testing, a single unit is usually tested independently of other units and is isolated from them. | |
... |
... |
@@ -35,6 +35,8 @@ |
35 |
35 |
| Pain | An unpleasant experience caused by unnecessary efforts that could have been mitigated with better design of the original code. | |
36 |
36 |
| Physical | Counterpart to logical. Refers to hardware. For example, physically deleting a file means removing it from the disk. | |
37 |
37 |
| Production Code | Code that comprises the functioning part of an application, as opposed to test code. | |
|
41 |
+| Programmer | Someone who writes and tests code. The knowledge level of a beginner. | |
|
42 |
+| Requirement | Statement of what a software must be capable of doing, often outlining features, constraints, and success criteria. | |
38 |
38 |
| Resources | Refers to the assets used in the project, including time, money, staff, and effort. | |
39 |
39 |
| Rollback | The act of returning a system or data to a previous state, often using a snapshot. | |
40 |
40 |
| Runtime | The period when the code is being executed. Often used to distinguish from compile time. | |
... |
... |
@@ -43,7 +43,7 @@ |
43 |
43 |
| Separation of Concerns | A design principle suggesting that each module or component should have a single responsibility or concern, enhancing clarity and maintainability. | |
44 |
44 |
| [[Setter Injection|doc:Software Engineering.Architecture.Dependency Injection.Types of Dependency Injection.WebHome]] | A type of dependency injection where a dependency is provided to an object through a setter method. | |
45 |
45 |
| Snapshot | A saved state of a system or data at a specific point in time. Can be used for rollbacks. | |
46 |
|
-| Static | Pertains to behaviors or properties determined at compile time. Examples: static code analysis tools inspect source code; statically-typed languages determine an object's type at compile time. | |
|
51 |
+| Static | Behaviors/properties determined before or at compile time. Examples: static code analysis tools inspect source code; statically-typed languages determine an object's type at compile time. | |
47 |
47 |
| System | Entirety of software components designed to work together effectively in a production environment. | |
48 |
48 |
| Test Code | Code that tests the functionality of production code. Does not contribute to the operational aspects of an application. | |
49 |
49 |
| Test-Driven Development (TDD) | A development approach where code is written in small increments, with tests defining functionality written at the beginning of each coding iteration. | |