I watched some videos now - and they are all fantastic. Also this one. But here are some thoughts from C++ / C# projects I know - and I mean really big ones - not toys like the n-th ToDo-App. There is always a need to find compromises. Every now and then new terms and ideas are introduced for very, very old principals. E.g. the Solid-Principle: Tearing UserManager class apart into 2 pieces for Authentication and Profile-Management looks good. But are they really independent? Neither one can live without the other because they belong both to user management. So I need to define an additional interface or class to tie them together, because they belong together. And if one change, I have to change it anyway in one of the classes. No time saved, no additional benefit. Also very often, there is a need that an inherited class needs to be extended by additional functionality. This is one essence of OOP. And very often additional abstractions just shifts the complexity to somewhere else e.g. leading to many more files, ... So what I would like to say. Don't follow blindly all the theoretical approaches and check if they really make life easier. Consider possible changes of project requirements in the near and midterm future. Ignore abstractions only for the sake of abstractions. Big projects have experienced architects anyway. Anyway as I mentioned in the very first sentence. I like your videos very much and I am looking forward to the next one.
@anandpatel35804 ай бұрын
Very well said
@kishanbhuta12293 ай бұрын
So you mean learning all these SOLID principles will amount to nothing? :( In bigger projects they are useless?
@manfredkernMK3 ай бұрын
@@kishanbhuta1229No, that's a misunderstanding. Clean architecture and SOLID principles are not new. Separation between presentation, logic and data is also very old, to have the possibility to swap parts. So you surely apply these principles in your project in one way or the other depending of the modules / parts / libraries in your application. In C++ it is very common to factor out parts of your application into libs. In Dart these will be packages. Please think about how you will handle nested data structures (simple example above)? You can do it full blown with models, entities and mappings for the nested data structures. Is it worth to have these many classes, polluting your directory structure. Yes, if in the short-/midterm these will change (maybe the requirements are still not settled). Very often you shift problems. Your class looks "clean", but your directory structure is cluttered. A lot of architectural patterns are hyped at a certain time. Think of TDD, DDD, MVVM, MVC, MVP, prototyping, agile development, ..., object oriented, functional, ... If you benefit from theses principles --> do it., If not, just don't. And be careful if someone just says, it looks "cleaner". In real business projects, you have so many drivers, especially money and time. So, the job of a software architect is to balance between application architecture and the business needs. Just ro repeat myself: "So what I would like to say. Don't follow blindly all the theoretical approaches and check if they really make life easier. Consider possible changes of project requirements in the near and midterm future. Ignore abstractions only for the sake of abstractions. Big projects have experienced architects anyway."
@abinashkarki52376 ай бұрын
Bro is the messiah for the Flutter Developers.
@seamensclubltd76036 ай бұрын
Cool! Thanks! You are the best of the best!
@akashmurugesh35093 ай бұрын
Nicely said my brother. Clear as a crystal. Thanks
@RivaanRanawat3 ай бұрын
Most welcome!
@wraith31086 ай бұрын
6 minutes into the video and I am really liking it Keep it up dude and, keep on Making flutter app
@fernandezjasper6 ай бұрын
Looking forward to the next video!
@leoe.r.73386 ай бұрын
Great video!! Had a couple of more videos about SOLID on my list to watch and after this one I removed most of them. Also really like the memes and Tom&Jerry intro. Lol.
@parameshmamidisetti81676 ай бұрын
Please Make more videos like this. This video is very knowledgeable 😮 thanks a lot ❤
@manishgautam24246 ай бұрын
Superb videos and main think in free , Thank You So Much , Keep it Up
@RivaanRanawat5 ай бұрын
My pleasure!
@farz36706 ай бұрын
Great vid as always
@TheNightValley6 ай бұрын
Rivaan is absolutely a genius. You have made great tutorials so far over years, but there are certain things I wish you could make some tutorials on, as I haven't seen any better tutorials on that 1) flutter Localization 2) flutter offline apps with backing up data with something like Google drive
@sunjowilliammburli38476 ай бұрын
I wish @rivaan would consider that
@tanishbajaj49525 ай бұрын
what is flutter localization?
@RashidKhan-kd9xl4 ай бұрын
@@tanishbajaj4952it's Google map side of things ..bro
@saadahmed5890Ай бұрын
@@tanishbajaj4952different languages for instance Spanish & English in one app. User can swap between these two languages within the app. Hope that helps.
@murshidm3 ай бұрын
This guy can explain Rocket science to me and i will understand. 🙏
@javacodegym6 ай бұрын
Really needed this
@thanyaniinnocent9402 ай бұрын
Appriciate it a lot 🙏
@kianooshsafapour39266 ай бұрын
Like always video describes the principle easy to understand. thanks for the video. I suggest using background music (with very low volume) to improve the videos
@entertainment-iw6fd5 ай бұрын
a pretty good video buddy thank you for your valuable time
@marlonsubuyu20123 ай бұрын
Amazing!!!
@RivaanRanawat3 ай бұрын
Thanks!
@from_whatch6 ай бұрын
bloc clean architecture video please 🙏 😢
5 ай бұрын
there's one already on the channel
@yasserhy2 ай бұрын
I love your tutorials. I think it is easier for everyone if you use the "I" in the name of the interface so it will not be confusing. Similar to what we do in C#. Example: Shape interface => IShape
@RivaanRanawat2 ай бұрын
Sure
@cromuelbarut98593 ай бұрын
well explained, keep up the good work
@RivaanRanawat2 ай бұрын
Thanks!
@gurparvesh384 ай бұрын
Thank you for great explanation :)
@RivaanRanawat4 ай бұрын
Glad it was helpful!
@Programmer-je4by6 ай бұрын
i thought about you 10 mins before and your video came :)
@TikTokTrendsCompilation6 ай бұрын
yeah try explaining this to nextjs developers 🤣🤣🤣
@0x-adios3 ай бұрын
Great
@antongrekov77106 ай бұрын
hot success
@sidhu-patil4 ай бұрын
🎉🎉
@pravinprince32215 ай бұрын
thank you bro for the wonderful video bro it is so helpful for me and my team, thanks again bro one request bro can you do videos on bloc concurrency and transformers used bro
@rishhАй бұрын
So basically in Liscov's Substitution method Parent Class or Super class should not contain initial data right ? I mean otherwise it would break that rule right ?
@DK-ym9zv6 ай бұрын
I mean do we really need this? SOLID looks like new devs nightmare. It will be way more difficult to understand the codebase when joining a project
@javacodegym6 ай бұрын
Sir can you complete the design patterns series
@CodeWithMaya076 ай бұрын
Rivaan can you guide flutter projects where to start… like which project has to start first second and so on… I’m confused which project to start first…
@chitrarajkpaul82235 ай бұрын
Please do a video on admob in flutter and create real ads in our app
@urm1n6 ай бұрын
Can you make video on flutter app with remote and local database like firebase and hive and sync them
@devkumar98896 ай бұрын
Itni depth me oops to aj tak nai seekha
@kennethmuriungi6 ай бұрын
Bro,make a video on how to install Vs code,flutter SDK and Android studio on Kali Linux please
@devkumar98896 ай бұрын
Here are my understandings : S : Single Responsibility = Make your class such that it only performs single Independent task. Like Authenticating user && Generating tokens are 2 different classes O : Open to Extension Close to Modification = You don't want to make hole and spread wires to get new electrical device. You already provide holes for wires while construction similarly you write code such that you can extend features without modifying code. L : 😢 I : Try to break Interfaces into smaller independent units D : Dependency Inversions = You have a class where you write functions to authenticate user and save user to db using 3rd party libraries so just write their methods separately outside class and get their results in that class this way if you need to change something in future you just need to modify that specific part. Basically u just reduced dependcy to 3rd party libraries
@holy49085 ай бұрын
Liskov's principle of substitution is that subclasses can serve as replacements for their superclasses and the operation of the program should not change. For example, if our superclass has something like three methods, and for one of its children we don't want to implement one of them (methods), then we should rethink the logic of the superclass by removing the method that is not used in all subclasses and implement a new method in the subclass where necessary without violating the integrity of the parent superclass. In which case we can now substitute subclass and superclass types between each other, and L principle will be respected.
@abhinavkprajapati6 ай бұрын
which plugin do you use to print out debug messages on vs code in flutter. I have seen your virtual assistant application video but i am not getting the same messages printed in debug console as you please help me
@Zyzzbruh6 ай бұрын
w vide , make a clean architecture vid fast ?
@randomcsguy20656 ай бұрын
👑👑👑
@vikashtiwari83606 ай бұрын
Please bring uber clone
@manavpatel7876 ай бұрын
Please make a video on how to make a full stack binance clone
@vivekrahul6 ай бұрын
First comment❤
@vipe76393 ай бұрын
19:21 The developer only needs to work 🥲🥲🥲
@iznasenАй бұрын
@RivaanRanawat Bro I left you a connect request on Linkedin. Looking forward to collaborate!
@CodeWithMaya076 ай бұрын
Rivaan can you guide flutter projects where to start… like which project has to start first second and so on… I’m confused which project to start first…