CSCI 528 01W Advanced Object-Oriented Programming .

3y ago
41 Views
4 Downloads
390.27 KB
12 Pages
Last View : 18d ago
Last Download : 3m ago
Upload by : Ellie Forte
Transcription

CSCI 528 01W Advanced Object-OrientedProgrammingCOURSE SYLLABUS: FALL 2016INSTRUCTOR INFORMATIONInstructor: Ray Maleh, Ph.D., Adjunct ProfessorOffice Location: OnlineOffice Hours: Tuesdays, 8:00 PM – 9:00 PM CSTOffice Phone: 903-441-7014Office Fax: N/AUniversity Email Address: ray.maleh@tamuc.eduPreferred Form of Communication: EmailCommunication Response Time: Within 1 Business DayCOURSE INFORMATIONMaterials – Textbooks, Readings, Supplementary ReadingsTextbook(s) RecommendedHorstman, Cay. Big Java Early Objects 6th Edition. New York: John Wiley & Sons,Inc. (4rd and 5th Editions are also acceptable) [This is a great introduction to theJava programming language.]Horstman, Cay. Object Oriented Design & Patterns 2nd Edition. New York: JohnWiley & Sons.Any additional resources about UML and important differences between OOP inJava and C will be handed out in class.The syllabus/schedule is subject to change.

Software RequiredJava Development Kit (Java 8.0 or later)An IDE such as NetBeans (preferred), Eclipse, etc. or a suitable text editor.Course DescriptionThis course investigates object-oriented methods including object-orientedprogramming, analysis and design. Current methodology is emphasized. The use ofobject-oriented features such as encapsulation, information hiding, inheritance andpolymorphism is reinforced by class assignments and programming exercises.Student Learning Outcomes(CO528.1): Software Engineering Basics. Students will be expected to applyknowledge of the software development cycle to write programs usingthe object oriented programming paradigm.(CO528.2): Classes basics/advanced. Students will become comfortable atdesigning and implementing classes as well as creating andmanipulating objects belonging to those classes. Students will alsobecome familiar with advanced topics such as reflection and the use ofGoF design patterns.(CO528.3): Overloading. Students will learn how to take advantage of functionoverloading so as generate more readable and maintainable codesuitable for large software projects.(CO528.4): Polymorphism/Virtual functions. Students will learn to develophierarchies of related classes. They will design and implement superclasses and interfaces that use common field/method names but havebase class dependent implementations. Students will learn the principlesof code-refactoring and efficient code reuse.(CO528.5): Templates/Generic Programming. Students will learn to design,implement, and use generic classes and methods. Students will learnabout the limitations of generic programming, i.e. type erasure. Studentswill also learn how to throw and handle exceptions for dealing withexceptional situations and errors. Students will design custom exceptiontypes.(CO528.6): UML. Students will use the Unified Modeling Language to model thestatic and dynamic behavior of object oriented software.(CO528.7): Integration Project. Students will complete a comprehensive finalproject to include design/analysis as well as implementation.COURSE REQUIREMENTSMinimal Technical Skills NeededStudents should, at a minimum, be comfortable with programming in C/C .Some prior knowledge of Java Programming is recommended, but not required.The syllabus/schedule is subject to change.

Instructional MethodsPowerpoint lectures will be posted weekly with supplemental video demonstrations.Students are encouraged to use the online discussion forum to post any questionsabout the material. Homeworks will be designed to help student practice and masterthe material.Student Responsibilities or Tips for Success in the CourseStudents should log into the course shell at least once weekly (and preferablymore). For maximum success, students should read the lectures, watch the videodemonstrations, and read the textbook. Also, please do keep track of the examdates (posted below) and don’t forget to take them.All submitted code must be readable. What this means is that you indent nestedstatements and provide a generous amount of comments. As an example, considerthe following two pieces of code, both of which calculate the factorial of an integern://Good Code/*This function calculates the factorial of itsnegative integer input n. Output type is integer.*/public static int factorial(int{if (n 0)return 1;elsereturn n*factorial(n-1);let}non-n)//Base Case: 0! 1//For n 0, recursively//n! n*factorial(n-1)//Bad Codepublic static int fctrl (int n) {return n 0?n*fctrl1):1;}(n-While both are correct, the second version can be very difficult for another personto understand. Conversely, don’t over-comment your code to the point where I’mstruggling to find the locations of the actual instructions. When evaluating yourcode, I will take coding style into account. I believe that it is imperative forprogrammers to produce readable code, especially when working on massive teambased software development projects.The syllabus/schedule is subject to change.

