Presentation is loading. Please wait.

Presentation is loading. Please wait.

CSE 219 Computer Science III

Similar presentations


Presentation on theme: "CSE 219 Computer Science III"— Presentation transcript:

1 CSE 219 Computer Science III
Introduction

2 Who am I? Ahmad Esmaili E-mail: esmaili@cs.sunysb.edu
Work phone: Office Location: CS Room 1438A Office hours: Mondays 9:15-10:30am & Fridays12:45 –2:00pm or by appointment

3 Course Homepages http://www.cs.sunysb.edu/~cse219
announcements course information schedule and grades Source codes covered in class discussion board schedule (lecture slides, hw, …)

4 Course Description Development of the basic concepts and techniques from Computer Science I and II into practical programming skills that include a systematic approach to program design, coding, testing, and debugging. Application of these skills to the construction of robust programs of lines of source code. Use of programming environments and tools to aid in the software development process. NOTE: You must have taken CSE 214 and received a grade of "C" or better in order to take this course

5 Course Topics Project Technologies Basics Software Design (UML)
GUIs & Event Programming Image Processing Multithreaded programming Software Design (UML) Design Patterns Programming style Algorithms and data structure selection Code maintenance & documentation

6 Course Topics (continued)
Effectively using an IDE & associated tools for: Designing Code editing Testing Debugging Revision control Profiling Documentation Deployment

7 Textbook #1 Object Oriented Design & Patterns, 2nd Edition by Cay Horstmann Published by Wiley, 2005, ISBN

8 Textbook #2 Java How to Program - 7th Edition by Deitel and Deitel Published by Prentice Hall, ISBNs &

9 Course Language Java 1.6 (a.k.a. Java 6) Download
For info on changes from Java 5: Download API: Tutorials: Trail: Creating a GUI with JFC/Swing Trail: Working with Images Lesson: Threads: Doing Two or More Tasks at Once

10 Course IDE eclipse Download Tutorials
Tutorials to be given by TAs & posted online

11 Why Java? Half of all server application programming is done using the Java platform What’s that? enterprise software ecommerce, resource planning, etc. What is used for the other half? .NET

12 Lab Facilities We will use the Computer Associates Transaction Processing Lab (Trans Lab) CS 2114 & 2126 Login all registered students have accounts Room combo soon to follow

13 How are grades computed?
4 Homework Assignments 36 % (9% each) Written Midterm Exam 15 % Wednesday, March 11th, 2:20–3:40pm Design/Coding Midterm Exam 19 % Wednesday, April 22nd, 2:20–3:40pm Software Tool Proficiency Quiz 5 % Monday, May 6th, 2:20–3:40pm Final Exam % Wednesday, May 13th, 2:00–4:30pm 100 % Note CEAS Policy: The Pass/No Credit (P/NC) option is not available for this course.

14 ACADEMIC DISHONESTY All work you submit for homework, projects, or exams MUST be your own work. If you cheat or aid someone in cheating, you will automatically fail this course and be brought up on charges of academic dishonesty without warning. NO EXCEPTIONS WILL BE MADE!

15 Other Important Info DISABLED STUDENT SERVICES (DSS) If you have a physical, psychiatric, emotional, medical or learning disability that may impact on your ability to carry out the assigned course work, please visit DSS in the ECC Building, /TTY. CELLULAR PHONES Please turn off cellular phones during class.

16 Rules of thumb to remember
3 ½ months is not a long time Points are more difficult to makeup later in the semester Have the same sense of urgency for the 1st assignment as you would for the 4th

17 What is a framework? Groups of classes that form the basis for customization cooperating classes for a particular technology ex: multimedia, the Web, databases, etc. used to build new applications & other frameworks what’s Java’s application framework for the domain of GUI development? Swing (a framework built on the AWT framework)

18 Applications Using Frameworks
App1 calls methods of Framework objects App2 calls methods of Framework objects Framework calls methods of App1 & App2 objects Application #1 Application #2 How can this happen?

19 Other Java Frameworks Table 1: Java Frameworks Application Frameworks
Database JRelational Intelligent Agents Jade, JAF, ABLE Logging Java logging framework, Log4J Multimedia JMF Networking RMI Testing JUnit, Cactus, JFCUnit, Abbot, Hansel Web Development Struts, WebWork, SOFIA, Cocoon, JBoss, JOFFAD XML Dom4j, JBind Others Java Collections, BSF, Joone, ...

20 Framework Documentation
Frameworks are more than just one class, but many classes working together Framework developers must explain how to use them all together properly API Tutorials Frameworks are open source as well as for purchase, ex:

21 Who cares? We are constantly using Java frameworks
Think about how you might create a framework Gaining the ability to make frameworks will make you a powerful developer

22 What’s a mod?

23 Mods Short for modification
Change an existing game/application to incorporate your own creative/productive/sick ideas Modding techniques: change artwork, music, etc. via plugging in your own change source code See:

24 Well known game mods Entirely new content Customizable UI components
Neverwinter Nights Starcraft Id games Customizable UI components World of Warcraft (WOW) add-ons Etc.

25 Why do we care? Because you will be making a game such that it can accommodate mods Then you will be making mods for your game Then you will be sharing your mods with each other

26 Sample Project?

27 Sample Project?

28 Why make mods? Because it makes you design anticipating later changes and additions to your program We will be making 2 types of mods: maps (plugging in our own artwork/level design) add-ons (providing additional UI utility) Both mods should be addable without program recompilation

29 The HW Plan HW 0 – your contract to be academically honest and understand rules of Project HW 1 – Learning the necessary Java technologies for making a mini version GUIs Threads Image Processing HW 2 Create your Design & Documentation HWs 3 – 4 code, test, profile, document (some more) & deploy your game review & update your design as well create mods for your game

30 Pre-HW0 (this means today)
Play and completely understand all the rules of the project ASAP


Download ppt "CSE 219 Computer Science III"

Similar presentations


Ads by Google