Memory safetyMemory safety is the state of being protected from various software bugs and security vulnerabilities when dealing with memory access, such as buffer overflows and dangling pointers. For example, Java is said to be memory-safe because its runtime error detection checks array bounds and pointer dereferences. In contrast, C and C++ allow arbitrary pointer arithmetic with pointers implemented as direct memory addresses with no provision for bounds checking, and thus are potentially memory-unsafe.
Is-aAn is-a relationship is when one type of object 'is a' instance of another type of object. For example, a cat 'is a' animal, but not vice versa. All cats are animals, but not all animals are cats. The concept becomes important in object oriented programing, where 'is a' relationships are often used as a way to structure code - behaviour that are is relevant to all animals is defined on an animal class, whereas behaviour that is relevant only for cats is defined in a cat class.
Class-based programmingClass-based programming, or more commonly class-orientation, is a style of object-oriented programming (OOP) in which inheritance occurs via defining classes of objects, instead of inheritance occurring via the objects alone (compare prototype-based programming). The most popular and developed model of OOP is a class-based model, instead of an object-based model. In this model, objects are entities that combine state (i.e., data), behavior (i.e., procedures, or methods) and identity (unique existence among all other objects).
Polymorphisme (informatique)En informatique et en théorie des types, le polymorphisme, du grec ancien polús (plusieurs) et morphê (forme), est le concept consistant à fournir une interface unique à des entités pouvant avoir différents types. Par exemple, des opérations telles que la multiplication peuvent ainsi être étendues à des scalaires aux vecteurs ou aux matrices, l'addition, des scalaires aux fonctions ou aux chaînes de caractères, etc.
Compatibilité ascendante et descendantevignette|La Wii, qui a succédé à la Gamecube, est compatible avec cette dernière, ce qui en fait un exemple de compatibilité descendante. La rétrocompatibilité, ou compatibilité descendante, est la compatibilité d'un produit vis-à-vis de ses anciennes ou précédentes versions ; la compatibilité ascendante ou postcompatibilité est la compatibilité d'un produit vis-à-vis des versions plus récentes, voire encore en phase de conception.
Top typeIn mathematical logic and computer science, some type theories and type systems include a top type that is commonly denoted with top or the symbol ⊤. The top type is sometimes called also universal type, or universal supertype as all other types in the type system of interest are subtypes of it, and in most cases, it contains every possible object of the type system. It is in contrast with the bottom type, or the universal subtype, which every other type is supertype of and it is often that the type contains no members at all.
Computer compatibilityA family of computer models is said to be compatible if certain software that runs on one of the models can also be run on all other models of the family. The computer models may differ in performance, reliability or some other characteristic. These differences may affect the outcome of the running of the software. Software compatibility can refer to the compatibility that a particular software has running on a particular CPU architecture such as Intel or PowerPC.
Binary-code compatibilityBinary-code compatibility (binary compatible or object-code-compatible) is a property of a computer system, meaning that it can run the same executable code, typically machine code for a general-purpose computer CPU, that another computer system can run. Source-code compatibility, on the other hand, means that recompilation or interpretation is necessary before the program can be run on the compatible system.
Source-code compatibilitySource-code compatibility (source-compatible) means that a program can run on computers (or operating systems), independently of binary-code compatibility and that the source code is needed for portability. The source code must be compiled before running, unless the computer used has an interpreter for the language at hand. The term is also used for assembly language compatibility, where the source is a human-readable form of machine code that must be converted into numerical (i.e. executable) machine code by an assembler.
Chien d'attelagevignette|upright=1.25|Chien d'attelage à Ranua, en Finlande. vignette|upright=1.25|Chiens d'attelage, en 2008 dans le Minnesota. Les chiens d'attelage sont utilisés généralement pour tirer les traîneaux sur la neige ou la glace, au moyen de harnais et de lignes de trait. Ils peuvent aussi traîner des véhicules sur roue nommés « karts ». De nos jours, ces chiens sont surtout utilisés dans les courses de traîneaux. Le meneur est désigné par le terme « musher ».
ChienLe Chien (Canis lupus familiaris) est la sous-espèce domestique de Canis lupus (Loup gris), un mammifère de la famille des Canidés (Canidae), laquelle comprend également le dingo, chien domestique retourné à l'état sauvage. Le Loup est la première espèce animale à avoir été domestiquée par l'Homme pour l'usage de la chasse dans une société humaine paléolithique qui ne maîtrise alors ni l'agriculture ni l'élevage.
Race de chienthumb|Montage montrant les variations morphologiques du chien. Une race de chiens est un type particulier de chiens qui a été délibérément élevée par des humains pour effectuer des tâches spécifiques, telles qu'aider l'élevage, la chasse et la protection (garde). Les chiens sont un des mammifères les plus différenciés sur terre, avec une sélection artificielle produisant environ mondialement reconnues. Ces races possèdent des traits distincts liés à la morphologie, notamment la taille du corps, la forme du crâne, le phénotype de la queue, le type de fourrure, la forme du corps et la couleur du pelage.