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: Anonymous 2016-06-18 18:27

>>1
The vast majority of that tree is external libraries. How do you intend to make simple GUI libraries without small files? Much of that is also driven by the Flash architecture, with pluggable event handlers.

I think you have no clue or experience in actually building stuff in this space. As much as I dislike OO, GUI stuff is the one place where it tends to actually work.

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