Busy. Please wait.
or

show password
Forgot Password?

Don't have an account?  Sign up 
or

Username is available taken
show password

why


Make sure to remember your password. If you forget it there is no way for StudyStack to send you a reset link. You would need to create a new account.
We do not share your email address with others. It is only used to allow you to reset your password. For details read our Privacy Policy and Terms of Service.


Already a StudyStack user? Log In

Reset Password
Enter the associated with your account, and we'll email you a link to reset your password.
Don't know
Know
remaining cards
Save
0:01
To flip the current card, click it or press the Spacebar key.  To move the current card to one of the three colored boxes, click on the box.  You may also press the UP ARROW key to move the card to the "Know" box, the DOWN ARROW key to move the card to the "Don't know" box, or the RIGHT ARROW key to move the card to the Remaining box.  You may also click on the card displayed in any of the three boxes to bring that card back to the center.

Pass complete!

"Know" box contains:
Time elapsed:
Retries:
restart all cards
share
Embed Code - If you would like this activity on your web page, copy the script below and paste it into your web page.

  Normal Size     Small Size show me how

Chapter 1

Introduction to Computers, the Internet and Visual C#

TermDefinition
Computer Programs Computers process data under the control of sequences of instructions called computer programs
Computer Programmers People who specify actions that programs guide the computer through
Software Programs that run on a computer
Object-Oriented Programming Today's key programming methodology that's enhancing programmer productivity and reducing software development costs
Software Objects Model both abstract and real world things
Hardware Various devices a computer consists of, such as the keyboard, screen, mouse, hard disks, memory, DVD drives, and processing units
1. Moore's Law The remarkable trend in which every year or two, the capacities of computer hardware have approximately doubled inexpensively. Named after Gordan Moore, co-founder of Intel, the leading manufacturer of processors in today's computers and embedded systems
2. Moore's Law Such as smartphones, appliances, game controllers, cable set-top boxes, and automobiles
1. Moore's Law and Related Observations Apply Especially to 1. The amount of memory that computers have for running programs and processing data.. 2. The amount of secondary storage(such as hard disk storage) they have to hold programs and data over longer periods of time
2. Moore's Law and Related Observations Apply Especially to 3. Processor Speeds - the speeds at which computers execute their programs/do their work
Data Hierarchy Formed by data items processed by computers which become larger and more complex in structure as we progress from the simplest data items, such as characters, fields, and so on
Bit The smallest data item in a computer. Can assume the value of 0 or 1. Short for "Binary Digit" - a digit that can assume either of two values. Ex: 0 or 1
Characters Digits(0-9), letters(A-Z and a-z), and special symbols($, @, %, &, *, (,), -, +, ", :, ?, and /). Composed of bits. Ex: 01001010 (ASCII character J)
Computer's Character Set The set of all the characters used to write programs and represent data items of that device
Unicode Character Set A character set that contains characters for many of the world's programming languages
ASCII(American Standard Code for Information Interchange) Character Set The popular subset of Unicode that represents uppercase and lowercase letters in the English alphabet, digits, and some common special charcters
Fields Just as characters are composed of bits, fields are composed of characters. Ex: Judy
Records Composed of several related fields. Ex: Judy Green
1. Files Groups of related records. More generally, a file contains arbitrary data in arbitrary formats. In some operating systems, a file is viewed simply as a sequence of bytes - any organization of the bytes in a file,
2. Files such as organizing the data into records, is a view created by the programmer. Ex: Sally Black, Tom Blue, Judy Green, Iris Orange, Randy Red
1. Database A collection of data that's organized for easy access and manipulation. Most popular database model is the relational database in which data is stored in simple tables.
2. Database For example, a table of students might include first name, last name, major, year, student ID number, and GPA. Data for each student is a record, and the individual pieces of information in each record are fields
Input Unit This "receiving" section obtains information(data and computer programs) from input devices and places it at the disposal of the other units for processing
Output Unit This "shipping" section takes information that the computer has processed and places it in various output devices to make it availabe for use outside the computer
1. Memory Unity This rapid- access relatively low-capacity "warehouse" sections retains information that's entered through the input unit, making it immediately available for processing when needed.
2. Memory Unity Also contains processed information until it can be placed on output devices by the output unit. Called memory or primary memory. Information in memory is lost when computer is turned off
1. Arithmetic and Logic Unit(ALU) This "manufacturing" section performs calculations, such as addition, subtraction, multiplication, and division. Also contains the decision mechanisms that allow the computer to compare two items from the memory unit to determine if equal
2. Arithmetic and Logic Unit(ALU) ALU is usually implemented as part of the CPU in today's systems
1. Central Processing Unit This "administrative" section coordinates and supervises the operation of the other sections. Tells the input unit when information should be read into the memory unit, tells the ALU when information from the memory unit should be used in calculations,
2. Central Processing Unit and tells the output unit when to send information from the memory unit to certain output devices
Multi-Core Processor Implements multiple processors on a single "microchip" - a dual-core processor has two CPUs and a quad-core has four
Secondary Storage Unit The long-term, high-capacity "warehousing" section. Programs or data not actively being used by the other units normally are placed in secondary storage devices(such as hard drive) until they're needed again. Information is persistent even after shutdown
Machine Language Any computer can directly understand its own machine language, defined by its hardware architecture. Generally consist of numbers, ultimately reduced to 1s and 0s.
Code Machine language numeric versions of instructions. Now refers to the program instructions in all levels of computer language
Assembly Language Based off of English-like abbreviations that represent elementary operations
Translator Programs Called assemblers. Convert assembly-language code into machine code quickly
High-Level Languages Developed to speed programming process even more than assembly language. In these languages, single statements can be written to accomplish substantial tasks and allow you to write instructions that look like everyday English and common math expressions
Compiler Translator programs that convert high-level language code into machine language code. Compilers can take long time
Interpreter Programs Developed to execute high-level language programs directly(without need for compilation), although more slowly than compiled programs
Objects Objects, or more precisely the classes objects come from, are essentially reusable software components. There are date objects, time objects, audio objects, people objects, etc.
Methods Performing a task in a program requires a method. The method houses the programming statements that actually perform the task. It hides these statements from its user
Class A program unit created to house the set of methods that perform the class's task. For example. a class that represents a bank account might contain one method to deposit money, another to withdraw, and a third to check balance.
1. Making Objects from Clases Just as someone has to build a car from its engineering drawings before you can drive it, you must build an object from a class before a program can perform the tasks that the class's methods define. This process is called instantiation.
2. Making Objects from Clases An object is then referred to as an instance of its class
1. Messages and Method Call When you drive a car, pressing its gas pedal sends a message to the car to perform a task - that is, go faster. Similarly, you send messages to an object. Each message is implemented as a method call that tells a method of the object to perform its task.
2. Making Objects from Clases For example, a program might call a particular bank-account object's deposit method to increase the account's balance
1. Attributes and Instance Variables A car, besides having capabilities to accomplish tasks, also has attributes, such as color, current speed, and amount of gas in its tank. These attributes are carried along with the car as you drive it. Every car maintains its own attributes.
2. Attributes and Instance Variables For example, each car knows how much gas is in its own tank, but not how much is in the tanks of other cars, An object, similarly, has attributes that it carries along as it's used in a program. These attributes are part of the objects class.
3. Attributes and Instance Variables Attributes are specified by the class's instance variables
1. Encapsulation Classes encapsulate attributes and methods into objects - an object's attributes and operations are intimately related. Objects may communicate with one another, but are not allowed to know how other objects are implemented.
2. Encapsulation Implementation details are hidden within objects. This information hiding is crucial for good software engineering
Inheritance A new class of objects can be created quickly and conveniently by inheritance - the new class absorbs the characteristics of an existing class, possibly customizing them and adding unique characteristics of its own
1. Object-Oriented Analysis and Design(OOAD) To create the best solutions for projects, you should follow a detailed analysis process for determining your project's requirements(defining what the system is supposed to do)
2. Object-Oriented Analysis and Design(OOAD) and developing a design that satisfies them(deciding how the system should do it). If this process involves analyzing and designing your system from an object oriented point of view, it's called an object-oriented analysis and design(OOAD)
Object Oriented Programming(OOP) Programming in an object oriented language, such as C#. Allow you to implement an object-oriented design as a working system
The UML(Unified Modeling Language) The most widely used graphical scheme for modeling object-oriented systems. Can communicate the result of any OOAD process
Bandwidth The information-carrying capacity of communications lines
World Wide Web(Web) A collection of hardware and software associated with the Internet that allows computer users to locate and view multimedia-based documents(documents with various combinations of text, graphics, animations, audios, and videos) on almost any subject
.NET Framework Class Library A vast collection of prebuilt classes that enable you to develop apps quickly.C# has access to this library
Event-Driven Programming C# is event driven. You'll write programs that respond to user-initiated events such as mouse clicks, key strokes, timer expirations, and touches and finger swipes - gestures commonly used on smarphones and tablets
Visual Programming Microsoft's Visual C# is a visual programming language - in addition to writing program statements to build portions of your apps, you'll also use Visual Studio's graphical user interfaces(GUI) to conveniently drag and drop predefined objects into screen
Synchronous Programming A style of programming in which each task in a program must finish executing before the next task can begin
Asynchronous Programming A style of programming in which multiple tasks can be performed at the same time
Microsoft's .NET Initiative A broad vision for using the Internet and web in the development, engineering, distribution, and use of software. .NET allows you to create apps in any .NET compatable language
.NET Framework Executes apps and contains the .NET Framework class library, which provides many capabilities that you'll use to build substantial C# apps quickly and easily
Common Language Runtime(CLR) Another key part of the .NET Framework. Executes .NET programs and provides functionality to make them easier to develop and debug
Virtual Machine(VM) Software that manages the execution of programs and hides from them the underlying operating system and hardware. The CLR is a VM
1. Managed Code The source code for programs that are executed and managed by the CLR. The CLR provides various services to managed code, such as integrating software components written in different .NET languages, error handling between such components,
2. Managed Code enhanced security, automatic memory management and more
Unmanaged-Code Programs Do not have access to the CLR's services, which makes it more difficult to write
1. Managed Code is Compiled Into Machine-Specified Instructions in the Following Steps 1. First the code is compiled into Microsoft Intermediate Language(MSIL). Code converted into MSIL from other languages and sources can be woven together by the CLR - this allows programmers to work in their preferred .NET language
2. Managed Code is Compiled Into Machine - Specified Instructions in the Following Steps 2. When app executes, another compiler(known as the just-in-time compiler or JIT compiler) in the CLR translates the MSIL in the executable file into machine-language code(for a particular platform).. 3. The machine-language code executes off platform
Platform Independence The ability of a program to run without modification across multiple platforms. IF the .NET Framework exists and is installed for a platform, that platform can run any .NET program
Porting Converting programs to different platforms
Operating Systems Software systems that make using computers more convenient for users, developers, and system administrators. They provide services that allow each app to execute safely, efficiently, and concurrently(in parallel) with other apps
Windows Phone 8 A pared down version of Windows 8 designed for smartphones. These are resource-constrained devices - they have less memory and processor power than desktop computers, and limited battry life
Cloud Computing Allows you to used software and data stored in the "cloud" - accessed on remote computers(or servers) via the Internet and avaialable on demand - rather than having it stored on your desktop, notebook computer, or mobile device
Integrated Development Protocol(IDE) C# programs are created using Microsoft's Visual Studio - a collection of software tools. Visual Studio 2012 Express IDE enables you to write, run, test, and debug C# programs quickly and conveniently
Transmission Control Protocol(TCP) Ensures that messages, consisting of sequentially numberd pieces called packets, were properly routed from sender to receiver, arrived intact and assembled in the correct order
Created by: TimC#Programming