GRADINGYour final letter grade will be determined as follows:A – total number of points 89.5B – 79.5 total number of points 89.5C – 69.5 total number of points 79.5D – 59.5 total number of points 69.5F – total number of points 59.5I reserve the right to curve the grades in the course; however, for a given rawaverage, you will at least earn the grade letter shown above (if not better). As youwill notice, I have already incorporated a standard rounding scheme into theschedule of grades. Thus, please do not ask me to round your grade at the end ofthe semester.AssessmentsYour grade in the course will be calculated as follows:Programming Assignments:3 Exams:Final Project:25 %25 % each (lowest dropped)25 %Assignments and projects will be assigned on eCollege and must be turned into thecorrect dropbox. Three exams will be administered. I will keep only your two bestscores and drop the lowest. Because of this policy, no makeup exams will be given.If you have to miss an exam for any reason, this will be the exam that will not becounted. There will be a programming assignment roughly every other week.The following table explains the relationship between student learning outcomesand the assignments:Student Learning O528.7AssignmentsAll AssignmentsHW1, HW2, All ExamsHW3, HW4, Exams II and IIIHW4, Exam IIHW5, Exam IIHW1, HW6, Exam I, Exam IIIFinal ProjectTECHNOLOGY REQUIREMENTS To fully participate in online courses you will need to use a current Flash enabledinternet browser. For PC and Mac users the suggested browser is Mozilla Firefox.The syllabus/schedule is subject to change.

You will need regular access to a computer with a broadband Internetconnection. The minimum computer requirements are:o 512 MB of RAM, 1 GB or more preferredo Broadband connection required courses are heavily video intensiveo Video display capable of high-color 16-bit display 1024 x 768 or higherresolution You must have a:o Sound card, which is usually integrated into your desktop or laptopcomputero Speakers or headphones. Both versions of Java (32 bit and 64 bit) must be installed and up to date onyour machine. At a minimum Java 7, update 51, is required to support thelearning management system. The most current version of Java can bedownloaded at: JAVA web site http://www.java.com/en/download/manual.jsp Current anti-virus software must be installed and kept up to date. Run a browser check through the Pearson LearningStudio Technical Requirementswebsite. Browser Check http://help.ecollege.com/LS Tech Req WebHelp/enus/#LS Technical Requirements.htm#BrowsetRunning the browser check will ensure your internet browser issupported. Pop-ups are allowed.JavaScript is enabled.Cookies are enabled. You will need some additional free software (plug-ins) for enhanced webbrowsing. Ensure that you download the free versions of the following software:o Adobe Reader https://get.adobe.com/reader/o Adobe Flash Player (version 17 or later) https://get.adobe.com/flashplayer/o Adobe Shockwave Player https://get.adobe.com/shockwave/o Apple Quick Time http://www.apple.com/quicktime/download/The syllabus/schedule is subject to change.

At a minimum, you must have Microsoft Office 2013, 2010, 2007 or Open Office.Microsoft Office is the standard office productivity software utilized by faculty,students, and staff. Microsoft Word is the standard word processing software,Microsoft Excel is the standard spreadsheet software, and Microsoft PowerPoint isthe standard presentation software. Copying and pasting, along withattaching/uploading documents for assignment submission, will also be required.If you do not have Microsoft Office, you can check with the bookstore to see ifthey have any student copies. For additional information about system requirements, please see: SystemRequirements for dex.learn?action technicalACCESS AND NAVIGATIONPearson LearningStudio (eCollege) Access and Log in InformationThis course will be facilitated using Pearson LearningStudio, the learning managementsystem used by Texas A&M University-Commerce. To get started with the course, goto myLeo and from the top menu ribbon select eCollege. Then on the upper left side ofthe screen click on the My Courses tab. http://www.tamuc.edu/myleo.aspxYou will need your campus-wide ID (CWID) and password to log into the course. If youdo not know your CWID or have forgotten your password, contact the Center for ITExcellence (CITE) at 903.468.6000 or helpdesk@tamuc.edu.Note: It is strongly recommended you perform a “Browser Test” prior to the start ofyour course. To launch a browser test login to Pearson LearningStudio, click on the MyCourses tab, and then select the Browser Test link under Support Services.Pearson LearningStudio Student Technical SupportTexas A&M University-Commerce provides students technical support for the use ofPearson LearningStudio.Technical assistance is available 24/7 (24 hours, 7 days a week).If you experience LearningStudio (eCollege) technical problems, contact theLearningStudio helpdesk at 1-866-656-5511 (toll free) or visit Pearson 24/7 CustomerSupport Site http://247support.custhelp.com/The student help desk may be reached in the following ways: Chat Support: Click on 'Live Support' on the tool bar within your course to chatwith a Pearson LearningStudio Representative. The syllabus/schedule is subject to change.

