CSC/ECE 517 Fall 2009: Difference between revisions

From Expertiza_Wiki
Jump to navigation Jump to search
No edit summary
No edit summary
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
===Summary of pages done in Fall 2009===
===Summary of wiki pages contributed in Fall 2009===






*'''Lecture 2'''
*'''Lecture 2 : Debugging and testing'''
**[[CSC/ECE_517_Fall_2009/wiki1a_1_103|Writing effective JUnit test cases]]
**[[CSC/ECE_517_Fall_2009/wiki1a_1_103|Writing effective JUnit test cases]]
**[[CSC/ECE_517_Fall_2009/wiki1a_1_JunitTest|Writing effective JUnit test cases]]
**[[CSC/ECE_517_Fall_2009/wiki1a_1_JunitTest|Writing effective JUnit test cases]]
Line 9: Line 9:
**[[CSC/ECE_517_Fall_2009/wiki1b_1_db|Advances in debuggers]]
**[[CSC/ECE_517_Fall_2009/wiki1b_1_db|Advances in debuggers]]


*'''Lecture 3'''
*'''Lecture 3 : Refactoring and version control'''
**[[CSC/ECE_517_Fall_2009/wiki1a_7_sm|Categorization of refactorings]]
**[[CSC/ECE_517_Fall_2009/wiki1a_7_sm|Categorization of refactorings]]
**[[CSC/ECE_517_Fall_2009/wiki1a_8_nd|Categorization of refactorings]]
**[[CSC/ECE_517_Fall_2009/wiki1a_8_nd|Categorization of refactorings]]
Line 16: Line 16:
**[[CSC/ECE_517_Fall_2009/wiki1a_9_mk|Research in refactoring tools]]
**[[CSC/ECE_517_Fall_2009/wiki1a_9_mk|Research in refactoring tools]]
**[[CSC/ECE_517_Fall_2009/wiki1a_9_pp|Research in refactoring tools]]
**[[CSC/ECE_517_Fall_2009/wiki1a_9_pp|Research in refactoring tools]]
**[[CSC/ECE_517_Fall_2009/wiki_1a_9a_HJ|Research in refactoring tools]]
**[[CSC/ECE_517_Fall_2009/wiki1a_1_aa|Distributed Version Control]]
**[[CSC/ECE_517_Fall_2009/wiki1a_1_aa|Distributed Version Control]]
**[[CSC/ECE_517_Fall_2009/wiki1a_3_ee|Distributed Version Control]]
**[[CSC/ECE_517_Fall_2009/wiki1a_3_ee|Distributed Version Control]]
Line 28: Line 27:
**[[CSC/ECE_517_Fall_2009/wiki_1a_7a_HJ|Refactoring tools for Ruby and Ruby on Rails]]
**[[CSC/ECE_517_Fall_2009/wiki_1a_7a_HJ|Refactoring tools for Ruby and Ruby on Rails]]
**[[CSC/ECE_517_Fall_2009/wiki_1a_7a_SJ|Refactoring tools for Ruby and Ruby on Rails]]
**[[CSC/ECE_517_Fall_2009/wiki_1a_7a_SJ|Refactoring tools for Ruby and Ruby on Rails]]
**[[CSC/ECE_517_Fall_2009/wiki_1a_9b_SJ|Refactoring tools for Ruby and Ruby on Rails]]
**[[CSC/ECE_517_Fall_2009/wiki_1a/sheng_yi|Refactoring tools for Ruby and Ruby on Rails]]
**[[CSC/ECE_517_Fall_2009/wiki_1a/sheng_yi|Refactoring tools for Ruby and Ruby on Rails]]
**[[CSC/ECE_517_Fall_2009/wiki2_4_dn|if-statement considered harmful]]
**[[CSC/ECE_517_Fall_2009/wiki2_4_railroad|if-statement considered harmful]]
**[[CSC/ECE_517_Fall_2009/wiki2_4_va|if-statement considered harmful]]
**[[CSC/ECE_517_Fall_2009/wiki_2_2_SJ|if-statement considered harmful]]


