513计算机专业App应用HTML设计的毕业设计论文英文英语外文文献翻译成品面向对象Web应用程序开发中英文双语.docx
《513计算机专业App应用HTML设计的毕业设计论文英文英语外文文献翻译成品面向对象Web应用程序开发中英文双语.docx》由会员分享,可在线阅读,更多相关《513计算机专业App应用HTML设计的毕业设计论文英文英语外文文献翻译成品面向对象Web应用程序开发中英文双语.docx(27页珍藏版)》请在冰豆网上搜索。
513计算机专业App应用HTML设计的毕业设计论文英文英语外文文献翻译成品面向对象Web应用程序开发中英文双语
英文4015单词,26661字符,中文6698汉字
OBJECT-ORIENTEDWEBAPPLICATIONDEVELOPMENT
TheWebhasevolvedintoaglobalenvironmentfordeliveringallkindsofapplications,rangingfromsmall-scaleandshort-livedservicestolarge-scale,enterpriseworkflowsystemsdistributedovermanyservers.ApplicationsthatuseHTML-basedfrontendsbenefitfromthepervasivedistributionofWebbrowsersforuniversal,cross-platformaccess.AnotherstrikingadvantageofWebdeliveryliesintheconceptofthinclientsandcentralizedmaintenance,facilitatinginstantaneousdeploymentofsoftwareupdatesatminimalcost.WhilethepopularityoftheWebanditsadvantagesasaclient-serverplatformhaveledtocountlessHTML-basedapplications,thedevelopmentofWebapplicationsisstillmostlyadhoc.Thereisnorigorous,systematicapproach,andmostcurrentWebapplicationdevelopmentandmanagementpracticesrelyontheknowledgeandexperienceofindividualdevelopers.
OnereasonforthelackofastructuredapproachmaybeintheWeb’slegacyasaninformationmediumratherthananapplicationplatform.Webdevelopmentisseenprimarilyasanauthoringproblemratherthanasoftwaredevelopmentproblemtowhichwell-establishedsoftwareengineeringprinciplesshouldapply.
WebelieveanotherreasonisthattheWebimplementationmodeldoesnotrelatewelltostate-of-the-artsoftwaredevelopmentmodels.Webimplementationisbasedonlow-leveltechnologiesthatdonotprovidehigh-levelabstractionsforsharingandreuse.Thelackofsuitableabstractionsmakesitdifficulttoconstructframeworksthatcapturearchitecturaldesigndecisionsforreuseindifferentpartsofanapplicationorindifferentapplicationprojects.ThelackofabstractionalsomakesitdifficulttomaintainandevolveWeb-basedapplications.Designdecisionsareveryhardtotrackinalow-levelimplementation;astheapplicationevolves,changescaneasilyleadtoinconsistencies.BecauseWeb-basedapplicationstendtoevolvequickly,withfrequentupdatesandredesigns,poormaintainabilityisacriticalproblem.
InthisarticlewesummarizeworkreportedearlieronWebComposition,1amodelforWebapplicationdevelopment,thenintroducetheWeb-CompositionMarkupLanguage—anXML-basedlanguagethatimplementsthemodel.WCMLembodiesobject-orientedprinciplessuchasmodularity,abstraction,andencapsulation.ItfacilitatesthedescriptionofhigherlevelconceptsandframeworksforreusethatcanbridgethegapwecurrentlyperceiveinWebapplicationdevelopmentbetweenhigh-leveldesignandlow-levelimplementation.WebeginwithadiscussionofwhythebasicWebimplementationmodeldoesnotworkasadevelopmentmodelforWebapplications.Relatedworkispresentedinthesidebar,“StructuredWebApplicationDevelopment,”onpage62.
WEBAPPLICATIONDEVELOPMENTPROCESS
WedefineaWebapplicationasanysoftwareapplicationthatdependsontheWebforitscorrectexecution.Obviously,softwareexplicitlydesignedfordeliveryovertheWebfallsunderthisdefinition—forexample,WebsitesorWeb-basedjournals.Thesekindsofsoftwarearecharacterizedbyastrongnotionofcontent.
WealsoincludesoftwarethatusestheWebinfrastructureforitsexecution.Forexample,manyinformationsystemsthatweredesignedandbuiltpriortotheWebarenowmadeavailableasWebapplicationsthroughtheuseofbrowsers.Beyondlegacyinformationsystems,thereisalsosoftwarethatislesstypicalfordeliveryovertheWebbutstilldependentonitastheclient-serverplatformforitsexecution.Tworecentlyreportedexamplesaddressedthecoordinationofdistributedapplica-tions2andremotemonitoring.
GeneralSoftwareDevelopmentConventionalsoftwareprocessesusuallyaddressfourdevelopmentphases:
analysis,design,implementation,andmaintenance/evolution.Duringanalysis,developersbuildamodelofanapplicationintermsofthedomain.Ideally,thisanalysisconcentratesontheapplication’sproblemspace—separatefromsoftwareconsiderations,whicharepartofthesolutionspace.Accordingly,thisphaseshouldnotbeaffectedbywhetherornottheapplicationistobedeliveredovertheWeb.Basedontheanalysis,amodelofthesoftwaresolutionisdefinedduringthedesignphase.Obviously,theWebapplicationdevelopmentprocess—incontrasttoageneralsoftwareprocess—assumesaWeb-basedsoftwaresolutionandmustaccommodatethis.
Theimplementationtransformsthedesignintoactualsoftware.ForWebapplications,thisphasehastorelyonavailableWebimplementationtechnology.Finally,maintenanceisconcernedwithmodificationstothesoftware,whichmayoccurattheimplementation,design,orevenanalysislevels.GeneralsoftwareprocessesarehardtorelatetotheWebimplementationmodel,aswillbediscussedbelow.TheWebimplementationmodelisbasedonflatdecompositionofapplicationsintoresources.Resourceshaveauniqueaddress,andtheyaredeliveredonrequestfromWebservertoWebclient.Theycanbestaticordynamicallygeneratedfromascript,buttheyareinherentlyspecific,whichmeansthattheycannotcaptureabstractions.
DocumentDeliveryApplications
TheWorldWideWebwasoriginallydesignedasaninformationmediumfordistributedresearchteams.4Akeyobjectivewastomakeitaseasyaspossibleforauthorstodeliverdocuments,andthenotionofWebapplicationdevelopmentessentiallyboileddowntodocumentdevelopmentbyanauthororsmallgroupofauthors.Forthiskindofdevelopment,thelifecyclecomprisesinformalanalysisofwhatistobepresented,informaldesignofhowtostructureitintohyper-linkedchunksofinformation,andimplementationthroughmarkup.Followingimplementation,thedocumentsaremaintainedbytheauthorsthemselves.
TheWebimplementationmodelwasdesignedtomeettheselife-cyclerequirements.Itisdeliberatelysimple,basedonthenotionofresourcesthatmodelmostlyself-containedchunksofinformation.Resourcesareauthoredandmaintainedratherindependentlyofotherresources,andlinksarethemeansbywhichresourcescanbecombinedintocoherentsetsofdocuments—forexample,aWebsite.
Theresourceconceptfitsthedocument-developmentlifecycleverywell,andresourcessupporttheprinciplesofmodularityinthiscontext.How-ever,theuseoftheWebhasmovedfarbeyonditsoriginalscope,evenindocumentdelivery.Ithasbecomeatoolforhigh-endpublishingwithcomplexrequirementsrelatedtolayout,corporateidentity,andtheintegrityoflargewebsofinformation.ThelifecycleofacompanyWebsiteisnowtypicallybasedonintensiverequirementsanalysisintermsofcontent,structure,access,andcorporateidentity.Thedesignmustdecomposetheserequirementsintoresourcesandhyperlinks,andalsoaddresslayout.Maintenancemustfocusontheevlutionofcontent,butalsoonsiteintegrity.
Thelifecycleisnolongerauthor-centric.Requirementsanalysisinvolves,forexample,informationanalystsaswellasmarketingpeopleandotherstakeholders.Designaddressesbothdatabasedevelopmentandgraphicpresentation.ImplementationrequiresWebprogrammerstousefeaturesbeyondsimplemarkup,andmaintenanceinvolvessitemanagersandWebmasters.
TheresourcenotionunderlyingtheWebimplementationmodeldoesnotmeettherequirementsofthiskindoflifecycle.Mostnotably,thereisnoseparationofconcernsregardingcontentandlay-out.Further,theWebimplementationmodeldoesnotprovideabstractionstocapturestructuraldesignforreuse,eventhoughlayoutandnavigationstructuresarecommonlyreusedindifferentpartsofasite.
LifeCycleofGeneralApplicationsDeliveredovertheWeb
NordoestheresourcemodeladdressthelifecycleofgeneralapplicationsdeliveredovertheWeb.Decomposingapplicationsintoresourcesisnotlogical.Theresourcemodelrequiresseparateconcernssuchasuserinterfaces,applicationlogic,and—forexample—databaseback-endstobeembeddedinanintermingledway.
Becauseoftherequest-responsestyleprotocolbetweenclientandserver,Webapplicationsarestructured,ineffect,asfinitestatemachines(FSM):
Thenodescorrespondtoresourcesandthetransitionsleadingawayfromanodecorrespondtohyperlinksorformelementswithinthenode.Thisdistributestheapplicationlogicoveranumberofresourcesinchunksofscriptcode,indocument-embeddedlinks,andinformelements.Contentismixedwithapplicationlogicandtypicallyembeddedinscriptcodethatimplementstheapplicationlogic.Further,theuserinterfaceisdeclarativeandspecifiedasdocumentstoberenderedinstandardbrowsers.AWebapplicationtypicallygeneratestheuserinterfacedeclarationdynamicallytoreflectapplicationandinteractionstate.
Insummary,thedeliveryofapplicationsintheWebenvironmentisradicallydifferentfromtheusualwaysofdeliveringsoftware,andimposesacompletelydifferentstructureandapproachonapplicationdevelopment.Obviously,designandmaintenanceofsuchapplicationsshouldbeintermsofuserinterface,applicationlogic,anddata-basebackendratherthanresources.CurrentWebimplementationtechnologyistoolowleveltosup-portaproperdevelopmentprocess.
CaseStudyinWebApplicationDevelopment
Toillustratesomeproblemswe’vefoundtobetypicalofWebapplicationdevelopment,wewilldescribeasmallpartofatravelassistantsystemthatwedevelopedoverthepastyear.Theapplicationintegratestravelbookingandroutingsystemsforintermodaltravelplanning.TheWebwaschosenastheintegrationplatformtocapitalizeonalreadyexistingtravelinformationsystemsandonHTMLbrowsersasameansofglobalsystemaccess.
Onerequirementwa