Phone: 1-866-656-5511 (Toll Free) to speak with Pearson LearningStudioTechnical Support Representative. Accessing Help from within Your Course: Click on the 'Tech Support' icon onthe upper left side of the screen inside the course. Then you will be able to getassistance via online chat or by phone.Note: Personal computer and internet connection problems do not excuse therequirement to complete all course work in a timely and satisfactory manner. Eachstudent needs to have a backup method to deal with these inevitable problems. Thesemethods might include the availability of a backup PC at home or work, the temporaryuse of a computer at a friend's home, the local library, office service companies,Starbucks, a TAMUC campus open computer lab, etc.Policy for Reporting Problems with Pearson LearningStudioShould students encounter Pearson LearningStudio based problems while submittingassignments/discussions/comments/exams, the following procedure must be followed:1. Students must report the problem to the help desk. You may reach the helpdeskat 1-866-656-5511.2. Students must file their problem with the helpdesk and obtain a helpdesk ticketnumber3. Once a helpdesk ticket number is in your possession, students should email meto advise me of the problem and provide me with the helpdesk ticket number.4. I will call the helpdesk to confirm your problem and follow up with youPLEASE NOTE: Your personal computer and internet access problems are not alegitimate excuses for filing a ticket with the Pearson LearningStudio Help Desk. OnlyPearson LearningStudio based problems are legitimate reasons to contact the HelpDesk.You strongly are encouraged to check for your internet browser compatibility BEFORE thecourse begins and take the Pearson LearningStudio tutorial offered for students who mayrequire some extra assistance in navigating the Pearson LearningStudio platform.myLeo SupportYour myLeo email address is required to send and receive all student correspondence.Please email helpdesk@tamuc.edu or call us at 903-468-6000 with any questionsabout setting up your myLeo email account. You may also access information atmyLeo. https://leo.tamuc.eduThe syllabus/schedule is subject to change.

Learner SupportThe One Stop Shop was created to serve you by providing as many resources aspossible in one location. http://www.tamuc.edu/admissions/onestopshop/The Academic Success Center provides academic resources to help you achieveacademic ices/academicSuccessCenter/FREE MobilE APPSThe Courses apps for phones have been adapted to support the tasks students caneasily complete on a smaller device. Due to the smaller screen size course content isnot presented.The Courses app is free of charge. The mobile Courses Apps are designedand adapted for different devices.iPhone – Pearson LearningStudio Courses for iPhoneAndroid – LearningStudio Courses - PhoneOperating iPhone - OS 6 and aboveSystem:Android – Jelly Bean, Kitkat, and Lollipop arningstudioApp URL: courses/id977280011?mt 8AndroidApp URL: https://play.google.com/store/apps/details?id com.pearson.lsphoneApp Title:Once downloaded, search for Texas A&M University-Commerce, and it shouldappear on the list. Then you will need to sign into the myLeo Mobile portal.The Courses App for Android and iPhone contain the following feature set: View titles/code/Instructor of all Courses enrolled in onlineView and respond to all discussions in individual CoursesView Instructor Announcements in individual CoursesView Graded items, Grades and comments in individual CoursesGrade to DateView Events (assignments) and Calendar in individual CoursesView Activity Feed for all coursesView course filters on activitiesView link to Privacy PolicyAbility to Sign outSend FeedbackThe syllabus/schedule is subject to change.

LearningStudio NotificationsStudents can be alerted to course activities via text on their mobile phones or up totwo email addresses.Based on their preferences, students can automatically receive a push notification withevery new: course announcement, threaded discussion post, grade, and/orassignment without having to login to the course. Enrolled students will automaticallyreceive email notifications for announcements and can opt out of this feature. Toreceive text notifications, students must opt in.To begin setting up notifications, go into your course in LearningStudio and click onthe bell-shaped Notifications icon on the main menu ribbon.By default the student’s university email address will appear. This cannot bechanged in LearningStudio. Additional email addresses may be added by clicking theAdd button. After all of the other selections are completed be sure to click the Saveand Finish button.COMMUNICATION AND SUPPORTInteraction with Instructor StatementThe instructor will respond to all email questions within one business day or less. Theinstructor will make every effort to provide homework and exam feedback within oneweek.COURSE AND UNIVERSITY PROCEDURES/POLICIESCourse Specific Procedures/PoliciesStudents are expected to log in regularly into the course. All student work must besubmitted by the deadline for credit. No late work will be accepted. As for missedexams, because I drop the lowest of the three exams, no make-up exams will beprovided (unless otherwise required by university regulation). There are noopportunities for extra credit in this course.Syllabus Change PolicyThe syllabus is a guide. Circumstances and events, such as student progress, maymake it necessary for the instructor to modify the syllabus during the semester. Anychanges made to the syllabus will be announced in advance.University Specific ProceduresStudent ConductAll students enrolled at the University shall follow the tenets of common decencyand acceptable behavior conducive to a positive learning environment. The Code ofThe syllabus/schedule is subject to change.