*'''Lecture 4'''
*'''Lecture 4 : Introduction to Ruby'''
**[[CSC/ECE_517_Fall_2009/wiki1a_10_RS56|Ruby and Java from Security Perspective]]
**[[CSC/ECE_517_Fall_2009/wiki1a_10_RS56|Ruby and Java from Security Perspective]]
**[[CSC/ECE_517_Fall_2009/wiki1a_10_wolf27-Manhattan|Ruby and Java from Security Perspective]]
**[[CSC/ECE_517_Fall_2009/wiki1a_10_wolf27-Manhattan|Ruby and Java from Security Perspective]]
Line 51: Line 45:
**[[CSC/ECE_517_Fall_2009/wiki1b_8_va|Ruby and Web security]]
**[[CSC/ECE_517_Fall_2009/wiki1b_8_va|Ruby and Web security]]
   
   
*'''Lecture 5'''
*'''Lecture 5 : OOP in Ruby'''
**[[CSC/ECE_517_Fall_2009/wiki1b_5_13|Regular expressions]]
**[[CSC/ECE_517_Fall_2009/wiki1b_5_13|Regular expressions]]
**[[CSC/ECE_517_Fall_2009/wiki1b_5_j8|Regular expressions]]
**[[CSC/ECE_517_Fall_2009/wiki1b_5_j8|Regular expressions]]
**[[CSC/ECE_517_Fall_2009/wiki1b_5_kf|Regular expressions]]
**[[CSC/ECE_517_Fall_2009/wiki1b_5_kf|Regular expressions]]
**[[CSC/ECE_517_Fall_2009/wiki1b_5_kf)|Regular expressions]]
**[[CSC/ECE_517_Fall_2009/wiki1b_11_al|Static vs. dynamic o-o languages from the perspective of performance]]
**[[CSC/ECE_517_Fall_2009/wiki1b_11_al|Static vs. dynamic o-o languages from the perspective of performance]]
**[[CSC/ECE_517_Fall_2009/wiki1b_11_cc|Static vs. dynamic o-o languages from the perspective of performance]]
**[[CSC/ECE_517_Fall_2009/wiki1b_11_cc|Static vs. dynamic o-o languages from the perspective of performance]]
Line 65: Line 58:
**[[CSC/ECE_517_Fall_2009/wiki1b_3_expHandle|Exception handling in o-o languages]]
**[[CSC/ECE_517_Fall_2009/wiki1b_3_expHandle|Exception handling in o-o languages]]


*'''Lecture 7'''
*'''Lecture 7 : Ruby on Rails'''
**[[CSC/ECE_517_Fall_2009/wiki1b_13_Resources_For_Rails|Resources for Rails (other than IDEs)]]
**[[CSC/ECE_517_Fall_2009/wiki1b_13_Resources_For_Rails|Resources for Rails (other than IDEs)]]
**[[CSC/ECE_517_Fall_2009/wiki1b_team1|Resources for Rails (other than IDEs)]]
**[[CSC/ECE_517_Fall_2009/wiki1b_team1|Resources for Rails (other than IDEs)]]
Line 74: Line 67:
**[[CSC/ECE_517_Fall_2009/wiki1b_13_pz|History and Applications of the MVC Pattern]]
**[[CSC/ECE_517_Fall_2009/wiki1b_13_pz|History and Applications of the MVC Pattern]]
**[[CSC/ECE_517_Fall_2009/wiki1b_13_za|History and Applications of the MVC Pattern]]
**[[CSC/ECE_517_Fall_2009/wiki1b_13_za|History and Applications of the MVC Pattern]]
**[[CSC/ECE_517_Fall_2009/wiki1b_13_zz|Stable Dependencies Principle]]


