Revision as of 01:15, 17 January 2006 view sourceTompsci (talk | contribs)945 edits The intro should be as succinct as possible, maybe form a seperate section as to variation on its percived meaning, my intro is as broad as possible← Previous edit | Revision as of 06:04, 17 January 2006 view source Dzonatas (talk | contribs)1,417 editsm a much broader definition that is still specific to the science and *not only* about the academic fields (which have their own page!!!)Next edit → | ||
Line 1: | Line 1: | ||
{{cleanup-date|December 2005}} | {{cleanup-date|December 2005}} | ||
'''Computer science''' |
'''Computer science''' is the ] of ]s and related ]. It studies on the management of the ] in the construction and analysis of its ]s. | ||
Some have said ''computer science'' is closely related to ], which does not follow the ], and that it borders on not being a science as a result. Some, also, have said ''computer science'' as to denominate anything related to ]. Often, many have used an aspect of ] transparently in their reference to computer science. Because of the diversity in the science, there are different points of view on its ]. | |||
== Overview == | |||
Modern computer systems have an ], which has ]s in its software to control its hardware. | |||
] involves a study of ]s and ]s, | |||
which further involves ]s and ]. | |||
] involves the study of ] and its ]s. | |||
A computer system is a means to automate tasks and to execute computational systems. | |||
Hardware and program construction are the engineerial aspects, related to ] and ]. | |||
Computer scientists, on the other hand, go deeper into computability and are distinguishable by their higher-level of innovative or theoretical expertise in technology. | |||
==Fields of computer science== | ==Fields of computer science== | ||
Line 118: | Line 127: | ||
Most research in computer science has focused on ]s or ]s (computation models that perform one small, deterministic step at a time). These models resemble, at a basic level, most real computers in use today. Computer scientists also study other models of computation, which includes ] machines and theoretical models such as ], ], and ]s. | Most research in computer science has focused on ]s or ]s (computation models that perform one small, deterministic step at a time). These models resemble, at a basic level, most real computers in use today. Computer scientists also study other models of computation, which includes ] machines and theoretical models such as ], ], and ]s. | ||
== Demographics == | |||
In the U.S.: | |||
* Nearly half of all computer programmers held a bachelor’s degree in 2002; about 1 in 5 held a graduate degree. | |||
* Computer programmer employment is expected to grow much more slowly than that of other computer specialists. | |||
* Education requirements range from a 2-year degree to a graduate degree. | |||
* Employment, other than the computer programmer, is expected to increase much faster than the average as organizations continue to adopt increasingly sophisticated technologies. | |||
{{stub}} | |||
=== Careers === | |||
Some of the potential careers for those who study computer science are listed below: | |||
{| | |||
| ]s | |||
| solve computer problems and apply computer technology to meet the individual needs of an organization | |||
|- | |||
| ]s | |||
| design and update the software that runs a computer | |||
|- | |||
| ]s | |||
| design and maintain the network between computers and the interaction between people and computers | |||
|- | |||
| ]s | |||
| focus more on a local area network than the Telecommunication specialist (a.k.a. Network Administrator) | |||
|- | |||
| ]s | |||
| are responsibile for the design, development, and maintenance of World Wide Web sites | |||
|- | |||
| ]s | |||
| work as theorist, researchers, or inventors and are distinguished by their higher-level of theoretical expertise or by their innovative new technology | |||
|- | |||
| ]s | |||
| design and manage computer database systems and related system security | |||
|} | |||
== Major fields of importance for computer science == | == Major fields of importance for computer science == |
Revision as of 06:04, 17 January 2006
You must add a |reason=
parameter to this Cleanup template – replace it with {{Cleanup|December 2005|reason=<Fill reason here>}}
, or remove the Cleanup template.
Computer science is the science of computer systems and related computation. It studies on the management of the complexity in the construction and analysis of its systems.
Some have said computer science is closely related to mathematics, which does not follow the scientific method, and that it borders on not being a science as a result. Some, also, have said computer science as to denominate anything related to computers. Often, many have used an aspect of scientific computing transparently in their reference to computer science. Because of the diversity in the science, there are different points of view on its technical definition.
Overview
Modern computer systems have an operating system, which has algorithms in its software to control its hardware. Software involves a study of computer languages and programming paradigms, which further involves mathematical practices and abstraction. Hardware involves the study of computer architecture and its peripherals. A computer system is a means to automate tasks and to execute computational systems. Hardware and program construction are the engineerial aspects, related to computer engineering and information technology. Computer scientists, on the other hand, go deeper into computability and are distinguishable by their higher-level of innovative or theoretical expertise in technology.
Fields of computer science
Computer Science has a number of major sub-fields which can be classified by a number of means (for example the ACM classification system).
Algorithms
Main article: AlgorithmsThe study of algorithms is aimed at creating techniques that will enable a computer to perform a certain task in an efficient manner. An algorithm is a set of well-defined instructions for accomplishing some task, often explained by analogy with a culinary recipe. Algorithms are often implemented in software, and advancing the state of the art in algorithms is responsible for many of the most spectacular successes in computing.
An algorithms specialist may come up with methods to accomplish new tasks, but just as often, they will work on improving the efficiency of an existing algorithm. These improvements can come in "time" (the length of time it takes for the algorithm to work) and "space" (the amount of computer memory the algorithm consumes.)
The field of algorithms is highly formal and many things can be proved about a given algorithm (using complexity theory), including roughly how long it will take to complete, as compared to the size of its input (the number of options it must consider). One interesting open question in algorithms concerns the complexity classes P and NP, and whether or not P = NP. If it does, then a whole range of seemingly difficult algorithms can in theory be performed quickly.
Data structures
Main article: Data structureA data structure is a way to store, retrieve, and/or organize data. A well-designed data structure allows useful operations to be implemented efficiently (without consuming excessive time, space, or other computational resources).
Some data structures are very simple: the simplest is an array which is simply an indexed list of equally-sized items. Since the memory of a computer is usually modelled as an array (of bytes), this is also one of the most important data structures in computer science. For example, strings of text are usually modelled as arrays. But there are many other data structures such as linked lists, trees, hash tables and many others that are quite different but critical to the science.
Type theory classifies data at a most basic (mathematical) level into different types, such as integers, complex numbers, strings, etc. and deals with how those types can interact. Abstract data types, at a more concrete level, deal with how types and data structures are used in software programming.
Closely related disciplines
Computer science is closely related to a number of fields. These fields overlap considerably, though important differences exist:
Algorithms | techniques to enable a computer to efficiently perform a specific task |
Artificial intelligence | implementation and study of systems that exhibit (either behaviourally or seemingly) an autonomous intelligence or behaviour of their own, sometimes inspired by the characteristics of living beings. Computer science is closely tied with AI, as software and computers are primary tools for the development and progression of artificial intelligence |
Bioinformatics | or computational biology, is the use of techniques from applied mathematics, informatics, statistics, and computer science to solve biological problems |
Computer engineering | analysis, design, and construction of computer systems (including computer hardware and computer networks). |
Complexity Theory | field of computer science that tries to find fundamental lower bounds for computation. |
Computer programming | the act of writing program code |
Computer graphics | field of visual computing, where one uses computers both to generate visual images synthetically and to integrate or alter visual and spatial information sampled from the real world |
Computer vision | the act of computers extracting three dimensional objects from a two dimensional picture |
Computing | overarching term for all of these related fields with CS |
formal grammar | abstract structure that describes a formal language precisely |
Information science | or Informatics is the study of data and information, which includes how to create, interpret, analyze, store, retrieve, transfer, and manage it. Information science started as the scientific foundation for communication and databases. It also concerns the ways people generate, use and find information (see cognitive science) |
Information security | analysis and implementation of information system security, like cryptography. |
Information retrieval | the art and science of searching for information in documents, searching for documents themselves, searching for metadata that describes documents, or searching within databases, whether relational stand-alone databases or hypertext networked databases such as the Internet or intranets, for text, sound, images or data |
Information systems | application of computing to support the operations of an organization: operating, installing, and maintaining the computers, software, and data |
Information technology | an overarching term for all these related fields within CS. |
Lexicography | study of lexicographic reference works; includes the study of electronic and Internet-based dictionaries |
Linguistics | study of languages; it converges with computer science in such areas as programming language design and natural language processing |
Logic | a formal system of reasoning and the study of principles that lay at the basis of computing machines, at both the hardware (digital logic) and software (verification, AI etc.) levels |
Management information systems | subfield of information systems, that emphasizes financial and personnel management |
Mathematics | shares many techniques and topics with computer science, but is more general. Theoretical computer science is the mathematics of computing |
Software engineering | emphasizes specification, analysis, design, construction, and testing of useful software applications. Software engineering includes development methodologies (such as the waterfall model and extreme programming) and project management |
History of computer science
Main article: History of computer scienceEvolutionary
Before the 1920s, computers were human clerks that performed calculations. They were usually under the lead of a physicist. Many thousands of computers were employed in commerce, government, and research establishments. Most of these computers were women, and they were known to have a degree in calculus.
After the 1920s, the expression computing machine refered to any machine that performed the work of a human computer, especially those in accordance with effective methods of The Church-Turing Thesis. The thesis states that a mathematical method is effective if it could be set out as a list of instructions able to be followed by a human clerk with paper and pencil, for as long as necessary, and without ingenuity or insight.
Machines that computed with continuous values became known as the analog kind. They used machinery that represented continuous numeric quantities, like the angle of a shaft rotation or difference in electrical potential.
Digital machinery, in contrast to analog, were able to render a state of a numeric value and store each individual digit. Digital machinery used difference engines or relays before the invention of faster memory devices.
The phrase computing machine gradually gave away, after the late 1940s, to just computer as the onset of electronic digital machinery became common. These computers were able to perform the calculations that were performed by the previous human clerks.
Since the values stored by digital machines were not bound to physical properties like the analog device, a logical computer, based on digital equipment, was able to do anything that could be described "purely mechanical." Alan Turing, known as the Father of Computer Science, invented such a logical computer, also known as a Turing Machine, that evolved into the modern computer from the tasks performed by the previous human clerks. These new computers were also able to perform non-numeric computations, like music.
Computability, by logical computers, began a science by being able to make evident which was not explicitly defined into ordinary sense more immediate.
Academic discipline
Computer science has roots in electrical engineering, logic, mathematics, and linguistics. In the last third of the 20th century computer science emerged as a distinct discipline and developed its own methods and terminology. Originally, CS was taught as part of mathematics or engineering departments, for instance at the University of Cambridge in England and at the Gdansk University of Technology in Poland, respectively. Cambridge claims to have the world's oldest taught qualification in computing. The first computer science department in the United States was founded at Purdue University in 1962, while the first college entirely devoted to computer science was founded at Northeastern University in 1982. Most universities today have specific departments devoted to computer science, while some conjoin it with engineering, with applied mathematics, or other disciplines.
Most research in computer science has focused on von Neumann computers or Turing machines (computation models that perform one small, deterministic step at a time). These models resemble, at a basic level, most real computers in use today. Computer scientists also study other models of computation, which includes parallel machines and theoretical models such as probabilistic, oracle, and quantum computers.
Demographics
In the U.S.:
- Nearly half of all computer programmers held a bachelor’s degree in 2002; about 1 in 5 held a graduate degree.
- Computer programmer employment is expected to grow much more slowly than that of other computer specialists.
- Education requirements range from a 2-year degree to a graduate degree.
- Employment, other than the computer programmer, is expected to increase much faster than the average as organizations continue to adopt increasingly sophisticated technologies.
This article is a stub. You can help Misplaced Pages by expanding it. |
Careers
Some of the potential careers for those who study computer science are listed below:
Systems analysts | solve computer problems and apply computer technology to meet the individual needs of an organization |
Computer programmers | design and update the software that runs a computer |
Telecommunication specialists | design and maintain the network between computers and the interaction between people and computers |
Network specialists | focus more on a local area network than the Telecommunication specialist (a.k.a. Network Administrator) |
Web developers | are responsibile for the design, development, and maintenance of World Wide Web sites |
Computer scientists | work as theorist, researchers, or inventors and are distinguished by their higher-level of theoretical expertise or by their innovative new technology |
Database administrators | design and manage computer database systems and related system security |
Major fields of importance for computer science
See also
- Benchmark
- Computer jargon
- Computer numbering formats
- Computer slang
- Computing
- Data acquisition
- European Association for Theoretical Computer Science
- IEEE John von Neumann Medal
- Internet
- List of algorithms
- List of basic computer science topics
- List of computer science conferences
- List of computing topics
- List of data structures
- List of open problems in computer science
- List of publications in computer science
- List of prominent pioneers in computer science
- Multimedia
- Online computations and algorithms
- Sensor network
- Turing Award (ACM)
External links
- Open Directory Project: Computer Science
- Downloadable Science and Computer Science books
- Collection of Computer Science Bibliographies
- Belief that title "science" in "computer science" is inappropriate