4. Order of Operations
• PHP (and most languages) follows Operator Precedence
rules
• These allow for unambiguous statements
• Parentheses can be used to override default Operator
Precedence or to add visual clarity
$taxable_income = $wages + $earnings - $deductions;
$taxable_income = $wages + ( $earnings - $deductions );
5. Programming Blocks
• Blocks are sections of code grouped together
• Blocks consist of declarations and statements
• PHP organizes statements into blocks with { }
• Conventions dictate indentation for readability
{$foo=$bar+$bat;echo $foo;}
{
$foo = $bar + $bat;
echo $foo;
}
6. Coding Conventions
• A set of guidelines for a specific programming language of
recommended styles, practices & methods for each
aspect of a program
• Covers things like file organization, indentation,
comments, declarations, statements, white space,
naming conventions, practices & principles
• This improves the readability of code and makes software
maintenance easier.
• Conventions enforced by humans, not compilers
7. Ease of Reading/Ease of Use
• $UP=6;DN=19;$x=0;
while(++$x<=24){echo "hour $x: "; if($x>+$UP&&$X<+$DN);
echo "sun is up"; else echo "sun is down": echo "n"; }
• define( 'SUNRISE', 6 );
define( 'SUNSET', 19 );
$hours = range( 1, 24);
foreach ( $hours as $hour ) {
// ternary operation
$up_or_down = ( (
$hour >= SUNRISE and
$hour <= SUNSET
) ? 'up' : 'down' );
echo "hour {$hour}: ",
"sun is {$up_or_down}",
"n";
}
9. Good Code, Bad Code
• Log in to Github
• Look through your forked projects for a block (~100) lines of
code that are either very hard or very easy to read based on
the coding style
• Copy & paste into a file named assignment-3.1.md
• Make a list with your partner of ways that the code style could
be improved in each of your examples
• Save files to share with the class. Push to Github? (https://
help.github.com/articles/create-a-repo)
10. Git and Github - Here to Help
• Git is your robot friend that remembers what you tell it to remember,
and only that
• This robot recognizes when things have changed
• It knows how to remember, just not when
• Git can tell you what changed and when, you use comments to tell it
(and yourself) why
• If you ask nicely (-h or --help) the robot will help
• This robot is well organized and can track branches of changed
code
11. Basic git Commands
• git branch - what branches are there & which am I on?
• git status - what files have I changed or created?
• git add (files) - consider this stuff for remembering
• git commit (files) - I really want you to remember what I've considered via git add
• git push [remote [branch] ] - tell the robot named "remote" (default is "origin") about
my changes in "branch" (default is "master")
• git fetch [remote] - ask the robot named "remote" for changes or branches that you
don't know about yet
• git merge [branch] - attempt to combine changes in "branch"