Return Styles: Pseud0ch, Terminal, Valhalla, NES, Geocities, Blue Moon. Entire thread

ENTERPRISE QUALITY

Name: Cudder !cXCudderUE 2016-06-18 16:46

This is the source structure for a "simple" Flash video player I had sitting around waiting to be analysed.

├─images
│ 39.JPG

├─shapes
│ 1.svg
│ 3.svg
│ 4.svg
│ 6.svg
│ 8.svg
│ 11.svg
│ 12.svg
│ 14.svg
│ 17.svg
│ 19.svg
│ 21.svg
│ 22.svg
│ 25.svg
│ 28.svg
│ 29.svg
│ 31.svg
│ 34.svg
│ 38.svg
│ 40.svg
│ 50.svg

├─morphshapes
├─scripts
│ └─scripts
│ │ FlvPlayer2Base.as
│ │ player.as
│ │ MC_ControlBar_Pause.as
│ │ MC_ControlBar_Play.as
│ │ Btn_On_Mc.as
│ │ MC_Circle_Object.as
│ │
│ ├─com
│ │ └─hps
│ │ ├─core
│ │ │ StageInformationHolder.as
│ │ │ Singleton.as
│ │ │
│ │ ├─video
│ │ │ │ PBVideoPureMVCStarterBase.as
│ │ │ │
│ │ │ ├─view
│ │ │ │ │ ApplicationSpriteBase.as
│ │ │ │ │
│ │ │ │ └─tooltip
│ │ │ │ │ ToolTipRendererMediator.as
│ │ │ │ │
│ │ │ │ └─components
│ │ │ │ ToolTipRenderer.as
│ │ │ │
│ │ │ ├─vo
│ │ │ │ CompileInfoVO.as
│ │ │ │ InitVO.as
│ │ │ │ StageVO.as
│ │ │ │ FlashPlayerInfoVO.as
│ │ │ │ GInfoVO.as
│ │ │ │ SeekChangeVO.as
│ │ │ │ VideoVO.as
│ │ │ │ ToolTipVO.as
│ │ │ │
│ │ │ ├─model
│ │ │ │ ContextMenuProxy.as
│ │ │ │ UserLocationProxy.as
│ │ │ │ ExternalInterfaceProxy.as
│ │ │ │ MsgProxy.as
│ │ │ │ ROProxy.as
│ │ │ │ ControllBarProxy.as
│ │ │ │ VideoViewSettingProxy.as
│ │ │ │ SharedObjectProxy.as
│ │ │ │ InitializeProxy.as
│ │ │ │ VideoProxy.as
│ │ │ │ LabelProxy.as
│ │ │ │ ShortCutKeyProxy.as
│ │ │ │ ThumbnailProxy.as
│ │ │ │
│ │ │ ├─constants
│ │ │ │ ServerConst.as
│ │ │ │ PlayerPaymentTypeEnum.as
│ │ │ │ PlayerTypeEnum.as
│ │ │ │ LangTypeEnum.as
│ │ │ │ PBPureMVCConst.as
│ │ │ │ MsgTypeEnum.as
│ │ │ │ BufferStateTypeEnum.as
│ │ │ │ PlayStateTypeEnum.as
│ │ │ │ SeekStateTypeEnum.as
│ │ │ │
│ │ │ ├─service
│ │ │ │ GetMovieDelegate.as
│ │ │ │
│ │ │ ├─controller
│ │ │ │ PBStartupCommand.as
│ │ │ │ CommentVideoProgressCommand.as
│ │ │ │
│ │ │ ├─util
│ │ │ │ StrUtil.as
│ │ │ │ LinkUtil.as
│ │ │ │ QueryStringUtil.as
│ │ │ │ ScaleUtil.as
│ │ │ │ MathUtil.as
│ │ │ │ ToolTipUtil.as
│ │ │ │ AlignUtil.as
│ │ │ │ FadeUtil.as
│ │ │ │ GraphUtil.as
│ │ │ │
│ │ │ ├─net
│ │ │ │ NetStreamEX.as
│ │ │ │ NetStreamClient.as
│ │ │ │
│ │ │ └─factory
│ │ │ TextFactory.as
│ │ │
│ │ ├─puremvc
│ │ │ │ PureMVCStarterBase.as
│ │ │ │ ApplicationFacade.as
│ │ │ │
│ │ │ ├─view
│ │ │ │ │ SpriteBase.as
│ │ │ │ │ MediatorBase.as
│ │ │ │ │ ApplicationMediator.as
│ │ │ │ │
│ │ │ │ └─applicationMediatorClasses
│ │ │ │ PopUpMngrImpl.as
│ │ │ │ PopUpArgs.as
│ │ │ │
│ │ │ ├─controller
│ │ │ │ StartupCommand.as
│ │ │ │
│ │ │ ├─constants
│ │ │ │ CommonPureMVCConst.as
│ │ │ │
│ │ │ └─utils
│ │ │ MediatorManager.as
│ │ │
│ │ ├─logging
│ │ │ Logger.as
│ │ │ ILogging.as
│ │ │ PararelLogging.as
│ │ │ NullLogging.as
│ │ │ Debug.as
│ │ │ TraceLogging.as
│ │ │
│ │ ├─net
│ │ │ │ DelegateBase.as
│ │ │ │
│ │ │ └─delegateBaseClasses
│ │ │ MultiPartData.as
│ │ │
│ │ ├─vo
│ │ │ PureMVCRegisterCommandVO.as
│ │ │
│ │ ├─controls
│ │ │ ├─fpalert
│ │ │ │ FpPopupRendererBase.as
│ │ │ │ FpPopup.as
│ │ │ │
│ │ │ └─fptween
│ │ │ FPTween.as
│ │ │ FPTweenEquations.as
│ │ │
│ │ ├─managers
│ │ │ PopUpMngr.as
│ │ │
│ │ └─events
│ │ PopUpEvent.as
│ │
│ ├─org
│ │ └─puremvc
│ │ └─as3
│ │ ├─patterns
│ │ │ ├─observer
│ │ │ │ Notifier.as
│ │ │ │ Notification.as
│ │ │ │ Observer.as
│ │ │ │
│ │ │ ├─proxy
│ │ │ │ Proxy.as
│ │ │ │
│ │ │ ├─facade
│ │ │ │ Facade.as
│ │ │ │
│ │ │ ├─mediator
│ │ │ │ Mediator.as
│ │ │ │
│ │ │ └─command
│ │ │ SimpleCommand.as
│ │ │
│ │ ├─interfaces
│ │ │ INotifier.as
│ │ │ IProxy.as
│ │ │ IFacade.as
│ │ │ IMediator.as
│ │ │ ICommand.as
│ │ │ INotification.as
│ │ │ IView.as
│ │ │ IModel.as
│ │ │ IController.as
│ │ │ IObserver.as
│ │ │
│ │ └─core
│ │ View.as
│ │ Model.as
│ │ Controller.as
│ │
│ ├─flvplayer2
│ │ │ PBPureMVCStarter.as
│ │ │
│ │ └─view
│ │ │ ProjectMainMediator.as
│ │ │
│ │ ├─components
│ │ │ ProjectMain.as
│ │ │
│ │ ├─flvcontrolbar
│ │ │ │ ControlBarDisplayMediator.as
│ │ │ │
│ │ │ └─components
│ │ │ │ ControlBarDisplay.as
│ │ │ │
│ │ │ ├─seekbar
│ │ │ │ │ ControlBarSeekMediator.as
│ │ │ │ │
│ │ │ │ └─components
│ │ │ │ ControlBarSeek.as
│ │ │ │
│ │ │ ├─volume
│ │ │ │ │ ControlBarVolumeMediator.as
│ │ │ │ │
│ │ │ │ └─components
│ │ │ │ ControlBarVolume.as
│ │ │ │
│ │ │ └─button
│ │ │ IControllButton.as
│ │ │ FullScreenButton.as
│ │ │
│ │ ├─flvvideo
│ │ │ │ VideoDisplayMediator.as
│ │ │ │
│ │ │ └─components
│ │ │ VideoDisplay.as
│ │ │
│ │ ├─flvmessage
│ │ │ │ MessageDisplayMediator.as
│ │ │ │
│ │ │ ├─components
│ │ │ │ │ MessageDisplay.as
│ │ │ │ │
│ │ │ │ └─components
│ │ │ │ MessageLayer.as
│ │ │ │ MsgTextField.as
│ │ │ │ MsgMainButton.as
│ │ │ │ MsgSubButton.as
│ │ │ │ SubButtonContainer.as
│ │ │ │
│ │ │ └─msg
│ │ │ MsgBase.as
│ │ │ MsgDefault.as
│ │ │ MsgContentsMarket.as
│ │ │
│ │ ├─flvloading
│ │ │ │ LoadingDisplayMediator.as
│ │ │ │
│ │ │ └─components
│ │ │ LoadingDisplay.as
│ │ │ McPreLoader.as
│ │ │
│ │ └─flvthumbnail
│ │ │ ThumbnailDisplayMediator.as
│ │ │
│ │ └─components
│ │ ThumbnailDisplay.as
│ │
│ ├─aseets
│ │ ├─controllbar
│ │ │ ControlBarBg.as
│ │ │ PlayButton.as
│ │ │ MC_FullScreenButton.as
│ │ │ Splitter.as
│ │ │ CursorMc.as
│ │ │
│ │ └─thumbnail
│ │ ThumbnailPlayButton.as
│ │
│ ├─flashx
│ │ └─textLayout
│ │ └─formats
│ │ TextAlign.as
│ │
│ ├─assets
│ │ ├─controllbar
│ │ │ └─volume
│ │ │ VolumeSlider.as
│ │ │ MuteBtn.as
│ │ │
│ │ ├─cb
│ │ │ MC_FullscreenOn2.as
│ │ │
│ │ └─loading
│ │ MC_Loading.as
│ │
│ └─fp
│ FP_PayLayer.as
│ MainButton.as
│ pay_button.as

├─movies
├─sounds
├─binaryData
└─texts
43.txt
45.txt
47.txt
48.txt

169 files, none of which are over 24KB, in fact most of them are less than 1KB. As a result, there is only a little over 400KB in actual code, but the files take over 5MB on disk. Trying to figure out how it works is a "find where they hid that functionality" game. What sort of insanity causes developers to generate shit like this? Extreme GoF worship?

Name: suigin 2016-06-19 12:11

>>16
My thoughts as well.

>>1
Why exactly are you wasting your precious life on a Flash player? For what purpose do you need this?

I mena you're going to have to bring in V8 or something to run the AS.

I wasted months of my life working on GUI system to replace Scaleform that used Flash for layout (although, we didn't use AS at all, replaced it all with native code). Hell, a good chunk of it was just rendering the fonts correctly.

I wish I could get those months of my life back. At least I got paid.

Newer Posts
Don't change these.
Name: Email:
Entire Thread Thread List