The Crimson Empire
Would you like to react to this message? Create an account in a few clicks or log in to continue.

The Crimson Empire


 
HomePortalLatest imagesSearchRegisterLog in

 

 Introduction to Computer Science

Go down 
AuthorMessage
Parfum Exotiqué

Parfum Exotiqué


Posts : 55
Join date : 2008-10-11

Introduction to Computer Science Empty
PostSubject: Introduction to Computer Science   Introduction to Computer Science Icon_minitimeTue Oct 28, 2008 7:12 am

Computer science (or computing science) is the study and the science of the theoretical foundations of information and computation and their implementation and application in computer systems. Computer science has many sub-fields; some emphasize the computation of specific results (such as computer graphics), while others relate to properties of computational problems (such as computational complexity theory). Still others focus on the challenges in implementing computations. For example, programming language theory studies approaches to describing computations, while computer programming applies specific programming languages to solve specific computational problems. A further subfield, human-computer interaction, focuses on the challenges in making computers and computations useful, usable and universally accessible to people.


Fields of Computer Science.

Computer science searches for concepts and formal proofs to explain and describe computational systems of interest. As with all sciences, these theories can then be utilised to synthesize practical engineering applications, which in turn may suggest new systems to be studied and analysed. While the ACM Computing Classification System can be used to split computer science up into different topics of fields, a more descriptive breakdown follows:

Mathematical foundations

Mathematical logic: Boolean logic and other ways of modeling logical queries; the uses and limitations of formal proof methods.

Number theory: Theory of proofs and heuristics for finding proofs in the simple domain of integers. Used in cryptography as well as a test domain in artificial intelligence.

Graph theory: Foundations for data structures and searching algorithms.

Type theory: Formal analysis of the types of data, and the use of these types to understand properties of programs, especially program safety.

Category theory: Category theory provides a means of capturing all of math and computation in a single synthesis.

Computational geometry: The study of algorithms to solve problems stated in terms of geometry.

Numerical analysis: Foundations for algorithms in discrete mathematics, as well as the study of the limitations of floating point computation, including round-off errors.

Theory of computation

Automata theory: Different logical structures for solving problems.

Computability theory: What is calculable with the current models of computers. Proofs developed by Alan Turing and others provide insight into the possibilities of what can be computed and what cannot.

Computational complexity theory: Fundamental bounds (especially time and storage space) on classes of computations; in practice, study of which problems a computer can solve with reasonable resources (while computability theory studies which problems can be solved at all).

Quantum computing theory:Representation and manipulation of data using the quantum properties of particles and quantum mechanism.

Algorithms and data structures

Analysis of algorithms: Time and space complexity of algorithms.

Algorithms: Formal logical processes used for computation, and the efficiency of these processes.

Programming languages and compilers

Compilers:Ways of translating computer programs, usually from higher level languages to lower level ones.

Interpreters: A program that takes in as input a computer program and executes it.
Programming languages. Formal language paradigms for expressing algorithms, and the properties of these languages (e.g., what problems they are suited to solve).


Concurrent, parallel, and distributed systems

Concurrency:The theory and practice of simultaneous computation; data safety in any multitasking or multithreaded environment.

Distributed computing:Computing using multiple computing devices over a network to accomplish a common objective or task and thereby reducing the latency involved in single processor contributions for any task.

Parallel computing: Computing using multiple concurrent threads of execution.
Back to top Go down
Parfum Exotiqué

Parfum Exotiqué


Posts : 55
Join date : 2008-10-11

Introduction to Computer Science Empty
PostSubject: Re: Introduction to Computer Science   Introduction to Computer Science Icon_minitimeTue Oct 28, 2008 7:15 am

Software engineering

Algorithm design: Using ideas from algorithm theory to creatively design solutions to real tasks

Computer programming:The practice of using a programming language to implement algorithms

Formal methods: Mathematical approaches for describing and reasoning about software designs.

Reverse engineering:The application of the scientific method to the understanding of arbitrary existing software

Software development. The principles and practice of designing, developing, and testing programs, as well as proper engineering practices.

System architecture

Computer architecture:The design, organization, optimization and verification of a computer system, mostly about CPUs and memory subsystems (and the bus connecting them).

Computer organization:The implementation of computer architectures, in terms of descriptions of their specific electrical circuitry

Operating systems: Systems for managing computer programs and providing the basis of a useable system.

Communications

Computer audio: Algorithms and data structures for the creation, manipulation, storage, and transmission of digital audio recordings. Also important in voice recognition applications.

Networking:Algorithms and protocols for communicating data across different shared or dedicated media, often including error correction.

Cryptography.Applies results from complexity, probability and number theory to invent and break codes.

Databases

Data mining:Data mining is the extraction of relevant data from all sources of data.

Relational databases: Study of algorithms for searching and processing information in documents and databases; closely related to information retrieval.
OLAP

Online Analytical Processing, or OLAP, is an approach to quickly provide answers to analytical queries that are multi-dimensional in nature. OLAP is part of the broader category business intelligence, which also encompasses relational reporting and data mining.

Artificial intelligence ( My Master's area )

Artificial intelligence: The implementation and study of systems that exhibit an autonomous intelligence or behaviour of their own.

Artificial life: The study of digital organisms to learn about biological systems and evolution.

Automated reasoning: Solving engines, such as used in Prolog, which produce steps to a result given a query on a fact and rule database.

Computer vision: Algorithms for identifying three dimensional objects from one or more two dimensional pictures. ( my Thesis for PHD)

Machine learning: Automated creation of a set of rules and axioms based on input.

Natural language processing/Computational linguistics: Automated understanding and generation of human language

Robotics: Algorithms for controlling the behavior of robots.

Visual rendering (or Computer graphics)

Computer graphics: Algorithms both for generating visual images synthetically, and for integrating or altering visual and spatial information sampled from the real world.

Image processing: Determining information from an image through computation.

Human-Computer Interaction

Human computer interaction:The study of making computers and computations useful, usable and universally accessible to people, including the study and design of computer interfaces through which people use computers.

Scientific computing

Bioinformatics: The use of computer science to maintain, analyse, and store biological data, and to assist in solving biological problems such as protein folding, function prediction and phylogeny.

Cognitive Science: Computational modelling of real minds

Computational chemistry: Computational modelling of theoretical chemistry in order to determine chemical structures and properties

Computational neuroscience:Computational modelling of real brains

Computational physics:Numerical simulations of large non-analytic systems

Numerical algorithms: Algorithms for the numerical solution of mathematical problems such as root-finding, integration, the solution of ordinary differential equations and the approximation/evaluation of special functions.

Symbolic mathematics:Manipulation and solution of expressions in symbolic form, also known as Computer algebra.

Didactics of computer science/informatics

The subfield didactics of computer science focuses on cognitive approaches of developing competencies of computer science and specific strategies for analysis, design, implementation and evaluation of excellent lessons in computer science.

I hope this helps as a general introduction.
Back to top Go down
 
Introduction to Computer Science
Back to top 
Page 1 of 1

Permissions in this forum:You cannot reply to topics in this forum
The Crimson Empire :: OOC Scientific Discussions :: Computer Science-
Jump to: