HOME
*





Software Design Pattern
In software engineering, a software design pattern is a general, reusable solution to a commonly occurring problem within a given context in software design. It is not a finished design that can be transformed directly into source or machine code. Rather, it is a description or template for how to solve a problem that can be used in many different situations. Design patterns are formalized best practices that the programmer can use to solve common problems when designing an application or system. Object-oriented design patterns typically show relationships and interactions between classes or objects, without specifying the final application classes or objects that are involved. Patterns that imply mutable state may be unsuited for functional programming languages. Some patterns can be rendered unnecessary in languages that have built-in support for solving the problem they are trying to solve, and object-oriented patterns are not necessarily suitable for non-object-oriented ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


HTTP Switchboard
HTTP Switchboard is a Chromium browser extension (which also works with other Chromium-based browsers such as Opera (from version 15) and the Yandex browser) that allows filtering of Hypertext Transfer Protocol (HTTP) requests based on the content and/or the target's domain name. It comes with an optional, pre-defined blacklist of hostnames that might be a privacy threat when sending requests to them and/or a security threat/annoyance due to the content delivered in the response. HTTP Switchboard's developer, Raymond Hill, has also developed other browser extensions, including ad filtering uBlock which he actively leads as uBlock Origin. HTTP Switchboard is no longer being actively developed. It has instead been replaced by uBlock Origin uBlock Origin (; "" ) is a free and open-source browser extension for content filtering, including ad blocking. The extension is available for Chrome, Chromium, Edge, Firefox, Opera, Pale Moon, as well as versions of Safari prior ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Software Componentry
Component-based software engineering (CBSE), also called component-based development (CBD), is a branch of software engineering that emphasizes the separation of concerns with respect to the wide-ranging functionality available throughout a given software system. It is a reuse-based approach to defining, implementing and composing loosely coupled independent components into systems. This practice aims to bring about an equally wide-ranging degree of benefits in both the short-term and the long-term for the software itself and for organizations that sponsor such software. Software engineering practitioners regard components as part of the starting platform for service-orientation. Components play this role, for example, in web services, and more recently, in service-oriented architectures (SOA), whereby a component is converted by the web service into a ''service'' and subsequently inherits further characteristics beyond that of an ordinary component. Components can produce ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Software Reuse
In software development (and computer programming in general), code reuse, also called software reuse, is the use of existing software, or software knowledge, to build new software, following the reusability principles. Code reuse may be achieved by different ways depending on a complexity of a programming language chosen and range from a lower-level approaches like code copy-pasting (e.g. via snippets), simple functions ( procedures or subroutines) or a bunch of objects or functions organized into modules (e.g. libraries) or custom namespaces, and packages, frameworks or software suites in higher-levels. Code reuse implies dependencies which can make code maintanability harder. At least one study found that code reuse reduces technical debt. Overview Ad hoc code reuse has been practiced from the earliest days of programming. Programmers have always reused sections of code, templates, functions, and procedures. Software reuse as a recognized area of study in software eng ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Indirection
In computer programming, indirection (also called dereferencing) is the ability to reference something using a name, reference, or container instead of the value itself. The most common form of indirection is the act of manipulating a value through its memory address. For example, accessing a variable through the use of a pointer. A stored pointer that exists to provide a reference to an object by double indirection is called an ''indirection node''. In some older computer architectures, indirect words supported a variety of more-or-less complicated addressing modes. Another important example is the domain name system which enables names such as en.wikipedia.org to be used in place of network addresses such as 208.80.154.224. The indirection from human-readable names to network addresses means that the references to a web page become more memorable, and links do not need to change when a web site is relocated to a different server. Overview A famous aphorism of Butler Lampson ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Nantes
Nantes (, , ; Gallo: or ; ) is a city in Loire-Atlantique on the Loire, from the Atlantic coast. The city is the sixth largest in France, with a population of 314,138 in Nantes proper and a metropolitan area of nearly 1 million inhabitants (2018). With Saint-Nazaire, a seaport on the Loire estuary, Nantes forms one of the main north-western French metropolitan agglomerations. It is the administrative seat of the Loire-Atlantique department and the Pays de la Loire region, one of 18 regions of France. Nantes belongs historically and culturally to Brittany, a former duchy and province, and its omission from the modern administrative region of Brittany is controversial. Nantes was identified during classical antiquity as a port on the Loire. It was the seat of a bishopric at the end of the Roman era before it was conquered by the Bretons in 851. Although Nantes was the primary residence of the 15th-century dukes of Brittany, Rennes became the provincial capital after ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


