Git Product home page Git Product logo

awesome-developer-dictionary's Introduction

Dictionary

Awesome Developer Dictionary

Simple definitions of Programming terms

Awesome Awesome Awesome

Introduction

This project was created with the intention of making developers, both experts and beginners get a basic understanding of some terms used in the programming world.

Community

Feel free to submit a PR adding a new term with a definition. If you want to translate the repo into your native language, please feel free to do so.

All the translations for this repo will be listed below:

Contents

  1. A
  2. B
  3. C
  4. D
  5. E
  6. F
  7. G
  8. H
  9. I
  10. J
  11. K
  12. L
  13. M
  14. N
  15. O
  16. P
  17. Q
  18. R
  19. S
  20. T
  21. U
  22. V
  23. W
  24. X
  25. Y
  26. Z

A

  • abstraction: a technique for arranging complexity of computer systems.
  • agile: the ability to create and respond to change.
  • algorithm: the basic technique used to get the job done.
  • application (software):a program or group of programs designed for end users.
  • API (application programming interface): an intermediary software that allows two or more applications to talk to each other.
  • argument: a value that is passed to the function (as input) when it is called.
  • array: a data structure consisting of a collection of elements, values or variables each identified by at least one array index or key. see list

B

  • binary operator: an operator that takes two arguments.
  • boolean: a data type that has one of two possible values (usually denoted true and false).
  • branch: a parallel world where you can create commit without introducing bugs into production code.
  • bug: an error in the source code that causes a program to produce unexpected results.

C

  • callback: a function that is passed as an argument to another and is expected to execute at a given time.
  • class: a defined structure to create an object in an object-oriented programming language.
  • CLI (Command Line Interface): the terminal version of an application.
  • client: a piece of computer hardware or software that accesses a service made available by a server.
  • closure: a persistent scope which holds on to local variables even after the code execution has moved out of that block.
  • Cloud computing: Cloud computing is the on-demand availability of computer system resources, especially data storage and computing power, without direct active management by the user. The term is generally used to describe data centers available to many users over the Internet.
  • cohesion: a measure of how well the lines of source code within a module work together.
  • compiler: a program that translates computer code written in one programming language into another language.
  • components: independent and reusable bits of code that work in isolation and returns HTML via a render function. see web components
  • coupling: the degree of interdependence between software modules.
  • control flow: the order in which individual statements, instructions or function calls of an imperative program are executed.
  • CSV: plain-text files used to better organize large amounts of data.

D

  • database: a central location in which data is stored and managed.
  • Data-driven Programming: a programming paradigm in which the program statements describe the data to be matched and the processing required rather than defining a sequence of steps to be taken.
  • data structure: a data structure is a data organization, management, and storage format that enables efficient access and modification.
  • debugging: the process of finding and resolving bugs (defects or problems that prevent correct operation) within computer programs, software, or systems.
  • destructuring: a convenient way of extracting multiple values from data stored in objects and Arrays.
  • documentation (docs): a written text or illustration that accompanies a software which either explains how the software operates or how to use it.

E

  • ecosystem: a collection of software projects, which are developed and co-evolve in the same environment.
  • encapsulation: the bundling of data with the methods that operate on that data.
  • enum: a special data type that enables for a variable to be a set of predefined constants.
  • ES6 (ES2015): version 6 of the ECMA Script programming language and adds many more features intended to make large-scale software development easier.
  • event: an action or occurrence detected by a program.
  • event handler: a function containing program statements that are executed in response to an event.
  • expression: a combination of letters, numbers, or symbols used to represent a value of a variable.
  • extension: a piece of software extends the capabilities of an appliation and adds extra features to an already working standalone application.
  • extension (file): a three or four-letter abbreviation that signifies the file type. Eg: .js .tsx

F

  • framework: a concrete platform where common code with generic functionality can be selectively specialized or overridden by developers or users.
  • float: a data type composed of a number that is not an integer, because it includes a fraction represented in decimal format.
  • function: a block of organized, reusable code that is used to perform a single, related action.
  • Functional Programming: a programming paradigm that builds software by composing pure functions, avoiding shared state, mutable data, and side-effects.

G

  • generator: a function that can be used to control the iteration behaviour of a loop.
  • getter: a method that gets the value of a property.
  • GUI (Graphical User Interface): type of user interface where users can interact with electronic devices via visual indicator representations such as buttons, scroll bars, cursors, etc.

H

  • high-order function: a function that takes a function as an argument and returns a function.
  • HTML (Hyper Text Markup Language): standard markup language used to create Web pages.
  • HTTP (Hypertext Transfer Protocol): an application-layer protocol for transmitting hypermedia documents, such as HTML.
  • HTTP request methods: Some methods which indicate desired action on a resource. They include GET, PUT, POST etc.

