1 / 8

Advanced Programing practices

Learn advanced programming practices and methodologies to improve coding efficiency, quality, and teamwork. Includes Java project and evaluations.

tkunz
Download Presentation

Advanced Programing practices

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Advanced Programing practices Introduction to the course Joey Paquet, 2006-2014

  2. Introduction to the Course Joey Paquet, 2006-2014

  3. Introduction to the course: Instructor • Name: Joey Paquet • Position: Associate Professor, Department of Computer Science and Software Engineering • Teaching topics: Programming languages, Compiler design, Software engineering and programming methodology • Research topics: Design and implementation of programming languages, Parallel and/or distributed computing, Demand-driven computation, Context-driven computation • Contact information: • Web: www.cse.concordia.ca/~paquet • E-mail: paquet@cse.concordia.ca • Office: EV 3-221 • Office hours: Fridays 10am-12pm Joey Paquet, 2006-2014

  4. Introduction to the course: Calendar description • Problems of writing and managing code. Managing code complexity and quality through a programming process. Coding conventions. Inline software documentation. Software configuration management. Tools and techniques for testing software. Multithreading concurrency. Code reuse in software development. Quality in coding, fault tolerance. A project. Laboratory: two hours per week. Joey Paquet, 2006-2014

  5. Introduction to the course: Rationale • This course is not a regular “introduction to programming” course. • Regular programming courses teach how to use a particular programming language to implement programs. • This course assumes that the students already know how to program. • Industrial programming makes use of many more tools than the actual programming language. • This course aims at improving the effectiveness of the act of programming. • It is meant to teach various concepts/tools/techniques used in the process of programming. • It aims at enabling students to: • Be more efficient in their programming tasks • Be more effective team workers in software development • Be more aware of quality in software development • This course aims at an audience well-trained in computer programming and putting the newly acquired knowledge into practice through a challenging project. Joey Paquet, 2006-2014

  6. Introduction to the course: Project • The project is to be undertaken small teams (typically 5 members) and consists of the building of a challengingly large and complex Java application. • The completion of the project is divided into two separate components: • (1) the First and Second Intermediate Project Deliveriesare intermediate operational builds of the software, effectively demonstrating the full implementation of some important software features; • (2) the Final Project Deliveryis the demonstration of the finalized version of your software. • During the project deliveries, you also have to demonstrate that your code includes many of the Java features presented in the lectures. • The individual assignments will also be related to the project. Joey Paquet, 2006-2014

  7. Introduction to the course: Evaluation • Individual evaluation components: • Written examinations (midterm, final): 20% + 30% 50% • Team work evaluation components: • Intermediate project delivery 1: 15% • Intermediate project delivery 2: 15% • Final project delivery: 20% Joey Paquet, 2006-2014

  8. Introduction to the course: References • Walter Savitch. Absolute Java. Fifth Edition, Addison-Wesley, 2012. ISBN-13: 978-0-13-283071-3 • Walter Savitch. Java: An Introduction to Problem Solving and Programming. 7th Edition, Addison-Wesley, 2014. ISBN-13: 978-0133766264 Joey Paquet, 2006-2014

More Related