O'Reilly Media
O'Reilly Media (formerly O'Reilly & Associates) is an American learning company established by Tim O'Reilly that publishes books, produces tech conferences, and provides an online learning platform. Its distinctive brand features a woodcut of an animal on many of its book covers. Company Early days The company began in 1978 as a private consulting firm doing technical writing, based in the Cambridge, Massachusetts area. In 1984, it began to retain publishing rights on manuals created for Unix vendors. A few 70-page "Nutshell Handbooks" were well-received, but the focus remained on the consulting business until 1988. After a conference displaying O'Reilly's preliminary Xlib manuals attracted significant attention, the company began increasing production of manuals and books. The original cover art consisted of animal designs developed by Edie Freedman because she thought that Unix program names sounded like "weird animals". Global Network Navigator In 1993 O'Reilly Media ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Addison-Wesley
Addison-Wesley is an American publisher of textbooks and computer literature. It is an imprint of Pearson PLC, a global publishing and education company. In addition to publishing books, Addison-Wesley also distributes its technical titles through the O'Reilly Online Learning e-reference service. Addison-Wesley's majority of sales derive from the United States (55%) and Europe (22%). The Addison-Wesley Professional Imprint produces content including books, eBooks, and video for the professional IT worker including developers, programmers, managers, system administrators. Classic titles include ''The Art of Computer Programming'', ''The C++ Programming Language'', ''The Mythical Man-Month'', and ''Design Patterns''. History Lew Addison Cummings and Melbourne Wesley Cummings founded Addison-Wesley in 1942, with the first book published by Addison-Wesley being Massachusetts Institute of Technology professor Francis Weston Sears' ''Mechanics''. Its first computer book was ''Prog ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Portland Pattern Repository
The Portland Pattern Repository (PPR) is a repository for computer programming software design patterns. It was accompanied by a companion website, WikiWikiWeb, which was the world's first wiki. The repository has an emphasis on Extreme Programming, and it is hosted by Cunningham & Cunningham (C2) of Portland, Oregon. The PPR's motto is "People, Projects & Patterns". History On 17 September 1987, programmer Ward Cunningham, then with Tektronix, and Apple Computer's Kent Beck co-published the paper "Using Pattern Languages for Object-Oriented Programs" This paper, about software design patterns, was inspired by Christopher Alexander's architectural concept of "patterns" It was written for the 1987 OOPSLA programming conference organized by the Association for Computing Machinery. Cunningham and Beck's idea became popular among programmers because it helped them exchange programming ideas in a format that is easy to understand. Cunningham & Cunningham, the programming consultancy ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  




Pattern Languages Of Programming
Pattern Languages of Programs is the name of a group of annual conferences sponsored by The Hillside Group. The purpose of these conferences is to develop and refine the art of software design patterns. Most of the effort focuses on developing a textual presentation of a pattern such that it becomes easy to understand and apply. This is typically done in a writers' workshop setting. The flagship conference The flagship conference is called the Pattern Languages of Programs conference, abbreviated as PLoP. PLoP has been held in the U.S.A. since 1994. Until 2004 it was held annually at Allerton Park in Monticello, Illinois, a property of the University of Illinois at Urbana Champaign. Since then, its location has alternated between Allerton park and being co-located with OOPSLA, a large computer science conference, with the Agile Conference in 2009, and with PUARL in 2018. The 27th PLoP will be held in Keystone, Colorado. Notable people who chaired the conference in the pas ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


Elements Of Reusable Object-Oriented Software''
Element or elements may refer to: Science * Chemical element, a pure substance of one type of atom * Heating element, a device that generates heat by electrical resistance * Orbital elements, parameters required to identify a specific orbit of one body around another * DNA element, a functional region of DNA, including genes and cis-regulatory elements Mathematics * Element (category theory) * Element (mathematics), one of the constituents of a set * Differential element, an infinitesimally small change of a quantity in an integral * Euclid's ''Elements'', a mathematical treatise on geometry and number theory * An entry, or element, of a matrix. Philosophy and religion * Classical elements, ancient beliefs about the fundamental types of matter (earth, air, fire, water) * The elements, a religious term referring to the bread and wine of the Eucharist * Five elements (Japanese philosophy), the basis of the universe according to Japanese philosophy * ''Mahābhūta'', the four g ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]  


picture info

Computer Science
Computer science is the study of computation, automation, and information. Computer science spans theoretical disciplines (such as algorithms, theory of computation, information theory, and automation) to practical disciplines (including the design and implementation of hardware and software). Computer science is generally considered an area of academic research and distinct from computer programming. Algorithms and data structures are central to computer science. The theory of computation concerns abstract models of computation and general classes of problems that can be solved using them. The fields of cryptography and computer security involve studying the means for secure communication and for preventing security vulnerabilities. Computer graphics and computational geometry address the generation of images. Programming language theory considers different ways to describe computational processes, and database theory concerns the management of repositories o ...
[...More Info...]      
[...Related Items...]     OR:     [Wikipedia]   [Google]   [Baidu]