While looking around in the image, I am in need of knowing where I found
thngs that either puzzle me or are "wrong" (well, a code smell).
What I do is that I put pragmas in there like this (not that this sample is
meant to be representative)
privCleanTextConstants
<fixme>
TextConstants TextSharedInformation removeKey: #DefaultTextStyle.
TextConstants TextSharedInformation removeKey: #DefaultMultiStyle.
TextConstants TextSharedInformation removeKey: #DefaultFixedTextStyle.
TextConstants TextSharedInformation removeKey: StrikeFont defaultFontKey.
Smalltalk allClasses select: [:c | c sharedPools includes: TextConstants]
thenDo: [:c | c compileAll ].
And I can then find back the things with:
pc := (PragmaCollector filter: [:prg | prg keyword = 'fixme']) reset.
pc collected size. "(Print It: 1)"
pc collected explore.
And then finding back the Class and Method Name
Building upon that, why not do what is done in other environments (well,
I've got that in PHP, Java, ...) and use:
<todo:do this and that> or plain <todo>
<fixme: this and that> or plain <fixme>
<issue:issue#>
And have a specific tool to help the navigation (explore is fine for a
moment but...)
This would allow us to have an idea on the technical debt inside the
system, broken down by areas if we start leveraging Packages.
What I do not know is how much stress this would put on the system. Are
pragmas eating a lot or a just markers?
Phil