DocForge Programmers Wiki

Syndicate content
Track the most recent changes to the wiki in this feed.
Updated: 50 min 23 sec ago

View

Tue, 03/16/2010 - 10:59am

Created page with ''''View''' can refer to: * Database view, a relational database object which stores a query over database tables * Model-View-Controller, a design pattern whe…'

New page

'''View''' can refer to:
* [[Database view]], a [[relational database]] object which stores a query over [[database table]]s
* [[Model-View-Controller]], a [[design pattern]] where a ''view'' is one type of component of a software system

Database view

Tue, 03/16/2010 - 10:56am

Created page with 'A '''database view''' is a relational database object which can be queried like a database table, but is implemented as a query over actual data tables. Views don't stor…'

New page

A '''database view''' is a [[relational database]] object which can be queried like a [[database table]], but is implemented as a query over actual data tables. Views don't store data but give a tabular view over other database data.

== Advantages ==
* Database views can let [[software developer]]s reuse complex or often-used queries without rewriting those queries. [[Stored procedure]]s are another method for abstracting queries.
* The queries underlying a view can be changed without affecting the use of the view.
* A database administrator can choose to replace a table with a view without affecting any applications which rely on that table. Conversely a view can be changed to query different tables with no side affects. One classic example is a view over multiple tables of historical data, where periodically new history tables are created and added to the view which covers all of the data.

== Disadvantages ==
* By abstracting away queries, a developer might not be aware of underlying performance issues. It might be more efficient at times to query an underlying table directly rather than querying the view.


[[Category:Databases]]

Table

Tue, 03/16/2010 - 8:24am

Disambiguation page added

New page

'''Table''' can refer to:
* [[Database table]], which is a data storage object in a [[relational database]]
* [[Hash table]], a [[data structure]]
* [[Lookup table]], a [[data structure]] typically implemented as an [[array]]

Talk:Lisp

Tue, 03/16/2010 - 7:21am

deleted "[[Talk:Lisp]]" Vandalism

New page

Talk:Lisp

Mon, 03/15/2010 - 9:02pm

Todd Cowle & Ultimate Tier Advisors Ltd Announces Municipal Bonds Info

New page

Todd Cowle Municipal Bond Credit Report synthesizes, analyzes and presents aggregate credit information and trends in the municipal bond market. The report includes municipal bond rating information from the three major rating agencies – Moody’s Investor Services, Standard and Poor’s and Fitch Ratings.

Database table

Mon, 03/15/2010 - 1:54pm

New page

{{stub}}

A '''database table''' is a [[relational database]] storage object which is structured as a set of scalar values. Each ''column'' in a table stores a single value of one specific type in a single ''row''.

== Create Table ==
The standard [[SQL]] statement for creating a table:
<code sql>
CREATE TABLE [table_name] (
[column_definition],
[column_definition],
[...])
</code>


[[Category:Databases]]

Relational database

Mon, 03/15/2010 - 1:47pm

Disadvantages:

← Older revision Revision as of 20:47, 15 March 2010 Line 9: Line 9: == Disadvantages == == Disadvantages == -* Not all forms of a program's data are best represented in multiple related tables.  Data expressed in a tree or hierarchy, for example, can become complex.  While a structured document form such as [[XML]] might be convenient for representation and transmission to other applications, storage of the fundamental data in a relational database may be cumbersome.+* Not all forms of a program's data are best represented in multiple related tables of scalar values.  Data expressed in a tree or hierarchy, for example, can become complex.  While a structured document form such as [[XML]] might be convenient for representation and transmission to other applications, storage of the fundamental data in a relational database may be cumbersome.  +* Spreading data across multiple [[server]]s can be difficult and inefficient.  In some situations a distributed database implementation can't be seamless to the application using it.  +** [[Database replication]] requires duplicate copies of data on multiple computers.  There can be a delay in replication.  +** Storing different tables on different servers requires multiple database connections and can make server-side joining of data difficult.  +** Individual tables distributed across multiple computers make table scanning inefficient. == Objects == == Objects ==

Httpd/KeepAlive

Mon, 03/15/2010 - 11:59am

← Older revision Revision as of 18:59, 15 March 2010 Line 1: Line 1: '''KeepAlive''' is an Apache [[httpd]] core setting which enables persistent connections.  This feature of [[HTTP]] allows multiple requests to be sent over the same connection. '''KeepAlive''' is an Apache [[httpd]] core setting which enables persistent connections.  This feature of [[HTTP]] allows multiple requests to be sent over the same connection. -Web pages typically require multiple requests to complete, one for the HTML and additional for images, [[CSS]], and [[JavaScript]].  By keeping the connection to the web server open, these requests can be completed faster.  However, this keeps the httpd instance or thread busy for the duration of the requests until the [[httpd/KeepAliveTimeout|timeout]] expires.  Therefore high traffic sights tend to keep the KeepAlive feature off or the timeout very short.  Small sites, and those with more page elements to load, provide better performance to individual users by having KeepAlive on.+[[Web page]]s typically require multiple requests to complete, one for the [[HTML]] and additional for images, [[CSS]], and [[JavaScript]].  By keeping the connection to the [[web server]] open, these requests can be completed faster overall.  However, this keeps the httpd instance or thread busy for the duration of the requests until the [[httpd/KeepAliveTimeout|timeout]] expires after the last request.  Therefore high traffic sights tend to keep the KeepAlive feature off or the timeout very short.  Small sites, and those with more page elements to load, provide better performance to individual users by having KeepAlive on. ''Syntax'': <tt>KeepAlive On|Off</tt> ''Syntax'': <tt>KeepAlive On|Off</tt>

Whitespace

Mon, 03/15/2010 - 11:54am

← Older revision Revision as of 18:54, 15 March 2010 Line 1: Line 1: -'''Whitespace''' is the emptiness around source code, usually implemented with newline, tab and space characters. While documents are typically printed or written on white paper, leaving white space between characters, computer displays and other electronics may render the background as any color.+'''Whitespace''' is the visual emptiness in [[string]]s, usually implemented with [[newline]], [[tab]] and [[space]] [[character]]s. While documents are typically printed or written on white paper, leaving white space between characters, computer displays and other electronics may render the background as any color. -In [[free-form programming language]]s, whitespace characters are ignored by [[compiler]]s and interpreters, serving only to help organize source code and separate [[token]]s. For example, tab or space characters can show a hierarchical relationship between lines by indenting them by different amounts, such as nested loops.  Therefore proper use of whitespace is an important part of good [[coding standards]].+== Characters ==  +{|  +|-  +! Character  +! [[ASCII]] Decimal Value  +! Escape  +|-  +| Space  +| 32  +|  +|-  +| Tab  +| 9  +| \t  +|-  +| Newline  +| 10  +| \n  +|-  +| Carriage Return  +| 13  +| \r  +|}  +   +   +== Source Code ==  +In [[free-form programming language]]s, whitespace characters in [[source code]] are ignored by [[compiler]]s and [[interpreter]]s, serving only to help organize source code and separate [[token]]s. For example, tab or space characters can show a hierarchical relationship between lines by indenting them by different amounts, such as nested loops.  Therefore proper use of whitespace is an important part of good [[coding standards]]. In non-free-form programming languages, such as [[Python]], whitespace characters are used to determine blocks of code by the compiler.  The code of a function or a loop is indented further with whitespace and not delimited with keywords or other characters. In non-free-form programming languages, such as [[Python]], whitespace characters are used to determine blocks of code by the compiler.  The code of a function or a loop is indented further with whitespace and not delimited with keywords or other characters.

Help:Editing

Mon, 03/15/2010 - 11:43am

Added table

← Older revision Revision as of 18:43, 15 March 2010 Line 7: Line 7: {| {| |- |- -|'''Description'''+! Description -|'''You type''' +! You type -|'''You get'''+! You get |- |- -| colspan="3" | ''applies anywhere''+! colspan="3" style="padding-top:15px" | ''Applies anywhere:'' |- |- |Italic text |Italic text Line 29: Line 29: |<nowiki>no ''markup''</nowiki> |<nowiki>no ''markup''</nowiki> |- |- -| colspan="3" | ''only at the beginning of the line''+! colspan="3" style="padding-top:25px" | ''Applies only at the beginning of the line:'' |- |- |Headings of<br />different sizes |Headings of<br />different sizes Line 132: Line 132: Mediawiki ignores normal line breaks. To start a new paragraph, leave an empty line. You can also start a newline with the HTML tag <tt><nowiki><br&nbsp;/></nowiki></tt>.    Mediawiki ignores normal line breaks. To start a new paragraph, leave an empty line. You can also start a newline with the HTML tag <tt><nowiki><br&nbsp;/></nowiki></tt>.     +  +=== Tables ===  +  +Basic table format:  +  +<pre>  +{|  +|-  +! header 1  +! header 2  +! header 3  +|-  +| row 1, cell 1  +| row 1, cell 2  +| row 1, cell 3  +|-  +| row 2, cell 1  +| row 2, cell 2  +| row 2, cell 3  +|}  +</pre>  +  +Produces:  +{|  +|-  +! header 1  +! header 2  +! header 3  +|-  +| row 1, cell 1  +| row 1, cell 2  +| row 1, cell 3  +|-  +| row 2, cell 1  +| row 2, cell 2  +| row 2, cell 3  +|}  + === HTML === === HTML ===

Talk:Regular expression

Mon, 03/15/2010 - 5:27am

deleted "[[Talk:Regular expression]]" Vandalism

New page

Talk:Regular expression

Mon, 03/15/2010 - 5:27am

deleted "[[Talk:Regular expression]]" Vandalism

New page

Talk:Regular expression

Sun, 03/14/2010 - 4:36pm

Todd Cowle & Ultimate Tier Advisors LLC Announces Municipal Bonds Info

New page

Todd Cowle Municipal Bond Credit Report synthesizes, analyzes and presents aggregate credit information and trends in the municipal bond market. The report includes municipal bond rating information from the three major rating agencies – Moody’s Investor Services, Standard and Poor’s and Fitch Ratings.

Object-relational mapping

Fri, 03/12/2010 - 12:44pm

Categorized

← Older revision Revision as of 19:44, 12 March 2010 Line 14: Line 14:  +[[Category:Object Oriented Programming]] [[Category:Programming Paradigms]] [[Category:Programming Paradigms]]

Object-relational mapping

Fri, 03/12/2010 - 12:44pm

Categorized

← Older revision Revision as of 19:44, 12 March 2010 Line 14: Line 14:  +[[Category:Object Oriented Programming]] [[Category:Programming Paradigms]] [[Category:Programming Paradigms]]

Object oriented programming

Fri, 03/12/2010 - 12:44pm

Expanded on the intro

← Older revision Revision as of 19:44, 12 March 2010 Line 1: Line 1: -'''Object-oriented programming''' is a style of software development characterized by having complex data types called "[[object]]s" which encapsulate data and functionality.  They are typically defined by "[[class]]es" and later instantiated for use during program execution.+'''Object-oriented programming''', or '''OOP''', is a style of software development characterized by having complex data types called ''[[object]]s'' which encapsulate data and functionality.  They are typically defined by ''[[class]]es'' or ''[[prototype]]s'' and later instantiated for use during program execution.  +   +A core concept of object oriented programming is that data can often be modeled after real-world objects.  Any object in the real world has a set of characteristics which define it and a set of actions which can be done to it.  By programmatically defining these in a somewhat analogous way to the real world, [[software developer]]s can logically organize code and software can better model the real world.  +   +== Uses ==  +* [[Object-relational mapping]] == Common Object Characteristics == == Common Object Characteristics ==

Object oriented programming

Fri, 03/12/2010 - 12:44pm

Expanded on the intro

← Older revision Revision as of 19:44, 12 March 2010 Line 1: Line 1: -'''Object-oriented programming''' is a style of software development characterized by having complex data types called "[[object]]s" which encapsulate data and functionality.  They are typically defined by "[[class]]es" and later instantiated for use during program execution.+'''Object-oriented programming''', or '''OOP''', is a style of software development characterized by having complex data types called ''[[object]]s'' which encapsulate data and functionality.  They are typically defined by ''[[class]]es'' or ''[[prototype]]s'' and later instantiated for use during program execution.  +   +A core concept of object oriented programming is that data can often be modeled after real-world objects.  Any object in the real world has a set of characteristics which define it and a set of actions which can be done to it.  By programmatically defining these in a somewhat analogous way to the real world, [[software developer]]s can logically organize code and software can better model the real world.  +   +== Uses ==  +* [[Object-relational mapping]] == Common Object Characteristics == == Common Object Characteristics ==

Object-relational mapping

Fri, 03/12/2010 - 10:09am

Disadvantages: Added bulk edits and db design considerations

← Older revision Revision as of 17:09, 12 March 2010 (One intermediate revision not shown)Line 1: Line 1: -'''Object-relational mapping''', or '''ORM''', is a programming technique which corresponds data stored in a [[relational database]] with application [[object]]s. The ORM layer populates business objects on demand and persists them back into the relational database when updated.+'''Object-relational mapping''', or '''ORM''', is a [[programming]] technique which corresponds data stored in a [[relational database]] with application [[object]]s. The ORM layer populates business objects on demand and persists them back into the relational database when updated. == Advantages == == Advantages == -* ORM frees the programmer from dealing with simple repetitive database queries.  Instead of writing [[SQL]], the programmer requests objects from the ORM's persistence layer and calls a save procedure after updating an object.+* ORM frees the programmer from dealing with simple repetitive database queries.  Instead of writing [[SQL]], the programmer can request objects from the ORM's persistence layer and call a save procedure after updating an object.  Alternatively, some ORM libraries will automatically persist updated objects, such as during [[garbage collection]] or system shutdown. * Conceptually, automatically mapping the database to business objects lets programmers focus more on business problems and less with data storage. * Conceptually, automatically mapping the database to business objects lets programmers focus more on business problems and less with data storage. * The mapping process can aid in data verification and security before reaching the database.  Proper data can be confirmed and appropriate messages can be returned to the user without relying on failed database queries. * The mapping process can aid in data verification and security before reaching the database.  Proper data can be confirmed and appropriate messages can be returned to the user without relying on failed database queries.  +* ORM can provide a caching layer above the database.  For example, if the same object is requested multiple times, it's possible for the ORM layer to retain and reuse the same object, rather than re-querying the database. == Disadvantages == == Disadvantages == -* ORM adds a least one small layer of application code, potentially increasing processing overhead.  ORM can speed development time and lower complexity, but "manually" dealing with database interaction can be more efficient.+* ORM adds a least one small layer of application code, potentially increasing processing overhead.  ORM can speed development time and lower complexity, but "manually" dealing with database interaction can be more efficient.  Therefore, using ORM can contribute negatively to memory consumption, CPU usage, and [[code bloat]]. -* ORM can load related business objects on demand.  To keep it simple, this usually involves many small queries to load data as needed.  This can sometimes be slower overall than using one complex query due to the overhead of query processing and server communications.+* ORM can load related business objects on demand.  To keep it simple, this usually involves many small queries to load data as needed.  This can sometimes be slower overall than using one complex query due to the overhead of query processing and server communications.  This trade-off is very dependent on the underlying database implementation.  +* Some data related tasks, such as bulk inserts, updates, and deletes can be overly cumbersome when done through ORM.  It's typically far more efficient to perform these tasks directly through [[SQL]], sometimes via [[stored procedure]]s.  +* An ORM system's design might dictate certain database design decisions.  For example, each table might require columns to be of specific types, or table relationships might need specific table structures.  These requirements can potentially adversely affect database design by lowering performance, making it harder to write custom queries, or making it difficult to share with other systems. [[Category:Programming Paradigms]] [[Category:Programming Paradigms]]

Object-relational mapping

Fri, 03/12/2010 - 10:09am

Disadvantages: Added bulk edits and db design considerations

← Older revision Revision as of 17:09, 12 March 2010 (One intermediate revision not shown)Line 1: Line 1: -'''Object-relational mapping''', or '''ORM''', is a programming technique which corresponds data stored in a [[relational database]] with application [[object]]s. The ORM layer populates business objects on demand and persists them back into the relational database when updated.+'''Object-relational mapping''', or '''ORM''', is a [[programming]] technique which corresponds data stored in a [[relational database]] with application [[object]]s. The ORM layer populates business objects on demand and persists them back into the relational database when updated. == Advantages == == Advantages == -* ORM frees the programmer from dealing with simple repetitive database queries.  Instead of writing [[SQL]], the programmer requests objects from the ORM's persistence layer and calls a save procedure after updating an object.+* ORM frees the programmer from dealing with simple repetitive database queries.  Instead of writing [[SQL]], the programmer can request objects from the ORM's persistence layer and call a save procedure after updating an object.  Alternatively, some ORM libraries will automatically persist updated objects, such as during [[garbage collection]] or system shutdown. * Conceptually, automatically mapping the database to business objects lets programmers focus more on business problems and less with data storage. * Conceptually, automatically mapping the database to business objects lets programmers focus more on business problems and less with data storage. * The mapping process can aid in data verification and security before reaching the database.  Proper data can be confirmed and appropriate messages can be returned to the user without relying on failed database queries. * The mapping process can aid in data verification and security before reaching the database.  Proper data can be confirmed and appropriate messages can be returned to the user without relying on failed database queries.  +* ORM can provide a caching layer above the database.  For example, if the same object is requested multiple times, it's possible for the ORM layer to retain and reuse the same object, rather than re-querying the database. == Disadvantages == == Disadvantages == -* ORM adds a least one small layer of application code, potentially increasing processing overhead.  ORM can speed development time and lower complexity, but "manually" dealing with database interaction can be more efficient.+* ORM adds a least one small layer of application code, potentially increasing processing overhead.  ORM can speed development time and lower complexity, but "manually" dealing with database interaction can be more efficient.  Therefore, using ORM can contribute negatively to memory consumption, CPU usage, and [[code bloat]]. -* ORM can load related business objects on demand.  To keep it simple, this usually involves many small queries to load data as needed.  This can sometimes be slower overall than using one complex query due to the overhead of query processing and server communications.+* ORM can load related business objects on demand.  To keep it simple, this usually involves many small queries to load data as needed.  This can sometimes be slower overall than using one complex query due to the overhead of query processing and server communications.  This trade-off is very dependent on the underlying database implementation.  +* Some data related tasks, such as bulk inserts, updates, and deletes can be overly cumbersome when done through ORM.  It's typically far more efficient to perform these tasks directly through [[SQL]], sometimes via [[stored procedure]]s.  +* An ORM system's design might dictate certain database design decisions.  For example, each table might require columns to be of specific types, or table relationships might need specific table structures.  These requirements can potentially adversely affect database design by lowering performance, making it harder to write custom queries, or making it difficult to share with other systems. [[Category:Programming Paradigms]] [[Category:Programming Paradigms]]

Object-relational mapping

Fri, 03/12/2010 - 9:56am

Expanded just a little

← Older revision Revision as of 16:56, 12 March 2010 Line 1: Line 1: -'''Object-relational mapping''', or '''ORM''', is a programming technique which corresponds data stored in a [[relational database]] with application [[object]]s. The ORM layer populates business objects on demand and persists them back into the relational database when updated.+'''Object-relational mapping''', or '''ORM''', is a [[programming]] technique which corresponds data stored in a [[relational database]] with application [[object]]s. The ORM layer populates business objects on demand and persists them back into the relational database when updated. == Advantages == == Advantages == -* ORM frees the programmer from dealing with simple repetitive database queries.  Instead of writing [[SQL]], the programmer requests objects from the ORM's persistence layer and calls a save procedure after updating an object.+* ORM frees the programmer from dealing with simple repetitive database queries.  Instead of writing [[SQL]], the programmer can request objects from the ORM's persistence layer and call a save procedure after updating an object.  Alternatively, some ORM libraries will automatically persist updated objects, such as during [[garbage collection]] or system shutdown. * Conceptually, automatically mapping the database to business objects lets programmers focus more on business problems and less with data storage. * Conceptually, automatically mapping the database to business objects lets programmers focus more on business problems and less with data storage. * The mapping process can aid in data verification and security before reaching the database.  Proper data can be confirmed and appropriate messages can be returned to the user without relying on failed database queries. * The mapping process can aid in data verification and security before reaching the database.  Proper data can be confirmed and appropriate messages can be returned to the user without relying on failed database queries.  +* ORM can provide a caching layer above the database.  For example, if the same object is requested multiple times, it's possible for the ORM layer to retain and reuse the same object, rather than re-querying the database. == Disadvantages == == Disadvantages == -* ORM adds a least one small layer of application code, potentially increasing processing overhead.  ORM can speed development time and lower complexity, but "manually" dealing with database interaction can be more efficient.+* ORM adds a least one small layer of application code, potentially increasing processing overhead.  ORM can speed development time and lower complexity, but "manually" dealing with database interaction can be more efficient.  Therefore, using ORM can contribute negatively to memory consumption, CPU usage, and [[code bloat]]. -* ORM can load related business objects on demand.  To keep it simple, this usually involves many small queries to load data as needed.  This can sometimes be slower overall than using one complex query due to the overhead of query processing and server communications.+* ORM can load related business objects on demand.  To keep it simple, this usually involves many small queries to load data as needed.  This can sometimes be slower overall than using one complex query due to the overhead of query processing and server communications.  This trade-off is very dependent on the underlying database implementation. [[Category:Programming Paradigms]] [[Category:Programming Paradigms]]