Javascript Design Patterns #1 - Factory Pattern

  Рет қаралды 168,353

DevSage

DevSage

Күн бұрын

Пікірлер: 180
@DevSage
@DevSage 4 жыл бұрын
📕"Design Patterns Explained Simply" Ebook: payhip.com/b/MLtJ 🤖 GitHub: github.com/pkellz/devsage/blob/master/DesignPatterns/FactoryDesignPattern.js 💙 Twitter: twitter.com/realDevSage 📙 Ebooks: payhip.com/devsage 💥 Discord: discord.gg/BP8wPv6raA
@Tubingonline1
@Tubingonline1 3 жыл бұрын
Great video. Your channel is superb. Just one request, please make the code legible for mobile screens. I usually watch these kind of videos on mobile when I am taking a break or something. I am sure there are others who prefer mobile as well.
@DevSage
@DevSage 3 жыл бұрын
I'm glad it helped you!
@realtechbro7982
@realtechbro7982 5 жыл бұрын
I'm just getting into software patterns as a junior developer and concise nature of these videos are amazing. thank you.
@mike-yd5fv
@mike-yd5fv 2 ай бұрын
Hi, your comment is over 5 years ago, I just want to know how are you know in your career? Thank you.
@seanweber4252
@seanweber4252 5 жыл бұрын
whoah, your implementation of say() and use of say.call() made me realize things that I guess I already knew but didn't understand the practical uses of. I'm really looking forward to watching the rest of these design pattern videos, fantastic work!
@DevSage
@DevSage 5 жыл бұрын
Appreciate you
@onlyme0349
@onlyme0349 5 жыл бұрын
@@DevSage Why aren't you passing it in as a param? I feel like that gives you more of an overview of what the function does. Well.. maybe not in this example but I think you get what I mean right
@DevSage
@DevSage 5 жыл бұрын
@@onlyme0349 I suppose either way could work
@alecjordan6100
@alecjordan6100 5 жыл бұрын
My BROTHA you don’t know how happy I am to find these videos. Keep up the great work. 👌🏾
@DevSage
@DevSage 5 жыл бұрын
💪🏾💪🏾💪🏾
@cody_codes
@cody_codes 4 жыл бұрын
I’m just getting started with modern JS after working with Drupal & PHP for the past three years without an understanding of any design patterns, so I’ve gotta day I’m stoked on your series here. Thank you for putting this out there!
@dragonballmysteries7580
@dragonballmysteries7580 2 жыл бұрын
Thanks alot dude, I was looking all over the internet for a simple demonstation of how to use Factory Patterns and your video was it. Be blessed man. 😁
@alejandrovillanueva4562
@alejandrovillanueva4562 3 жыл бұрын
This is the best explanation of design patterns I have ever seen. Thanks!
@lucasmendonca3841
@lucasmendonca3841 5 жыл бұрын
No words to describe this video other than simple, concise and straight to the point. The simplicity in your way to explain code makes it entertaining for those who, like me, are taking their first steps into the development world. Awesome video!
@DevSage
@DevSage 5 жыл бұрын
Glad I could help! 😁
@robertp3596
@robertp3596 4 жыл бұрын
Damn, underrated channel. Thanks for all this!
@lronSausage
@lronSausage 4 жыл бұрын
His way of writing curly brackets is driving me crazy.
@RobertMcHalffey
@RobertMcHalffey 4 жыл бұрын
It's probably because of his Java background (or C, or C++).
@MarianoGianni1
@MarianoGianni1 4 жыл бұрын
Taht's how its done in C#, I find it very elegant and its easier to read
@nerdalotdulac8552
@nerdalotdulac8552 4 жыл бұрын
I came to the comment section to find this comment xD
@xyz-ey7ul
@xyz-ey7ul 2 жыл бұрын
I think I used to see or do this when I was working with java/c#. And probably the ides would format it that way
@lronSausage
@lronSausage 2 жыл бұрын
A long time ago back in school there was actually 2 competing sides and this was 1 of them, but I think eventually no one does it anymore. I dont know anyone who does this now lol
@dolicious
@dolicious 4 жыл бұрын
this was so good !! I'm starting to see how this important especially as a junior developer on the job hunt !
@SimPwear84
@SimPwear84 4 жыл бұрын
I am so glad I found your channel bro! Your channel full of gems. Love and blessings from South Africa
@DevSage
@DevSage 4 жыл бұрын
Appreciate it. Nice to meet you 😁
@470tayloraveaptc
@470tayloraveaptc 4 жыл бұрын
to be honest: you by far have the best vids. keep them coming please!!
@rue6695
@rue6695 4 жыл бұрын
Nice way about your explanations. Great tone of voice and such too. Very calming 😌
@kubataiupov1245
@kubataiupov1245 Жыл бұрын
The video and explanation are very comprehensive and easy to follow. Thank you!
@salinajohn370
@salinajohn370 4 жыл бұрын
Your delivery is outstanding. Much appreciated
@DevSage
@DevSage 4 жыл бұрын
Thanks!
@Maewmiaow
@Maewmiaow 2 жыл бұрын
This is great. Short but affective. Thank you very much.
@DevSage
@DevSage 2 жыл бұрын
You're welcome!
@raminkhodaie4063
@raminkhodaie4063 Жыл бұрын
great video, I read this concept from a book and the video helps me to get the point very well.
@subhamtripathi4514
@subhamtripathi4514 4 жыл бұрын
You should also add when NOT to use this pattern & common gotchas. Every pattern has its pros & cons. Nice video btw :) Thanks!
@traveltechtaste41
@traveltechtaste41 Жыл бұрын
Thank you explaining this in such a simple way
@perschonca
@perschonca 2 жыл бұрын
hello bud... you just made things click for me in a huge way. wow. thank you
@DevSage
@DevSage 2 жыл бұрын
Glad I could help
@qber83
@qber83 5 жыл бұрын
Awesome video! Very easy to follow and I actually feel like I understand the factory pattern now. A follow up describing the best use cases for the factory design pattern would be great also! Keep up the good work!
@DevSage
@DevSage 5 жыл бұрын
I appreciate you
@neuodev
@neuodev 2 жыл бұрын
Awesome introductory video!
@projectrevolution8012
@projectrevolution8012 3 жыл бұрын
Man you just explain it so easily same with your recursion video kudos to you 👌😎😎
@DevSage
@DevSage 3 жыл бұрын
Thanks 👍🏽
@alananakhaev4922
@alananakhaev4922 Жыл бұрын
Good shit even tho it was 3 year ago. Learnt something new, easy and fast. Thank you
@AlexTechie
@AlexTechie 5 жыл бұрын
Good video and I also enjoyed your video on building a library. One thing to note: you shouldn't need a break statement if you're returning a value. Sub'd and looking forward to more videos.
@DevSage
@DevSage 5 жыл бұрын
You're right. Never noticed that until now haha. Thanks for the sub
@Stiefel1990
@Stiefel1990 4 жыл бұрын
Great! Very instructive material! Thanks a lot!
@kshitizgautam3200
@kshitizgautam3200 3 жыл бұрын
this video was very helpful to understand factory design pattern
@DevSage
@DevSage 3 жыл бұрын
Glad it was helpful!
@isaacbamidele9899
@isaacbamidele9899 4 жыл бұрын
Gang of four was just giving me headache...Thanks man
@procydev1372
@procydev1372 3 жыл бұрын
Great tutorial! You should look into a pop filter so your P's and B's don't make such a loud wind-like sound. Just a suggestion, keep up the super helpful stuff! :)
@hunorvadasz-perhat6001
@hunorvadasz-perhat6001 4 жыл бұрын
Fantastic! A simple yet very easy to understand explanation! Thank you =D Please make more videos on more design patterns =)
@DevSage
@DevSage 4 жыл бұрын
I appreciate it
@danielderese3170
@danielderese3170 4 жыл бұрын
Thanks brother. very clear presentation.
@DevSage
@DevSage 4 жыл бұрын
You're welcome
@shadeeye
@shadeeye 3 жыл бұрын
This is very helpful. Thank you!
@DevSage
@DevSage 3 жыл бұрын
You're welcome!
@aliciapeter562
@aliciapeter562 3 жыл бұрын
thanks for posting ~ great explanation
@DevSage
@DevSage 3 жыл бұрын
Glad you enjoyed it!
@hk_build
@hk_build 3 жыл бұрын
clean and neat thanks for great content
@DevSage
@DevSage 3 жыл бұрын
Thanks for watching!
@ritsk4338
@ritsk4338 4 жыл бұрын
Saw... Liked... Subscribed
@TarekFaham
@TarekFaham 2 жыл бұрын
This is very confusing... The create method must be static, and the type must be of type enum, a map or similar. Finally, the call method will add an insult to the injury... It must be part of a parent class. And, why you are not using the class keyword to create objects?
@DevLearn-lv7nr
@DevLearn-lv7nr 11 ай бұрын
hey dev thank you for this - also as a side point in the above example - there's a boundless array being populated right ? with like in each Element will be [{"Patrick" ,"Developer"}],[{"John","Tester"}] is that how the outputted array will look ?
@matheuscostapaiva
@matheuscostapaiva 4 жыл бұрын
Great video. What is the advantage of using this pattern instead of a Class? It seems to do the same with a good quality code as well.
@rutwickgangurde3247
@rutwickgangurde3247 4 жыл бұрын
I don't think he realised he had to answer this question! Lol.
@matheuscostapaiva
@matheuscostapaiva 4 жыл бұрын
@@rutwickgangurde3247 yeah, it's not a rhetorical question, haha
@nicholasleask1159
@nicholasleask1159 3 жыл бұрын
I really hope this gets answered as I'm wondering why he doesn't create classes for the developers and testers instead of functions
@LibraryOfTheOligarchs
@LibraryOfTheOligarchs Жыл бұрын
Appreciate you! Know of any projects or step by step walkthroughs to help a person practice this?
@AndrewRusinas
@AndrewRusinas 3 жыл бұрын
So, what's wrong with just employees.push(new Developer('Patrick')), employees.push(new Tester('Mike'))? I don't get what problem exactly this pattern solves because, in my opinion, it do exactly the opposite and create more problems because you have to keep in mind type constants. Every time you want to create new object, you have to check your factory method and find needed type.
@AndrewRusinas
@AndrewRusinas 3 жыл бұрын
Also, every time when you are reading the code, you probably don't know what that numbers is
@fatimaiqra2169
@fatimaiqra2169 3 ай бұрын
nice explanation, thanks!
@1ju598
@1ju598 3 жыл бұрын
why you didn't put the semicolon at the end of code?
@DevSage
@DevSage 3 жыл бұрын
Didn't feel like it
@PleoPleo1
@PleoPleo1 5 жыл бұрын
Great video. Thanks man :D
@DevSage
@DevSage 5 жыл бұрын
Thanks!!
@devinlauderdale9635
@devinlauderdale9635 3 жыл бұрын
I find your lack of default case in your switch statement disturbing
@Dragonten312
@Dragonten312 2 жыл бұрын
Could you have used Class syntax for this instead?
@Ad9911io
@Ad9911io 11 ай бұрын
I think the 'break' statement inside the switch cases is irrelevant because you have a return statement which also exists the switch.
@DevSage
@DevSage 7 ай бұрын
You are correct
@riccarrasquilla379
@riccarrasquilla379 Жыл бұрын
thanks for the tips and explanation
@Addybhoot93
@Addybhoot93 5 ай бұрын
So that means Abstract Factory is when we don’t want to modify the values from outside the function using object creation?
@MarshMakesComics
@MarshMakesComics Жыл бұрын
Just learning Javascript so I'm probably missing something but you are talking about objects in this but it seems to me you are using functions. Except as far as I know "this" is usually used with objects so yeah. Just a bit confused.
@andreazappa412
@andreazappa412 4 жыл бұрын
So this remind me when teacher explained me OOP concepts , the Developer and other entities are called Model or "Pojo" in java.
@ajp-sd4mx
@ajp-sd4mx 3 жыл бұрын
why does an instance of the factory function need to be created? Would you not be able to create employees directly from the factory function itself?
@DevSage
@DevSage 3 жыл бұрын
I guess you don't actually need the factory function. Yeah you could return employees from the factory itself
@ajp-sd4mx
@ajp-sd4mx 3 жыл бұрын
@@DevSage ok. What's the benefit of the instance of the factory function then? Just curious as I'm a beginner with JS 😛
@aashirkhan5172
@aashirkhan5172 4 жыл бұрын
I love your way of teaching, here I have tried factory pattern in a functional way. const baseData = (name, type) => { return { name, type }; }; const factory = (name, type) => { switch (type) { case "Developer": return baseData(name, type); case "Tester": return baseData(name, type); } }; const instnace = factory("Aashir", "Developer"); console.log("instance: ", instnace); Please let me know if you found anything wrong with it, Thanks :)
@justsomeguy8385
@justsomeguy8385 2 жыл бұрын
This does not scale. For instance, if more unique properties are added to either employee type, they would need to be passed into the factory, which is just too much redundant code. Much better to have an object for each employee type that can be expanded upon.
@justsomeguy8385
@justsomeguy8385 2 жыл бұрын
Also your switch does literally nothing lol. Hopefully after 2 years you figured this all out on your own though.
@lisangolachristian6676
@lisangolachristian6676 2 жыл бұрын
No need to have break in the switch because it'a inside a function and there is a "return"...But it's a very good good video👏🏾
@DevSage
@DevSage 2 жыл бұрын
Correct! And thank you!
@tomdevisser4295
@tomdevisser4295 2 жыл бұрын
How is this entire thing better than just using new Developer(“Patrick”)? Seems way more concise to me.
@Tubingonline1
@Tubingonline1 3 жыл бұрын
Great video. Your channel is superb. Just one request, please make the code legible for mobile screens. I usually watch these kind of videos on mobile when I am taking a break or something. I am sure there are others who prefer mobile as well.
@esnova
@esnova 4 жыл бұрын
which javascript books and course have help you the most
@d123-y5i
@d123-y5i 3 жыл бұрын
when you return in switch, you don't need to break.
@TheMDM_YT
@TheMDM_YT 3 жыл бұрын
Thanks this is great stuff
@DevSage
@DevSage 3 жыл бұрын
Glad you like it
@danser_theplayer01
@danser_theplayer01 Жыл бұрын
A class is a factory, typeof anything "new" is "object", typeof Object is "function" because it's constructed via function, meaning it's made by a factory. Welcome to javascript ladies and gentlemen.
@buchdev
@buchdev 4 жыл бұрын
Well explained
@janguardian
@janguardian 11 ай бұрын
You do not need a break if you return from each case in switch, right?
@DevSage
@DevSage 7 ай бұрын
You are right.
@WorstDeveloper
@WorstDeveloper 3 жыл бұрын
I don't see how this helps though. The only thing it did was to obfuscate what type of employee you created. No one is going to remember if they need type 1, 2, 3, 4, 5, 6, 7, etc.
@DevSage
@DevSage 3 жыл бұрын
Yes, using numbers would get a little confusing. This pattern is more useful when you're using a strongly typed language like TypeScript where you could make use of enums instead of raw numbers.
@kareemmostafa7838
@kareemmostafa7838 3 жыл бұрын
It's very similar to Redux Action creators and Reducers, right?
@dimitro.cardellini
@dimitro.cardellini Жыл бұрын
Hey, @DevSage, could you please provide reference to the defintion of the "Factory Pattern" you presented in the video? The classic Gang of Four Patterns LIst doesn't contain "Factory", it contains "Abstract Factory" and "Factory Method", your solution doesn't match any of them. So, have you invented the new one? Sorry for the question, but a lot of developers could be confused and fail the interview just due to the misunderstanding in terms and definitions ...
@chintore
@chintore Жыл бұрын
Yes, this is not clean factory pattern. In this example factory has dependency on Developer and Tester. Actually EmployeeFactory have to be abstract class and we need two subclass like DeveloperFactory and TesterFactory. So abstract factory class not depends on concrete Developer or Tester implementation. And we can easy add another class like Designer, and create DesignerFactory implementation of abstract factory class. So our code is open to extension and close to modification. In the video example factory is not close to modification and open for extension. And also Factory need some additional logic(interface) inside factory itself. Otherwise it useless.We can add some methods to Factory like, work() and each class Designer Developer and Tester will works, but in they way.
@gabberfrombcn
@gabberfrombcn 2 жыл бұрын
Amazing video. Would it not be better to define EmployeFactory as an object with a method called "create"?
@DevSage
@DevSage 2 жыл бұрын
You could certainly do that, yes. That might actually be an easier way to do it. I just wanted to make sure the general idea of the pattern is understood
@rose123998
@rose123998 3 жыл бұрын
i dont understand the need of EmployeeFactory and inner create function. can't we have createEmployee function ?
@laxmikanthgurram1074
@laxmikanthgurram1074 Жыл бұрын
EmplopyeeFactory is declared as a function ,but being called just like a constructor using new EmployeeFactory().slightly confused with this.
@manibharathipattilingam3582
@manibharathipattilingam3582 3 жыл бұрын
Is really factory method often used in real time applications?
@DevSage
@DevSage 3 жыл бұрын
Yes!
@eelguneezmemmedov1671
@eelguneezmemmedov1671 Жыл бұрын
Vau it is around 6 month i am working with redux state management.I didnt know that i was using Factory pattern :)
@camilotello3296
@camilotello3296 11 ай бұрын
I LOVED THAT.
@DevSage
@DevSage 7 ай бұрын
Glad you liked it!
@alute5532
@alute5532 Жыл бұрын
Best for building many types and many objects Factory an object that manufactues many objects
@andre.unsal.13
@andre.unsal.13 2 жыл бұрын
A flaw here is that you case types are not communicative in your code. You should be able to pass in 'tester' or 'developer'
@Saudavelpro
@Saudavelpro 5 жыл бұрын
Do you can recommend me a book about this content ?
@DevSage
@DevSage 5 жыл бұрын
www.dofactory.com/javascript/design-patterns addyosmani.com/resources/essentialjsdesignpatterns/book/
@Saudavelpro
@Saudavelpro 5 жыл бұрын
DevSage thanks, great playlist.
@omirrrr
@omirrrr 4 жыл бұрын
I'm not sure how it's better than just "employees.push(new Developer('Patrick'))
@Auzep
@Auzep 4 жыл бұрын
Maybe it's just good to practice structured code?
@omirrrr
@omirrrr 4 жыл бұрын
Hmn i don't like over complicating for the sake of it, it would be nice to see some situations where the benefits of this structure can be seen
@Auzep
@Auzep 4 жыл бұрын
@@omirrrr True, tbh I'm just starting into design patterns because I just had a job interview where they asked me about them, so I'm not sure either.
@benjaminbaer5485
@benjaminbaer5485 4 жыл бұрын
Because you have a centralized factory for a type of objects. If you for instance get a json with multiple employees you can then just call employeeFactory.create(name, type) instead of implementing the switch for everytime you import data. And if you change Developer to take (name, salary) you just have to change it in one place. As soon as multiple devs work on it, its easier to have one reference then to dig trough everyones code if they called new Developer(n), as an example.
@sashn1
@sashn1 3 жыл бұрын
@@benjaminbaer5485 honestly your examples made the penny drop for me. i feel a lot of design pattern explanations (or maybe even tech explanations in general) focus only on how to do the thing but not what the benefits are when compared to other solutions.
@lowercaseguy3578
@lowercaseguy3578 5 жыл бұрын
Hey, i have noticed it's similar to C programming way of creating function .....
@RahulTO-d1i
@RahulTO-d1i Жыл бұрын
Understand well 💗
@simetric6551
@simetric6551 2 жыл бұрын
Excellent
@renren2145
@renren2145 2 жыл бұрын
no need brake after return
@abdulkadirbala2339
@abdulkadirbala2339 Жыл бұрын
I think this breaks the OCP It would be better to create an EmployeeFactory that returns a EmployeeType object in the then let the EmployeeType Class handle how users are created, that way you only have to modify the Employee Types not the Employee Factory
@vinciwang9703
@vinciwang9703 3 жыл бұрын
return and break. there is no need to break gain
@DevSage
@DevSage 3 жыл бұрын
You're right!
@coffeymay6775
@coffeymay6775 4 жыл бұрын
Couldnt you just write say(emp) instead of say.call(emp)?
@Selam-fr4lf
@Selam-fr4lf 4 жыл бұрын
“This” inside say would refer to the window object. Using call or apply would pass in what “this” you are implying
@ixuz07
@ixuz07 4 жыл бұрын
There has to be a better example use case of factory patterns than this. This just made the code much less readable for no benefit.
@71GA
@71GA 4 жыл бұрын
JS factory functions are not used with a keyword "new"...
@DevSage
@DevSage 4 жыл бұрын
Explain it to me
@sharathtelu1904
@sharathtelu1904 4 жыл бұрын
Yes. The functions used here are Constructor Functions. In JavaScript Factory Functions are regular functions. JavaScript is not an Object Oriented Programming language like Java but it supports OOP. Some programmers do not like using Constructor Functions in JavaScript because of how the 'this' keyword works and how it's reference changes depending on the program. Below is an example of how we could rewrite the code using Factory Functions : function developer(name) { let newDev = { } newDev.name = name; newDev.type = "Developer"; return newDev; } function tester(name) { let newTester = { } newTester.name = name; newTester.type = "Tester"; return newTester; } function employee( ) { const create = (name, type) => { switch(type) { case 1: return developer(name); case 2: return tester(name); } } const say = ( obj ) => { console.log(" Hi I am " +obj.name+ "and I am " +obj.type); } return { create, say }; } const emp = employee( ); const employees = [ ]; employees.push( emp.create("Patrick", 1) ); employees.push( emp.create("John", 2) ); employees.forEach( ( obj ) => { emp.say(obj) }); Apart from this, I think the explanation in the video is pretty good!
@taniakedrova
@taniakedrova 3 жыл бұрын
thanks
@DevSage
@DevSage 3 жыл бұрын
You're welcome!
@GitCodeError
@GitCodeError 3 жыл бұрын
This is call Constructor Pattern not Factory Pattern Please correct this The Constructor Pattern The Module Pattern The Revealing Module Pattern The Singleton Pattern The Observer Pattern The Mediator Pattern The Prototype Pattern The Command Pattern The Facade Pattern The Factory Pattern The Mixin Pattern The Decorator Pattern Flyweight
@ДенисДемиденко-й7о
@ДенисДемиденко-й7о 5 жыл бұрын
Isn't it the strategy pattern?
@DevSage
@DevSage 5 жыл бұрын
No the strategy pattern is this -> kzbin.info/www/bejne/iZrGfWecjqitbtk
@SquaredbyX
@SquaredbyX 4 жыл бұрын
Cosnts... the special case mutables
@robertgao9241
@robertgao9241 5 жыл бұрын
Isn’t it a constructor pattern?
@DevSage
@DevSage 5 жыл бұрын
It's a creational pattern
@preetamvarun9219
@preetamvarun9219 Жыл бұрын
Thank you
@aleksfanded6550
@aleksfanded6550 2 жыл бұрын
Didn't worked :(
@mediationbreaksessions524
@mediationbreaksessions524 3 жыл бұрын
great way to describe it, i sub'd!
@DevSage
@DevSage 3 жыл бұрын
Thank you 😊
@SdotFive
@SdotFive 3 жыл бұрын
bro do you have another channel? Cause ya voice sounds like Computer Science channel lol
@DevSage
@DevSage 3 жыл бұрын
Haha well no that's not my channel. But after going to that channel and listening for myself I can see/hear EXACTLY what you mean lol
@tenebrae1191
@tenebrae1191 8 ай бұрын
👏
@27sosite73
@27sosite73 11 ай бұрын
nice!
@DevSage
@DevSage 7 ай бұрын
Thanks!
@trapslime16
@trapslime16 4 жыл бұрын
Great
@ragtop63
@ragtop63 2 жыл бұрын
Very strange design pattern. Interesting though.
@Aristocrator
@Aristocrator 5 жыл бұрын
There's not much value in that video without comprehensive explanation of the use cases
@DevSage
@DevSage 5 жыл бұрын
Depends on how much you already know about factories
@Aristocrator
@Aristocrator 5 жыл бұрын
@@DevSage The concept is rather simple. So the use cases would be a good addition. The use cases may be something what makes the material a bit different from tones of pattern tutorials on KZbin
@developerAKX
@developerAKX 3 жыл бұрын
Ya bro how are you
@DevSage
@DevSage 3 жыл бұрын
I'm doing good man. How about you?
@Gorr1995
@Gorr1995 4 жыл бұрын
document.createElement(...)
Javascript Design Patterns #2 - Singleton Pattern
7:35
DevSage
Рет қаралды 64 М.
7 Design Patterns EVERY Developer Should Know
23:09
ForrestKnight
Рет қаралды 204 М.
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 81 МЛН
To Brawl AND BEYOND!
00:51
Brawl Stars
Рет қаралды 17 МЛН
小丑教训坏蛋 #小丑 #天使 #shorts
00:49
好人小丑
Рет қаралды 54 МЛН
人是不能做到吗?#火影忍者 #家人  #佐助
00:20
火影忍者一家
Рет қаралды 20 МЛН
How AI will Impact Agencies
44:44
NewYorkFestivals
Рет қаралды 37
Factory Method Pattern - Design Patterns (ep 4)
27:21
Christopher Okhravi
Рет қаралды 560 М.
The Most Important Design Pattern in React
35:04
Cosden Solutions
Рет қаралды 120 М.
TypeScript Factory Patterns (No BS TS Series 2 Episode 1)
22:07
Jack Herrington
Рет қаралды 36 М.
5 Design Patterns That Are ACTUALLY Used By Developers
9:27
Alex Hyett
Рет қаралды 323 М.
Dependency Injection, The Best Pattern
13:16
CodeAesthetic
Рет қаралды 908 М.
How Senior Programmers ACTUALLY Write Code
13:37
Thriving Technologist
Рет қаралды 1,6 МЛН
5 JavaScript Concepts You HAVE TO KNOW
9:38
James Q Quick
Рет қаралды 1,4 МЛН
Why You Shouldn't Nest Your Code
8:30
CodeAesthetic
Рет қаралды 2,8 МЛН
Support each other🤝
00:31
ISSEI / いっせい
Рет қаралды 81 МЛН