DEV Community

Cover image for Design Patterns in Web Development

Design Patterns in Web Development

Manuel Spagnolo on November 04, 2018

Check out the updated version here Introduction Foreword Before diving down in this series you might want to kno...
Collapse
smona profile image
Mason Bourgeois

Looking forward to the rest of the series!

Collapse
shikaan profile image
Manuel Spagnolo Author

I'll try to not let you down :D Thanks!

Collapse
biggregory profile image
Gregory

Really good and fun article. Please use a little bit less of Italian kitchen examples and good luck! Great job.

Collapse
shikaan profile image
Manuel Spagnolo Author

I thought that was the best part :(

Collapse
ackzell profile image
Axel Martínez

It was! We can't please everyone. If that helps you explain, then it is up to us to keep up, or just... don't read your content 😅

Thanks for sharing your knowledge!

Collapse
julesmanson profile image
jules manson

Love this series. I will continue to return to it as you write more articles.

Collapse
shikaan profile image
Manuel Spagnolo Author

Thanks for the support (:

Collapse
julesmanson profile image
jules manson

Just one question. Why not write all example code in Javascript? It is not only the number one web development language, it has become the world's most popular language. I think if you did it would attract far more readers because everyone who does any kind of web development is probably familiar with it.

Thread Thread
shikaan profile image
Manuel Spagnolo Author

As much as I agree with this and as much as it would be way easier for me*, articles of this series are loosely coupled with the language I am using for examples.

Plus, we deal with an industry changing on a daily basis and sticking with the fad of the day is not a wise choice in general. Also, I feel that playing with examples outside your comfort zone is the best way to actually understand the abstract ideas behind the topic, which ultimately are the takeaway of these articles. I hope no one really will copy paste code of those examples :D

*: as my colleagues say, I speak JavaScript more fluently than Italian :D

Thread Thread
julesmanson profile image
jules manson

It's not a fad.

Thread Thread
shikaan profile image
Manuel Spagnolo Author

I pay my bills mostly because of it. I hope it's not :D

Collapse
jalvini profile image
Joseph Alvini

This was a great article. I hope to learn more about design patterns. I am actually going through hell trying to figure out in what instance to use what specific design pattern. I am currently reading GOF so I think that should clarify a bit.

Collapse
shikaan profile image
Manuel Spagnolo Author • Edited on

To be quite fair, my current approach is to keep it simple. Unless I find an instance in which the use of a pattern is completely obvious, I usually don't go down that path. Most of the time change of requirements, many iterations over code and the inevitable amount of issues everyone goes through will tell you what is the best way to deal with the current scenario.

Collapse
kgrgreer profile image
Kevin G. R. Greer

If you're interested, I've shared slides and videos (1, 2, 3) of my design pattern class. The videos total about three hours.

Collapse
ronaldoperes profile image
Ronaldo Peres

Still trying to learn those patterns, when and where to use.

Collapse
shikaan profile image
Manuel Spagnolo Author

I guess the same as above applies here :)

Collapse
quit_ka profile image
Tetiana Kh

Thank you for a good article. Looking forward to reading the rest of the series!

Collapse
shikaan profile image
Manuel Spagnolo Author

First episode is out :) It's linked in the classification list

Collapse
tobiashoeft profile image
Tobias Höft • Edited on

Can you explain in a post how you start to plan an architecture which pattern which strategy. for me often it's hard to find a starting point

Collapse
shikaan profile image
Manuel Spagnolo Author

Looks like a wide topic! Maybe we can gather some real world scenarios and think about which pattern fits better the requirements. How does this sound?

Collapse
saraalfred profile image
Sara Alfred

I am marketing officer at my software agency and Design patterns are really unique and really creates great impact over the business site. Nice article Keep it up mate.

Collapse
shikaan profile image
Manuel Spagnolo Author

Thanks :)

Collapse
fatimatariq25 profile image
Fatima Tariq

Just an opinion - I think Strategy pattern is the easiest of them all and a developer should be able to adopt it quickly. Also, I feel that the factory pattern is a bit overrated :-) An important extension of the Builder pattern is the Step Builder patterns which can enforce conditions such as which 'build' step to allow next, mandatory parameters etc. Decorator, Facade and adapter are also (relatively) easy to pick up and more useful compared to Singleton. The toughest ones IMO are Command and Visitor

Collapse
nans profile image
Nans Dumortier • Edited on

I can't wait to read your articles! And I find that choosing to apply design patterns to web development in order to have practical examples is a great idea 😊

Collapse
shikaan profile image
Manuel Spagnolo Author

Thanks! (:

Collapse
jtpatil profile image
Jitendra Patil

Looking forward to reading the whole series, keep it up, man!

Collapse
shikaan profile image
Manuel Spagnolo Author

Thanks!

Collapse
diek profile image
diek

Nice! I will be waiting for your series :) thanks for the work.

Collapse
shikaan profile image
Manuel Spagnolo Author

Thank you for reading!

Collapse
foodogsquared profile image
Gabriel Arazas

Yes. Thanks for writing this article. Looking forward for the rest of the series (and the memes). 🙃

Collapse
shikaan profile image
Manuel Spagnolo Author

First episode is out!

Collapse
chris_cabizza profile image
Christian Cabizza

Interesting!

Collapse
rahildar profile image
rahildar

i am Excited .. looking forward to this series.

Collapse
shikaan profile image
Manuel Spagnolo Author

Thanks (: First episode is already there

Collapse
gabypentin profile image
Gabriela Amundarain

Cool article! Also, thanks for the refactoring resource, it's a great find

Collapse
shikaan profile image
Manuel Spagnolo Author

It was for me as well :) Thanks!

Collapse
dejo_17 profile image
Dean Juricic

Great and entertaining article. Looking forward for what follows next :) keep it up

Collapse
shikaan profile image
Manuel Spagnolo Author

Thank you (:

Collapse
elemes11 profile image
Samuel

also looking forward to the rest of the series. However, do you think its best we pick up the Design Patterns: Elements of Reusable Object-Oriented Software
to be able to follow up?.

Collapse
shikaan profile image
Manuel Spagnolo Author

To be honest, I still didn't start working on any of the articles. I just gathered some ideas, but I didn't write a single word yet. I guess we'll figure out together :D

Collapse
dangolant profile image
Daniel Golant

Looking forward to the rest. Your English is great, but if you ever want a second (or Nth) set of eyes on a post, hit me up. I have a solid amount of experience editing and translating :).

Collapse
shikaan profile image
Manuel Spagnolo Author

Thanks man (:

Collapse
weslexcore profile image
Wes McLaughlin

This is a great idea, looking forward to the series!

Collapse
shikaan profile image
Manuel Spagnolo Author

First episode is out! You can find it in the final list

Collapse
katleenbrown440 profile image
Kathleen Brown

It's a very detailed process design patterns in web development is very tricky if it is not organized i liked the whole blog specially the patterns you have described

Collapse
whitebloodcell profile image
Tom Clayson

Looking forward to your future articles!

Collapse
canopix profile image
Canopix

+++1000000 for " the dark ages of " hahaha Thanks!

Collapse
shikaan profile image
Manuel Spagnolo Author

Thank you for reading!

Collapse
bhupesh profile image
Bhupesh Varshney 👾

Nice 👌

Collapse
serpi90 profile image
Julian Maestri

The link to the Command article is broken

Collapse
shikaan profile image
Manuel Spagnolo Author

Whoops! Thanks for the headsup, it's fixed now (: