PDE - Programming and Data Efficiency (Module Overview)

Programming and Data Efficiency

Introduction

PDE_overview.pngReal-world collaboration is what created the terrific system of computers and Internet that we have today that reaches around the world, information available by asking. The answer, conjecture, or idea that you are seeking may come from anywhere around the world. In this module you will use the collaboration and tool techniques that you have learned to solve a mini task.

Essential Questions

  • How are multiple related items stored on a computer for ease of storage and access?
  • How are multiple related items read and accessed efficiently?
  • How are ordered, related items accessed quickly through searching?
  • What is the difference between programming efficiency and data efficiency?
  • How can a creative development process affect the creation of computational artifacts?
  • How can computing and the use of computational tools foster creative expression?
  • How can computing extend traditional forms of human expression and experience?

Key Terms

Analysis - the act of examining data, making conjectures, testing the hypothesis, and reflecting.

Array - a set of related terms accessed with the name and a number in brackets, for example, a[1].  Alternate name:  List.

Binary Search - the process of searching a set or ordered related items by starting in the middle and eliminating half, then continue with the selected half and repeating the process to the item to be found is located or it is determined the item does not exist.

Code Efficiency - refers to the development cycle and expectations for code based on the standards and requirements.

Collaboration - working with one or more other individuals on a task. 

Computing - the use of computer hardware and/or software to enable the creative use of information to complete a task.

Conjecture - an idea for a solution based on the question and circumstances given.  Alternate name:  Hypothesis

Connections - taking a statement or problem and find similarities and differences with others to find innovative ways to solve problems using technology.

Constructor - a code statement that initiates the creation of an array / list of data.

Efficiency - relates to how the code is produced (methodology), reliability of the code, and amount of time to produce the applicable code.  May also be called code efficiency or program efficiency.

Getter - code or methods that access and return data, but do not change the data.

Hypothesis - A conjecture based on the information provided.

Innovation - a new creation or a new creation based on an existing computer technology to create a new level of information or learning.

Iterative Development Cycle - to reflect, plan, try, test, and reflect continuing the cycle until the resulting technology product is in the form that is needed.

Iteration - computer code that runs in a loop until a condition is met.

Linear Search - starting at the beginning, reading and checking a set of related items until the desired item is located.  Alternate Name: Sequential Search. 

List - a set of related terms accessed with the name and a number in brackets, for example, a[1].  Alternate name:  Array.

Maximum Value - the highest number in an array / list or of given values.

Minimum Value - the lowest number in an array / list or of given values.

Pair Programming - working with another person to develop ideas, share work, and debug using computer technology.

Program Efficiency - application program data storage, runtime, and maintenance efficiency.  See also Efficiency.

Sequential Search - starting at the beginning, reading and checking a set of related items until the desired item is located.  Alternate Name: Linear Search. 

Setter - code or method that updates data storage in the program.

Swap - reversing the order of data in an array / list structure.

Traversal - moving through array / list of items.

IMAGE CREATED BY GAVS