加拿大多伦多大学软件工程课程设置.docx
《加拿大多伦多大学软件工程课程设置.docx》由会员分享,可在线阅读,更多相关《加拿大多伦多大学软件工程课程设置.docx(32页珍藏版)》请在冰豆网上搜索。
加拿大多伦多大学软件工程课程设置
ComputerScienceCourses
KeytoCourseDescriptions
ForDistributionRequirementpurposes,allCSCcoursesareclassifiedasSCIENCEcourses.
Enrolmentnotes
NOTE:
TheUniversityofTorontoMississaugacomputerscienceMinorsubjectPOStisnotrecognizedasarestrictedCSsubjectPOStforSt.Georgecoursesenrolments.
NOTE:
NolateregistrationispermittedinanyCSCcourseafterthefirsttwoweeksofclasses.
EnrolmentinmostCSCcoursesabove100-levelisrestricted.ConsulttheCalendarortheArtsandScienceRegistrationHandbookandTimetablefordetails.
Prerequisitesandexclusions
Prerequisitesandexclusionsareenforced.Pleaserefertothe2006-2007RegistrationHandbookandTimetableforprerequisitewaiverdeadlines.
Droppingdownfromenrichedtoregularcourses
Studentsmaygototheircollegetodropdownfromenrichedcoursestoregularcourses.Thecoursesareasfollows:
fromCSC148H1toCSC108H1,fromCSC150H1toCSC108H1,fromCSC240H1toCSC165H(ortoCSC236H1ifyouhavealreadypassedCSC165H1),fromCSC265H1toCSC263H1,fromCSC365H1toCSC363H1,andfromCSC375H1toCSC373H1.
Dropdowndeadlines:
∙Fallsession–October5,2007
∙Wintersession–February1,2008
Studentswithtransfercredits
IfyouhavetransfercreditsinComputerScienceorasimilarsubjectforcoursesdoneatanotheruniversityorcollege,contactourUndergraduateOffice(BA4252/4254)foradviceonchoosingcourses.Askforadvicealsoevenifyoudon’thavetransfercreditsyetbutareconsideringdegreestudyattheUniversityofToronto.Withoutadvice,youriskpoorcoursechoiceorotheradverseconsequences.
|CourseWinterTimetable|
INX199H1/Y1
First-YearSeminar 52S
SCI199H1/Y1
FirstYearSeminar 52S
Undergraduateseminarthatfocusesonspecificideas,questions,phenomenaorcontroversies,taughtbyaregularFacultymemberdeeplyengagedinthediscipline.Openonlytonewlyadmittedfirstyearstudents.Itmayserveasadistributionrequirementcourse;seepage47.
CSC104H1
TheWhyandHowof Computing 26L,13T
Anintroductiontocomputingfornon-computerscientists.Historyofcomputingmachinery;representationofdataandtheirinteractionwithoperations;hardware,software,operatingsystems;problemsolvingandalgorithms;socialissuesincomputing;agentleintroductiontoprogramming.Thiscourseisanintroductiontobecomingactivelyengagedwithcomputing,notatutorialonusingparticularcomputerapplications.
Exclusion:
SMC104H1;VIC104H1;anyCSCcourse.
Choosingfirstyearcourses:
Tohelpyouselecttheprogrammingcoursethatisrightforyou,seewww.cs.toronto.edu/~campbell/firstyear.
CSC108H1
IntroductiontoComputerProgramming 39L,12T,12P
Structureofcomputers;thecomputingenvironment.ProgramminginalanguagesuchasPython.Programstructure:
elementarydatatypes,statements,controlflow,functions,classes,objects,methods,fields.Lists;searching,sortingandcomplexity.Practical(P)sectionsconsistofsupervisedworkinthecomputinglaboratory.Thesesectionsareofferedwhenfacilitiesareavailable,andattendanceisrequired.
Exclusion:
CSC107H1,CSC120H1,139H1,CSC148H1,149H1,CSC150H1.
NOTE:
YoumaynottakethiscourseafterorconcurrentlywithCSC148H1,butyoumaytakeCSC148H1afterCSC108H1.
Prerequisite:
Grade12U/OACmathematics.
CSC120H1
ComputerSciencefortheSciences 26L,12P
Anintroductiontocomputerscienceforstudentsinothersciences,withanemphasisongainingpracticalskills.Introductiontoprogramming;webprogramming;databasedesign;softwaretools;examplesandexercisestakenfromthesciences.Attheendofthiscourseyouwillbeabletodevelopcomputertoolsforscientificapplications,suchasthestructuringandanalysisofexperimentaldata.Practical(P)sectionsconsistofsupervisedworkinthecomputerlaboratory.Noprogrammingexperienceisnecessary.StudentswhowishtodomorecanprogressdirectlytoCSC150H1.
Exclusion:
anyCSCcourse.
CSC148H1
Introductionto ComputerScience 26L,13T,12P
Abstractdatatypesanddatastructuresforimplementingthem.Linkeddatastructures.Encapsulationandinformation-hiding.Object-orientedprogramming.Specifications.Analyzingtheefficiencyofprograms.Recursion.ThiscourseassumesprogrammingexperienceinalanguagesuchasPython,C++,orJava,asprovidedbyCSC108H1.
StudentswhoalreadyhavethisbackgroundmayconsulttheComputerScienceUndergraduateOfficeforadviceaboutskippingCSC108H1.Practical(P)sectionsconsistofsupervisedworkinthecomputinglaboratory.Thesesectionsareofferedwhenfacilitiesareavailable,andattendanceisrequired.StudentsmaygototheircollegetodropdownfromCSC148H1toCSC108H1.Seeaboveforthedropdowndeadline.
Exclusion:
CSC139H1,149H1,CSC150H1;youmaynottakethiscourseaftertakingmorethantwoCSCcoursesatthe200-levelorhigher.
Prerequisite:
CSC108H1;twoof:
GeometryandDiscreteMathematics,AdvancedFunctionsandIntroductoryCalculusorMathematicsofDataManagementORtwoof:
OACCalculus,Algebra&GeometryorFiniteMathematics.
CSC150H1
AcceleratedIntroductiontoComputerScience 39L,13T,12P
Anacceleratedcoursecoveringobject-orientedtopicsfromCSC108H1(classes,objects,methodsandfields,andprogramdesign),aswellasallthematerialofCSC148H1.SuitableforstudentswithasolidprogrammingbackgroundinTuring,C,Scheme,orasimilarlanguage,whoarewillingtoacceptaheavierworkloadthaninCSC108H1andCSC148H1.
Exclusion:
CSC107H1,CSC108H1,139H1,CSC148H1,149H1;youmaynottakethiscourseaftertakingmorethantwoCSCcoursesatthe200-levelorhigher.
Prerequisite:
Twoof:
GeometryandDiscreteMathematics,AdvancedFunctionsandIntroductoryCalculusorMathematicsofDataManagementORtwoof:
OACCalculus,Algebra&GeometryorFiniteMathematics;andoneyearofprogramminginaprocedurallanguage.Studentsshouldthoroughlyunderstandarrays,searching,sorting,functions/procedures/subprograms,argumentsandparameters,andmodulardesign.
StudentsmaygototheircollegetodropdownfromCSC150H1toCSC108H1.Seeaboveforthedropdowndeadline.
CSC165H1
MathematicalExpressionandReasoningforComputerScience 26L,13T
Introductiontoabstractionandrigour.Informalintroductiontologicalnotationandreasoning.Understanding,usinganddevelopingpreciseexpressionsofmathematicalideas,includingdefinitionsandtheorems.Structuringproofstoimprovepresentationandcomprehension.Generalproblem-solvingtechniques.Unifiedapproachestoprogrammingandtheoreticalproblems.Representationoffloatingpointnumbersandintroductiontonumericalcomputation.
Exclusion:
CSC236H1,238H1,CSC240H1;MAT102H5(UniversityofTorontoMississauga);YoumaynottakethiscourseaftertakingmorethantwoCSCcoursesatthe200-levelorhigher.
Prerequisite:
CSC108H1/(CSC148H1/CSC150H1takenconcurrently);UAdvancedFunctionsandIntroductoryCalculus,andoneofUGeometryandDiscreteMathematicsorUMathematicsofDataManagementOROACCalculusandoneofAlgebra&GeometryorFiniteMathematics.
Recommendedpreparation:
firsttermofMAT135Y1/MAT137Y1/MAT157Y1.
NOTE:
ItisrecommendedthatCSC148H1/CSC150H1andCSC165H1/CSC240H1betakenatthesametime,sinceeachcoursereliesonmaterialfromtheother.Ifyoutakeonebeforetheother,itispreferabletotakeCSC148H1/CSC150H1first.Inanycase,youwillbeatamodestdisadvantageinthefirstofthetwocourses,andwillbeexpectedtopickuptherelevantmaterialfromtheothercourseonyourown.
Note
ToenrolinanyCSCcourseatthe200-levelorhigher,youmusthaveacumulativeGPAofatleast2.50(3.00for300-and400-levelcourses)orbeenrolledinarestrictedsubjectPOStsponsoredbytheDepartmentofComputerScience.TheUniversityofTorontoatMississaguaComputerScienceMinorisnotarestrictedsubjectPOSt.Ifyouareinyourfirstyearofdegreestudies,theGPArequirementdoesnotapply.
CSC207H1
SoftwareDesign 26L,13T
Anintroductiontosoftwaredesignanddevelopmentconcepts,methods,andtoolsusingastatically-typedobject-orientedprogramminglanguagesuchasJava.Topicsfrom:
versioncontrol,buildmanagement,unittesting,refactoring,designpatterns,advancedIDEusage,regularexpressions,markuplanguages,parsingusingfinitestatemachines,andreflection.
Prerequisite:
CSC148H1/CSC150H1;CGPA2.5/enrolmentinaCSCsubjectPOSt.
Co-Prerequisite:
CSC165H1/CSC240H1/(CSC148H1asgivenbeforeFall2003).
CSC209H1
SoftwareToolsandSystemsProgramming 26L,13T
SoftwaretechniquesinaUnix-styleenvironment,usingscriptinglanguagesandamachine-orientedprogramminglanguage(typicallyC).Whatgoesonintheoperatingsystemwhenprogramsareexecuted.Coretopics:
creatingandusingsoftwaretools,pipesandfilters,fileprocessing,shellprogramming,processes,systemcalls,signals,basicnetworkprogramming.
Exclusion:
CSC372H1,408H1,CSC369H1,468H1,CSC469H1.
Prerequisite:
CSC207H1/270H1/enrolmentinBioinformaticsandComputationalBiology(BCB)subjectPOSt;CGPA2.5/enrolmentinaCSCsubjectPOSt.
CSC236H1
IntroductiontotheTheoryofComputation 26L,13T
TheapplicationoflogicandprooftechniquestoComputerScience.Mathematicalinduction;correctnessproofsforiterativeandrecursivealgorithms;recurrenceequationsandtheirsolutions(includingthe“MasterTheorem”);introductiontoautomataandformallanguages.
Exclusion:
CSC238H1,CSC240H1.
Prerequisite:
CSC148H1/CSC150H1,CSC165H1/(CSC148H1asgivenbeforeFall2003);CGPA2.5/enrolmentinaCSCsubjectPOSt.
CSC240H1