1/58
Looks like no tags are added yet.
Name  | Mastery  | Learn  | Test  | Matching  | Spaced  | 
|---|
No study sessions yet.
Artificial science
The term used to distinguish computer science from other sciences that are more natural and earthly
what are the three main divisions in computer science
software, hardware, and theory
what is theory in computer science
the study of the capabilities and limitations of computers
what is a turing machine
a simple computational machine with paper tape
what is hardware in computer science
the physical study of computer, those who study it look at how they can be better.
what are systems software
the programs that directly control the executions of computers
what is developmental software
the programs like Microsoft that can add on tools and develop other applications
what is applications software
the “other” of programs, anything outside of typical software
Web pages that behavior changes every time they are loaded as event occur
Web pages where the content doe not change, it does not provide capabilities for specifying dynamic behavior
A name given to an element so that it can be a subject of an action. Added to an HTML element using the ID attribute
An attribute that defines how an element should react to some event like a click
The final piece needed for an element action: ID.ATTRIBUTE=NEW_VALUE;
He was the first guy to use hypothesis and theory to describe natural phenomena
Greek natural philosophy that was used to explain natural phenomena
Galileo
Watch a phenomenon
Guess why it behaves how it behaves
Design an experiment to test the hypothesis
Test or experiment to either confirm or refute hypothesis
Analyze the results of the experiment
Tweak hypothesis to reflect analyzations of the experiments
A measure of how reproducible a result is. For a scientific work to be accepted, it must be reproducible.
A measure or how close an experimental result is to the correct or expected result
An approach to problem-solving that involves expressing problems and their solutions in ways that a computer can execute.
Decomposition, patter-recognition, abstraction, and algorithms
Breaking a complex problem into smaller, more manageable problems
Recognizing how solutions to similar problems can be adapted to solve new ones
Ignoring irrelevant details and focusing on those features that lead to a solution
Representing the solution as a step-by-step sequence of instructions
the process of designing and implementing algorithms that a computer can carry out
Patterns of 1’s and 0’s that compile together to make a computer
Languages created to allow programers to specify instructions using words rather than just number sequences
A separate program requires to translate assembly instructions into the corresponding binary machine language instructions
Made it a two step process, 1: write the program and 2: translate the program into machine language
Languages like JavaScript or C++ that include abstractions to provide more natural frameworks to solve problem
Approaches like interpretation and compilation that are required to understand high-level programming languages in order to execute them
Relies on the interpreter to translate, it reads the programs statement one at a time and translates before moving to the next
A program translation that uses a compiler to translate entire high-level programs into machine language
A general category in which each unit of information belongs to that defines the ways in which the information can be handles
Text values in JavaScript
true/false values in Java
Part of the JavaScript language and may be used by programmers to manipulate values of that type
Algorithms, architecture, software engineering, artificial intelligence
Developing, analyzing, and implementing algorithms for solving problems
Encoding a message
The caesar algorithm that can encode a message
Concerned with the methods of organizing hardware components into efficient reliable systems
When a program processes twitch at the same time
Concerned with creating effective software systems
The dominant approach to software development
A popular framework which formalizes each phrase into structure, its a 2-4 week process called a sprint
An important trend of software development that is an approach to developing and testing software
An aim of computer design to make it more human
Programs that encapsulate the knowledge and reasoning of experts in that domain
An approach to AI development that focuses on training the software to learn and improve its behavior
A model that mimics the way a human brain is configured
Can have multiple inputs, a single output and a function that maps the output to an input
CEFC: a code that outlines computer professionals responsibilities to ensure that hardware and software are used correctly