You are on page 1of 4
COSC1046 — Introduction to Computer Science | Course Description In conjunction with COSC 1047 this course provides the first year concentration requirements for B.Sc. and 8.COSC majors in Computer Science and majors in Mathematics. The first year of Computer Science is intended to develop the student's problem solving skills using the computer and to prepare the student for the core second year courses, COSC 2006/7 (Data Structures I/II) and COSC 2406 (Assembly Language Programming). Previous programming experience is not required. Nevertheless, this is a fast-paced course that involves problem solving, a serious introduction to programming, and an introduction to some of the mathematical foundations of Computer Science. The Java programming language will be used throughout first year courses. The student will learn to work in an “object-oriented” programming environment. Required Text (any): © Y. Daniel Liang, Introduction to Java Programming, Comprehensive, 12/€ ISBN: 9780136520085 © _ Y. Daniel Liang, Introduction to Java Programming, Comprehensive, 11/E ISBN: 9780134670942, © Y. Danie! Liang, Introduction to Java Programming, Brief Version, 11/E \SBN: 9780134611037 Suggested Course Evaluation** Programming Assignments/Labs: 30% Tests/Quizzes: 40% Final Exam: 30% “The number of tests and programming assignments/labs will be determined by the professor delivering the course, and will depend on the length of the course. Course Objectives Students who successfully complete the course have reliably demonstrated the ability to: Understand the structure and components of the Java programming language. Utilize common software components and IDE’s to create, compile, run and test java programs. Use the operating system of the computer to manage files and programs during the development process. ‘+ Analyze complex problems involving multiple data types, including objects, Strings, and arrays, multiple types of control structures, and describe a solution to the problem in pseudo code, Write, compile, run and test complex problems using the Java programming language. Understand the context of the programming process within the Field of Computer Science Course Content Module 2 - Programming in Java, variables and selection statements This module introduces programming basics in Java. The understanding is that students have prior programming experience, but perhaps not in Java. This module covers basic Java syntax, using variables, console input, and selection statements By the end of this Module you will ‘© Outline the history of the Java programing language ‘* Install the latest version of Java and the Eclipse Integrated Development Environment (IDE) ‘+ Write Compile and Execute a simple Java program ‘+ Write code to accept data from keyboard input Distinguish between the various numeric data types Define the rules for valid Identifiers in Java ‘© Declare and use variables in simple Java programs © Assign values to variables ‘* Manipulate variables using various arithmetic operators ‘+ Declare Boolean variables and write Boolean expressions using relational and | Implement selection control using if/else and switch statements, Write simple Java programs that implement selection statements, References © Text Chapters: 1-3 Module 2 - Math Methods, Characters, Strings and Looping Structures ‘The Math class is one of several predefined classes that are part of the lava language and it allows for more advanced calculations such as exponents, roots and trig functions. Programs do not only deal with numeric data, however, and in this Module we will also study the char data type, which is used for storing single characters, as well as the String class which we will use for storing and manipulating 'strings' or sequences of multiple characters. Finally we will study the three types of looping structures available in Java, understand the differences between them and learn to identify which situations are best suited to each type of loop. By the end of this Module you will: ‘+ Write code to solve mathematical problems by using the methods in the Math class ‘© Store and manipulate character data ‘© Store and manipulate character strings using the String class and methods ‘* Write programs that implement the Math and String classes ‘+ Follow the loop design strategy to develop loops. Write loops using while, do-while and for staternents. Code simple programs for executing statements repeatedly using loops ‘+ Discover the similarities and differences of three types of loop statements. ‘© Write nested loops. References © Text Chapters: 4,5 Module 3 - Methods Methods are relatively short bits of code that perform a specific task. These "mini-programs" are given identifiers (names) just like variables. Once named, they can be invoked easily just by "calling" them by their name. You have already studied and programmed with a number of pre-defined methods through ‘your work with the Math and String classes in Module 2 (Math.pow() for example) In this module you will start writing your own custom methods. By the end of this Module you will: ‘+ Define methods to perform various tasks ‘© Define Methods making appropriate use of parameters and return values ‘* Develop efficient reusable code References © Text Chapter: 6 Module 4 - Arrays Arrays are built-in data structures that allow you to store multiple values under a single identifier. In this module you will learn the basics of working with single-dimensional arrays as well as more complex ‘two and multi-dimensional arrays. By the end of this Module you will: ‘+ Declare and initialize single and multi-dimensional arrays ‘© Use loops to access and process data stored in arrays ‘© Use arrays as arguments and return values for methods Apply sorting and searching algorithms to arrays. Write programs with arrays as the main data structures References © Text Chapters: 7,8 Module 5 - Objects and Classes Objects and classes are the foundation of Object Oriented Programming, and will start you on the path of “thinking in objects” when you design programs. ‘The origins of the object oriented programming model go back to the 1960's, but it began to take hold as the dominant paradigm in the mid 80's in conjunction with the growth in the development of programs with graphical interfaces. Today almost all major programming projects make use of the OOP model, By the end of this Module you will: ‘© Create custom classes and create ‘instances or objects from those classes ‘* Use UML graphical notation to describe classes ‘© Access an object's data and methods ‘© Store and process objects in arrays References © Text Chapter: 9

You might also like