网络工程外文翻译安卓程序员指南.docx
《网络工程外文翻译安卓程序员指南.docx》由会员分享,可在线阅读,更多相关《网络工程外文翻译安卓程序员指南.docx(16页珍藏版)》请在冰豆网上搜索。
网络工程外文翻译安卓程序员指南
毕业论文(设计)
外文翻译
原文来源Android™AProgrammer’sGuide
中文翻译安卓程序员指南
学院数学与计算机科学学院
专业网络工程
姓名
学号200808204105
指导教师
Android™
AProgrammer’sGuide
J.F.DiMarzio
NewYorkChicagoSanFrancisco
LisbonLondonMadridMexicoCity
MilanNewDelhiSanJuan
SeoulSingaporeSydneyToronto
AbouttheAuthor
J.F.DiMarzioisadeveloperwithover15yearsof
experienceinnetworkingandapplicationdevelopment
andistheauthorofsevenbooksoncomputingtechnologies.
HehasbecomealeadingresourceinthefieldsofIT
consultinganddevelopment.HelivesinCentralFlorida.
AbouttheTechnicalEditor
GilbertL.Poloisasoftwaredeveloperwithover20
yearsofexperienceworkinginthetelecommunications,
financial,and,mostrecently,educationalindustries.He
hasprogrammedinvariouslanguagesincludingC,C++,
Java,andC#.
Chapter1
WhatIsAndroid?
KeySkills&Concepts
●Historyofembeddeddeviceprogramming
●ExplanationofOpenHandsetAlliance
●FirstlookattheAndroidhomescreen
Itcanbesaidthat,forawhile,traditionaldesktopapplicationdevelopershavebeenspoiled.Thisisnottosaythattraditionaldesktopapplicationdevelopmentiseasierthanotherformsofdevelopment.However,astraditionaldesktopapplicationdevelopers,wehavehadtheabilitytocreatealmostanykindofapplicationwecanimagine.IamincludingmyselfinthisgroupingbecauseIgotmystartindesktopprogramming.
Oneaspectthathasmadedesktopprogrammingmoreaccessibleisthatwehavehadtheabilitytointeractwiththedesktopoperatingsystem,andthusinteractwithanyunderlyinghardware,prettyfreely(oratleastwithminimalexceptions).Thiskindoffreedomtoprogramindependently,however,hasneverreallybeenavailabletothesmallgroupofprogrammerswhodaredtoventureintothemurkywatersofcellphonedevelopment.
NOTE
Irefertotwodifferentkindsofdevelopersinthisdiscussion:
traditionaldesktopapplicationdevelopers,whoworkinalmostanylanguageandwhoseendproduct,applications,arebuilttorunonany“desktop”operatingsystem;andAndroiddevelopers,JavadeveloperswhodevelopfortheAndroidplatform.Thisisnotforthepurposesofsayingoneisbyanymeansbetterorworsethantheother.
Rather,thedistinctionismadeforpurposesofcomparingthedevelopmentstylesandtoolsofdesktopoperatingsystemenvironmentstothemobileoperatingsystemenvironment,Android.
BriefHistoryofEmbeddedDeviceProgramming
Foralongtime,cellphonedeveloperscomprisedasmallsectofaslightlylargergroupofdevelopersknownasembeddeddevicedevelopers.Seenasaless“glamorous”siblingtodesktop—andlaterweb—development,embeddeddevicedevelopmenttypicallygottheproverbialshortendofthestickasfarashardwareandoperatingsystemfeatures,becauseembeddeddevicemanufacturerswerenotoriouslystingyonfeaturesupport.Embeddeddevicemanufacturerstypicallyneededtoguardtheirhardwaresecretsclosely,sotheygaveembeddeddevicedevelopersfewlibrariestocallwhentryingtointeractwithaspecificdevice.
Embeddeddevicesdifferfromdesktopsinthatanembeddeddeviceistypicallya“computeronachip.”Forexample,consideryourstandardtelevisionremotecontrol;itisnotreallyseenasanoverwhelmingachievementoftechnologicalcomplexity.Whenanybuttonispressed,achipinterpretsthesignalinawaythathasbeenprogrammedintothedevice.Thisallowsthedevicetoknowwhattoexpectfromtheinputdevice(keypad),andhowtorespondtothosecommands(forexample,turnonthetelevision).Thisisasimpleformofembeddeddeviceprogramming.However,believeitornot,simpledevicessuchasthesearedefinitelyrelatedtotherootsofearlycellphonedevicesanddevelopment.
Mostembeddeddevicesran(andinsomecasesstillrun)proprietaryoperatingsystems.Thereasonforchoosingtocreateaproprietaryoperatingsystemratherthanuseanyconsumersystemwasreallyaproductofnecessity.Simpledevicesdidnotneedveryrobustandoptimizedoperatingsystems.
Asaproductofdeviceevolution,manyofthemorecomplexembeddeddevices,suchasearlyPDAs,householdsecuritysystems,andGPSs,movedtosomewhatstandardizedoperatingsystemplatformsaboutfiveyearsago.Small-footprintoperatingsystemssuchasLinux,orevenanembeddedversionofMicrosoftWindows,havebecomemoreprevalentonmanyembeddeddevices.Aroundthistimeindeviceevolution,cellphonesbranchedfromotherembeddeddevicesontotheirownpath.Thisbranchingisevidentwhenyouexaminetheirarchitecture.
Nearlysincetheirinception,cellphoneshavebeenfringedevicesinsofarastheyrunonproprietarysoftware—softwarethatisownedandcontrolledbythemanufacturer,andisalmostalwaysconsideredtobea“closed”system.Thepracticeofmanufacturersusingproprietaryoperatingsystemsbeganmoreoutofnecessitythananyotherreason.Thatis,cellphonemanufacturerstypicallyusedhardwarethatwascompletelydevelopedin-house,oratleasthardwarethatwasspecificallydevelopedforthepurposesofrunningcellphoneequipment.Asaresult,therewerenoopenlyavailable,off-the-shelfsoftwarepackagesorsolutionsthatwouldreliablyinteractwiththeirhardware.Sincethemanufacturersalsowantedtoguardverycloselytheirhardwaretradesecrets,someofwhichcouldberevealedbyallowingaccesstothesoftwarelevelofthedevice,thecommonpracticewas,andinmostcasesstillis,tousecompletelyproprietaryandclosedsoftwaretoruntheirdevices.Thedownsidetothisisthatanyonewhowantedtodevelopapplicationsforcellphonesneededtohaveintimateknowledgeoftheproprietaryenvironmentwithinwhichitwastorun.Thesolutionwastopurchaseexpensivedevelopmenttoolsdirectlyfromthemanufacturer.Thisisolatedmanyofthe“homebrew”developers.
NOTE
Agrowingcultureofhomebrewdevelopershasembracedcellphoneapplicationdevelopment.Theterm“homebrew”referstothefactthatthesedeveloperstypicallydonotworkforacellphonedevelopmentcompanyandgenerallyproducesmall,one-offproductsontheirowntime.
Another,morecompelling“necessity”thatkeptcellphonedevelopmentoutofthehandsoftheeverydaydeveloperwasthehardwaremanufacturers’solutiontothe“memoryversusneed”dilemma.Untilrecently,cellphonesdidlittlemorethanexecuteandreceivephonecalls,trackyourcontacts,andpossiblysendandreceiveshorttextmessages;notreallythe“Swissarmyknives”oftechnologytheyaretoday.Evenaslateas2002,cellphoneswithcameraswerenotcommonlyfoundinthehandsofconsumers.
By1997,smallapplicationssuchascalculatorsandgames(Tetris,forexample)crepttheirwayontocellphones,buttheoverwhelmingfunctionwasstillthatofaphonedialeritself.Cellphoneshadnotyetbecomethemultiuse,multifunctionpersonaltoolstheyaretoday.NooneyetsawtheneedforInternetbrowsing,MP3playing,oranyofthemultitudesoffunctionsweareaccustomedtousingtoday.Itispossiblethatthecellphonemanufacturersof1997didnotfullyperceivetheneedconsumerswouldhaveforanall-in-onedevice.However,eveniftheneedwaspresent,alackofdevicememoryandstoragecapacitywasanevenbiggerobstacletoovercome.Morepeoplemayhavewantedtheirdevicestobeall-in-onetools,butmanufacturersstillhadtoclimbthememoryhurdle.
Toputtheproblemsimply,ittakesmemorytostoreandrunapplicationsonanydevice,cellphonesincluded.Cellphones,asadevice,untilrecentlydidnothavetheamountofmemoryavailabletothemthatwouldfacilitatetheinclusionof“extra”programs.Withinthelasttwoyears,thepriceofmemoryhasreachedverylowlevels.
Devicemanufacturersnowhavetheabilitytoincludemorememoryatlowerprices.ManycellphonesnowhavemorestandardmemorythantheaveragePChadinthemid-1990s.So,nowthatwehavetheneed,andthememory,wecanalljumpinanddevelopcoolapplicationsforcellphonesaroundtheworld,right?
Notexactly.
Devicemanufacturersstillcloselyguardtheoperatingsystemsthatrunontheirdevices.WhileafewhaveopeneduptothepointwheretheywillallowsomeJava-basedapplicationstorunwithinasmallenvironmentonthephone,manydonotallowthis.EventhesystemsthatdoallowsomeJavaappstorundonotallowthekindofaccesstothe“core”systemthatstandarddesktopdevelopersareaccustomedtohaving.
OpenHandsetAllianceandAndroid
ThisbarriertoapplicationdevelopmentbegantocrumbleinNovemberof2007whenGoogle,undertheOpenHandsetAlliance,releasedAndroid.TheOpenHandsetAllianceisagroupofhardwareandsoftwaredevelopers,includingGoogle,NTTDoCoMo,SprintNextel,andHTC,whosegoalistocreateamoreopencellphoneenvironment.
Thefirstproducttobereleasedundertheallianceisthemobiledeviceoperatingsystem,Android.(FormoreinformationabouttheOpenHandsetAlliance,see
.)WiththereleaseofAndroid,Googlemadeavailableahostofdevelopmenttoolsandtutorialstoaidwould-bedevelopersontothenewsystem.Helpfiles,theplatformsoftwaredevelopmentkit(SDK),andevenadevelopers’communitycanbefoundatGoogle’sAndroidwebsite,Thissiteshouldbeyourstartingpoint,andIhighlyencourageyoutovisitthesite.
NOTE
Google,inpromotingthenewAndroidoperatingsystem,evenwentasfarastocreatea$10millioncontestlookingfornewandexcitingAndroidapplications.
WhilecellphonesrunningLinux,Windows,andevenPalmOSareeasytofind,asofthiswriting,nohardwareplatformshavebeenannouncedforAndroidtorunon.HTC,LG
Electro