Sie sind auf Seite 1von 2

COM160BasicJavaProgrammingandProblemSolving

Credits:20
AcademicYear

201415

Dr Mark Hepple & Dr Siobhan North

Restrictions:
NotopentostudentsfromtheDepartmentofComputerScienceorstudentswhoaretakingor
havetakenCOM161orCOM162
Summary
Thefirstpartofthismoduleintroducesbasicconceptsofcomputerprogramming,throughanintroductionto
problemsolvingandthedevelopmentofsimplealgorithmsusingtheprogramminglanguagePython.Themodule
willstresstheimportanceofgoodprogrammingstyleandgoodcodedesignandwillintroducehowan
objectorientedapproachcanhelptoachievetheseaims.
Thesecondpartofthismoduleintroducessomeofthefundamentalprinciplesofobjectorientedprogrammingand
softwareengineeringusingtheJavaProgrammingLanguage.Inparticularitcoverstheprinciplesthatunderliethe
structuringofsoftwareandintroducesmodelsofrealworldsystems.Techniquesfordevelopingsound
programmingtechniquesareintroducedandapplied.

Aims

toprovideanintroductiontotheconceptsofproblemsolvinganddevelopingalgorithms
toprovideagroundingintheprinciplesofprogramming,usingthePythonandJavalanguages
toestablishgoodprogrammingstyle.
tointroducethemainfeaturesofobjectorientedprogramming
todeveloptheabilitytoconstructJavaprogramsfromexistinglibraries,classesandobjects
tointroducesomefeaturesoftheJavaApplicationProgrammersInterface
todevelopgoodprogrammingpracticeparticularlywithrespecttoreuse.

PrerequisitesandCorequisites
Objectives
Bytheendofthiscoursethestudentsshould:
beabletoexpressalgorithmsusingsequencing,conditionalanditerativeconstructs.
beabletousebasicdatastructuresandproduceprogramsemployingthem
beabletodesign,implementandtestprogramsinPythonandJava
demonstrateanunderstandingofobjectorientedapproachestosoftwaredevelopment
beabletodevelopsoftwaresolutionstowelldefinedproblemsusingobjectorientedtechniques
beawareoftheJavaCollectionsFramework
haveabetterunderstandingofhowJavacanbeusedinindustrialenvironment.

Content

introductiontoalgorithmsandproblemsolving
introductiontoimperativeprogramminginPython
controlstructures:conditionals,loops,functions
datastructures:arrays/lists,dictionaries
introductiontoobjectorientedprogramminginPythonandJava
softwaredevelopmentwithinanobjectorientedframework
theJavaCollectionsFrameworkanditsuse.

StructureandTeachingMethod
Assessment

Molequizzesandassessedlabs
Multiplechoiceexam(attheendoftheSemester1)
Assignment(duringSemester2)
1lectureperweekand2hoursofsupervisedpracticalworkperweek,involvingprogrammingexercisesin

PythonandJava
Studentsarealsobeexpectedtoworkintheirowntime.

Feedback:
ImmediatelyafterMOLEquizzesotherwisewithintheusualtimelimitof3workingweeks.
Recommendedtexts
Python:Thereareanumberofintroductorytexts/tutorialsavailablefreeontheweb.
Thefollowingissuitableforstudenthavingnopreviousprogrammingexperience:
HowtoThinkLikeaComputerScientist:LearningwithPython,2ndEdition(UsingPython2.x)byJeffreyElkner,
AllenB.DowneyandChrisMeyers.http://www.openbookproject.net/thinkcs/python/english2e.
Onlineresourceswillbeprovidedforbothsemesters.

UKSPECLearningOutcomes

UKSPE
UKSPE
UKSPE
UKSPE
UKSPE
BEng MEng
BEng MEng
BEng MEng
BEng MEng
BEng MEng
C
C
C
C
C
US1

E2

D4

S4

P6

US1m

E2m

D4m

S5

P7

US2

E3

D5

P1

P8

US2m

E3m

D6

P1m

P8m

US3

E4

S1

P2

US3m

D1

S1m

P2m

US4m

D1m

S2

P3

E1

D2

S2m

P4

E1m

D3

S3

P5

Das könnte Ihnen auch gefallen