*'''Lecture 8'''
*'''Lecture 8 : The Cookbook application'''
**[[CSC/ECE_517_Fall_2009/wiki1b_9_ad|Scaffolding in Web application frameworks]]
**[[CSC/ECE_517_Fall_2009/wiki1b_9_ad|Scaffolding in Web application frameworks]]
**[[CSC/ECE_517_Fall_2009/wiki1b_9_ss|Scaffolding in Web application frameworks]]
**[[CSC/ECE_517_Fall_2009/wiki1b_9_ss|Scaffolding in Web application frameworks]]


*'''Lecture 9'''
*'''Lecture 9 : Testing'''
**[[CSC/ECE_517_Fall_2009/wiki1b_4_iftesting|Functional and integration testing and beyond]]
**[[CSC/ECE_517_Fall_2009/wiki1b_4_iftesting|Functional and integration testing and beyond]]
**[[CSC/ECE_517_Fall_2009/wiki1b_4_mv|Functional and integration testing and beyond]]
**[[CSC/ECE_517_Fall_2009/wiki1b_4_mv|Functional and integration testing and beyond]]
Line 90: Line 82:
**[[CSC/ECE_517_Fall_2009/wiki1b_12_testFrmwk|Testing frameworks for object-oriented languages]]
**[[CSC/ECE_517_Fall_2009/wiki1b_12_testFrmwk|Testing frameworks for object-oriented languages]]


*'''Lecture 10'''
*'''Lecture 10 : Modules and mixins'''
**[[CSC/ECE_517_Fall_2009/wiki2_7_cn|Survey of language features for code reuse]]
**[[CSC/ECE_517_Fall_2009/wiki2_7_cn|Survey of language features for code reuse]]
**[[CSC/ECE_517_Fall_2009/wiki2_7_co|Survey of language features for code reuse]]
**[[CSC/ECE_517_Fall_2009/wiki2_7_co|Survey of language features for code reuse]]
**[[CSC/ECE_517_Fall_2009/wiki2_7_ov|Survey of language features for code reuse]]
**[[CSC/ECE_517_Fall_2009/wiki2_7_ov|Survey of language features for code reuse]]


*'''Lecture 11'''
*'''Lecture 11 : Reflection'''
**[[CSC/ECE_517_Fall_2009/wiki2_17_f1|Service Oriented Architecture(SOA), Reflection, and Meta-programming]]
**[[CSC/ECE_517_Fall_2009/wiki2_17_f1|Service Oriented Architecture(SOA), Reflection, and Meta-programming]]
**[[CSC/ECE_517_Fall_2009/wiki2_17_va|Service Oriented Architecture(SOA), Reflection, and Meta-programming]]
**[[CSC/ECE_517_Fall_2009/wiki2_17_va|Service Oriented Architecture(SOA), Reflection, and Meta-programming]]
Line 104: Line 96:
**[[CSC/ECE_517_Fall_2009/wiki2_8_rop|Reflection-oriented programming]]
**[[CSC/ECE_517_Fall_2009/wiki2_8_rop|Reflection-oriented programming]]


*'''Lecture 12'''
*'''Lecture 12 : Metaprogramming'''
**[[CSC/ECE_517_Fall_2009/wiki29_VB|Aspect-Oriented Programming]]
**[[CSC/ECE_517_Fall_2009/wiki29_VB|Aspect-Oriented Programming]]
**[[CSC/ECE_517_Fall_2009/wiki2_9_SN|Aspect-Oriented Programming]]
**[[CSC/ECE_517_Fall_2009/wiki2_9_SN|Aspect-Oriented Programming]]
Line 114: Line 106:
**[[CSC/ECE_517_Fall_2009/wiki2_13_ncs|Design patterns from a static/dynamic point of view]]
**[[CSC/ECE_517_Fall_2009/wiki2_13_ncs|Design patterns from a static/dynamic point of view]]


*'''Lecture 13'''
*'''Lecture 14 : The CRC-card method'''
**[[CSC/ECE_517_Fall_2009/wiki2_16_agummad|Service Oriented Architecture(SOA) and Patterns]]
**[[CSC/ECE_517_Fall_2009/wiki2_16_am|Service Oriented Architecture(SOA) and Patterns]]
**[[CSC/ECE_517_Fall_2009/wiki2_16_rs|Service Oriented Architecture(SOA) and Patterns]]
**[[CSC/ECE_517_Fall_2009/wiki2_16_tvhi|Service Oriented Architecture(SOA) and Patterns]]
 
