rust-unofficial / patterns

A catalogue of Rust design patterns, anti-patterns and idioms
https://rust-unofficial.github.io/patterns/
Mozilla Public License 2.0
7.84k stars 352 forks source link

Add init-struct pattern #388

Open virtualritz opened 5 months ago

virtualritz commented 5 months ago

See here for a more exhaustive description.

simonsan commented 5 months ago

In general, I'm not sure, that this values an own article.

I also see it more as an idiom, than a pattern.

Can you look into https://github.com/rust-unofficial/patterns/blob/main/src/idioms/ctor.md and see what you would want to add there?

Also, there is something written down about that topic here already:

P.S.: Before writing an article and making a PR it's always better to open an issue/discussion before as stated in our Contribution guidelines, so there is no energy being wasted on either side.

virtualritz commented 5 months ago

In general, I'm not sure, that this values an own article.

I also see it more as an idiom, than a pattern.

I find that many Rustaceans, even people using the language for a while are oblibious of this pattern/idiom. Especially people coming from other languages. So I though rather than adding it as a "footnote" somehere on an existing page, I make a dedicated one.

Today I ran into this again here. I would say overall I ran into people with considerable Rust experience being unaware of this maybe half a dozen times last year.

That's why I decided to write this. But it only took me 20mins. So if the PR is rejected, it's not a biggie. :grin:

simonsan commented 5 months ago

So I though rather than adding it as a "footnote" somehere on an existing page, I make a dedicated one.

It doesn't need to be only a footnote in said existing article. You can write a few lines about it as well and then link the both links I posted for example, to make people aware, that this topic is explained in the book.