Week 10 Tuesday. CS 400 Programming III. X-Team Exercise #4: due before 10pm on April 16th
|
|
- Horatio Skinner
- 6 years ago
- Views:
Transcription
1 Week 10 Tuesday X-Team Exercise #4: due before 10pm on April 16th Team Project: Tournament-Bracket (D-Team 30pts) Milestone #1: due before 10pm April 20 th (A-Team 20pts) Milestone #2: due before 10pm April 23 rd (A-Team 100pts) Milestone #3: due before 10pm May 3rd Read: Module 10 (links to Java 8 feature documentation) TODAY in Lecture: Intro to X-Team Exercise #4: Dictionary Graph Intro to Final Team Project Milestones Java Enumerations Java Interfaces OO Design o UML Diagrams Shell scripts and vim Unix/Linux Utilities o diff o grep o make and Makefile Thursday: continue where we leave off on Tuesday Functional Interfaces Lambda Expressions In-Class X-Team Time (attend you lecture with your X-team and complete some part of the final x-team project in class Next Week Java 8 Features (that we didn't get to yet) o Functional Interfaces (java.util.function.function) o Lambda expressions o java.nio.file.files o java.nio.file.paths o java.nio.streams Copyright 2018 Deb Jim Skrentny CS 400 (S18): W10T - 1
2 X-Team, Exercise #4 Last X-Team exercise Dictionary Graph o GraphTest o Graph o WordProcessor o GraphProcessorTest o GraphProcessor Copyright 2018 Deb Jim Skrentny CS 400 (S18): W10T - 2
3 Final Project: Tournament Bracket GUI Tournament-Bracket GUI Given: a list of teams (challengers) in seeded order Create: an interactive tournament bracket o where last challenges 1 st, 2 nd to last challenges 2 nd, and so on... N: is the number of teams, where,,,,, UI allows scores and winners of games to be entered, creating the next round of challenges Team Project Must be completed in a team or 3-5 students Student may be in either lecture Teams may be same as X-Team or you may choose your 3-5 team members. Students who do not pick their own team members will be assigned to a team. Milestone #1: Design Documents with D-Team (3-5 students) D-Team: 3-5 students (may be your X-Team members) Class Summary Object Diagram Milestone #2: GUI example with A-Team (3-5 students) A-Team: 3-5 students (may be same members as D-team) Program must produce a GUI with UI controls and challengers showing Milestone #3: Working GUI Tournament Bracket with A-Team A-Team: must be same team as Milestone #2 Program produces working Tournament GUI Copyright 2018 Deb Jim Skrentny CS 400 (S18): W10T - 3
4 Enumerations class Fish implements Moveable { static final int UP = 0; static final int RIGHT = 1; static final int DOWN = 2; static final int LEFT = 3; static final int CLOSER = 4; static final int FARTHER = 5; int x = 0, y = 0, z = 0; void move() { direction = (int)(math.random()*6); switch(direction) { case UP: y--; break; case RIGHT: x++; break; case DOWN: y++; break; case LEFT: x--; break; case CLOSER: z--; break; case FARTHER: z++; break; } } Rewrite using an enumeration for the direction Enumerations defines new type with only CONSTANTS set of predefined values (values are Objects references) names must be valid Java identifiers implicitly extend java.lang.enum [safer] data type can only contain enumerated values each value has an ordinal() int value they have equals() and hashcode() they are Comparable by their ordinal value can be inside a class but not inside a method may be in its own class must be in a file with same name ennum type has.value() returns all enum Day { N,M,T,W,R,F,S } enum Planet { MERCURY, VENUS, EARTH, MARS, JUPITER, SATURN, NEPTUNE, URANUS } enum Checker { RED, BLACK } enum Direction { UP, DOWN, LEFT, RIGHT, CLOSER, FARTHER} enum Level { HS, UGRAD, GRAD, SPECIAL, VS } enum Direction { UP, RIGHT, DOWN, LEFT, CLOSER, FARTHER } Use: Level.HS, Level.UGRD Copyright 2018 Deb Jim Skrentny CS 400 (S18): W10T - 4
5 Java Interfaces a contract can have: o FIELDS (constants, enums) o default methods Examples: Comparable,Throwable,Runnable,Comparator, Listener, defined constants static final int UP = 0; // all are static final int RIGHT = 1; // still static and final enum Direction { UP, RIGHT, DOWN, LEFT, CLOSER, FARTHER } default methods can provide a default implementation for any method may not do anything but it will compile without existing implementing types having to be edited Example: Moveable2.java public interface Moveable2 { enum Direction { UP, RIGHT, DOWN, LEFT, CLOSER, FARTHER } void move(); default Direction getrandommove() { int n = (int)(math.random()*direction.values().length); return Direction.values()[n]; } } Copyright 2018 Deb Jim Skrentny CS 400 (S18): W10T - 5
6 OO Design: Classes and Objects Finding the Classes (and Objects) for a Fish Tank Simulation 1. read the problem description (get the problem domain) 2. identify (name and label) different types of real-world objects (the nouns) a. people, places, things b. roles c. results 3. Refine the list a. remove duplicates b. determine if the nouns are objects or classes (types) c. can they be stored as primitives (or enums) Class Summary ClassName - Description or Purpose or Responsibility of the Class Copyright 2018 Deb Jim Skrentny CS 400 (S18): W10T - 6
7 Diagrams Diagrams can be anything that your team understands and agrees to use Unified Modeling Language: is a great place to start Class Diagram shows Fields, Constructors, Methods Object Diagram shows state of a specific instance Use Case Diagram shows sequence of interactions Inheritance "is-a" Fish is-a Moveable type Composition "has-a" Fish has-a Location Association "interacts-with" Fish interacts-with Food Draw UML-style Class diagrams for: a Fish Tank simulation: Tank, Fish, Food, Shark, EnergyLevel Show these Symbols: * 1 n Copyright 2018 Deb Jim Skrentny CS 400 (S18): W10T - 7
8 vim demo What I do: remote connect to Linux, edit with vi, use make, and shell scripts. Just enough VIM to get started and stuck! command mode insert mode escape goto line N change word yank line put line replace character replace all ^M in a text file :1,$s/Ctrl-V-M//g save quit save and quit Copyright 2018 Deb Jim Skrentny CS 400 (S18): W10T - 8
9 sh csh bash Shell Scripts what is a makefile? a build utility Makefiles what a build utility? a program that is used to create executable (programs) from source code are there other build utilities? yes, shell scripts, ant, maven, gradle How does make work? 1. create a makefile with targets and rules 2. Run make <target name> Show simple makefile for compiling and running java application compiling and running JUnit test classes (-cp switch) generating html and pdf from markdown files compiling, linking, building C++ with gcc on Linux MinGW minimalist GNU for Windows - make diff grep csh scripting languages: sh, csh, bash, perl, python, javascript (web browsers) editors: just learn vim Copyright 2018 Deb Jim Skrentny CS 400 (S18): W10T - 9
Week 11. CS 400 Programming III. Program 4: due before 10pm on Monday 11/19
Week 11 Program 4: due before 10pm on Monday 11/19 Team Project: Food Query and Meal Analysis (D-Team 30pts) Milestone #1: due before 10pm Nov 16 th (A-Team 20pts) Milestone #2: due before 10pm Nov 26
More informationWeek 11 Tuesday. CS 400 Programming III
CS 400 Programming III Week 11 Tuesday X-Team Exercise 4: due before 10pm this Monday April 16 th Timeout your JUnit tests (if necessary): @Rule public Timeout globaltimeout = Timeout.seconds(10); // 10
More informationWeek 12 Thursday. For milestone #2 and #3, also submit a screenshot of your GUI once it is launched.
Week 12 Thursday D-Teams have been created Create your A-Team by Friday, or let me know to assign you earlier. Team Project: Tournament-Bracket (D-Team 30 pts) Milestone #1: due before 10pm THIS Friday,
More informationWeek 13 Thursday (with Page 5 corrections)
Week 13 Thursday (with Page 5 corrections) Quizzes: HTML/CSS and JS available and due before 10 pm next Tuesday, May 1 st. You may do your own web research to answer, but do not ask classmates, friends,
More informationWeek 14 Thursday (Last Lecture)
Week 14 Thursday (Last Lecture) Final Exam Friday, May 11th, 7:45 am to 9:45 am Lec 1 & 2: room 272 of Bascom Hall UW ID required Makeup exam emails sent See posted exam information (exam topics and latest
More informationCS 251 Intermediate Programming More on classes
CS 251 Intermediate Programming More on classes Brooke Chenoweth University of New Mexico Spring 2018 Empty Class public class EmptyClass { Has inherited methods and fields from parent (in this case, Object)
More informationMIDTERM EXAM THURSDAY MARCH
Week 6 Assignments: Program 2: is being graded Program 3: available soon and due before 10pm on Thursday 3/14 Homework 5: available soon and due before 10pm on Monday 3/4 X-Team Exercise #2: due before
More informationIntermediate Programming, Spring Misha Kazhdan
600.120 Intermediate Programming, Spring 2017 Misha Kazhdan Outline Unix/Linux command line Basics of the Emacs editor Compiling and running a simple C program Cloning a repository Connecting to ugrad
More informationCS 200 More Classes Jim Williams, PhD
CS 200 More Classes Jim Williams, PhD Week 13 1. Team Lab: Instantiable Class 2. BP2 Milestone 3 Due Thursday 3. P7 Due next Thursday 4. CS 300 Programming II in the future? 5. Lecture: More Classes, UML
More informationWeek 2. CS 400 Programming III. Read: Module 2 readings before lecture
Week 2 Waitlisted Students: please come to front of class and sign by your name on waitlist. TopHat Join Code for my lecture: Announcements and Course Policies: https://pages.cs.wisc.edu/~deppeler/cs400/
More informationCS Introduction to Data Structures Week 1 Thursday
CS 367 - Introduction to Data Structures Week 1 Thursday We assume that you are proficient at object-oriented programming in Java. Please enroll in CS300 if you do not know Java and have not written object-oriented
More informationCS 253: Intro to Systems Programming 1/21
1/21 Topics Intro to Team-Based Learning (TBL) Syllabus and class logistics What is Systems? 2/21 Team-Based Learning Evidence-based instructional practice proven to increase student motivation and comprehension.
More informationCS 2530 INTERMEDIATE COMPUTING
CS 2530 INTERMEDIATE COMPUTING Spring 2016 1-8-2018 Michael J. Holmes University of Northern Iowa Object Oriented Concepts In some cases we ll learn the concepts prior to learning the terminology. Other
More informationCourse information. Petr Hnětynka 2/2 Zk/Z
JAVA Introduction Course information Petr Hnětynka hnetynka@d3s.mff.cuni.cz http://d3s.mff.cuni.cz/~hnetynka/java/ 2/2 Zk/Z exam written test zápočet practical test in the lab max 5 attempts zápočtový
More informationCMPE/SE 135 Object-Oriented Analysis and Design
Course and Contact Information San José State University Department of Computer Engineering CMPE/SE 135 Object-Oriented Analysis and Design Instructor: Ron Mak Office Location: ENG 250 Email: ron.mak@sjsu.edu
More informationCS101 - Text Processing Lecture 8
CS101 - Text Processing Lecture 8 School of Computing KAIST 1 / 16 Roadmap Last week we learned Data structures String Set Dictionary Image processing 2 / 16 Roadmap Last week we learned Data structures
More informationCourse information. Petr Hnětynka 2/2 Zk/Z
JAVA Introduction Course information Petr Hnětynka hnetynka@d3s.mff.cuni.cz http://d3s.mff.cuni.cz/~hnetynka/java/ 2/2 Zk/Z exam written test zápočet practical test in the lab zápočtový program "reasonable"
More informationCS 115 Exam 3, Spring 2011
CS 115 Exam 3, Spring 2011 Your name: Rules You may use one handwritten 8.5 x 11 cheat sheet (front and back). This is the only resource you may consult during this exam. Explain/show work if you want
More informationSprint 2017, Sul Ross State University
Instructor: Dr. Kennard Laviers CS 2360-001 LINUX Sprint 2017, Sul Ross State University Office Location: ACR 107 Office Phone: 432-837-8500 Email: kennard.laviers@sulross.edu Office Hours: MW 8:30am -
More informationCS1004: Intro to CS in Java, Spring 2005
CS1004: Intro to CS in Java, Spring 2005 Lecture #13: Java OO cont d. Janak J Parekh janak@cs.columbia.edu Administrivia Homework due next week Problem #2 revisited Constructors, revisited Remember: a
More information(Movement - Synthesis) Improve existing programming skills by developing much larger and more complex programs than in previous classes.
Location MWF 1205-1255 Klaus 1443 Class Objective Purpose: CS2340 takes students who know an object-oriented language, and focuses on getting them to use that language in a true object-oriented style.
More informationVi & Shell Scripting
Vi & Shell Scripting Comp-206 : Introduction to Week 3 Joseph Vybihal Computer Science McGill University Announcements Sina Meraji's office hours Trottier 3rd floor open area Tuesday 1:30 2:30 PM Thursday
More informationCS Introduction to Data Structures Week 3, 2017
CS 367 - Introduction to Data Structures Week 3, 2017 Homework h1 graded. Email TA (di3@wisc.edu) by Friday, July 7th - 5 pm. Program 1 due July 11 th - 10 pm Homework h3 posted, complete as soon as possible;
More informationPython Basics. Lecture and Lab 5 Day Course. Python Basics
Python Basics Lecture and Lab 5 Day Course Course Overview Python, is an interpreted, object-oriented, high-level language that can get work done in a hurry. A tool that can improve all professionals ability
More informationCS240: Programming in C
CS240: Programming in C Lecture 1: Class overview. Cristina Nita-Rotaru Lecture 1/ Fall 2013 1 WELCOME to CS240 Cristina Nita-Rotaru Lecture 1/ Fall 2013 2 240 Team Instructor: Cristina Nita-Rotaru Special
More informationSan Jose State University - Department of Computer Science
San Jose State University - Department of Computer Science CS 151, Section 4 - Object-Oriented Design Instructor:Cay S. Horstmann Email: cay.horstmann@sjsu.edu Telephone: +1-408-924-5060 Office Hours:
More informationCSCI2467: Systems Programming Concepts
CSCI2467: Systems Programming Concepts Class activity: bash shell literacy Instructor: Matthew Toups Fall 2017 Today 0 Shells History Usage Scripts vs. Programs 1 Bash shell: practical uses for your systems
More informationBasic Shell Scripting Practice. HPC User Services LSU HPC & LON March 2018
Basic Shell Scripting Practice HPC User Services LSU HPC & LON sys-help@loni.org March 2018 Quotation Exercise 1. Print out your $LOGNAME 2. Print date 3. Print `who am i` 4. Print your current directory
More information1
ABDUSSALAM@SBU.AC.IR 1 Computational Physics S. AbdusSalam Department of Physics, Shahid Beheshti University 1st semester 1395/1396 (2016/2017) ABDUSSALAM@SBU.AC.IR 2 Aims, overview, & outlook Introduce
More informationSubclass Gist Example: Chess Super Keyword Shadowing Overriding Why? L10 - Polymorphism and Abstract Classes The Four Principles of Object Oriented
Table of Contents L01 - Introduction L02 - Strings Some Examples Reserved Characters Operations Immutability Equality Wrappers and Primitives Boxing/Unboxing Boxing Unboxing Formatting L03 - Input and
More informationMore Examples Using Functions and Command-Line Arguments in C++ CS 16: Solving Problems with Computers I Lecture #6
More Examples Using Functions and Command-Line Arguments in C++ CS 16: Solving Problems with Computers I Lecture #6 Ziad Matni Dept. of Computer Science, UCSB Administrative CHANGED T.A. OFFICE/OPEN LAB
More informationSan Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1, 2, and 3, Spring 2018
San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1, 2, and 3, Spring 2018 Course and Contact Information Instructor: Suneuy Kim Office
More informationCS Introduction to Data Structures Week 5, 2017
CS 367 - Introduction to Data Structures Week 5, 2017 Homework h2 graded. Email TA (di3@wisc.edu) by Tuesday, July 18 th - 5 pm. Homework h4 posted, complete as soon as possible; Due by Sunday, July 23
More informationSan Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017
San Jose State University College of Science Department of Computer Science CS151, Object-Oriented Design, Sections 1,2 and 3, Spring 2017 Course and Contact Information Instructor: Dr. Kim Office Location:
More informationIntroduction to Linux. Woo-Yeong Jeong Computer Systems Laboratory Sungkyunkwan University
Introduction to Linux Woo-Yeong Jeong (wooyeong@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating system of a computer What is an
More informationWeek 3 Web site:
Week 3 Web site: https://pages.cs.wisc.edu/~deppeler/cs400/ (announcements and resources) Canvas: https://canvas.wisc.edu/ (modules, assignments, grades) Top Hat join code: X-Team Exercise #1: (in-class
More informationSystem Administration HW3
System Administration HW3 - Happy Shell Script programming ymli Overview 3-1 Process Inspector (20%) A one-liner script to show statistics of all processes 3-2 Polyglot (25%) How many languages can you
More informationTNM093 Practical Data Visualization and Virtual Reality Laboratory Platform
November 8, 2016 1 Introduction The laboratory exercises in this course are to be conducted in an environment that might not be familiar to many of you. It is based on open source software. We use an open
More informationWeek 9. CS 400 Programming III
Week 9 p3b: final submission due before 10pm on Thursday, 3/28 p4: available soon x4: due before 10pm on Monday 4/1 x5: meet with x-team coach for design review 4/1-4/8 Module: Week 9 (and start on week
More informationCS1004: Intro to CS in Java, Spring 2005
CS1004: Intro to CS in Java, Spring 2005 Lecture #23: OO Design, cont d. Janak J Parekh janak@cs.columbia.edu Administrivia HW#5 due Tuesday And if you re cheating on (or letting others see your) HW#5
More informationCSE 374: Programming Concepts and Tools. Eric Mullen Spring 2017 Lecture 4: More Shell Scripts
CSE 374: Programming Concepts and Tools Eric Mullen Spring 2017 Lecture 4: More Shell Scripts Homework 1 Already out, due Thursday night at midnight Asks you to run some shell commands Remember to use
More informationPROJECT INFRASTRUCTURE AND BASH INTRODUCTION MARKUS PILMAN<
PROJECT INFRASTRUCTURE AND BASH INTRODUCTION MARKUS PILMAN< MPILMAN@INF.ETHZ.CH> ORGANIZATION Tutorials on Tuesdays - Sometimes, will be announced In General: no exercise sessions (unless you get an email
More informationCS Introduction to Data Structures Week 4, 2017
CS 367 - Introduction to Data Structures Week 4, 2017 Midterm Exam 1 Friday July 14 th, 11:00 am to 1:00 pm, CS1240 UW ID required See posted exam information Make up exam scheduled Program 1: Due 10 pm
More informationCS 102 Lecture 1. Syllabus, history, intro
CS 102 Lecture 1 Syllabus, history, intro Contact Info Instructor: Hannah Aizenman Email: haizenm00@ccny.cuny.edu Office: NAC 7/311 Office Hours: After class by appointment 2:00-4:00 T/Th Recitation Instructor:
More informationEE516: Embedded Software Project 1. Setting Up Environment for Projects
EE516: Embedded Software Project 1. Setting Up Environment for Projects By Dong Jae Shin 2015. 09. 01. Contents Introduction to Projects of EE516 Tasks Setting Up Environment Virtual Machine Environment
More informationSE420 Software Quality Assurance
SE420 Software Quality Assurance http://dilbert.com/strips/comic/2007-07-30/ Lecture 11 Using Test Automation for Process Improvement [SEI Level 3,4,5 Defined, Repeatable, Measureable, Continuously Improved]
More information(p t y) lt d. 1995/04149/07. Course List 2018
JAVA Java Programming Java is one of the most popular programming languages in the world, and is used by thousands of companies. This course will teach you the fundamentals of the Java language, so that
More informationLecture # 2 Introduction to UNIX (Part 2)
CS390 UNIX Programming Spring 2009 Page 1 Lecture # 2 Introduction to UNIX (Part 2) UNIX is case sensitive (lowercase, lowercase, lowercase) Logging in (Terminal Method) Two basic techniques: 1. Network
More informationProgramming in Python
COURSE DESCRIPTION This course presents both the programming interface and the techniques that can be used to write procedures in Python on Unix / Linux systems. COURSE OBJECTIVES Each participant will
More informationCS111: PROGRAMMING LANGUAGE II. Lecture 1: Introduction to classes
CS111: PROGRAMMING LANGUAGE II Lecture 1: Introduction to classes Lecture Contents 2 What is a class? Encapsulation Class basics: Data Methods Objects Defining and using a class In Java 3 Java is an object-oriented
More informationCS 200 Command-Line Arguments & Exceptions Jim Williams, PhD
CS 200 Command-Line Arguments & Exceptions Jim Williams, PhD This Week 1. Battleship: Milestone 3 a. First impressions matter! b. Comment and style 2. Team Lab: ArrayLists 3. BP2, Milestone 1 next Wednesday
More informationLecture 1. A. Sahu and S. V. Rao. Indian Institute of Technology Guwahati
Lecture 1 Introduction to Computing A. Sahu and S. V. Rao Dept of Comp. Sc. & Engg. Indian Institute of Technology Guwahati 1 Outline Computer System Problem Solving and Flow Chart Linux Command ls, mkdir,
More informationPrelim 1. CS 2110, September 29, 2016, 7:30 PM Total Question Name Loop invariants
Prelim 1 CS 2110, September 29, 2016, 7:30 PM 0 1 2 3 4 5 Total Question Name Loop invariants Recursion OO Short answer Exception handling Max 1 15 15 25 34 10 100 Score Grader The exam is closed book
More informationIntroduction to Linux
Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA - Dong-Yun Lee (dylee@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating
More informationLecture 3. Functions & Modules
Lecture 3 Functions & Modules Labs this Week Lab 1 is due at the beginning of your lab If it is not yet by then, you cannot get credit Only exception is for students who added late (Those students should
More informationPRINCIPLES OF SOFTWARE BIM209DESIGN AND DEVELOPMENT 00. WELCOME TO OBJECTVILLE. Speaking the Language of OO
PRINCIPLES OF SOFTWARE BIM209DESIGN AND DEVELOPMENT 00. WELCOME TO OBJECTVILLE Speaking the Language of OO COURSE INFO Instructor : Alper Bilge TA : Gökhan Çıplak-Ahmet Alkılınç Time : Tuesdays 2-5pm Location
More informationCSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209
CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System
More informationIntroduction to Software Engineering: Tools and Environments. Session 9. Oded Lachish
Introduction to Software Engineering: Tools and Environments Session 9 Oded Lachish Room: Mal 405 Visiting Hours: Wednesday 17:00 to 20:00 Email: oded@dcs.bbk.ac.uk Module URL: http://www.dcs.bbk.ac.uk/~oded/tools2012-2013/web/tools2012-2013.html
More informationLinkedList Implementation Mini-project intro
LinkedList Implementation Mini-project intro Turn in your written problems Mini-project Partner Survey: Do it by 4:00 today Reminder: Exam #2 is this Thursday In order to reduce time pressure, you optionally
More informationCMPUT 201: Practical Programming Methodology. Guohui Lin Department of Computing Science University of Alberta September 2018
CMPUT 201: Practical Programming Methodology Guohui Lin guohui@ualberta.ca Department of Computing Science University of Alberta September 2018 Lecture 1: Course Outline Agenda: Course calendar description
More informationLecture 3. Functions & Modules
Lecture 3 Functions & Modules Labs this Week Lab 1 is due at the beginning of your lab If it is not yet by then, you cannot get credit Only exception is for students who added late (Those students should
More informationCOSC 2P95. Introduction. Week 1. Brock University. Brock University (Week 1) Introduction 1 / 18
COSC 2P95 Introduction Week 1 Brock University Brock University (Week 1) Introduction 1 / 18 Lectures and Labs Lectures are Thursdays, from 3pm 5pm (AS/STH 217) There are two lab sections Lab 1 is Mondays,
More informationAvoiding magic numbers
Avoiding magic numbers Variables takes on a small set of values Use descriptive names instead of literal values Java enumerations Using in a switch statement 2 Magic numbers Where did the value come from?
More informationCourse and Unix Intro
Course and Unix Intro Comp-206 : Introduction to Software Systems Lecture 1 Alexandre Denault Computer Science McGill University Fall 2006 Instructor Alexandre Denault Graduate student, working in the
More informationthe gamedesigninitiative at cornell university Lecture 13 Architecture Design
Lecture 13 Take Away for Today What should lead programmer do? How do CRC cards aid software design? What goes on each card? How do you lay m out? What properties should y have? How do activity diagrams
More informationthe gamedesigninitiative at cornell university Lecture 12 Architecture Design
Lecture 12 Take Away for Today What should lead programmer do? How do CRC cards aid software design? What goes on each card? How do you lay m out? What properties should y have? How do activity diagrams
More informationCSE 391 Lecture 1. introduction to Linux/Unix environment
CSE 391 Lecture 1 introduction to Linux/Unix environment slides created by Marty Stepp, modified by Jessica Miller & Ruth Anderson http://www.cs.washington.edu/391/ 1 2 Lecture summary Course introduction
More informationLecture 2: Java & Javadoc
Lecture 2: Java & Javadoc CS 62 Fall 2018 Alexandra Papoutsaki & William Devanny 1 Instance Variables or member variables or fields Declared in a class, but outside of any method, constructor or block
More informationObjects and Classes Lecture 1
Objects and Classes Lecture 1 Waterford Institute of Technology January 6, 2016 John Fitzgerald Waterford Institute of Technology, Objects and ClassesLecture 1 1/19 Fundamental Programming Course Content
More informationWeek 2. TA Lab Consulting - See schedule (cs400 home pages) Peer Mentoring available - Friday 8am-12pm, 12:15-1:30pm in 1289CS
ASSIGNMENTS h0 available and due before 10pm on Monday 1/28 h1 available and due before 10pm on Monday 2/4 p1 available and due before 10pm on Thursday 2/7 Week 2 TA Lab Consulting - See schedule (cs400
More informationLCC 6310 The Computer as an Expressive Medium. Lecture 1
LCC 6310 The Computer as an Expressive Medium Lecture 1 Overview Go over the syllabus Brief introduction to me and my work Art, programming and Java Signup sheet Syllabus If you re not listed, please add
More informationSan José State University Department of Computer Science CS151, Section 04 Object Oriented Design Spring 2018
San José State University Department of Computer Science CS151, Section 04 Object Oriented Design Spring 2018 Course and Contact Information Instructor: Vidya Rangasayee Office Location: MH 213 Telephone:
More informationCSE 303 Lecture 2. Introduction to bash shell. read Linux Pocket Guide pp , 58-59, 60, 65-70, 71-72, 77-80
CSE 303 Lecture 2 Introduction to bash shell read Linux Pocket Guide pp. 37-46, 58-59, 60, 65-70, 71-72, 77-80 slides created by Marty Stepp http://www.cs.washington.edu/303/ 1 Unix file system structure
More informationEECS 1001 and EECS 1030M, lab 01 conflict
EECS 1001 and EECS 1030M, lab 01 conflict Those students who are taking EECS 1001 and who are enrolled in lab 01 of EECS 1030M should switch to lab 02. If you need my help with switching lab sections,
More informationExercise sheet 1 To be corrected in tutorials in the week from 23/10/2017 to 27/10/2017
Einführung in die Programmierung für Physiker WS 207/208 Marc Wagner Francesca Cuteri: cuteri@th.physik.uni-frankfurt.de Alessandro Sciarra: sciarra@th.physik.uni-frankfurt.de Exercise sheet To be corrected
More informationScjp Certification Questions With Answers Explanation Java(set-6)
Scjp Certification Questions With Answers Explanation Java(set-6) Kathy Sierra was a lead developer for the SCJP exam for Java 5 and Java 6. with Sun's new SCWCD exam, Marc pitched in with a great set
More informationGetting started with Hugs on Linux
Getting started with Hugs on Linux COM1022 Functional Programming Techniques Dr Hans Georg Schaathun University of Surrey Autumn 2009 Week 7 Dr Hans Georg Schaathun Getting started with Hugs on Linux Autumn
More information: Distributed Systems Principles and Paradigms Assignment 1 Multithreaded Dictionary Server
433 652: Distributed Systems Principles and Paradigms Assignment 1 Multithreaded Dictionary Server Problem Description Using a client server architecture, design and implement a multi threaded server that
More informationSyllabus INFO-GB Design and Development of Web and Mobile Applications (Especially for Start Ups)
Syllabus INFO-GB-3322 Design and Development of Web and Mobile Applications (Especially for Start Ups) Fall 2015 Stern School of Business Norman White, KMEC 8-88 Email: nwhite@stern.nyu.edu Phone: 212-998
More informationCS120 Computer Science I. Instructor: Jia Song
CS120 Computer Science I Instructor: Jia Song Instructor Contact Information Instructor: Dr. Jia Song Email: jsong@uidaho.edu (Preferred) Phone: (208) 885-1710 Office: JEB 240 (CSDS Security Lab) JEB 340
More informationIntroduction to Linux
Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA Sanghoon Han(sanghoon.han@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu Announcement (1) Please come
More informationLaboratory Assignment #3 Eclipse CDT
Lab 3 September 12, 2010 CS-2303, System Programming Concepts, A-term 2012 Objective Laboratory Assignment #3 Eclipse CDT Due: at 11:59 pm on the day of your lab session To learn to learn to use the Eclipse
More informationJava Camp Daily Schedule
Java Camp Daily Schedule M & W 8:30 am 10:00 am self-directed Java review exercises & activities T, R, & F 8:30 am 10:00 am instructor demonstrations, lecture, & discussion 10:00 am 10:15 am morning break
More informationObjectives. Structure. Munster Programming Training
1 Munster Programming Training Objectives 1. To give a short and basic introduction to computer programming, web design, web animation and video production. 2. To foster interest in computers by encouraging
More informationSection 1.1. Inductive Reasoning. Copyright 2013, 2010, 2007, Pearson, Education, Inc.
Section 1.1 Inductive Reasoning What You Will Learn Inductive and deductive reasoning processes 1.1-2 Natural Numbers The set of natural numbers is also called the set of counting numbers. N = {1, 2, 3,
More informationCS 351: Design of Large Programs.
Welcome to CS 351 Design of Large Programs Instructor: Joel Castellanos e-mail: joel@unm.edu Web: http://cs.unm.edu/~joel/ Office: Electrical and Computer Engineering building (ECE). Room 233 1/18/2017
More informationCSSE 374: Logical Architecture. Shawn Bohner Office: Moench Room F212 Phone: (812)
CSSE 374: Logical Architecture Shawn Bohner Office: Moench Room F212 Phone: (812) 877-8685 Email: bohner@rose-hulman.edu An Engineering Decision Learning Outcomes: O-O Design Demonstrate object-oriented
More informationAnnouncements. Problem Set 3 due Friday, October 21. Alternate Midterm Times. Drop by office hours! Ask questions at
Functions Announcements Problem Set 3 due Friday, October 21 Drop by office hours! Ask questions at cs103@cs.stanford.edu. Alternate Midterm Times Wednesday, October 26, 7:00PM 10:00PM Thursday, October
More informationCSE 390a Lecture 1. introduction to Linux/Unix environment
1 CSE 390a Lecture 1 introduction to Linux/Unix environment slides created by Marty Stepp, modified by Jessica Miller & Ruth Anderson http://www.cs.washington.edu/390a/ 2 Lecture summary Course introduction
More informationLecture 1. basic Python programs, defining functions
Lecture 1 basic Python programs, defining functions Lecture notes modified from CS Washington CS 142 Except where otherwise noted, this work is licensed under: http://creativecommons.org/licenses/by-nc-sa/3.0
More information} Each object in a Java program has an identifier (name) } This includes:
Class #05: More about Objects and Methods Software Design I (CS 120): M. Allen, 11 Sept. 2018 Important Java Syntax I: Identifiers Each object in a Java program has an identifier (name) This includes:
More informationCSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209
CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System
More informationIntroduc+on. General Information. General Information. General Information. General Information. General Information
Introduc+on IT244 - Introduc+on to Linux / Unix Instructor: Bo Sheng Location and Time S-3-143, Mon & Wed, 4:00 ~ 5:15pm Door code: 261359* Office Hours Science Center, S-3-167, Mon & Wed, 2 ~ 4pm TA office
More informationGetting started with Hugs on Linux
Getting started with Hugs on Linux CS190 Functional Programming Techniques Dr Hans Georg Schaathun University of Surrey Autumn 2008 Week 1 Dr Hans Georg Schaathun Getting started with Hugs on Linux Autumn
More informationProgramming Languages and Techniques (CIS120)
Programming Languages and Techniques (CIS120) Lecture 35 April 15, 2013 Swing III: OO Design, Mouse InteracGon Announcements HW10: Game Project is out, due Tuesday, April 23 rd at midnight If you want
More informationAl al-bayt University Prince Hussein Bin Abdullah College for Information Technology Computer Science Department
Al al-bayt University Prince Hussein Bin Abdullah College for Information Technology Computer Science Department 0901212 Python Programming 1 st Semester 2014/2015 Course Catalog This course introduces
More informationCS Week 14. Jim Williams, PhD
CS 200 - Week 14 Jim Williams, PhD This Week 1. Final Exam: Conflict Alternatives Emailed 2. Team Lab: Object Oriented Space Game 3. BP2 Milestone 3: Strategy 4. Lecture: More Classes and Additional Topics
More information} Evaluate the following expressions: 1. int x = 5 / 2 + 2; 2. int x = / 2; 3. int x = 5 / ; 4. double x = 5 / 2.
Class #10: Understanding Primitives and Assignments Software Design I (CS 120): M. Allen, 19 Sep. 18 Java Arithmetic } Evaluate the following expressions: 1. int x = 5 / 2 + 2; 2. int x = 2 + 5 / 2; 3.
More informationIntroduction to Linux
Introduction to Linux Prof. Jin-Soo Kim( jinsookim@skku.edu) TA - Kisik Jeong (kisik@csl.skku.edu) Computer Systems Laboratory Sungkyunkwan University http://csl.skku.edu What is Linux? A Unix-like operating
More informationProgramming Languages and Techniques (CIS120)
Programming Languages and Techniques (CIS120) Lecture 22 March 14, 2018 Static Methods, Java Arrays Chapters 20 & 21 Announcements HW6: Java Programming (Pennstagram) Due: Tuesday the 20 th at 11:59pm
More information