*'''Lecture 14'''
**[[CSC/ECE_517_Fall_2009/wiki3_10_OT|"Object Think" and other alternatives to CRC cards]]
**[[CSC/ECE_517_Fall_2009/wiki3_10_OT|"Object Think" and other alternatives to CRC cards]]
**[[CSC/ECE_517_Fall_2009/wiki3_10_ot|"Object Think" and other alternatives to CRC cards]]
**[[CSC/ECE_517_Fall_2009/wiki3_10_ot|"Object Think" and other alternatives to CRC cards]]
**[[CSC/ECE_517_Fall_2009/wiki3_10_pz|"Object Think" and other alternatives to CRC cards]]
**[[CSC/ECE_517_Fall_2009/wiki3_10_pz|"Object Think" and other alternatives to CRC cards]]


*'''Lecture 15 and 16'''
*'''Lecture 15 and 16 : Introduction to OOA/OOD'''
**[[CSC/ECE_517_Fall_2009/wiki2_15_A%26OM|Abstraction and the object model]]
**[[CSC/ECE_517_Fall_2009/wiki2_15_A%26OM|Abstraction and the object model]]
**[[CSC/ECE_517_Fall_2009/wiki2_15_ms|Abstraction and the object model]]
**[[CSC/ECE_517_Fall_2009/wiki2_15_ms|Abstraction and the object model]]
**[[CSC/ECE_517_Fall_2009/wiki2_15_sm|Abstraction and the object model]]
**[[CSC/ECE_517_Fall_2009/wiki2_15_sm|Abstraction and the object model]]


*'''Lecture 16 : O-O Fundamentals'''
**[[CSC/ECE_517_Fall_2009/wiki2_6_ee|Hybrid o-o languages]]
**[[CSC/ECE_517_Fall_2009/wiki2_6_ee|Hybrid o-o languages]]
**[[CSC/ECE_517_Fall_2009/wiki2_6_hl|Hybrid o-o languages]]
**[[CSC/ECE_517_Fall_2009/wiki2_6_hl|Hybrid o-o languages]]
**[[CSC/ECE_517_Fall_2009/wiki2_6_rp|Hybrid o-o languages]]
**[[CSC/ECE_517_Fall_2009/wiki2_6_rp|Hybrid o-o languages]]
**[[CSC/ECE_517_Fall_2009/wiki2_4_dn|if-statement considered harmful]]
**[[CSC/ECE_517_Fall_2009/wiki2_4_railroad|if-statement considered harmful]]
**[[CSC/ECE_517_Fall_2009/wiki2_4_va|if-statement considered harmful]]
**[[CSC/ECE_517_Fall_2009/wiki_2_2_SJ|if-statement considered harmful]]


*'''Lecture 19'''
*'''Lecture 19 : Programming with assertions'''
**[[CSC/ECE_517_Fall_2009/wiki3_15_Programming_by_Assertions|Programming by Assertion]]
**[[CSC/ECE_517_Fall_2009/wiki3_15_Programming_by_Assertions|Programming by Assertion]]
**[[CSC/ECE_517_Fall_2009/wiki3_15_SJ3|Programming by Assertion]]
**[[CSC/ECE_517_Fall_2009/wiki3_15_SJ3|Programming by Assertion]]
Line 141: Line 132:
**[[CSC/ECE_517_Fall_2009/wiki3_20_i7|Liskov substitution principle]]
**[[CSC/ECE_517_Fall_2009/wiki3_20_i7|Liskov substitution principle]]