Student Conduct is described in detail in the Student r/documents/studentGuidebook.pdfStudents should also consult the Rules of Netiquette for more information regardinghow to interact with students in an online forum: es.htmlTAMUC AttendanceFor more information about the attendance policy please visit the Attendancewebpage and Procedure 99.R0.01.pdfAcademic IntegrityStudents at Texas A&M University-Commerce are expected to maintain highstandards of integrity and honesty in all of their scholastic work. For more details andthe definition of academic dishonesty see the following procedures:Undergraduate Academic Dishonesty AcademicDishonesty.pdfGraduate Student Academic Dishonesty emicDishonesty.pdfADA StatementStudents with DisabilitiesThe Americans with Disabilities Act (ADA) is a federal anti-discrimination statute thatprovides comprehensive civil rights protection for persons with disabilities. Amongother things, this legislation requires that all students with disabilities be guaranteed alearning environment that provides for reasonable accommodation of their disabilities.If you have a disability requiring an accommodation, please contact:Office of Student Disability Resources and ServicesTexas A&M University-CommerceGee Library- Room 132Phone (903) 886-5150 or (903) 886-5835Fax (903) 468-8148Email: Rebecca.Tuerk@tamuc.eduThe syllabus/schedule is subject to change.

Website: Office of Student Disability Resources and rimination NoticeTexas A&M University-Commerce will comply in the classroom, and in online courses,with all federal and state laws prohibiting discrimination and related retaliation on thebasis of race, color, religion, sex, national origin, disability, age, genetic information orveteran status. Further, an environment free from discrimination on the basis ofsexual orientation, gender identity, or gender expression will be maintained.Campus Concealed Carry StatementTexas Senate Bill - 11 (Government Code 411.2031, et al.) authorizes the carrying of aconcealed handgun in Texas A&M University-Commerce buildings only by persons whohave been issued and are in possession of a Texas License to Carry a Handgun.Qualified law enforcement officers or those who are otherwise authorized to carry aconcealed handgun in the State of Texas are also permitted to do so. Pursuant to PenalCode (PC) 46.035 and A&M-Commerce Rule 34.06.02.R1, license holders may notcarry a concealed handgun in restricted locations.For a list of locations, please refer to the Carrying Concealed Handguns OnCampus document and/or consult your event organizer.Web loyeesAndStudents/34.06.02.R1.pdfPursuant to PC 46.035, the open carrying of handguns is prohibited on all A&MCommerce campuses. Report violations to the University Police Department at 903886-5868 or 9-1-1.COURSE OUTLINE /

This course investigates object-oriented methods including object-oriented programming, analysis and design. Current methodology is emphasized. The use of object-oriented features such as encapsulation, information hiding, inheritance and polymorphism is reinforced by class assignments and programming exercises. Student Learning Outcomes

Related Documents:

CSCI 561 – Theory of Computation Dr. Neil T. Dantam CSCI-561, Colorado School of Mines Fall 2021 Dantam (Mines CSCI-561) Intro Fall 2021 1/32

Object built-in type, 9 Object constructor, 32 Object.create() method, 70 Object.defineProperties() method, 43–44 Object.defineProperty() method, 39–41, 52 Object.freeze() method, 47, 61 Object.getOwnPropertyDescriptor() method, 44 Object.getPrototypeOf() method, 55 Object.isExtensible() method, 45, 46 Object.isFrozen() method, 47 Object.isSealed() method, 46

Object Class: Independent Protection Layer Object: Safety Instrumented Function SIF-101 Compressor S/D Object: SIF-129 Tower feed S/D Event Data Diagnostics Bypasses Failures Incidences Activations Object Oriented - Functional Safety Object: PSV-134 Tower Object: LT-101 Object Class: Device Object: XS-145 Object: XV-137 Object: PSV-134 Object .

What is object storage? How does object storage vs file system compare? When should object storage be used? This short paper looks at the technical side of why object storage is often a better building block for storage platforms than file systems are. www.object-matrix.com info@object-matrix.com 44(0)2920 382 308 What is Object Storage?

This Software Requirements Specification details the software requirements for the FS CSCI. The FS CSCI is composed of the following Computer Software Components (CSCs): 1. Executive (0/S services, Device Drivers, Interrupt Handling, Initialization) 2. Prom Capability an.d System Initialization 3. Command Processing

the business object. The persistence of this object must be realized using the object services. Business object Object that contains the main data that is relevant for action determination and execution. Its persistence is either given as a Business Object Repository (BOR) object or as a persistent class of the object services.

Double Object Pronouns Double object pronouns occur when both the indirect and direct object pronouns are used together with the same verb. Both the indirect and direct object precede the verb. The indirect object comes before the direct object. Miguel me dio el

the accounting profession - have come to be known as 'creative accounting'. (1988: 7-8) Terry Smith reports on his experience as an investment analyst: We felt that much of the apparent growth in profits which had occurred in the 1980s was the result of accounting sleight of band rather than genuine economic growth, and we set