Calendar

Topics
Hours
Cum.
Core objectives
29.00
29.00
Introduction
1.00
1.00
Syllabus
0.25
Programming and Ruby language overview
0.50
Text editors and the command line
0.25
Practicum: output with puts
0.25
1.25
Definitions: Syntax & Semantics
0.25
1.50
Numbers and Arithmetic
1.50
3.00
Integers (Fixnum/Bignum) and Floating point (Float)
0.50
Arithmetic operators, precedence, parenthesization
1.00
Strings
0.50
3.50
Usage and composition (i.e., characters and ASCII)
0.50
Classes and Objects
3.00
6.50
OO terminology
0.50
Invoking methods
2.00
Dot (’.') operator
0.50
Method parameters and invocation
0.50
Introspection: class, send, and respond_to?
0.50
String methods (+, *, <<, length, capitalize, reverse, etc.)
0.50
Conversions (to_i, to_s)
0.50
Variables and Assignments
2.00
8.50
Variable names, assignment syntax
0.50
Defining and using constants
0.25
Practicum: useful predefined constants
0.50
Object identity and references
0.50
Parallel assignment
0.25
Expressions and Statements
1.00
9.50
Practicum: input and formatted output
1.00
10.50
gets and chomp
0.50
String variable interpolation
0.25
Pretty printing: pp and inspect
0.25
Practicum: the interactive ruby interpreter “irb”
1.00
11.50
Practicum: online documentation “ri”
0.50
12.00
Booleans expressions and Boolean operators
1.00
13.00
Control structures
3.50
16.50
if, if-else, if-elsif-else, unless
1.00
Syntax and branch semantics
0.50
Flow chart equivalence
0.50
case-when-else and ===
0.50
while, until and break, redo, next
2.00
Syntax and loop semantics
1.00
Sentinels and loop invariants
0.50
Searching and sorting
0.50
Defining and using methods
2.50
19.00
Definition syntax
0.25
Method call and return
0.50
Method arguments
0.50
Local variables, variable scope, and the call stack
1.00
Method aliases
0.25
Recursion
1.00
20.00
Complex data types
4.00
24.00
Symbols
0.50
Arrays
2.00
Hashes
1.00
Ranges
0.50
File I/O
1.00
25.00
File objects
0.50
Reading and writing
0.50
Practicum: Structured files and YAML
1.00
26.00
Blocks and Iterators
1.50
27.50
Block syntax and lambdas
1.00
Passing blocks to methods and yield
0.50
Practicum: using Enumerable iterators
1.50
29.00

Leave a comment

You must be logged in to post a comment.