I

  • IaaS (Infrastructure as a Service): Infrastructure as a service (IaaS) is a form of cloud computing that provides virtualized computing resources like compute, network, and storage to consumers on-demand, over the internet, and on a pay-as-you-go basis.
  • IDE (Integrated Development Environment): a software application that combines all of the features and tools needed by a software developer.
  • immutable object: an object which cannot change after creation.
  • inheritance: the tendency of one class to derive properties and characteristics from other classes.
  • integer (int): a data type that represents some range of mathematical integers.
  • iteration: a general term for taking each item of something, one after another.
  • interpreter: is a computer program that directly executes instructions written in a programming or scripting language, without requiring them previously to have been compiled into a machine language program.
  • iterator: an object that enables a programmer to traverse a container, particularly lists.

J

  • JAVA: Java is a class-based, object-oriented programming language that is designed to have as few implementation dependencies as possible. It is a general-purpose programming language intended to let application developers write once, run anywhere (WORA), meaning that compiled Java code can run on all platforms that support Java without the need for recompilation. Java applications are typically compiled to bytecode that can run on any Java virtual machine (JVM) regardless of the underlying computer architecture.
  • Java EE: Java EE stands for Java Enterprise Edition, which was earlier known as J2EE and is currently known as Jakarta EE. It is a set of specifications wrapping around Java SE (Standard Edition). The Java EE provides a platform for developers with enterprise features such as distributed computing and web services. Java EE applications are usually run on reference run times such as microservers or application servers. Examples of some contexts where Java EE is used are e-commerce, accounting, banking information systems.
  • jQuery: a fast, small, and feature-rich JavaScript library whose purpose is to make it much easier to use JavaScript on your website.
  • JSON(JavaScript Object Notation): a syntax for storing and exchanging data compactible with most programming languages.
  • JSX: a HTML-like syntax that is intended to be used by preprocessors to transform HTML-like text found in JavaScript files into standard JavaScript objects that a JavaScript engine can parse.

L

  • library: a single or collection of files, programs, routines, scripts, or functions that can be referenced in another code.
  • list: a collection type that stores ordered, non-unique elements which allow duplicates.
  • loop: a programming structure that repeats a sequence of instructions until a specific condition is met.

M

  • Machine Language: is the language understood by a computer.
  • Markup Language: a computer language that uses tags to define elements within a document.
  • method: a function associated with a class or an object.
  • mutable object: an object which can change after creation.

N

  • node: a basic unit of a data structure, such as a linked list or tree data structure.
  • null: a special data type which can have only one value: NULL.

O

  • Object-Oriented Programming: A programming paradigm that organizes software design around data, or objects, rather than functions and logic.
  • On-Premises: On-premises is the software and technology that is located within the physical confines of an enterprise – often in the company's data center (installing and running software on hardware located within the premises of the company) – as opposed to running remotely on hosted servers or in the cloud.
  • Operator: a symbol that tells the compiler or interpreter to perform specific mathematical, relational or logical operation and produce final result.

P

  • PaaS (Platform as a Service): Platform-as-a-service (PaaS) is a type of cloud computing offering in which a service provider delivers a platform to clients, enabling them to develop, run, and manage business applications without the need to build and maintain the infrastructure such software development processes typically require.
  • package: a namespace that organizes a set of related classes and interfaces.
  • package manager: a programming language's tool to create project environments and easily import external dependencies.
  • parameter: variables that are used in the function declaration to represent those arguments that were sent to the function during the function call.
  • plugin: see extension
  • PNG (Portable Network Graphics): is an image type that's commonly used in web design to provide a transparent background and/or a semi-transparent image.
  • pointer: variable that stores the memory address of another variable.
  • polymorphism: an object-oriented programming concept that refers to the ability of a variable, function or object to take on multiple forms.
  • Procedural Programming: a programming paradigm based upon the concept of procedure calls, in which statements are structured into procedures (also known as subroutines or functions).
  • Programming: the process of creating a set of instructions that tell a computer how to perform a task.
  • Programming Language: a vocabulary and set of grammatical rules for instructing a computer or computing device to perform specific tasks. Eg. JavaScript, Python.
  • Programming Paradigm: a style or "way" of programming.
  • promise: an object that may produce a single value some time in the future.
  • properties: special values that are included within a class or an object.
  • prototype (JavaScript): an internal property in a JavaScript object.
  • pseudocode: detailed description of steps in a computer program or algorithm, intended for human reading rather than machine reading. It often uses structural conventions of programming languages.
  • Python: Python is an interpreted, high-level and general-purpose programming language.

Q

  • Query Language: a computer programming language that requests and retrieves data from database and information systems by sending queries.

