教程-Learning Electron: Build Desktop Apps using JS+HTML+CSS MP4|Video:h264,1280x720|Audio:AAC,44.1KHz,2Ch Genre:eLearning|Language:English+.VTT|Duration:6hours|  Masteringelectronfundamentals:ipcmodule,basics,menus,browserWindowsandmuchmore! Whatyou'lllearn BuildCrossPlatformDesktopApplicationsforMac,WindowsandLinux Understandthenear-entireElectronAPIindetail. MasteringtheBasicsfoElectronFramework Developbothtraditionalsingle-windowappsandstatustray-basedapps GetanUnderstandingabouthowElectronworks DebugElectronApplication TestingElectronApplication Requirements ShouldhaveexperienceofbuildingstaticwebpagesusingHTML&CSS. KnowledgeofJavascriptisrequired KnowledgeofNodeJsisrequired Description Electronhelpsusdevelopcross-platformapplicationsbyusingexistingwebtechnologies.Youdon'tneedspecificskills,formostcases,todevelopappswithElectron.IfyouareawebdeveloperandareinterestedindevelopinganappwithElectron,thenmakesureyoucheckouttutorialsthatwillfollowthisarticleinthisseries. Ifyouwantyourapplicationtobeavailableforalltheplatformswetalkedabout,youneedtodeployyourappusingdifferenttechnologies.Thisisverymanualandtime-consuming.Now,ifwetalkaboutElectron,itisobviousthatthisisaJavaScript-basedframework.Becausealltheplatformssupportwebtechnologies,Electronhelpsindevelopingcross-platformappseasier.PopularapplicationsthatuseElectronincludeVisualStudioCode,Slack,andAtomEditor. ElectronFeatures Security Youdon’tneedtothinkmuchwhenmigratingyourexistingapplicationtoElectronastheapplicationwearecreatingisadesktopapplicationanddatastayslocallyinthesystem.Becauseofthis,youcanensuredatasecurity.Incaseyouneedtostoredatainthecloud,checkwhetheryourcloudnetworkhasenoughsecurityfunctionsbeforehandtoavoidanyunwantedsurprises. Low-LevelAccessibility Beforestartingout,youalsohavetocheckwhetherallthefunctionalitiesyouareprovidingforyourdesktopapplicationarealsoavailableinElectron.Inmyexperience,Electronprovidesenoughcontroltohavetheextendedinteractivefeaturesinyourapplication,suchasKeyboardShortcuts.Italsoprovideslow-levelaccessibilitytothehardwareandoperationssystemcomponents. HardwareAccessibility DeveloperscangetcompleteaccesstotheallhardwarelevelaccessAPIsexposeovertheJavaScript/Plugin.ThereisnoneedtocompromiseforthefeatureifyouwanttomigratetoElectron. Performance Electronthrivesinthisaspect.Ifpropercareistakenwhiledeveloping(loadonlywhatyouneed),Electroncanshowsomegreatgainsinthetermsofperformancewhencomparedtonativeapplications.Electronsavesalotoftimeandprovidesmoreoptionstoplaywithordevelopbyhavingasinglecodebaseforallthemajorplatforms.Thesearethemajorproblemswhenwedealwiththenativedevelopmentofapplications,whicharealleffectivelysolvedbyElectron. However,alotofpeoplesaythatElectronisverymemoryhungry.Iagreewiththisstatement,butonlyifyoudeveloptheapplicationswithoutpropercare. CodeandAppManagement AsaProductOwner,youdon’tneedtomaintaindifferentteamsforeachplatformandyouwillberelievedfromthehassleofre-explainingyourrequirementswithdifferentteams.Itwillalsoreducetheauditingworktomakesuretheproducthasthesamefunctionalityacrossplatforms. Asadeveloper,youneednotworryaboutdifferentcodebases.Ifyouencounterabugonanyplatform,youcanfixitatthecodebase.Thebugwillnevershowuponotherplatforms.However,youshouldstillkeepaneyeontheOSlevelfunctionalities. Reusability Becauseweareusingasinglecodebase,itmeanswecanusethisforbothwebapplicationsanddesktopapplications.Weare,inaway,alsoreusingthebasecodeacrossdifferentplatformssincewe“codeonce,distributeeverywhere.” Production Themoreknownframeworksweuse,themoresupportweget.This,inturn,givesusmoreopensourcelibrarieswecanreuseandthedecreasedtimetoproductionbutwithmorefeatures. Deployment/Build ThisisoneoftheinterestingaspectsofElectron.Thereisanelectron-packagermoduleavailablethathelpsusbundlethewholecodebaseintotherespectivepackages.AlthoughpeopledebatethatElectrontakesalotofmemory,asIsaid,Electronneedsalittlecareduringdevelopmenttoavoidthis. UI/UX Withwebtechnologies,youareopentomultipletechnologiesthatprovidegreatUserInterface(UI)andUserExperience(UX)toallyouruserswithgreatcomfort.Also,youcanbesurethatyouareprovidingthesameexperiencetoallyourusersacrossdifferentplatforms. CostandTime Youwillsavealotofdevelopmenttimeandmoneybecause,forthetechstackweuse,therearealotofdeveloperswhocandoitforlessandachievegoodresults.Youcansavealotoftimeusingthesinglecodebaseandanydevelopercanworkonanything. HistoryofElectron Whenwetalkaboutanytechnologyweneedtotalkalittleaboutthehistorybehindit.Let'sbrieflylookatthehistoryofElectron. ElectronwasfoundedbyChengZhao,duringthedevelopmentofAtomacross-platformtexteditorreleasedinJuly2013.Itwasmadeopensource,developed,andsupportedbyGitHubusingC++,JavaScript,ObjectiveC,andPython.Itwasintendedtomakecross-platformdevelopmenteasierforAtomcreation. Whothiscourseisfor: Anyonewhowantstocreatecompellingnativedesktopapplications