<div class="gmail_quote"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="gmail_quote"><div class="im"><div></div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">

I want to call it like KisStrokeJobStrategy. What do you think, is it easy to distinguish it form KisStrokeJob class?<br></blockquote><div><br></div></div><div>It is easy to distinguish because they are related. KisStrokeJobStrategy works with instances of KisStrokeJob (if I understood the diagram correctly), describing how to use them.</div>

<div><br></div><div>I think the name KisStrokeJobStrategy is much better.</div><div><br></div><div>Dab is very specific to brushes that work like stamps. New brush engines like the Sketch Brush do not work with &quot;dabs&quot; anymore; they may use PaintAt, but they are not stamping seals over the canvas 1 at a time. So I think we should look for a better name to refer to single operations of painting, something more general.</div>
</div></blockquote><div><br>Ok, I&#39;ll rename it then.<br> </div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><div class="gmail_quote">
<div class="im"><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;">2) I don&#39;t like the fact that the definition of the subtype of the class is put into the beginning of the name.<br>


<br>KisPainterBasedStrokeStrategy -- probably, not good<br>KisStrokeStrategyPainterBased -- better?<br><br>FreehandStrokeStrategy -- not good<br>KisStrokeStrategyFreehand -- better?<br><br>What do you think? What is the common practice here?<br>

</blockquote><div><br></div></div><div>I (think I) have seen both practices.</div><div>I&#39;ve seen the Subtype-goes-at-the-end naming strategy in classes like KoDocumentSection (there&#39;s -View, -Delegate and -Model) and for me it was very easy to follow.</div>

<div><br></div><div>The reason it is easy to follow is because I can simply grep for classes with the same root and will find all subtypes. That won&#39;t work with the reverse style of naming which is also less logical if you ask me (obviously I can perform a better regular expression search but... it will be more contrived).</div>

<div><br></div><div>I think using:</div><div><br></div><div>Global Prefix - Type - Subtype - Subsubtype</div><div><br></div><div>Is the most logical convention, and useful when looking for related classes.</div></div></blockquote>
<div><br>Yes, I was not sure about it because I thought it might become quite difficult to read. Btw, we have a kind of such naming for KisTool hierarchy: KisToolPaint, KisToolFreehand.<br>And we can expand this idea to namespaces, it&#39;ll be more obvious, i guess: StrokeStrategy::Freehand, StrokeJobStrategy::Freehand.<br clear="all">
</div></div><br>-- <br>Dmitry Kazakov<br>