Skip to main content

Book 01

Programming Fundamentals

Core concepts you meet in every language: variables, functions, asynchronous code and programming paradigms.

Contents

  1. 01Abstraction1Abstraction is hiding the complicated details of how something works behind a simpler interface, so code can use it by knowing only what it does.
  2. 02Algorithm2An algorithm is a finite, step-by-step set of instructions for solving a problem or completing a task, such as sorting a list or finding the shortest route.
  3. 03Array3An array is an ordered collection of values stored under one name, where each item is accessed by its numeric position, called an index, usually starting at 0.
  4. 04Async/Await4Async/await is a syntax for writing asynchronous code that reads like ordinary step-by-step code, pausing at each await until a promise or task finishes.
  5. 05Base645Base64 is a way to write any binary data, such as an image or a key, using only 64 safe text characters, so it can pass through systems built for text.
  6. 06Big O Notation6Big O notation describes how an algorithm's running time or memory use grows as its input gets larger, focusing on the growth rate rather than exact speed.
  7. 07Callback7A callback is a function passed as an argument to another function, which then calls it later, for example when a task finishes or an event happens.
  8. 08Character Encoding8Character encoding is the set of rules that turns text into bytes and back again, so any letter can be stored and sent; today the standard is UTF-8.
  9. 09Class9A class is a blueprint in object-oriented programming that defines the data and behavior shared by a group of objects, which are created from it as instances.
  10. 10Closure10A closure is a function that remembers the variables from the scope where it was created, so it can keep using them even after the outer function has returned.
  11. 11Compiler11A compiler is a program that translates source code written in a programming language into a lower-level form, such as machine code, that a computer can run.
  12. 12Concurrency12Concurrency is a program's ability to make progress on several tasks in overlapping time periods, such as serving many users at once rather than one at a time.
  13. 13Constructor13A constructor is a special method that runs when a new object is created from a class, setting up its starting values so it is ready to use.
  14. 14Data Type14A data type is a classification that tells a program what kind of value a piece of data holds, such as a number or text, and which operations work on it.
  15. 15Debugging15Debugging is the process of finding out why a program misbehaves, locating the faulty code and fixing it, often with the help of a tool called a debugger.
  16. 16Dynamic Typing16Dynamic typing means types belong to values, not variables, and are checked while the program runs, so a variable can hold a number now and a string later.
  17. 17Encapsulation17Encapsulation is the practice of bundling data with the methods that use it and hiding internal details, so outside code works only through a public interface.
  18. 18Enum18An enum is a data type that defines a fixed set of named values, such as an order's possible statuses, so code can't use a value outside that set.
  19. 19Exception19An exception is an event that interrupts a program's normal flow when an error occurs, which code can catch and handle instead of letting the program crash.
  20. 20Framework20A framework is a reusable foundation of code, tools, and conventions that provides the structure of an application, so developers only fill in their own logic.
  21. 21Function21A function is a named, reusable block of code that performs a specific task, optionally taking inputs called parameters and returning a result.
  22. 22Functional Programming22Functional programming is a style of building software from pure functions that avoid changing shared data, making code more predictable and easier to test.
  23. 23Garbage Collection23Garbage collection is automatic memory management in which the language runtime finds data a program can no longer use and frees that memory for reuse.
  24. 24Generics24Generics are a language feature that lets you write functions, classes, and types that work with many data types while still keeping full type safety.
  25. 25Higher-Order Function25A higher-order function is a function that takes another function as an argument, returns a function, or both, so behavior can be passed around like data.
  26. 26IDE26An IDE (integrated development environment) is an application that combines a code editor, a debugger, build commands and other developer tools in one place.
  27. 27Immutability27Immutability means a value cannot be changed after it is created, so every update produces a new value instead of modifying the original in place.
  28. 28Inheritance28Inheritance is an object-oriented programming feature that lets a new class reuse, extend, and override the fields and methods of an existing class.
  29. 29Interface29An interface is a named set of method and property signatures that a type promises to provide, without saying how those members are implemented.
  30. 30Interpreter30An interpreter is a program that runs source code directly, step by step, instead of first translating the whole program into a separate executable file.
  31. 31Iterator31An iterator is an object that lets code step through the items of a collection one at a time, remembering its position, without exposing how the data is stored.
  32. 32JIT Compilation32JIT compilation turns the busiest parts of a program into machine code while it runs, combining an interpreter's quick start with compiled speed.
  33. 33Lambda Function33A lambda function is a small function written inline without a name, usually passed straight to another function such as a sorting or filtering helper.
  34. 34Library34A library is a collection of ready-made code, such as functions and classes, that a program calls to do common jobs without writing that code itself.
  35. 35Loop35A loop is a control structure that repeats a block of code, either a set number of times, once for each item in a collection, or while a condition stays true.
  36. 36Memoization36Memoization is an optimization technique that stores the results of function calls and returns the saved result when the same inputs occur again.
  37. 37Method37A method is a function that belongs to an object or class and is called on it, so it can read and change that object's data, as in user.rename("Ada").
  38. 38Null38Null is a special value that means "no value here", used when a variable deliberately refers to no object or data at all instead of holding something real.
  39. 39Object39An object is a bundle of related data and behavior: values in named fields, often called properties, and functions that work on them, called methods.
  40. 40OOP40OOP, or object-oriented programming, is a way of structuring code around objects that bundle related data together with the functions that act on that data.
  41. 41Package Manager41A package manager is a tool that installs, updates and removes software packages and their dependencies, resolving versions automatically.
  42. 42Parallelism42Parallelism is running several computations at literally the same time, on multiple CPU cores, GPUs or machines, so a large job finishes faster.
  43. 43Parameter43A parameter is a named input in a function's definition, and an argument is the actual value passed in that place when the function is called.
  44. 44Pointer44A pointer is a variable that stores the memory address of another value instead of the value itself, letting code read or change that data indirectly.
  45. 45Polymorphism45Polymorphism is the ability of code to work with values of different types through one shared interface, with each type supplying its own behavior.
  46. 46Promise46A promise is an object that represents the eventual result of an asynchronous operation, letting code react to success or failure once the work completes.
  47. 47Pure Function47A pure function always returns the same output for the same input and has no side effects, meaning it does not change anything outside itself.
  48. 48Recursion48Recursion is a technique in which a function solves a problem by calling itself on smaller versions of the same problem until it reaches a simple base case.
  49. 49Regular Expression49A regular expression, or regex, is a pattern written in a compact syntax that describes text to search for, validate, extract or replace within strings.
  50. 50Scope50Scope is the region of a program where a name, such as a variable or function, is visible and can be used, which decides what each line of code can reach.
  51. 51SDK51An SDK (software development kit) is a package of tools, libraries, documentation and examples for building software for a particular platform or service.
  52. 52Stack Trace52A stack trace is the list of function calls in progress when an error happened, from the line that failed back to where the program started.
  53. 53Static Typing53Static typing means the types of variables and expressions are checked before the program runs, usually by the compiler, so many type errors are caught early.
  54. 54String54A string is a data type that represents text as an ordered sequence of characters, such as a name, a sentence, a URL, or the contents of a file.
  55. 55Type Inference55Type inference is a compiler feature that works out the type of a variable or expression automatically, so you don't have to write every type annotation.
  56. 56Variable56A variable is a named storage location in a program that holds a value, such as a number or a piece of text, which the code can read and change as it runs.

Back to the libraryNext book: Web Development

Read a random page
Open today's review
Switch to the dark theme
Read this page in Türkçe

More

Settings