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-19 2:00

The problem is that >>6 has ONLY been doing Win32. Nothing to do with age, just that the only thing he knows (besides a little bit of Flash dabbling) is a pile of shit, with all the programmers just hardcoding over everything and manually painting widgets because it's easier than trying to comply with the OS's assumptions.

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