High School
D77 - Introduction to Computer
Science/
Java Programming
Curriculum Essentials
Document
Introduction
Java Programming Using Computational Thinking and Engineering Principles is a one-semester course is an introduction to Java Programming emphasizing its foundation in computational thinking, an
interdisciplinary method of scientific inquiry. Topics will be taught emphasizing STEM domains and will include, but are not limited to: data types, variables, and arithmetic operations, strings, arrays, streams and files, graphics, and methods and constructions. Students will also gain experience with object-oriented programming and project-based learning utilizing ideas of computer graphics and game programming and its application in building mathematical models that are of interest to scientists and engineers. D77 Java Programming is a prerequisite to D78 AP Computer Science Java and D86 C++ Programming.
This course is mostly modeled after the Computer Science Concepts and Practices course from K–12 Computer Science Standards with greater emphasis on Java Programming. Details of the Computer
Science Concepts and Practices course can be found at the Computer Science Teachers Association
Introduction to Computer Science/ Java Programming Overview Course Description
This one semester course is an introduction to Java Programming emphasizing its foundation in
computational thinking, an interdisciplinary method of scientific inquiry. Topics will be taught emphasizing STEM domains and will include, but are not limited to: data types, variables, and arithmetic operations, strings, arrays, streams and files, graphics, and methods and constructions. Students will also gain experience with object-oriented programming and project-based learning utilizing ideas of computer graphics and game
programming and its application in building
mathematical models that are of interest to scientists and engineers. D77 Java Programming is a prerequisite to D78 AP Computer Science Java and D86 C++ Programming.
Topics at a Glance Computational Thinking
* Classify problems as tractable, intractable, or computationally unsolvable.
* Evaluate algorithms by their efficiency, correctness, and clarity.
* Compare and contrast simple data structures and their uses (e.g., arrays and lists).
* Discuss the interpretation of binary sequences in a variety of forms (e.g., instructions, numbers, text, sound, image).
* Use models and simulations to help formulate, refine, and test scientific hypotheses.
* Analyze data and identify patterns through modeling and simulation.
* Decompose a problem by defining new functions and classes.
Java Programming
Data types, variables, arithmetic operations, strings, arrays, streams and files, graphics, iterations, conditionals and OOP
Computers & Communications Devices
* Discuss the impact of modifications on the functionality of application programs.
* Identify and describe hardware (e.g., physical layers, logic gates, chips, components).
Collaboration
* Demonstrate software life cycle process by participating on a project team.
* Evaluate programs written by others for readability and usability.
Community, Global, & Ethical Impacts
* Demonstrate ethical use of modern communication media and devices.
* Identify laws and regulations that impact the development and use of software.
* Analyze the impact of government regulation on privacy and security.
* Differentiate among open source, freeware, and proprietary software licenses and their applicability to different types of software.
Assessments
• Labs Assignments
• Individual and Group Projects
• Classroom Blogs / Forums
• Selected Readings
Prepared Graduates
The preschool through twelfth-grade concepts and skills that all students who complete the
Colorado education system must master to ensure their success in a postsecondary and workforce setting.
1. CTE Essential Skills: Academic Foundations
ESSK.01: Achieve additional academic knowledge and skills required to pursue the full range of career and postsecondary education opportunities within a career cluster.
Prepared Graduate Competencies in the CTE Essential Skills standard:
Complete required training, education, and certification to prepare for employment in a particular career field
Demonstrate language arts, mathematics, and scientific knowledge and skills required to pursue the full range of post-secondary and career opportunities
2. CTE Essential Skills: Communications Standards
ESSK.02: Use oral and written communication skills in creating, expressing, and interrupting information and ideas, including technical terminology and information
Prepared Graduate Competencies in the CTE Essential Skills standard:
Select and employ appropriate reading and communication strategies to learn and use technical concepts and vocabulary in practice
Demonstrate use of concepts, strategies, and systems for obtaining and conveying ideas and information to enhance communication in the workplace
Prepared Graduate Competencies in the CTE Essential Skills standard:
Employ critical thinking skills independently and in teams to solve problems and make decisions
Employ critical thinking and interpersonal skills to resolve conflicts with staff and/or customers
Conduct technical research to gather information necessary for decision-making
4. CTE Essential Skills: Safety, Health, and Environmental
ESSK.06: Understand the importance of health, safety, and environmental management systems in organizations and their importance to organizational performance and regulatory compliance
Prepared Graduate Competencies in the CTE Essential Skills standard:
Implement personal and jobsite safety rules and regulations to maintain safe and helpful working conditions and environment
Complete work tasks in accordance with employee rights and responsibilities and employers obligations to maintain workplace safety and health
5. CTE Essential Skills: Leadership and Teamwork
ESSK.07: Use leadership and teamwork skills in collaborating with others to accomplish organizational goals and objectives
Prepared Graduate Competencies in the CTE Essential Skills standard:
6. CTE Essential Skills: Employability and Career Development
ESSK.09: Know and understand the importance of employability skills; explore, plan, and effectively manage careers; know and understand the importance of entrepreneurship skills Prepared Graduate Competencies in the CTE Essential Skills standard:
Indentify and demonstrate positive work behaviors and personal qualities needed to be employable
Develop skills related to seeking and applying for employment to find and obtain a desired job
COLORADO COMMUNITY COLLEGE SYSTEM CAREER & TECHNICAL EDUCATION TECHNICAL STANDARDS REVISION & ACADEMIC ALIGNMENT PROCESS
Colorado’s 21st Century Career & Technical Education Programs have evolved beyond the historic perception of vocational education. They are Colorado’s best kept secret for:
• Relevant & rigorous learning
• Raising achievement among all students
• Strengthening Colorado’s workforce & economy
Colorado Career & Technical Education serves more than 116,000 Colorado secondary students annually through 1,200 programs in 160 school districts, 270 High Schools, 8 Technical Centers, 16 Community Colleges & 3 Technical Colleges. One of every three Colorado high school students gains valuable experiences by their enrollment in these programs.
ALIGNMENT REQUIRED BY SB 08-212
22-7-1005. Preschool through elementary and secondary education - aligned standards - adoption - revisions.
2(b): In developing the preschool through elementary and secondary education standards, the State Board shall also take into account any Career & Technical Education standards adopted by the State Board for Community Colleges and Occupational Education, created in Section 23-60-104, C.R.S., and, to the extent practicable, shall align the appropriate portions of the preschool through
elementary and secondary education standards with the Career and Technical standards. STANDARDS REVIEW AND ALIGNMENT PROCESS
Beginning in the fall of 2008, the Colorado Community College System conducted an intensive standards review and alignment process that involved:
NATIONAL BENCHMARK REVIEW
Colorado Career & Technical Education recently adopted the Career Cluster and Pathway Model endorsed by the United State Department of Education, Division of Adult and Technical Education. This model provided access to a national set of business and industry validated knowledge and skill statements for 16 of the 17 cluster areas. California and Ohio provided the comparative standards for the Energy cluster • Based on this review Colorado CTE has moved from program-specific to Cluster & Pathway based standards and outcomes
• In addition, we arrived at fewer, higher, clearer and more transferrable standards, expectations and outcomes.
COLORADO CONTENT TEAMS REVIEW
The review, benchmarking and adjusting of the Colorado Cluster and Pathway standards, expectations and outcomes was through the dedicated work of Content Teams comprised of secondary and postsecondary
alignments for math, science reading, writing and communication, social studies (including Personal Financial Literacy) and post secondary and workforce readiness (PWR.)
ACADEMIC ALIGNMENT REVIEW
In order to validate the alignment of the academic standards to the Career & Technical Education standards, subject matter experts in math, science, reading, writing and communication, and social studies were partnered with career & technical educators to determine if and when a true alignment existed.
CURRENT STATUS
• One set of aligned Essential skills to drive Postsecondary and Workforce Readiness inclusion in all Career & Technical Education programs.
• 52 pathways with validated academic alignments
• 12 pathways with revised standards ready for alignment (currently there are no approved programs in these pathways)
• 21 pathways where no secondary programming currently exists. Standards and alignments will be developed as programs emerge.
Colorado Career & Technical Education Standards Academic Alignment Reference System
The Career & Technical Education standards have been organized by Career Cluster (17) and Pathway (81). In addition, a set of “Essential Skills” was developed to ensure the Postsecondary and Workforce Readiness within any cluster or pathway. These workforce readiness skills are applicable to all career clusters and should form the basis of each CTE program.
Organization Essential Skills
There exists a common set of knowledge and skills that are applicable to all students regardless of which cluster or pathway they choose. This set of standards, is meant for inclusion in each program to enhance the development of postsecondary and workforce readiness skills.
Career Cluster
A Career Cluster is a grouping of occupations and broad industries based on commonalities. The 17 Career Clusters organize academic and occupational knowledge and skills into a coherent course sequence and identify pathways from secondary schools to two- and four-year colleges, graduate schools, and the workplace. Students learn in school about what they can do in the future. This connection to future goals motivates students to work harder and enroll in more rigorous courses.
Career Pathway
Pathways are sub-groupings of occupations/career specialties used as an organizing tool for curriculum design and instruction. Occupations/career specialties are grouped into Pathways based on the fact that they require a set of common knowledge and skills for career success.
Prepared Completer Competency
This level targets the “big ideas” in each pathway. These are the competencies that all students who complete a CTE pathway must master to ensure their success in a postsecondary and workforce setting. Prepared Completer Competencies will not usually be “course” specific but grow with the student’s progression through the sequence of courses.
Concept/Skill
The articulation of the concepts and skills that indicates a student is making progress toward being a prepared completer. They answer the question: What do students need to know and be able to do?
Evidence Outcome
The indication that a student is meeting an expectation at the mastery level. How do we know that a
Academic Alignments
Academic alignments, where appropriate in Math, Reading, Writing and Communication, Science and Social Studies (including Personal Financial Literacy) were defined by CTE and academic subject matter experts using the following criteria:
• It was a point where technical and academic content naturally collided;
• The student must demonstrate adequate proficiency with the academic standard to perform the technical skill; and
• It could be assessed for both academic and technical understanding.
Colorado’s CTE programs have had academic alignments dating back to the early 1990’s. While these alignments resulted in an increase in academic focus in CTE programs, the reality is that a true transformation in intentional teaching toward the academic standard was limited.
With these alignments comes a new expectation: If a CTE instructor is teaching a CTE concept that has an identified alignment, they must also be intentional about their instruction of the academic standard. CCCS will be providing professional development and instructional resources to assist with the successful
implementation of this new expectation. In addition, this expanded expectation will require increased collaboration between CTE and academic instructors to transform teaching and learning throughout each school.
For each set of Cluster and Pathway standards, the academic alignments have been included and are separated by academic area. CCCS chose to align at the “Evidence Outcome” level. The aligned academic evidence outcome follows the CTE evidence outcome to which it has been aligned. For a sample, see Illustration A.
The academic standard number used in the alignments matches the Colorado Department of Education standards numbering convention.
ITCO.04 Know and understand the importance of professional ethics, legal responsibilities and employability skills. Explore, plan, and effectively manage careers.
ITCO.04.01 Apply standard practices and behaviors that meet legal and ethical responsibilities and exhibit positive cyber-citizenry to understand legal issues faced by IT professionals.
ITCO.04.01.d Describe the role of copyright and intellectual property and the use of materials created by others.
ITCO.04.02 Identify and explore careers in the IT field.
ITCO.04.02.a Demonstrate an understanding of the various IT careers in Private, Public, and non-profit sectors .
ITCO.04.02.c Identify and explore post-secondary opportunities in IT.
ITCO.05 Use the technical knowledge and skills required to pursue the targeted careers for all pathways in the career cluster, including knowledge of design, operation, and maintenance of technological systems critical to the career cluster.
ITCO.05.01 Demonstrate knowledge of the hardware components associated with information systems. ITCO.05.01.a Explain the fundamentals of operating systems.
ITCO.05.01.b Explain the role of number systems in information systems. ITCO.05.01.c Identify computer classifications and hardware.
ITCO.05.01.d Describe the function of computers.
ITCO.05.01.e Explain the difference between “memory” and “storage".
ITIM.01 Understand and implement the design and development process for the production of quality interactive media.
ITIM.01.02 Define scope of work to meet customer requirements.
ITIM.01.02.a Prepare functional and visual design specifications for a project. (ie storyboards, flowcharts, user interface, navigational schema, etc).
ITIM.02 Understand and demonstrate the use of software and hardware for digital communication production, development and project management.
ITIM.02.01 Demonstrate the ability to work with appropriate software tools.
ITIM.02.01.a Demonstrate proficiency in the use of digital imaging tools, digital video techniques, and equipment. (i.e. bitmapped image editing, vector based editing, layers, channels, masks, etc) .
ITIM.02.01.b Demonstrate knowledge of available graphics, video, motion graphics, web software programs.
ITIM.02.01.d Demonstrate knowledge of integrated development environments (such as Visual Studio, Dreamweaver, Flash, Waterproof, etc.
ITPR.01 Identify and analyze customer software needs and requirements to guide programming and software development.
ITPR.01.01.d Identify hardware, networking, and software system requirements.
ITPR.01.01.e Demonstrate knowledge of nonfunctional requirements (eg security, integrity response time, reliability, support and documentation).
ITPR.01.02 Conduct requirements analysis. ITPR.01.02.a Analyze information from users. ITPR.01.02.b Perform workflow analysis.
ITPR.01.02.c Define the issue or opportunity to be solved by the application.
ITPR.01.03 Identify and assess the potential importance and impact of new IT technologies. ITPR.01.03.a Identify new technologies and data communication trends relevant to information
technology.
ITPR.01.03.b Assess the importance of new technologies to future developments.
ITPR.01.03.c Understand the importance of testing new technologies before implementation to customers.
ITPR.02 Design a software application using the software development process to deliver a product to the customer.
ITPR.02.01 Utilize software development processes and methodology. ITPR.02.01.a Demonstrate Problem analysis for a given software problem.
ITPR.02.01.c Identify roles of team members/customers in the software development process. ITPR.02.01.d Understand the Systems Development Life Cycle.
ITPR.02.02 Create design specifications of a computer application.
ITPR.02.02.a Design a software application that meets the requirements of the given problem. ITPR.02.02.b Analyze and prepare logic using pseudocode and/or program flowchart.
ITPR.02.02.c Demonstrate the use of current design tools in the design process.
ITPR.02.02.d Summarize the use of the principles of effective information management, information organization, and information-retrieval skills when designing a software application. ITPR.02.02.e Explain computing/networking hardware and software architecture.
ITPR.03 Produce (code) a computer application to demonstrate proficiency in developing an application using the appropriate programming language.
ITPR.03.01 Demonstrate proficiency of programming language concepts. ITPR.03.01.a Demonstrate knowledge of the hardware-software connections.
ITPR.03.01.b Demonstrate knowledge of the concepts of data and procedural representations. ITPR.03.01.c Demonstrate knowledge of the basic principles for analyzing a programming program. ITPR.03.01.d Demonstrate knowledge of the basics of structured or object-oriented language.
ITPR.03.02 Demonstrate proficiency in developing an application using an appropriate programming language.
ITPR.03.02.a Demonstrate knowledge of current key programming languages and the Interactive Development Environment (IDE) they are used in.
ITPR.03.02.b Translate data structure and program design into code in an appropriate language. ITPR.03.02.c Demonstrate knowledge of key constructs and commands specific to a language. ITPR.03.02.d Demonstrate knowledge of how to resolve program implementation issues (e.g.,
ITPR.06 Design, develop, and maintain a database to store information.
ITPR.06.01 Utilize database development processes to analyze and design a database.
ITPR.06.01.a Identify appropriate database type based on customer requirements, availability of software and hardware resources, and distribution specifications, etc.
ITPR.06.02 Create, populate, and maintain a database.
ITPR.06.02.a Create a database from design specifications using both program code and Graphic User Interface (GUI) processes when provided by the database software.
STCO.01 Understand and demonstrate the characteristics, scope and core concepts of technology. STCO.01.01 Understand and apply tools, materials and processes.
STCO.01.01.a Apply and create an appropriate process for an assigned situation to solve a real world problem, using tools and materials.
STCO.01.01.b Interpret of results of a study, including inferences and predictions. - Define and explain the meaning of significance (both practical and statistical).
STCO.01.02 Apply characteristics of technology.
STCO.01.02.a Analyze rate, goal and commercialization of technology through a production process. STCO.01.03 Use the appropriate technology to determine scope.
STCO.01.03.a Demonstrate the ability to formulate results by the collection and interpretation of data. STCO.01.04 Identify and apply the core concepts of technology.
STCO.01.04.a Demonstrate the ability to characterize a plan and identify the necessary tools that will produce a technical solution when given a problem statement.
STCO.01.04.b Describe the elements of good engineering practice (e.g. understanding customer needs, planning requirements, analysis, using appropriate tools and materials, prototyping, test, evaluation and verification.
STCO.01.04.c Effectively use project management techniques (including, but not limited to, time
management practices, effective organizational skills, conduct analysis of cost, resources, and production capability and quality practices with continuous improvement
STCO.01.04.d Apply knowledge of scientific development to solve real world technical applications. STCO.02 Understand and demonstrate the relationships among technologies and the connections
between technology and other fields of study.
STCO.02.02 Synthesize and apply technological knowledge and advances of science and mathematics. STCO.02.02.a Develop, communicate, and justify an evidence-based scientific prediction regarding the
effects of the action-reaction force pairs on the motion of two interacting objects. STCO.02.02.b Use mathematical principals to analyze the application of an existing material or system
with the goal of improving and modifying it.
STCO.02.02.c Gather, analyze and interpret data on chemical and physical properties of elements (e.g., density, melting point, boiling point, pH, conductivity).
STCO.02.02.d Develop, communicate and justify an evidence based scientific explanation regarding the potential or kinetic nature of a type of energy.
STCO.02.02.e Use appropriate computation methods that encompasses estimation, calculation, and degree of precision.
STCO.02.02.f Find solutions to equations involving power and exponential functions; solve these
equations graphically or numerically or algebraically using calculators, graphing utilities or other.
STCO.05 Develop and demonstrate an understanding of the role of troubleshooting, research and development, invention and innovation, and experimentation in problem solving.
STCO.05.02 Implement trouble shooting techniques in problem solving.
STCO.05.02.a Gather knowledge to correct issues relevant to use and preventative maintenance. (the noisy belt, leaking window, screws to repair human joints, Hubble telescope).
STCO.05.02.b Analyze and interpret prior knowledge of tools, materials and processes to create a plan of action.
STCO.06 Understand and demonstrate the attributes of design by applying the design process and assessing the impact of bringing a product to market.
STCO.06.02 Use the attributes of design.
STCO.06.02.a Understand that design is a creative planning process that leads to useful products and systems.
STCO.06.02.b Explain how the requirements of a design, such as criteria, constraints, and efficiencies sometimes compete with each other.
STCO.06.03 Utilize the design process.
STCO.06.03.a Demonstrate the design process by defining a problem, brainstorming, researching and generating ideas, identifying criteria and specifying constraints, and exploring possibilities. STCO.06.03.b Select an approach, develop a design proposal, make a model or prototype, test and
evaluate the design using specifications, refine the design, create or make it, and communicate processes and results.
STCO.06.03.c Understand that the design needs to be continually checked and critiqued, and the ideas of the design must be redefined and improved.
Academic Vocabulary for - D77-Java Programming Using Computational Thinking & Engineering Principles
General CS Vocabulary
Adapted from: http://quizlet.com
Application Enables users to perform task; Example: shareware, freeware, open source CPU Central processing unit, everything is overseen and processed by CPU Binary Data Hard drive being measured by, example: gigabits, mega bites
BIOS Basic Input Output Device, make sure CPU function, loads the CPU though process of instruction
Cache Uses RAM, store frequently used data with fast RAM that goes straight to CPU Device Drivers Software developed to allow interact between a hardware device
Domain Name Human readable IP address; Example: Porters.org Firmware Hard coded info needed to run software
Firmware Info/instructions embedded in hard ware, needed to run software; example: BIOS
Freeware Copy righted software made available for free for unlimited time; example: iTunes
Hard drive Large capacity storage spaces used to hold info such as programs and documents, holds all software and files used on computer
Hard drive is stored-- Permanently
Hardware Physical components of a computer
HTML Hyper text markup language: is not a programing language but a markup language, use markup tags to create websites. it tells web browser how should web look.
HTTP Hyper text transfer protocol: standard for web browsers and servers, a technical specification in order to function
Input device Device to put in to computer; example: keyboard and mouse Internet One giant network that links people together.
IP address When a client uses the internet, you have to use a address that have numerical label assigned to each device participating in a network. ISP Kind of internet service provider; Example: AT&T
LAN Local Area Network: computer network that covers a small area; Examples: home, office; with this we can use internet wirelessly.
MAC address Media access control address: every mac have a unique serial number called MAC address. used to identify exact device. GLOBAL IDENTIFIER, WRITEN IN ROM, CARRIED IN NIC, hardware card installed in computers to make
possible connection through ethane wire connection to access internet. MAN Metropolitan Area Network: Spans whole city, usually wireless
Memory Fast storage used to hold data
Mother board Main circuit broad that connects all components. have printed circuit broad which provides pathways for all info and communication in the computer Network Used to connect, communicate, and unifying link.
to the application and user about updates and possible errors. :) a software, system
Output device Make info that was input, and processed available to user. Processing Unit Device receives and processes, present info
Protocols They are rules to make sure everything meets it's standards
RAM Random Access Memory. store temporarily info that computer is working on. like short term memory
ROM Read Only Memory. info cannot be changed, needed in order for CPU to function. Translates firmware
Router Hardware device which routes data from LAN to another connection Server and Client Are what you need to use the internet, first something provides you with
ability to access on web-such as google. Then use machines to access servers-aka computer
Server IP Each time a modem connects to ISP, assigns server IP. it is a static IP because it does not change
Shareware Commercial software offers samples f trials before you must buy it; example: Microsoft Office
Software Programs used to operate computers, attached devices; Example: Application, system
System Enables other software to run by interfacing hardware; example: operating system, firmware, device drivers
User IP Each time a device connects to internet, you are assigned a user ID Usually 32 bite numbered
expressed as four octets, look like dotted decimals.
IP address
Virtual Memory Space on hard drive to temporarily store data, swap in and out as needed WAN Wide Area Network: network that covers large geographic areas with many
computers.
WNIC Wireless network Internet card: A NIC that has a antenna, which reads radio wave wireless signals sent from router.
CS Programming Vocabulary
Adapted from: http://quizlet.com
Application software consists of the programs that carry out business functions, such as inventory, payroll, and so on
Arithmetic/ logic unit (ALU) responsible for doing arithmetic computations (for example, ADD A TO B), data transfers (moving data from one area of storage to another), and logical comparisons (such as IS A = 3?) as directed by the control unit Assembler program computer programs that translate assembly language programs into
machine language Assembly language ...
BASIC (Beginner's All-purpose Symbolic Instruction Code)
was developed in the mid-1960s at Dartmouth College by John Kemeny and Thomas Kurtz to allow students to write simple interactive programs. there have been many versions of BASIC. Visual BASIC, the newest version of BASIC, is an object-oriented, event-driven programming language Binary digit (bit) characters are composed of binary digits (bits) 0 and 1
C was developed by Dennis Ritchie at Bell Laboratories in the early 1970s, is used extensively for systems programs because it gives the programmer a lot of control over hardware. the UNIX operating system was written in C. many applications programs such as word processors, spreadsheets, are also written in C
Central processing unit
(CPU) the processing device used by a computer. consists of a control unit and an arithmetic/logic unit. together with primary storage, the CPU does the processing functions of the computer system
Character (byte) fields are composed of characters. the binary digits used to represent a character are called a byte. Example. In the NAME field that contains the name SAMUEL JOHNSON, there are 14 characters: S A M U E L J O H N S O N including the space or blank between the first and last names.
Character (string) field any nonnumeric field is a character, or string, field
Code a program after the solution is planned, the next step is to write a source program for the solution in a programming language such as Assemble, COBOL, Visual BASIC or C++
Compiler a program used in the translation process of translating instructions into machine language. this program translates each instruction into one or more machine language instructions
Computer Program a sequence of instructions that machines are capable of following Computer Programmer people who write computer programs
Computer system the interconnected devices capable of processing data, which have been input, and supplying the resulting information as output. consists of input devices, output devices, and a processing device
Control unit thought of as the "brain" of the computer. among other things, it determines which program instruction to execute, interprets the instruction, and causes the instruction to be executed
Data raw facts; Example. a list of test scores, a stack of bills, or a recipe Database a collection of one or more related files; Example. phone directory files,
Documentation a written commentary of the programming process. it should include such things as the specifications provided by the analyst, flowcharts and other planning aids, a list of the source program, comments in the program, sample test data, and test results
Event-driven, visual
language languages that simplified the task of programming applications for Windows. in these languages, the emphasis of a program is on the objects (ex. buttons) included in the user interface and the events (such as clicking a mouse button) that occur when these objects are used. the goal is to give the user as much control over the program as possible; Example. Visual C++, Visual BASIC
Execute a program instructions must first be taken from the secondary storage medium on which they are kept and loaded (put) into the primary storage of the computer
Field (data item, variable) a group of consecutive storage positions reserved for a particular type of data (records are composed of fields); Example: name, address, phone number, and Social Security number
Field (data) type describes the type of data contained in the field. fields can be numeric or nonnumeric
Field Name (data name, variable, identifier)
identifies the field and provides a name to access the data contained in the field
File data related to a particular subject organized in secondary storage Firmware computer programs actually built into the hardware; Example. the
instructions built into the ROM of a microcomputer to start the computer when it is turned on
First-generation languages the earliest programmers wrote instructions in machine. when computers were first invented, this was the only type of programming language available. machine language instructions are written in binary (series of 0s and 1s)
FORTRAN (FORmula
TRANslation) the first widely used third-generation, high-level programming language. it was developed at IBM Corporation in the mid-1950s and has been enhanced many times since then. it is commonly used for mathematical, scientific, and engineering applications
Fourth-generation (4GL)
language high-level languages that require much less programmer effort than third-generation languages. they are typically used to retrieve information from files and databases; INCLUDE: SQL (a common query language), report generators, form designers, and application generators
Graphical user interface
(GUI) an easy-to-use interface with which a user can interact. it contains buttons, menus, and scroll bars. this interface is common to all applications written for Windows environment
Interpreter a program used in the translation process of translating instructions into machine language. this program translates each instruction into one or more machine language instructions
Logic error results that are not correct because of using an incorrect operation by the computer
Logical (boolean) field contains one of two values such as "yes"/"no" or "true"/"false" ; Example. "Money turned in to the league"
Machine dependent means that each computer had its own machine language, so a program written for a particular computer would not work on another type of computer
Machine independent third-generation instruction that might be converted into more than one machine-language instruction that is not tied to particular computers Machine language the binary (on/off) representation of computer instructions
Manual Data Processing processing data without a computer
Memory size of a computer the storage capacity of its RAM. Measured in kilobytes (K). a single kilobyte is 1,024 storage locations. one thousand kilobytes is equivalent to 1
megabyte, and 1,000 megabytes is equivalent to 1 gigabyte Mnemonics words and symbols used in assembly language
Nonnumeric
(alphanumeric) field contain any character including numbers, letters of the alphabet, and special characters such as dollar signs ($), percent signs (%), hyphens (-), and commas (,)
Numeric field contain only numbers, a decimal point, a positive or negative sign Object program compilers and assemblers generate this machine language as output Object-oriented language when programming in this language, the programmer creates objects and
methods for working with the objects. one of the first object-oriented programming languages was Smalltalk, which was developed in the mid-1970s by Xerox Corporation. Example. C++
Operand describes the data used in the instruction
Operation Code machine language instructions that consist of the instruction to be executed Primary (main) storage
(memory)
stores the data and instructions (programs) needed by the computer Procedure-oriented
language in these languages, the emphasis of the program is on how to accomplish a task. the programmer writes the instructions as well as determines the order in which the computer should process the instructions. Example. FORTRAN, COBOL, BASIC, and C
Program specifications the specifications used by the programmer Program testing the only way to find logic errors
Programming Logic designing solutions to problems that will be solved by a computer RAM (random-access
memory) main memory. before a program's instructions can be carried out or executed by the computer, these instructions must be stored in RAM. Real (floating point) field refer to numeric fields that have decimal points such as 11.213 and -12.36.
can be single precision or double precision depending on the magnitude and accuracy required
Record how files are composed; Example1. each listing in a phone directory
represents a record (files are composed fo records); Example 2. a payroll file contains one record for each employee
erased when the power to the computer is turned off. the programmer has no control over what is stored in the ROM
Second-generation
language ... Secondary (external or
auxiliary) storage used as additional memory for the computer, is cheaper than primary storage because it does not have to be as fast. it is permanent in that turning off the computer does not erase secondary storage.
Software term used to describe computer programs
Source program the program written by the programmer which is the input to a compiler, interpreter, or assembler
Statement all programming languages consist of a set of these instructions and syntax rules for putting them together to make valid instructions
Subroutine (function or
module) a set of instructions or tasks that accomplishes a specific function of the program; Example. printing heading on a report, accessing a file, or doing a complicated calculation
Syntax rules used for programming languages in software. if a programmer makes a syntax error in a programming language, the computer cannot understand what to do, and an error results
System the analyst studies this current collection of people, machines, and procedures that work together to accomplish objectives to find out what input, processing, and output procedures are currently being used
System software software, such as the operating system, is needed to make the computers usable. the operating system communicates with hardware to accomplish input and output functions. Example Windows 7, OSX, Linux
Systems analyst this person who works on a particular project provides specifications to be used by the programmer.
Third-generation language includes FORTRAN, COBOL, C, C++, BASIC, AND Visual BASIC
Translate a program translating assembly language instructions into machine language (binary code)
Translation (syntax or
language) error output includes a list of diagnostics that show these errors; Examples. using a field name that contains too many characters, misspelling a computer instruction, branching to a nonexistent location in your program, and
violating the punctuation rules of a language
User analysts develop specifications by working with this person or persons who will be using the program when it is complete in order to determine how best to solve a problem or improve operations
Java Programming Vocabulary
Adapted from: http://quizlet.com
Access Control Public or Private; Determines how other objects made from other classes can use the variable, or if at all.
Applet A program that runs on a web page.
appletviewer A tool included in the JDK that's supported in NetBeans, which will test applets.
Application A program that runs locally, on your own computer. Argument Extra information sent to a program.
Argument Storage An Array.
Array A group of related variables that share the same type and are being arranged.
Attribute The information that describe the object and show how it is different than other objects.
Attributes and Behaviors An object contains these two things.
Autoboxing Casts a simple variable value to the corresponding class. Behavior What an object does.
Boolean Values Type of variable that cannot be used in any Casting. Casting Converting information from one form to another. char Any character. Surrounded by single quotation marks.
Class A master copy of the object that determines the attributes and behavior an object should have.
Class Statement The way you give your computer program a name. Comma Used to separate things within a section.
Concatenating Joining one string to another string. Also known as pasting. Constants Variables that do not change in value; typed in all-caps. Destination The converted version of the source in a new form. Differences in String S is Capitalized. Type of Object.
Do While Execution This loop will always execute at least once, even if the conditions are not met.
Do While Loop Tests the condition at the end of each repetition of a section of a program. Double " Quotation type used for string values.
Element An item in an Array.
Engaging in OOP Breaking down computer programs in the same way a pie chart is broken down.
For Loop Repeats a section of a program a fixed amount of times.
Inheritance Enables one object to inherit behavior and attributes from another object. Iteration A single trip through a loop.
Iterator The counter variable used to control a loop.
Loop This causes a computer program to return to the same place more than once.
main() Block statement statement in which all of the program's work gets done. Method A group of Attributes and Behaviors.
Method A way to accomplish a task in a Java program. Methods Part of an Object's behavior.
Multi-thread A way for the computer to do more than one thing at the same time. Object A way of organizing a program so that it has everything it needs to
system.
Programs A class that can be used as a template for the creation of new objects. Public int Makes it possible to modify the variable from another program that is
using the object.
Reason Brackets are missing Not required for single statement IF statements or Loops. Semicolon Used to separate sections.
Single ' Quotation type used for character values. Source Information in it's original form.
Statement An instruction you give a computer.
String A collection of characters. Surrounded by double quotation marks. String A line of text that can include letters, numbers, punctuation, and other
characters.
Subclass A class that inherits from another class. Superclass A class that is inherited from.
Ternary Operator Used to assign a value or display a value based on a condition. Thread Each part of a program which takes care of a different task. Three types of Loops For, While, and Do-While.
Unboxing Casts an object to the corresponding simple value.
Variable A storage place that can hold information, which may change.
While Loop Tests the condition at the beginning of each repetition of a section of a program.
Expressions Statements that involve a mathematical equation and produce a result. println Starts a new line after displaying the text.
CS Computer Ethics Vocabulary
Adapted from: http://quizlet.com
Anti-Virus A computer program that detects viruses and repairs damaged files. Bomb Destructive computer program that acts on a predetermined event or at a
specific time.
Commercial software Software that is available for purchase.
Computer Vandalism Act of damaging, altering, or destroying a computer, computer peripherals, computer software, or a computer service.
Computer Virus A computer program that can reproduce by changing other programs to include a copy of itself-- a parasite program needing another program to survive.
Copyright Law Law which requires the permission of the owner to make non-archival copies of the work in qusetion. It protects the holder of the copyright.
Ethical Conforming to the accepted professional standards of conduct. A set of moral principles or values.
Freeware A copyrighted program for which the user is not obligated to compensate the author. It is given away free of charge but it may not be copied and
distributed wthout permission to do so
Hacker Computer user who enjoys tinkering with computers, or who intentinally accesses computer system without permission to do so.
Intellectual Property Ideas put into action, like writing, music, art, photography, computer programs. These can be protected under copyright or patent laws.
Password A safeguard for access to a computer or a computer system or encrypted sensitive data files.
Piracy The illegal copying and distribution of software.
Private Data Information which is confidential and only ethically available to selected individual.. The right to keep certain things to yourself; not for public viewing.
Public Data Information which is available ethically to any user.
Public Domain Software Programs that are not copyrighted and are free to be shared, copied and used.
Shareware Copyrighted software distributed free.
Hoax A program intended to scare users into thinking they have a virus.
Software Piracy The unathorized duplication, illegal copying, and/or distribution of programs. SPA (Software Publishers
Association) Group that investigates software copyright violations.
Trojan Horse A destructive computer program that disguises itself as a useful piece of software.
Virus A computer program designed to cause damage to computer files or hardware See also bomb, hoax trojan horse and worm.
Worm A destructive computer program that bores its way through a computer's files or through a computer network. It often leaves bits of itself behind in other programs.
Acceptable Use Policy A document that governs the use of the computers and networks owned by the institution. It outlines what types of uses are acceptable and which are prohibited.
Ethics A code of conduct on how a person should live.
FALSE It is OK to use another person's password to log onto the computer network. Flaming A public post or email message that expresses a strong opinion or criticism. ISP The company that hooks you up to the Internet such as AOL, Quest.
Netiquette E-Mail manners.
Single-user License Program that may be installed on only one computer. Site License Agreement that allows multiple users of software product.
Spamming Bulk, mass, or repeated posting or mailing of substantially identical messages. The emphasis is on the multiple sending.
Trolling An inflammatory post that is designed to provoke a flame war or flame responses.
TRUE It is not wise for children to provide credit card information without permission from parents using the Internet.
CS Social Networking Vocabulary
Adapted from: http://quizlet.com Microblog one word for a Twitter profile
Follower Subscriber to your Tweets
DM direct message - private Twitter message to one user
Hashtag a term beginning with a hash mark referencing a topic, like #soannoyed TT trending topic - one of the most popular current topics on Twitter
Twitpic service that allows you to post images to Twitter
Twitter Client third party application like Hootsuite or Tweetdeck that adds features to Twitter
Auto-DM automated message received when you follow a Twitter user
Verified Twitter confirms certain prominent users' identities and labels them "verified."
Retweet sharing another user's Tweet with your own followers
#FollowFriday day of the week when some Twitter users recommend favorite friends and followers to others
Fan Page old term for what are now called "pages"
Profile Banner single long picture in five parts tagged so that it shows up spread across the five pictures at the top of a page
Landing Page the first thing you see when you reach a page Like-Gated visible only after "liking" a page
App short for application - a program using Facebook's API
Instant Personalization controversial offering from Facebook that provides users' information to sites like Yelp and Pandora
Upvote/Upmod/Digg terms on Reddit, Slashdot, and Digg, respectively, for voting in favor of a submission's popularity
Submission link posted to a social bookmarking site
Throwaway/Sockpuppet/Alt extra username, often created to avoid connecting an embarrassing post to an established account
Shadowban closure of a user's account that is not apparent to the user Mod user with certain administrative powers
Admin site employee who takes an administrative role in the community Flame War vigorous argument
Computational Thinking Vocabulary
Adapted from: http://csta.acm.org/Curriculum/sub/CurrFiles/472.11CTTeacherResources_2ed-SP-vF.pdf
Data Collection The process of gathering appropriate information
Data Analysis Making sense of data, finding patterns, and drawing conclusions
Data Representation Depicting and organizing data in appropriate graphs, charts, words, or images
Problem Decomposition Breaking down tasks into smaller, manageable parts
Abstraction Reducing complexity to define main idea
Algorithms & Procedures Series of ordered steps taken to solve a problem or achieve some end.
Automation Having computers or machines do repetitive or tedious tasks.
Simulation Representation or model of a process. Simulation also involves running experiments using models.
Parallelization Organize resources to simultaneously carry out tasks to reach a common goal.