<br><br>Guillaume Piolat via Digitalmars-d-announce <digitalmars-d-announce@puremagic.com> napsal St, led 4, 2017 v 11∶48 :<br>
<blockquote type="cite"><div class="plaintext" style="white-space: pre-wrap;">On Friday, 30 December 2016 at 04:19:47 UTC, apz28 wrote:
<blockquote>This is my first package to learn D. Suggestion for improvement is welcome.

<a href="https://github.com/apz28/dlang-xml">https://github.com/apz28/dlang-xml</a>
</blockquote>
Welcome here!

- you don't have to commit .sln files, dub can generate them as needed
- that is for a package that will be reused you can use dub :)
- no need to use @property, there was a recent discussion about it. I think you can ignore it altogether.</div></blockquote><div><br></div><div><span style="white-space: pre-wrap">        Yes he can but I still prefer it for documentation purposes :)</span></div><br><blockquote type="cite"><div class="plaintext" style="white-space: pre-wrap;">
- you can use "final" before a class declaration to have all methods be final

  final class C { /* all methods are final /= }</div></blockquote><div><br></div><div><span style="white-space: pre-wrap">  Most common and IMHO better pattern is put final as first thing in class like this:</span></div><div><span style="white-space: pre-wrap;">    </span><span style="white-space: pre-wrap">class C {</span></div><div><span style="white-space: pre-wrap;">     </span><span style="white-space: pre-wrap;">      </span><span style="white-space: pre-wrap;">final: </span><span style="white-space: pre-wrap;">// all methods after this are final</span></div><div><span style="white-space: pre-wrap;"> </span><span style="white-space: pre-wrap;">}</span></div><div><span style="white-space: pre-wrap;"><br></span></div><div><span style="white-space: pre-wrap">  It has some advantages (class C is not final so you can still use inheritance),</span></div><div><span style="white-space: pre-wrap"> marking class final does not need to mean all methods are final (it makes sense to mark them and in curent implementation it is)</span></div><div><span style="white-space: pre-wrap">        you can still add easy one method which is virtual. To be fair I mostly use struct instead of final clases</span></div><br><blockquote type="cite"><div class="plaintext" style="white-space: pre-wrap;">

- no need for "public import std.exception : Exception;" to use Exception

imho the XML parser to beat in our ecosystem is kxml, which is small and serviceable</div></blockquote>