R

  • recursion: a process in which a function calls itself as a subroutine. See recursion
  • Regular Expression: a sequence of symbols and characters expressing a string or pattern to be searched for within a longer piece of text.
  • repository: a central location in which code is stored and managed.
  • REPL (Read-Eval-Print Loop): an interactive interpreter to a programming language.
  • REST (Representational State Transfer): Representational state transfer (REST) is a software architectural style that defines a set of constraints to be used for creating Web services. Web services that conform to the REST architectural style, called RESTful Web services, provide interoperability between computer systems on the internet. RESTful Web services allow the requesting systems to access and manipulate textual representations of Web resources by using a uniform and predefined set of stateless operations, in the form of an HTTP method, or verb (GET, POST, PUT, DELETE etc.). By using a stateless protocol and standard operations, RESTful systems aim for fast performance, reliability, and the ability to grow by reusing components.
  • RESTful Web Services: web services that conform to the REST architectural style.

S

  • SaaS (Software as a Service): Software as a service (SaaS) is a software licensing and delivery model in which software is licensed on a subscription basis and is centrally hosted. It is sometimes referred to as "on-demand software".
  • sandbox: a testing environment that isolates untested code changes and outright experimentation from the production environment or repository, in the context of software development including Web development and revision control.
  • server: a computer that provides data to other computers.
  • setter: a method that sets the value of a property.
  • SOA (Service Oriented Architecture): Service-oriented architecture (SOA) is a style of software design where services are provided to the other components by application components, through a communication protocol over a network.
  • SOAP (Simple Object Access Protocol): SOAP (abbreviation for Simple Object Access Protocol) is a messaging protocol specification for exchanging structured information in the implementation of web services in computer networks. Its purpose is to provide extensibility, neutrality, verbosity and independence. It uses XML Information Set for its message format, and relies on application layer protocols, most often Hypertext Transfer Protocol (HTTP), although some legacy systems communicate over Simple Mail Transfer Protocol (SMTP), for message negotiation and transmission.
  • Software Engineering: is the process of analyzing user needs and designing, constructing, and testing end-user applications that will satisfy these needs through the use of software programming languages.
  • Source Code: is any collection of code, with or without comments, written using a human-readable programming language, usually as plain text.
  • statement: a single line of code that is used to perform a specific task.
  • string: a sequence of characters.
  • String Concatenation: is the operation of joining character strings end-to-end.
  • subexpression: a part of an expression that is by itself a correct expression.
  • SVG (Scalable Vector Graphics): a vector graphics file format that enables two-dimensional images to be displayed in XML pages on the Web.
  • syntax: the grammar of a programming language.

T

  • template: a preformatted file that serve as the starting point for another file.
  • tenary operator: an operator that takes three arguments.
  • testing: a process to evaluate the functionality of a software application with an intent to find whether the developed software met the specified requirements or not and to identify the bugs to ensure that the product is bug-free.
  • testing framework: a set of guidelines or rules used for creating and designing test cases.
  • token: a single element of a programming language. Eg keyword, operator
  • tree: a data structure in which each element is attached to one or more elements directly beneath it.
  • type (data type): an attribute of data which tells the compiler or interpreter how the programmer intends to use the data.

U

  • UI (User Interface): the point of human-computer interaction and communication in a device.
  • UX (User Experience): is what a user of a particular product experiences when using that product.
  • unary operator: an operator that takes a single operand and performs an operation.
  • URL (Uniform Resource Locator): the address of a given unique resource on the Web.

V

  • variable: are used to store information to be referenced and manipulated in a computer program. Their purpose is to label and store data in memory so that the user may use it throughout the program if needed.
  • Version Control: a system that records changes to a file or set of files over time so that you can recall specific versions later.
  • VM (Virtual Machine): A virtual machine (VM) is a virtual environment that functions as a virtual computer system with its own CPU, memory, network interface, and storage, created on a physical hardware system (located off- or on-premises). Software called a hypervisor separates the machine’s resources from the hardware and provisions them appropriately so they can be used by the VM.

W

  • Web Components: a set of web platform APIs that allow you to create new custom, reusable, encapsulated HTML tags to use in web pages and web apps.
  • webhooks: automated messages sent from apps when something happens.
  • WebRTC: A browser-based programming interface (API) from the W3C for voice and video calling that bypasses the traditional telephone networks.
  • WebService: A web service is a piece of software that makes itself available over the internet.Web services are self-contained, modular, distributed, dynamic applications that can be described, published, located, or invoked over the network. These applications can be local, distributed, or web-based. Web services are built on top of open standards such as TCP/IP, HTTP, Java, HTML, and XML.

X

  • XML: a markup language with rules to be readable by machines and humans.

Y

  • YAML (YAML Ain't Markup Language): a markup language similar to XML using minimal syntax, natively using lists, scalars and associative arrays.

awesome-developer-dictionary's People

Contributors

cmgorton avatar edmariemarr avatar ehmsu avatar ephraimduncan avatar ish-u avatar jlohani avatar nilesh-ghone avatar sanskar-p avatar satyajeet-code avatar tincher avatar treavvasu avatar

Stargazers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.