CSC/ECE 517 Fall 2009
Summary of wiki pages contributed in Fall 2009
- Lecture 2 : Debugging and testing
- Lecture 3 : Refactoring and version control
- Categorization of refactorings
- Categorization of refactorings
- Categorization of refactorings
- Research in refactoring tools
- Research in refactoring tools
- Research in refactoring tools
- Research in refactoring tools
- Distributed Version Control
- Distributed Version Control
- Distributed Version Control
- Best practices for source-control management with version-control systems
- Best practices for source-control management with version-control systems
- Best practices for source-control management with version-control systems
- History of version control
- History of version control
- History of version control
- Refactoring tools for Ruby and Ruby on Rails
- Refactoring tools for Ruby and Ruby on Rails
- Refactoring tools for Ruby and Ruby on Rails
- Refactoring tools for Ruby and Ruby on Rails
- Lecture 4 : Introduction to Ruby
- Ruby and Java from Security Perspective
- Ruby and Java from Security Perspective
- Ruby vs. Python
- Ruby vs. Python
- Ruby vs. Python
- Scala vs. Ruby
- IDEs for Ruby
- IDEs for Ruby
- IDEs for Ruby
- IDEs for Ruby
- Resources for Ruby (other than IDEs)
- Resources for Ruby (other than IDEs)
- Ruby and Web security
- Ruby and Web security
- Lecture 5 : OOP in Ruby
- Regular expressions
- Regular expressions
- Regular expressions
- Regular expressions
- Static vs. dynamic o-o languages from the perspective of performance
- Static vs. dynamic o-o languages from the perspective of performance
- Advantages of statically typed vs. dynamically typed languages
- Advantages of statically typed vs. dynamically typed languages
- Advantages of statically typed vs. dynamically typed languages
- Exception handling in o-o languages
- Exception handling in o-o languages
- Exception handling in o-o languages
- Lecture 7 : Ruby on Rails
- Lecture 8 : The Cookbook application
- Lecture 9 : Testing
- Functional and integration testing and beyond
- Functional and integration testing and beyond
- Functional and integration testing and beyond
- GUI testing frameworks
- GUI testing frameworks
- GUI testing frameworks
- Testing frameworks for object-oriented languages
- Testing frameworks for object-oriented languages
- Lecture 10 : Modules and mixins
- Lecture 11 : Reflection
- Lecture 12 : Metaprogramming
- Lecture 14 : The CRC-card method
- Lecture 15 and 16 : Introduction to OOA/OOD
- Lecture 16 : O-O Fundamentals
- Lecture 19 : Programming with assertions
- Lecture 20 : Elegance and classes
- Lecture 21 : Agile methodologies
- Lecture 22, 23, 24, 25 : Design Patterns
- Lecture 27 : Leftover patterns and pattern classification
- Topics not covered in the lectures
- Patterns for mapping objects to relational databases
- Patterns for mapping objects to relational databases
- Patterns for mapping objects to relational databases
- Principle of Self-Documentation
- Principle of Self-Documentation
- Principle of Self-Documentation
- Uniform access principle
- Uniform access principle
- Uniform access principle
- Uniform access principle
- Single-Choice Principle
- Single-Choice Principle
- Single-Choice Principle
- Stable Dependencies Principle
- Stable Dependencies Principle
- Common Closure Principle
- Common Closure Principle
- Dependency Inversion Principle
- Dependency Inversion Principle
- Interface Segregation Principle vs. Principle of Small Interfaces
- Interface Segregation Principle vs. Principle of Small Interfaces
- Non-Redundancy Principle
- Non-Redundancy Principle
- Survey "Driven Development" Methodologies
- Survey "Driven Development" Methodologies
- Survey "Driven Development" Methodologies
- Thread-safe programming and concurrency patterns
- Thread-safe programming and concurrency patterns
- Anti-patterns
- Anti-patterns
- Anti-patterns
- Clone detection and clone manipulation
- Clone detection and clone manipulation
- Clone detection and clone manipulation
- Clone detection and clone manipulation
- Mock Objects and Mock frameworks
- Mock Objects and Mock frameworks
- Mock Objects and Mock frameworks
- Mock Objects and Mock frameworks
- Principle of Explicit Interfaces
- Principle of Explicit Interfaces
- Principle of Explicit Interfaces
- Reuse/Release Equivalence Principle
- Reuse/Release Equivalence Principle
- Reuse/Release Equivalence Principle
- Reuse/Release Equivalence Principle
- Service Oriented Architecture(SOA) and Patterns
- Service Oriented Architecture(SOA) and Patterns
- Service Oriented Architecture(SOA) and Patterns
- Service Oriented Architecture(SOA) and Patterns
- Synchronizer token pattern
- Synchronizer token pattern
- Synchronizer token pattern