*'''Lecture 20'''
*'''Lecture 20 : Elegance and classes'''
**[[CSC/ECE_517_Fall_2009/wiki3_4_ashi4|DRY principle for data]]
**[[CSC/ECE_517_Fall_2009/wiki3_4_ashi4|DRY principle for data]]
**[[CSC/ECE_517_Fall_2009/wiki3_4_br|DRY principle for data]]
**[[CSC/ECE_517_Fall_2009/wiki3_4_br|DRY principle for data]]
**[[CSC/ECE_517_Fall_2009/wiki3_4_dt|DRY principle for data]]
**[[CSC/ECE_517_Fall_2009/wiki3_4_dt|DRY principle for data]]


*'''Lecture 21'''
*'''Lecture 21 : Agile methodologies'''
**[[CSC/ECE_517_Fall_2009/wiki3_7_Agile|How can Agile complement other development methodologies?]]
**[[CSC/ECE_517_Fall_2009/wiki3_7_Agile|How can Agile complement other development methodologies?]]
**[[CSC/ECE_517_Fall_2009/wiki3_7_dEaN|How can Agile complement other development methodologies?]]
**[[CSC/ECE_517_Fall_2009/wiki3_7_dEaN|How can Agile complement other development methodologies?]]
Line 154: Line 145:
**[[CSC/ECE_517_Fall_2009/wiki3_11_j8|Other agile methodologies]]
**[[CSC/ECE_517_Fall_2009/wiki3_11_j8|Other agile methodologies]]


*'''Lecture 22, 23, 24, 25'''
*'''Lecture 22, 23, 24, 25 : Design Patterns'''
**[[CSC/ECE_517_Fall_2009/wiki3_6_Factory_Design_Pattern|The Factory design pattern and its application]]
**[[CSC/ECE_517_Fall_2009/wiki3_6_Factory_Design_Pattern|The Factory design pattern and its application]]
**[[CSC/ECE_517_Fall_2009/wiki3_ksm_6|The Factory design pattern and its application]]
**[[CSC/ECE_517_Fall_2009/wiki3_ksm_6|The Factory design pattern and its application]]
Line 161: Line 152:
**[[CSC/ECE_517_Fall_2009/wiki3_21_MobileDesignPattern|Design Pattern for Mobile Applications]]
**[[CSC/ECE_517_Fall_2009/wiki3_21_MobileDesignPattern|Design Pattern for Mobile Applications]]


*'''Lecture 27'''
*'''Lecture 27 : Leftover patterns and pattern classification'''
**[[CSC/ECE_517_Fall_2009/wiki2_18_cc|Serialization Proxy pattern]]
**[[CSC/ECE_517_Fall_2009/wiki2_18_cc|Serialization Proxy pattern]]
**[[CSC/ECE_517_Fall_2009/wiki2_18_ee|Serialization Proxy pattern]]
**[[CSC/ECE_517_Fall_2009/wiki2_18_ee|Serialization Proxy pattern]]
Line 168: Line 159:
**[[CSC/ECE_517_Fall_2009/wiki2_12_PatternClassification|Schemes for patterns classification]]
**[[CSC/ECE_517_Fall_2009/wiki2_12_PatternClassification|Schemes for patterns classification]]
**[[CSC/ECE_517_Fall_2009/wiki2_12_Schemes_for_Pattern_Classification|Schemes for patterns classification]]
**[[CSC/ECE_517_Fall_2009/wiki2_12_Schemes_for_Pattern_Classification|Schemes for patterns classification]]
**[[CSC/ECE_517_Fall_2009/wiki1b_12_Schemes_for_Pattern_Classification|Schemes for patterns classification]]


