More Related Content


DIG1108C Lesson 4 Fall 2014

  1. Intro to Server Side Programming Week Four
  2. Basic Git Workflow Review • Save and test your work often. • If it tests ok, add then commit your work (git add & git commit respectively) • Need to work alone? Work on a branch (git branch & git checkout or git checkout -b for short) • Done or need to share your work? Send your work to remote (git push) • Back to work? Get the latest code (git fetch), then include it (git merge or git rebase) • Need to make a whole project your own? Copy it (git clone), then add it as remote and (git pull)
  3. Conditional Logic If This, Then That
  4. • Conditional Logic - In computer science, conditional statements, conditional expressions and conditional constructs are features of a programming language which perform different computations or actions depending on whether a programmer-specified boolean condition evaluates to true or false. Apart from the case of branch predication, this is always achieved by selectively altering the control flow based on some condition. • Computer Science depends heavily on Boolean Algebra for conditional logic. • "If this thing is true, then do this. If not, do that."
  5. Guarding Expressions • Guarding - In computer programming, a guard is a boolean expression that must evaluate to true if the program execution is to continue in the branch in question.Boolean expressions in conditional statements usually also fit this definition of a guard although they are called conditions. if( ! isset($something) ) $something = 'some value'; do_something_with($something); $something = ( isset($something) ? $something : 'default' ); $something = do_something_important() or die('error message'); use_the_variable($something); $something = do_something_important(); if ( $something == false ) die('error message');
  6. Can I go to the Park? • Boolean values can be combined with logical operators • The order in which conditionals are evaluated matters $permission_from_mom = $mom->request('go_to_park');$permission_from_dad = $dad->request('go_to_park'); $permisson_from_both = ( $permission_from_mom and $permission_from_dad ); $permisson_from_either = ( $permission_from_mom or $permission_from_dad ); $permisson_from_one = ( $permission_from_mom xor $permission_from_dad );
  7. Workflow Diagrams & Truth Tables
  8. Nested Conditionals • Conditionals can also be nested: if ( empty($handedness) ) { if ( test_lefty() and test_righty() ) $handedness = 'Ambidextrous'; else if ( test_lefty() ) $handedness = 'Left Handed'; else if ( test_righty() ) $handedness = 'Right Handed'; else $handedness = 'You Have No Hands!'; } echo $handedness;
  9. Nested More! • Nested conditionals can be written multiple ways: if ( empty($handedness) ) { if ( test_lefty() ) { if( test_righty() ) $handedness = 'Ambidextrous'; else $handedness = ' Left Handed'; } else if ( test_righty() ) $handedness = 'Right Handed'; else $handedness = 'You Have No Hands!'; } echo $handedness;
  10. Assignment 4.1 Diagramming Conditional Logic
  11. Diagramming Logic • Partner up and find a project with some if-then-else logic to examine, particularly nested logic • Individually, sketch a simple workflow diagram of the logic and assemble a truth table. Discuss any differences that you may have together when done • Collaborate to make one workflow diagram and truth table to show and explain to the class
  12. Assignment 4.2 Branching Logic in WordPress