关于JAVA领域的外文翻译Word格式文档下载.docx
《关于JAVA领域的外文翻译Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《关于JAVA领域的外文翻译Word格式文档下载.docx(10页珍藏版)》请在冰豆网上搜索。
Thecomputerrevolutionofthe1970sincreasedthedemandforsophisticatedcomputersoftwaretotakeadvantageoftheever-increasingcapacityofcomputerstoprocessdata.TheCprogramminglanguagebecamethelinchpinthatenabledprogrammerstobuildsoftwarethatwasjustasrobustasthecomputeritranon.
Asthe1980sapproached,programmerswerewitnessinganotherspurtintheevolutionofprogramminglanguage.ComputertechnologyadvancedbeyondthecapabilitiesoftheCprogramminglanguage.Theproblemwasn’tnew.Itoccurredpreviouslyandcausedthedemiseofgenerationsofprogramminglanguages.Theproblemwasthatprogramswerebecomingtoocomplicatedtodesign,write,andmanagetokeepupwiththecapabilitiesofcomputers.ItwasaroundthistimethatadesignconceptbasedonSimula67andSmalltalk(fromthelate1960s)movedprogrammingtothenextevolutionarystep.Thiswastheperiodwhenobject-orientedprogramming(OOP),andwithitanewprogramminglanguagecalledC++,tookprogrammersbystorm.
In1979,BjarneStroustrupofBellLaboratoriesinNewJerseyenhancedtheCprogramminglanguagetoincludeobject-orientedfeatures.HecalledthelanguageC++.(The++istheincrementaloperatorintheCprogramminglanguage.)C++istrulyanenhancementoftheCprogramminglanguage,anditbeganasapreprocessorlanguagethatwastranslatedintoCsyntaxbeforetheprogramwasprocessedbythecompiler.
Stroustrupbuiltontheconceptofaclass(takenfromSimula67andSmalltalk),fromwhichinstancesofobjectsarecreated.Aclasscontainsdatamembersandmemberfunctionsthatdefineanobject’sdataandfunctionality.Healsointroducedtheconceptofinheritance,whichenabledaclasstoinheritsomeoralldatamembersandmemberfunctionsfromoneormoreotherclasses—allofwhichcomplementstheconceptsofobject-orientedprogramming.
By1988,ANSIofficialsstandardizedStroustrup’sC++specification.
2EnterJava
JustasC++wasbecomingthelanguageofchoiceforbuildingindustrial-strengthapplications,anothergrowthspurtintheevolutionofprogramminglanguagewasbudding,fertilizedbythelatestdisruptivetechnology—theWorldWideWeb.TheInternethadbeenawell-keptsecretfordecadesbeforetheNationalScienceFoundation(whooversawtheInternet)removedbarriersthatpreventedcommercialization.Until1991whenitwasopenedtocommerce,theInternetwasthealmostexclusivedomainofgovernmentagenciesandtheacademiccommunity.Oncethebarriertocommercializationwaslifted,theWorldWideWeb—oneofseveralservicesofferedontheInternet—becameavirtualcommunitycenterwherevisitorscouldgetfreeinformationaboutpracticallyanythingandbrowsethroughthousandsofvirtualstores.
BrowserspowertheWorldWideWeb.AbrowsertranslatesASCIItextfileswritteninHTMLintoaninteractivedisplaythatcanbeinterpretedonanymachine.AslongasthebrowseriscompatiblewiththecorrectversionofHTMLandHTTPimplementation,anycomputerrunningthebrowsercanusethesameHTMLdocumentwithouthavingtomodifyitforaparticulartypeofcomputer,whichwassomethingunheardofatthetime.ProgramswritteninCorC++aremachinedependentandcannotrunonadifferent
machineunlesstheprogramisrecompiled.
ThesuccessoftheInternetgaverenewedfocustodevelopingamachine-independentprogramminglanguage.AndthesameyeartheInternetwascommercialized,fivetechnologistsatSunMicrosystemssetouttodojustthat.JamesGosling,PatrickNaughton,ChrisWarth,EdFrank,andMikeSheridanspent18monthsdevelopingtheprogramminglanguagetheycalledOak,whichwasrenamedJavawhenthisnewlanguagemadeitsdebutin1995.Javawentthroughnumerousiterationsbetween1991and1995,duringwhichtimemanyothertechnologistsatSunmadesubstantialcontributionstothelanguage.TheseincludedBillJoy,ArthurvanHoff,JonathanPayne,FrankYelin,andTimLindholm.
AlthoughJavaiscloselyassociatedwiththeInternet,itwasdevelopedasalanguageforprogrammingsoftwarethatcouldbeembeddedintoelectronicdevicesregardlessofthetypeofCPUusedbythedevice.ThisisknownastheEmbeddedJavaplatformandisincontinuoususetodayforclosedsystems.
TheJavateamfromSunsucceededincreatingaportableprogramminglanguage,somethingthathadeludedprogrammerssincecomputerswerefirstprogrammed.Theirsuccess,however,wasfarbeyondtheirwildestdreams.ThesameconceptusedtomakeJavaprogramsportabletoelectronicdevicesalsocouldbeusedtomakeJavaprogramsrunoncomputersrunningMicrosoftWindows,UNIX,andMacintosh.Timingwasperfect.TheInternet/intranethadwhettedcorporateAmerica’sappetiteforcost-effective,portableprogramsthatcouldreplacemission-criticalapplicationswithinthecorporation.AndJavahadprovenitselfasaprogramminglanguageusedtosuccessfullydevelopmachine-independentapplications.
3JavaVirtualMachine
WritingJavaprogramsissimilartowritingC++programsinthattheprogrammerwritessourcecodethatcontainsinstructionsintoaneditor,orinanintegrateddevelopment
environment,andthenthesourcecodeiscompiled.However,that’swhereJavaandC++
partways.ThecompilingandlinkingprocessofaC++programresultsinanexecutable
thatcanberunonanappropriatemachine.Incontrast,theJavacompilerconvertsJava
sourcecodeintobytecodethatisexecutedbytheJavaVirtualMachine(JVM).
Machine-specificinstructionsarenotincludedinbytecode.Instead,theyalreadyresideintheJVM,whichismachinespecific.ThismeansthatthebytecodemightcontainfewerinstructionsthatneedtobetranslatedthanacomparableC++program.
AlthoughtheJavacompilergeneratesbytecodethatmustbeinterpretedbytheJVM
atruntime,thenumberofinstructionsthatneedtranslationareusuallyminimaland
havealreadybeenoptimizedbytheJavacompiler.
4BacktotheFuture:
J2ME
RememberthatJavabeganasaprogramminglanguagetocreateprogramsforembeddedsystems—microcomputersfoundinconsumerandindustrialproductssuchasthoseusedtocontrolautomobilesandappliances.ThedevelopmentteamatSunworkedonJavaintheearly1990stoaddresstheprogrammingneedsofthefledglingembeddedcomputermarket,butthateffortwassidetrackedbymorecompellingopportunitiespresentedbytheInternet.
Asthoseopportunitieswereaddressed,anewbreedofportablecommunicationsdevicesopenedotheropportunitiesattheturnofthecentury.CellphonesexpandedJ2ME:
TheCompleteReferencefromvoicecommunicationsdevicestovoiceandtextcommunicationsdevices.Pocketelectronictelephonedirectoriesevolvedintopersonaldigitalassistants.Chipmakerswerereleasingnewproductsatthistimethatweredesignedtotransfercomputingpowerfromadesktopcomputerintomobilesmallcomputersthatcontrolledgaspumps,cabletelevisionboxes,andanassortmentofotherappliances.
ThetimewasrightforthenextevolutionofJava.However,insteadofbeefingupJavawithadditionalAPIs,theteamatSun,alongwiththeJavaCommunityProcessProgram,dismantledboththeJavaprogramminglanguageandtheJavaVirtualMachine.They
strippeddownJavaAPIsandtheJVMtotheminimumcodingrequiredtoprovide
intelligencetoembeddedsystemsandmicrocomputerdevices.Thiswasnecessary
becauseofresourceconstraintsimposeduponthehardwaredesignofthesedevices.The
resultoftheireffortsisJ2ME.J2MEisareducedversionoftheJavaAPIandJavaVirtualMachinethatisdesignedtooperatewithinthesparseresourcesavailableinthenewbreedofembeddedcomputersandmicrocomputers.
5HowJ2MEIsOrganized
Traditionalcomputingdevicesusefairlystandardhardwareconfigurationssuchasadisplay,keyboard,mouse,andlargeamountsofmemoryandpermanentstorage.However,thenewbreedofcomputingdeviceslackshardwareconfigurationcontinuityamongdevices.Somedevicesdon’thaveadisplay,permanentstorage,keyboard,ormouse.Andmemoryavailabilityisinconsistentamongsmallcomputingdevices.ThelackofuniformhardwareconfigurationamongthesmallcomputingdevicesposesaformidablechallengefortheJavaCommunityProcessProgram,whichischargedwithdevelopingstandardsfortheJVMandtheJ2MEforsmallcomputingdevices.
J2MEmustservicemanydifferentkindsofsmallcomputingdevices,includingscreenphones,digitalset-topboxesusedforcabletelevision,cellphones,andpersonaldigitalassistants.ThechallengefortheJavaCommunityProcessProgramistodevelopaJavastandardthatcanbeimplementedonsmallcomputingdevicesthathavenonstandard
hardwareconfigurations.TheJavaCommunityProcessProgramhasusedatwofoldapproachtoaddressingtheneedsofsmallcomputingdevices.First,theydefinedtheJavarun-timeenvironmentandcoreclassesthatoperateoneachdevice.Thisisreferredtoastheconfiguration.AconfigurationdefinestheJavaVirtualMachineforaparticularsmallcomputingdevice.Therearetwoconfigurations,oneforhandhelddevicesandtheotherforplug-indevices.Next,theJavaCommunityProcessProgramdefinedaprofileforcategoriesofsmallcomputingdevices.Aprofileconsistsofclassesthatenabledeveloperstoimplementfeaturesfoundonarelatedgroupofsmallcomputingdevices.
6J2MEconfigurations
TherearetwoconfigurationsforJ2MEasofthiswriting.TheseareConnectedLimitedDeviceConfiguration(CLDC)andtheConnectedDeviceConfiguration(CDC).TheCLDCisdesignedfor16-bitor32-bitsmallcomputingdeviceswithlimitedamountsofmemory.
CLDCdevicesusuallyhavebetween160KBand512KBofavailableme