*'''Topics not covered in the lectures'''
*'''Topics not covered in the lectures'''
Line 177: Line 167:
**[[CSC/ECE_517_Fall_2009/wiki3_14_12|Principle of Self-Documentation]]
**[[CSC/ECE_517_Fall_2009/wiki3_14_12|Principle of Self-Documentation]]
**[[CSC/ECE_517_Fall_2009/wiki3_14_rd|Principle of Self-Documentation]]
**[[CSC/ECE_517_Fall_2009/wiki3_14_rd|Principle of Self-Documentation]]
**[[CSC/ECE_517_Fall_2009/wiki3_16_rn|Uniform access principle]]
**[[CSC/ECE_517_Fall_2009/wiki319_SV|Uniform access principle]]
**[[CSC/ECE_517_Fall_2009/wiki319_SV|Uniform access principle]]
**[[CSC/ECE_517_Fall_2009/wiki3_19_ee|Uniform access principle]]
**[[CSC/ECE_517_Fall_2009/wiki3_19_ee|Uniform access principle]]
Line 202: Line 191:
**[[CSC/ECE_517_Fall_2009/wiki3_1_co|Anti-patterns]]
**[[CSC/ECE_517_Fall_2009/wiki3_1_co|Anti-patterns]]
**[[CSC/ECE_517_Fall_2009/wiki3_1_kp|Anti-patterns]]
**[[CSC/ECE_517_Fall_2009/wiki3_1_kp|Anti-patterns]]
**[[CSC/ECE_517_Fall_2009/wiki3_22_SN|Clone detection and clone manipulation]]
**[[CSC/ECE_517_Fall_2009/wiki3_2_SN|Clone detection and clone manipulation]]
**[[CSC/ECE_517_Fall_2009/wiki3_2_SN|Clone detection and clone manipulation]]
**[[CSC/ECE_517_Fall_2009/wiki3_2_clone|Clone detection and clone manipulation]]
**[[CSC/ECE_517_Fall_2009/wiki3_2_clone|Clone detection and clone manipulation]]
**[[CSC/ECE_517_Fall_2009/wiki3_2_pp|Clone detection and clone manipulation]]
**[[CSC/ECE_517_Fall_2009/wiki3_2_pp|Clone detection and clone manipulation]]
**[[CSC/ECE_517_Fall_2009/wiki1a/2_sc|Mock Objects and Mock frameworks]]
**[[CSC/ECE_517_Fall_2009/wiki1a_2_i7|Mock Objects and Mock frameworks]]
**[[CSC/ECE_517_Fall_2009/wiki1a_2_i7|Mock Objects and Mock frameworks]]
**[[CSC/ECE_517_Fall_2009/wiki1a_2_sn|Mock Objects and Mock frameworks]]
**[[CSC/ECE_517_Fall_2009/wiki1a_2_sn|Mock Objects and Mock frameworks]]
Line 217: Line 204:
**[[CSC/ECE_517_Fall_2009/wiki3_16_eit|Reuse/Release Equivalence Principle]]
**[[CSC/ECE_517_Fall_2009/wiki3_16_eit|Reuse/Release Equivalence Principle]]
**[[CSC/ECE_517_Fall_2009/wiki3_16_teamhelm|Reuse/Release Equivalence Principle]]
**[[CSC/ECE_517_Fall_2009/wiki3_16_teamhelm|Reuse/Release Equivalence Principle]]
**[[CSC/ECE_517_Fall_2009/wiki2_16_agummad|Service Oriented Architecture(SOA) and Patterns]]
**[[CSC/ECE_517_Fall_2009/wiki2_16_am|Service Oriented Architecture(SOA) and Patterns]]
**[[CSC/ECE_517_Fall_2009/wiki2_16_rs|Service Oriented Architecture(SOA) and Patterns]]
**[[CSC/ECE_517_Fall_2009/wiki2_16_tvhi|Service Oriented Architecture(SOA) and Patterns]]
**[[CSC/ECE_517_Fall_2009/wiki2_3_b5|Synchronizer token pattern]]
**[[CSC/ECE_517_Fall_2009/wiki2_3_b5|Synchronizer token pattern]]
**[[CSC/ECE_517_Fall_2009/wiki2_3_bd|Synchronizer token pattern]]
**[[CSC/ECE_517_Fall_2009/wiki2_3_bd|Synchronizer token pattern]]
**[[CSC/ECE_517_Fall_2009/wiki2_3_pp|Synchronizer token pattern]]
**[[CSC/ECE_517_Fall_2009/wiki2_3_pp|Synchronizer token pattern]]

Latest revision as of 01:46, 22 December 2009

Summary of wiki pages contributed in Fall 2009