CMPE - L1

Cards (55)

  • Computer
    Any device that is capable of processing data into information
  • Program
    The list of instructions that the computer must follow to be able to process data into information
  • Programming
    The procedure of developing the detailed instructions for the computer. It is the act of instructing computers to perform a task. Also called coding.
  • High level languages
    • C
    • C++
    • Java
    • Python
    • Visual Basic
    • PHP
    • JavaScript
  • High level languages (Advantages)
    • Easier to modify as it uses English-like statements
    • Easier/faster to write code as it uses English-like statements
    • Easier to debug during develpment due to English-like statements
    • Portable code
  • Low level languages (Advantages)
    • Can make use of special hardware or special machine-dependent instructions
    • Translated program requires less memory
    • Write code that can be executed faster
  • Syntax
    Grammatical rules of a programming language
  • Syntax error
    Error in the syntax of a sequence of characters. A program will not compile or run until all syntax errors are corrected.
  • Debugging
    Identifying and removing errors from a program
  • Programmer
    A person who creates programs or instructions for a computer
  • Five step process of programming
    1. Defining the problem
    2. Planning the solution
    3. Coding the program
    4. Testing the program
    5. Documenting the program
  • Algorithm
    A step-by-step procedure to solve a problem. Uses natural language, not programming language.
  • Algorithm to change a light bulb
    • Turn off the power
    • Allow the bulb to cool
    • Use a ladder
    • Remove the old bulb
    • Insert the replacement bulb
    • Switch on the power
    • Dispose of the old bulb
  • Flowchart
    A pictorial representation of a step-by-step solution to a problem.
  • Flowchart components
    • Arrows
    • Boxes
    • Other symbols
  • Example of a simple flowchart for computer programming
    • Take an input number
    • Divide the number by 2
    • Check if the remainder is zero
    • If remainder is zero, the number is even
    • If remainder is not zero, the number is odd
  • Pseudocode
    A set of instructions that mimic programming language instructions. An English-like nonstandard language that lets you state your solution with more precision than you can in plain English but with less precision than is required when using a formal programming language.
  • Example of pseudocode
    • Not executable on the computer
  • Puzzle Solver
    It is not easy to write a code, a huge a part of the coding process is trial and error. It is frustrating and requires a lot of patience. If you enjoy the challenge of solving a problem then you will become a successful programmer.
  • Always Learning
    Programming, like almost all jobs involving computer technology, is prone to extremely rapid changes. If you’re working in this field, you will have to be willing to learn new stuff. That means refreshing and updating your skillset to fit the market and technology as a whole at regular intervals. This is a vital skill to becoming a successful programmer in the long term.
  • Curious
    Even if things work after the first try, a good programmer still asks themselves why that is. A good programmer always strives to understand how his work functions, because that is how you make it better.
  • Self-disciplined
    As a programmer, you’re going to be spending a good amount of time behind a keyboard by yourself – whether there are other people in the room or not, you’ll be “in the zone” (opposite of comfort zone). It’s important to be able to maintain that deep work mode for a long time. That comes down to self-discipline.
  • Communication Skills
    A successful programmer has a good written and communication skills.
  • Adaptable
    A successful programmer is willing and able to deal with changes.
  • Logical Mindset
    Being able to handle a problem in a logical, analytical way makes a good programmer.
  • Love for Technology
    Last but not least, a good programmer is very passionate about technology. “Doing what you love” is the motto of a successful programmer.
  • Defining the problem
    Specifically, the task of defining the problem consists of identifying what it is you know (input -given data), and what it is you want to obtain (output - the result).
  • Planning the solution
    Two common ways of planning the solution to a problem are to draw a flowchart and to write pseudocode, or possibly both.
  • Coding the program
    As a programmer, your next step is to code the program-that is, to express your solution in a programming language. You will translate the logic from the flowchart or pseudocode to a programming language.
  • Testing the program
    to look for errors in a program and debug them.
  • Documenting the program
    Documentation is a written detailed description of the programming cycle and specific facts about the program. The wise programmer continues to document the program throughout its design, development, and testing.
  • Program logic formation
    is a step-by-step development of a solution to a given problem.
  • Algorithm
    is a step-by-step procedure to solve a problem. It uses natural language and not programming language.
  • It is a lot like a recipe (called a procedure) and tells your computer precisely what steps to take to solve a problem or reach a goal.
  • The ingredients are called inputs, while the results are called the outputs.
  • Terminator
    has an oval shape and indicates the beginning or end of a program flow in your diagram
  • Data
    parallelogram-shaped, denotes either the input or output of information in your flowchart diagram
  • Process
    represented as a rectangle and denotes any process or action step to be carried out
  • Decision
    represented as a diamond shape and indicates decision point between two or more paths in your flowchart diagram
  • Predefined Process
    represented as double lined rectangle and indicates a marker for another process step or series of process flow steps that are formally defined elsewhere. This shape also commonly depicts subprocesses