ATM LOW LEVEL DESIGN | FACEBOOK INTERVIEW QUESTION | SOFTWARE DEVELOPER INTERVIEWS

  Рет қаралды 25,424

Soumyajit Bhattacharyay

Soumyajit Bhattacharyay

Күн бұрын

Пікірлер: 42
@Gouranshu
@Gouranshu 2 жыл бұрын
Best LLD video I’ve seen so far, great work! As a feedback I would like to say it would be really great to quickly show the class diagram of the design at the end of the video. It would be a great addition for proper understanding and summary!
@snehachauhan9421
@snehachauhan9421 6 ай бұрын
Your system design explanation is best among all the other youtube channels I've seen so far. The way to you explain is so precise and clear, and there is no confusion throughout the video You actually explain how to approach a complex problem step by step without making it complex. Bestttt!!!
@amansingh1661
@amansingh1661 3 жыл бұрын
"And so on and so forth" is the major stress release point :)
@shubhamsrivastava1972
@shubhamsrivastava1972 2 жыл бұрын
Good explanation however I would suggest some of my inputs - 1. ATM should not have BankService dependency, it should be inside the Bank class 2. Similarly the factory class should take Bank as an input and return the corresponding BankService 3. ATM class should have a Start() or a similar method that is gonna initiate any transaction by fetching the CardInfo, and from CardInfo fetch the Bank, and from Bank it should fetch the BankService following which it should call the ExecuteTransaction() of the bank service. PS - This is just my observation
@abhinavrastogi5310
@abhinavrastogi5310 2 жыл бұрын
Yes, that makes more sense and fits the design well. Here, we can follow strategy pattern as well (composition over inheritance concept) by Creating BankService which BankA and BankB concrete classes can implement and then we inject the dependency in Bank class via constructor.
@radhikautsav2487
@radhikautsav2487 2 жыл бұрын
@@abhinavrastogi5310 Hey could you elaborate a bit further please? The constructor part specially, it would be really helpful, thanks!
@lakshaychawla78
@lakshaychawla78 2 жыл бұрын
Really appreciate the efforts you are putting in to make it and i would like to congratulate for these worthy videos. Just as a suggestion- the way you introduced the videos of Hotel and Library Mgmt System by creating Part 1(req +. usecase diag) and Part 2(coding), it puts more emphasis and gets wired in mind :) Also, why not create it for other systems like food delivery, cab service, payment svc etc. Also, System design problems.
@rahulsharma5030
@rahulsharma5030 4 жыл бұрын
Awesome Video!! You made it looks like very very simple.You are teaching us something unique.Thanks. I need some clarifications : 1.CashDispenser should have method to load Cash also?The bank can load cash into ATM by using this. 2.Why do customer needs BankService bankServiceObj ?Isn't it job of ATM? 3.Why do we need to store Bank object in card?We should store complete object only if we think it makes sense.But here i think we should have only bank Identifier like bank ID/Name to which it belongs,instead of complete bank object. 4.How will ATM access BankServiceFactory?Because each time ATM operation is called,we need to call BankServiceFactory to get BankService Object.So do we need to put BankServiceFactory also in ATM class? Its a long list of doubts:).I hope you take take time to help me.Thanks in advance
@teenthofabud
@teenthofabud 3 жыл бұрын
Why does Customer class has a direct reference to BankService? Shouldn't customer class be a simple POJO in nature and free from any business logic within itself?
@harshitbhagat554
@harshitbhagat554 11 ай бұрын
Great explanation and design. Would request to add UML diagram as well and explain that bit for 2-3 minutes.
@rajeshg3570
@rajeshg3570 2 жыл бұрын
This is very nice. I've couple of comments though - 1. It would have been nice if you have details around the DB design and tables.. 2. It would have been better if you can slow down little bit when explaining the logic/intuition behind defining each class. and also In the 'Transfer' class - I think it makes more sense to have the destAccount field type as 'Account' instead of 'String'
@sandeep5675
@sandeep5675 3 жыл бұрын
Superb explanation and design. Really appreciate your effort
@arunbhati1417
@arunbhati1417 4 жыл бұрын
Please upload a video on Job Schedular and Meeting Scheduler. Please. Thanks for the efforts.
@alokch007
@alokch007 3 жыл бұрын
It would be really helpful if you can explain database entities corresponding to these java classes.
@ganant23
@ganant23 Жыл бұрын
no UML diaagram, I recommend starting with that first so beginners can coonect the dots. Good video overall
@cactusbee8474
@cactusbee8474 2 жыл бұрын
This was really great video and the flow of the video is easy to remember. Can you also make a video on lld design a cache with LRU. Pls.
@fb_a
@fb_a 2 жыл бұрын
But with reference to base class we can access only it's properties and it's/overriden methods not the child object one's. Liskov Substitution Principle fails, isn't it?
@sasanknvs5603
@sasanknvs5603 2 жыл бұрын
I have the same question with respect to the Transaction class and its subclasses. How are we going to know what kind of transaction is it from the Transaction base class ?
@HimanshuSharma-fl1md
@HimanshuSharma-fl1md 4 жыл бұрын
Doing a great job... please make video on parking lot design
@SoumyajitBhattacharyay
@SoumyajitBhattacharyay 4 жыл бұрын
Yes i am done with the code for parking lot. Will be uploading it very soon
@SoumyajitBhattacharyay
@SoumyajitBhattacharyay 4 жыл бұрын
Hi the patking lot video is out!! kzbin.info/www/bejne/jGqxdoKCpdlmqsk
@manabendranathsaren2866
@manabendranathsaren2866 4 жыл бұрын
Doing great, a useful youtube channel
@SoumyajitBhattacharyay
@SoumyajitBhattacharyay 4 жыл бұрын
Thanks a ton
@kaushikg1996
@kaushikg1996 3 жыл бұрын
Loved the content. 👌
@aggu90
@aggu90 3 жыл бұрын
one Query why we are having Bank Details in CardInfo object? Bank details can be like name but why List? what adv we are getting with this.... Waise as usual Msst video.. Ek Elevator design pe bhi bana do bhai bahut jagh puch rahe hai ;)
@ShaanRoyal
@ShaanRoyal 4 жыл бұрын
you missed the cheque class . .clear & crisp explanation by the way . . (y)
@amitagrawal4660
@amitagrawal4660 4 жыл бұрын
Simplest explanation :) One question: Is writing API's sufficient for interview or we need to also draw Database diagram? Also, please create video for Elevator Design as well
@krishnarajyadav3953
@krishnarajyadav3953 3 жыл бұрын
Hii , Thanks for the video . Very Helpful. I have one doubt : Why we are extending Deposit in CashDeposit and ChequeDeposit , shouldn't we need to extend Transaction in both as Transaction contains all the info just as Transfer class ?
@palakjain2505
@palakjain2505 2 жыл бұрын
why is dispenseCash() not part of ATM class? Why did you make a separate class for it?
@shasisoft
@shasisoft Жыл бұрын
We can use SBI atm to swipe any bank atm card and withdraw money right? So, if we are hardcoding BankA, BankB, BankC in our design how can this be scalable? If there is a new bank established recently, how can it support this new bank's atm card?
@Nishant0571
@Nishant0571 2 жыл бұрын
very helpful content. Can you upload LLD for some finance app like cred, ETMoney, Razorpay
@akshaygaikwad3793
@akshaygaikwad3793 2 жыл бұрын
Is it necessary to have the BankService inside customer. It already has the CardInfo obj ?
@sushantkumarrai4682
@sushantkumarrai4682 3 жыл бұрын
please make a series on design patterns
@rahulsharma5030
@rahulsharma5030 3 жыл бұрын
Account class should also have customer, as its a common case, given a account which customer it belongs to
@umber3117
@umber3117 4 жыл бұрын
Nice and thanks for sharing. Can you please add a class diagram also?
@kunal-gd1xp
@kunal-gd1xp 3 жыл бұрын
Is this LLD or machine coding ??? Plz reply soumyajit bhai....
@satyajeetkumarjha1482
@satyajeetkumarjha1482 2 жыл бұрын
Why no one gives a basic working code for lld ?
@rahulsharma5030
@rahulsharma5030 3 жыл бұрын
chequedeposit and cashdeposit are transactions or slots? You put in ATM class,seems that these are slots.But when u extend transaction, then these are transaction.Please update it correctly.lt.Its confusing.
@PawanKumar-xx3yy
@PawanKumar-xx3yy 4 жыл бұрын
Please make video on Logger desing.
@rahulsharma5030
@rahulsharma5030 4 жыл бұрын
if u pass only Transaction Object to the bank, how will bank know what is the type of transaction and how will it get the details to perform transaction? I would like to know how can you access the other child specific details from the transaction object? Will you typecast transaction to the Specific object?
@meme_engineering4521
@meme_engineering4521 2 жыл бұрын
bhai ye kya seedha code kara diya, class diagram nahi banaaya wth
@Puklit0000
@Puklit0000 4 ай бұрын
bade gusse me kyu ho bhai
Chess Low Level Design Code | Software Interview Question | System Design
13:39
Soumyajit Bhattacharyay
Рет қаралды 38 М.
So Cute 🥰 who is better?
00:15
dednahype
Рет қаралды 19 МЛН
Мен атып көрмегенмін ! | Qalam | 5 серия
25:41
LOW LEVEL DESIGN CODE || AMAZON SHOPPING WEBSITE || AMAZON INTERVIEW QUESTION SOLVED
17:10
Why Use Design Patterns When Python Has Functions?
23:23
ArjanCodes
Рет қаралды 115 М.
Low level design of an ATM machine | Understand State design pattern
1:04:16
Want to build a good API? Here's 5 Tips for API Design.
10:57
CodeOpinion
Рет қаралды 213 М.
The Flaws of Inheritance
10:01
CodeAesthetic
Рет қаралды 999 М.
Design patterns in React
14:37
Cosden Solutions
Рет қаралды 186 М.