The Great Refactor: Step 2: Document Headers
Date: Wednesday, June 23 @ 03:57:51 CDT
Topic: The Great Refactor


This really is *quite* essential from a maintainer's (that'd be me :-) perspective. How else can one even begin to formulate how to compartmentalize such a complex app? This will likely take a while, so I'm going to update this story often :p. Headers processed: 87 OldNewChange Inclusions51627247.3% Fewer Compile Time6m 32s4m 21s33.5% Faster ASM Instructions1,240,7191,240,5650.012% Preprocessed Code140M (5.1M lines)110M (4.1M lines)21.4% Smaller Total time spent: 14h 20m
Finished: 12:36 (-5 UTC) on 25 June 2004.


Start time: 2:49 on 23 June 2004.
Stop time: 5:21 on 23 June 2004 (2h 32m | 14 headers). Start time: 9:01 on 23 June 2004.
Stop time: 11:45 on 23 June 2004 (2h 45m | 25 headers). Start time: 13:51 on 23 June 2004.
Stop time: 15:31 on 23 June 2004 (1h 40m | 18 headers). Start time: 10:03 on 24 June 2004.
Stop time: 12:35 on 24 June 2004 (2h 32m | 8 headers). Start time: 14:52 on 24 June 2004.
Stop time: 16:14 on 24 June 2004 (1h 22m | 7 headers). Start time: 17:49 on 24 June 2004.
Stop time: 20:09 on 24 June 2004 (2 hr 20m | 9 headers). Start time: 0:33 on 25 June 2004.
Stop time: 1:40 on 25 June 2004 (1 hr 7m | 3 headers). Start time: 10:43 on 25 June 2004.
Stop time: 11:57 on 25 June 2004 (1 hr 14m | 3 headers). Hinderances Ran into problems with clean build at 10:45 on 24 June 2004.
Resolved problems at 11:45 after editing 18 cpp files.
Ran into problems with clean build at 11:56 on 24 June 2004.
Resolved problems at 12:34 after editing 9 cpp files.
My dog, Reilly, ran away :p at 14:16 on 24 June 2004.
Resolved problem at 17:20 after running around neighborhood.
Ran into problems with clean build at 19:21 on 24 June 2004.
Resolved problems at 20:07 after editing 21 cpp and 2 header files.
Ran into problems with clean build at 11:05 on 25 June 2004.
Resolved problems at 20:07 after editing 13 cpp files.
FileUnneeded headersTime Processed AddFileThread.h1 out of 43:06 AddFriend.h3 out of 43:25 BarShader.h1 out of 43:27 CFile.h2 out of 43:31 CMemFile.h0 out of 23:33 CMuleNotebookBase.h2 out of 54:28 CatDialog.h4 out of 64:31 ChatWnd.h6 out of 74:35 ClientCredits.h3 out of 54:54 ClientDetailDialog.h3 out of 54:59 ClientList.h2 out of 45:09 ClientUDPSocket.h2 out of 45:12 ColorFrameCtrl.h0 out of 25:16 CommentDialog.h1 out of 45:21 CommentDialgLst.h0 out of 49:02 CryptoXMpp.h0 out of 79:10 DownloadListCtrl.h6 out of 89:14 DownloadQueue.h4 out of 79:20 ED2KLink.h2 out of 49:24 EMSocket.h2 out of 49:27 EditServerListDlg.h1 out of 39:31 FileDetailDialog.h5 out of 59:36 FlowChart.h9 out of 129:44 Friend.h2 out of 39:46 FriendList.h4 out of 510:14 FriendListCtrl.h2 out of 410:16 HTTPDownloadDlg.h3 out of 510:22 IPFilter.h4 out of 510:27 KnownFile.h10 out of 1210:35 KnownFileList.h1 out of 410:44 ListenSocket.h4 out of 610:51 MD5Sum.h0 out of 111:02 MapKey.h3 out of 511:05 MuleListCtrl.h0 out of 411:10 MuleNotebook.h1 out of 211:16 NewFunctions.h0 out of 211:20 NewSockets.h4 out of 511:26 OScopeCtrl.h1 out of 611:33 PPgConnection.h1 out of 211:44 PPgDirectories.h1 out of 413:51 PPgFiles.h1 out of 313:55 PPgGeneral.h2 out of 513:57 PPgGuiTweaks.h2 out of 414:01 PPgIrc.h0 out of 114:04 PPgNotify.h1 out of 214:06 PpgServer.h1 out of 314:10 PPgSourcesDropping.h2 out of 414:13 PPgStats.h1 out of 414:15 PPgTweaks.h2 out of 414:17 PartFile.h9 out of 1114:30 Preferences.h1 out of 614:38 PreferencesDlg.h1 out of 1314:42 Preview.h1 out of 214:46 QueueListCtrl.h3 out of 414:53 SafeFile.h2 out of 415:09 SearchDlg.h4 out of 1015:25 SearchList.h7 out of 815:31 ServerList.h2 out of 510:21 ServerListCtrl.h3 out of 510:27 ServerSocket.h6 out of 810:33 ServerWnd.h5 out of 1110:39 mfc.h2 out of 511:36 SharedFileList.h10 out of 1411:56 SharedFilesCtrl.h2 out of 512:19 SharedFilesWnd.h4 out of 912:30 SplitterControl.h-1 out of 215:00 StatisticsDlg.h3 out of 715:09 SysTray.h17 out of 2015:26 TransferWnd.h3 out of 815:44 UDPSocket.h3 out of 715:48 UploadListCtrl.h4 out of 516:04 UploadQueue.h3 out of 616:13 WebServer.h3 out of 718:00 WebSocket.h0 out of 118:05 Wizard.h1 out of 318:09 XBMDraw.h-1 out of 118:11 ini2.h-1 out of 218:40 mmMultiButton.h2 out of 418:45 muuli_wdr.h21 out of 2319:08 otherfunctions.h2 out of 619:17 otherstructs.h2 out of 517:23 packets.h4 out of 80:41 server.h6 out of 90:58 sockets.h8 out of 101:03 updownclient.h6 out of 1311:05 xmule.h2 out of 711:31 xmuleDlg.h11 out of 1311:37





This article comes from xMule: A P2P Client derived from eMule
http://www.xmule.ws/phpnuke

The URL for this story is:
http://www.xmule.ws/phpnuke/modules.php?name=News&file=article&sid=17