Object Oriented Programming with Python - Full Course for Beginners

Поделиться
HTML-код
  • Опубликовано: 28 май 2024
  • Object Oriented Programming is an important concept in software development. In this complete tutorial, you will learn all about OOP and how to implement it using Python.
    💻 Code: github.com/jimdevops19/PythonOOP
    🔗 Tutorial referenced for a deeper explanation about __repr__: • Python Magic Methods |...
    ✏️ Course developed by Jim from JimShapedCoding. Check out his channel: / @jimshapedcoding
    ⭐️ Course Contents ⭐️
    ⌨️ (0:00:00) Getting Started with Classes
    ⌨️ (0:12:11) Constructor, _init_
    ⌨️ (0:50:35) Class vs Static Methods
    ⌨️ (1:13:22) Inheritance
    ⌨️ (1:30:14) Getters and Setters
    ⌨️ (1:51:00) OOP Principles
    🎉 Thanks to our Champion and Sponsor supporters:
    👾 Wong Voon jinq
    👾 hexploitation
    👾 Katia Moran
    👾 BlckPhantom
    👾 Nick Raker
    👾 Otis Morgan
    👾 DeezMaster
    👾 AppWrite
    --
    Learn to code for free and get a developer job: www.freecodecamp.org
    Read hundreds of articles on programming: freecodecamp.org/news

Комментарии • 1,2 тыс.

  • @jimshapedcoding
    @jimshapedcoding 2 года назад +709

    Thanks a lot for posting this, FCC! ❤️

    • @mahirrahman4253
      @mahirrahman4253 2 года назад +12

      You are an amazing teacher, thankyou for teaching me flask your market app really helped me 🙏🏻

    • @flammabletfm3405
      @flammabletfm3405 2 года назад +4

      You are the amazing one.Thanks for the great course.

    • @thetagang6854
      @thetagang6854 2 года назад +11

      No, thank YOU!

    • @jimshapedcoding
      @jimshapedcoding 2 года назад +1

      @@mahirrahman4253 Thanks a lot!

    • @jimshapedcoding
      @jimshapedcoding 2 года назад

      @@flammabletfm3405 You are welcome!!

  • @shyamsundarraghu4667
    @shyamsundarraghu4667 5 месяцев назад +32

    00:04 Understanding object oriented programming is important for software developers.
    07:57 Creating a method to calculate the total price of items
    23:21 Understanding constructors and best practices in classes
    31:11 Learned about constructor and working with different attributes
    45:44 Using a for loop, we can print the names of all instances
    53:38 Read CSV file and instantiate objects with class method.
    1:09:32 Create a separate class named 'Phone' that inherits from the 'Item' class
    1:17:02 Inheritance allows creating child classes that inherit attributes and methods from parent classes.
    1:31:54 Create read-only attributes in Python using the property decorator
    1:39:20 By adding double underscores to attribute names, access to those attributes is prevented outside of the class.
    1:54:40 Encapsulation and abstraction principles are applied in object-oriented programming.
    2:03:06 Inheritance allows code reuse across classes

  • @hhbadarin
    @hhbadarin 2 года назад +390

    Only today and after watching this tutorial I understand "self" in python!

  • @DennisChaves
    @DennisChaves 2 года назад +537

    I'm only 20 minutes in and already several concepts that were blurry before are now crystal clear to me. Excellent video!

    • @hgm8337
      @hgm8337 2 года назад +26

      plus the benefit of being taught by Count Dracula's nephew

    • @joseluizdurigon8893
      @joseluizdurigon8893 Год назад +1

      @@hgm8337 noooo way hahahahahahahaha

    • @k.o.o.p.a.
      @k.o.o.p.a. Год назад

      @@hgm8337 😭😭

    • @cjhoffmn
      @cjhoffmn Год назад +4

      No joke - he's explained things in the first 20 mins that I've never heard anywhere else - yet they are true fundamentals that are really helpful to learn!

  • @itishasan
    @itishasan Год назад +303

    For those who didn't understand the static method, def is_integer(num) = Our Function & num.is_integer = Built-in Function. is_integer() is a popular built-in function that checks if a floating number is actually an integer. As an example, 7.0.is_integer() will return True whereas 7.3.is_integer() will return False. So as to avoid confusion, let's just change Our Function name to def check_integer(num) 🙂✌

    • @cerealnotfound
      @cerealnotfound Год назад +2

      Thank you sir!!

    • @tg8799
      @tg8799 Год назад +9

      I was scratching my head over this so much... all logic was flying out of my brain! Thank God for a helpful community! Thank you!

    • @tg8799
      @tg8799 Год назад +11

      This comment needs to get pinned or something for newcomers

    • @midhunskani
      @midhunskani Год назад +3

      Yup u cant name a function with a built in function name

    • @Omar-jn8xk
      @Omar-jn8xk Год назад

      Thx

  • @FreihEitner
    @FreihEitner Год назад +95

    I'm only up to the 45 minute point so far, but already I am very grateful for this tutorial. Thank you so much!

  • @muntaface
    @muntaface 2 года назад +51

    This guy is amazing. He has taught me Selenium, Classes and I'm sure many more things in the future. Keep up the good work Jim, you're a beast!

  • @KofyImages
    @KofyImages Год назад +19

    Less than 10 minutes into the tutorial and I understand what the class is. Some of these free tutorials teach better than actual courses we pay money for

  • @SuperTenja
    @SuperTenja 2 года назад +81

    Just completed the whole video and this is hands down the best object oriented programming course I've ever come across. I've been trying to understand what exactly OOP is all these days by reading blogs and going through different tutorials. Nothing gave me as much clarity as this video did. Thanks a lot for the great work and for giving this out for free!

  • @calfolkionized
    @calfolkionized 2 года назад +155

    I find myself especially loving the structure of this OOP tutorial, it comes from a Funtional programming aspect and gradually lead you into OOP with examples, as oppose to other tutorials where they directly introduce you to concepts like inheritence/settters etc.. This makes my understanding of OOP much more clearer and structred. Big thanks to FCC and the lecturer!

    • @pointer333
      @pointer333 Год назад +1

      More better than my comment!

  • @hammadhassankhan
    @hammadhassankhan Год назад +17

    Loved It!
    I have been in a 4-Year CS program and learned the OOP concepts in different lectures.
    Probably this one is the best among all the lectures/tutorials I have taken for OOP till now.

  • @ducdao1679
    @ducdao1679 2 года назад +13

    I've been learning and coding Python for a little over a year and have never fully understood the __init__ method until I saw this video. You rock!

  • @johnhrabovsky2118
    @johnhrabovsky2118 2 года назад +18

    Sir, thank you for this absolutely fantastic run through of object oriented programming. I was struggling with some of these concepts in using python to build a Django website, but this tutorial cleared up a TON of information. Very well done, I along with 100K+ others, are incredibly grateful that you took the time to put this together to clear up some confusing concepts.

  • @sancrosanct5070
    @sancrosanct5070 2 года назад +74

    1. In the run validations to arguments part, if you aren't getting an error when you use an integer as the name, type in assert type(name) == str. This will not accept anything other than an integer as the name.
    2. Make sure you have no spaces between the list in the items.CSV file. Its a minor thing but gave me a headache since I couldn't get past that for a while. Then do the normal int(item.get()) then it works fine.
    Finally most of the issues I encountered were as a result of not looking at the code long enough. If you encounter a problem, make sure to re watch the part where he DOS it and make sure you got it correct. This happened to me at the Len part and a few others.
    Finally if you encounter s problem not stated here, then copy the error and paste it in your browser. This shows a stackoverflow page first where you can figure out what's wrong.
    Hope this helps you and you don't have to go through the headache I did when solving those lol

    • @alexjokyn5116
      @alexjokyn5116 2 года назад +1

      you are a legend

    • @yashnirmal3895
      @yashnirmal3895 2 года назад +1

      yeahhhh was facing the same headache...thank u very much!!!!

    • @oanr2475
      @oanr2475 2 года назад +1

      true saviour

    • @zorodielirido
      @zorodielirido 2 года назад +2

      #2 gave me such a headache as well. i think i would still be sitting here trying to figure it out if i didn't see your comment. thanks!

    • @IurijZagorulko
      @IurijZagorulko 2 года назад +1

      Man thx a lot!!!

  • @xelvince
    @xelvince Год назад +13

    Best explanation on OOP on RUclips. He doesn't skip anything. It finally makes sense 😊

  • @aminnourmohammadi5025
    @aminnourmohammadi5025 Год назад +1

    This tutorial was hands-down the best I've ever watched regarding the essential concepts of object-oriented programming. You clarified so many of my unanswered questions. Thanks a million!

  • @fesehaabebe-akele2684
    @fesehaabebe-akele2684 2 года назад +10

    Very practical and understandable take on OOP in python. Greatly recommended to people with a beginner level knowledge of python and need to add OOP to their python tool kit.

  • @federicopalacio5349
    @federicopalacio5349 2 года назад +16

    It's really really useful for begginers like me to have a tutorial builded from the scratch, instead of just downloading code from an external source and all of a sudden try to understand whats happening on those 50 lines of code. Thx

  • @electricalautomationengine9128
    @electricalautomationengine9128 2 года назад +10

    Wow, he wasn't lying . He really explains it well; you wouldn't need another tutorial .

  • @dhyutidharabandooni4830
    @dhyutidharabandooni4830 16 часов назад

    One of the BEST python tutorials i have ever seen. Most just show you the code and expect you to understand it but in this video he explains EVERYTHING thank you so much, i have learned a ton about python because of you!

  • @elijahkalii5290
    @elijahkalii5290 2 года назад +1

    This is the most comprehensive and friendly tutorial on Python OOP I have seen so far. Thanks for this Jim

  • @akhilkumar4825
    @akhilkumar4825 2 года назад +4

    Best intro to OOP so far. Explained so well. Thank you so much for this excellent course!!

  • @alperklc7782
    @alperklc7782 2 года назад +50

    1:08 "is_integer" is a float method, since the name of the written method and the float method name are the same, there is a misunderstanding as if the method is calling itself again. It was a confusing example. It took me a long time to understand and figure out what was going on.
    7.0.is_integer() return True :)

    • @adviced8071
      @adviced8071 2 года назад +2

      same

    • @warrobotslovers3277
      @warrobotslovers3277 2 года назад +1

      Thank you very much . I was mulling over this doubt for a long time.

    • @karolinesilva4669
      @karolinesilva4669 2 года назад

      Thanks for this comment alper! I assumed it wasn't recursion but was scanning the comments for this confirmation.

    • @user-dp2yi2oy8g
      @user-dp2yi2oy8g 2 года назад

      Thanks, was wondering the same

    • @llucbusquets6266
      @llucbusquets6266 Год назад

      Damn, thank you so much. I was really wondering how a recursive function could work in this case and I was looking for people equally confused in the comments. It turns out it's easier than that :D

  • @michaeldimattia9015
    @michaeldimattia9015 2 года назад +1

    Thank you for such a clear and detailed tutorial! This helped deepen my understanding of these concepts. Absolutely worth watching!

  • @Rey-tp8jm
    @Rey-tp8jm 8 месяцев назад +3

    Great explanations! I like that you clarified certain aspects of OOP that are hardly ever mentioned in other OOP courses. Thank you!

  • @mohanprajapati2051
    @mohanprajapati2051 2 года назад +8

    Simply perfect ! Though I was doing revision but it helped me in learning the concepts easily.

  • @arunny9430
    @arunny9430 2 года назад +3

    Absolutely fantastic. Definitely, the best introduction to Python OOP I have seen so far.

  • @alhensouher
    @alhensouher Год назад +18

    For anyone who also installed the csv plugins but the "Table Editor" button didn't appear: you have to go to File | Settings | Editor | File Types, go to "Text", and then add *.csv to that file type. Confirm it and you're good to go. =}

  • @rotrose7531
    @rotrose7531 2 года назад +25

    By far the best OOP python I ever found, clear, easy to understand, ensure that everything is crystal clear.

    • @8SecSleeper
      @8SecSleeper 2 года назад +1

      That's because you didn't look hard enough. It's terrible compared to others.

    • @foray3573
      @foray3573 2 года назад +1

      @@8SecSleeper then suggest a better one for learners to watch better ones.

    • @mgm8075
      @mgm8075 2 года назад +2

      @@8SecSleeper still havent suggested better?

    • @8SecSleeper
      @8SecSleeper 2 года назад

      @@mgm8075
      If you can't find the better videos, then you shouldn't be learning programming. It's not for you.

    • @mgm8075
      @mgm8075 2 года назад +11

      @@8SecSleeper instead of typing all that out you could've just shared the video you claimed was better. just say you're too lazy.

  • @rutdvajrawal7933
    @rutdvajrawal7933 2 года назад +8

    20 mins in and so many concepts are made clear and so quickly and efficiently. Thanks the instructor and FCC.

  • @motilevi3597
    @motilevi3597 2 года назад +2

    A very enjoyable comprehensive lecture, the study material is delivered in a clear and adequate manner

  • @deadangelair
    @deadangelair 2 года назад +1

    The practical way of explaining and the gradual pull into the concept was awesome. I am finally understanding. Thank you so much

  • @irajesmaeili8032
    @irajesmaeili8032 Год назад +4

    Great course, I liked the order of subjects so everything made sense while learning OOP.
    Many thanks!

  • @abdolahfrootan2127
    @abdolahfrootan2127 2 года назад +3

    A perfect course if you know the general concepts but they are not clear enough. Electrifying! Good Job

  • @we1rdalien
    @we1rdalien Год назад +2

    Great course! This took me from having a basic knowledge of OOP to understanding the logic of how it all works much more! Excited to keep going deeper with these topics!

  • @ajinkyapotkar3439
    @ajinkyapotkar3439 2 года назад +1

    The whole concept of OOP is explained in a structured and easy to understand way. I am a beginner and learnt a lot from this. Looking forward to learn more from your videos . Thankyou

  • @djholty1234
    @djholty1234 Год назад +17

    Great tutorial. I was a bit confused when you built your staticmethod is_integer at first. But then I realized float has a method built into it also called "is_integer", which will return true if the float ends in .0. Once I figured that out it made sense to me. Hope this helps someone who is confused by the same thing

    • @ZsoltPal23092011
      @ZsoltPal23092011 Год назад

      Thank you, I have scrolled down the comments to see if someone had the same issue with this part - you helped a lot here :)

    • @user-bi8nd3wn7d
      @user-bi8nd3wn7d Год назад

      I was about to ask the same, thank you! I think it was a bad idea to name the static method 'is_integer' since there already exists a float method with the same name.

  • @SurajMapariPrivate
    @SurajMapariPrivate 2 года назад +18

    He is great explainer bring him back again on this channel !!! ✨👏🔥💯

  • @indometalpython4969
    @indometalpython4969 2 года назад

    ABSOLUTELY FANTASTIC!!! Thank you so much Jim. I followed this tutorial line by line and learnt so much. I owe you this new beginning of my life.

  • @mlrk3y858
    @mlrk3y858 10 месяцев назад

    Thank you so much for this amazing tutorial! I’ve only been learning python for a few weeks but this helped me understand many core principles of OOP. Not going to lie, a little of this was still over my head but I’ve saved this video so I can watch it a few more times of the next few months. Thanks again

  • @unpatel1
    @unpatel1 2 года назад +35

    OMG!!! I am finished only 23:30 and this so amazing!! Looks like this video is going to be in my permanent youtube storage vault!:):) I already have decided to watch it more than once. Already cleared up a few critical concepts that I was struggling with. You have an amazing explanation power.

    • @pointer333
      @pointer333 Год назад +1

      Yes! I've been chipping away at it for 3 days and just finished. SO GLAD I FOUND THIS. I want the channel to know how awesome they are!

  • @lionelcarmont9574
    @lionelcarmont9574 2 года назад +2

    Thank you very much, For the last month I was wandering on the internet to understand OOP, with no success now it is crystal clear. Une fois encore, merci

  • @plamenyossifov6135
    @plamenyossifov6135 2 года назад +1

    This is gold. Jim is awesome! For sure in my top 3 best teachers. So easy to understand.

  • @pearlr.2411
    @pearlr.2411 2 года назад +1

    finished in one sitting after finishing a similar course on datacamp and I understood everything perfectly. thank you so much man

  • @utsavbhardwaj938
    @utsavbhardwaj938 2 года назад +13

    I was trying to learn oop concepts for a very long time and I was having a very hard time learning this then found this video, still in the 1st chapter __init__ and most of the things I was having hard time with got very clear.
    Thanks for this, I will always remember you.
    FCC is doing great work finding these high quality videos .

    • @Anonymous-ri4mk
      @Anonymous-ri4mk Месяц назад

      Me too everyone else was giving shitty explanation or explanation that just doesnt make sense it seems they have forgotten their target audience are intermediate level or lower and they cant understand it by the general explanation which are given to people who knows how to do oop

  • @ass_awper
    @ass_awper 2 года назад +6

    Thank you so much, I was looking forward for such a course

  • @KnotaFurry
    @KnotaFurry Год назад +2

    Thank you so much. I've been having such a hard time for hours trying to understanding classes and methods. This was perfect.

  • @SPARCHE
    @SPARCHE 2 года назад +1

    This is, by far, the best tutorial I've watched in a long time. Man have you got didactics for days. Congrats!

  • @eckee
    @eckee 7 месяцев назад +4

    This was insanely helpful. Easily understood, clear examples.

  • @infographic7907
    @infographic7907 2 года назад +4

    man it's so amazing. You are so good at explaining. Thank you soo much for get me out of the confusions. ❤️🙏🙏

  • @Blentux
    @Blentux Год назад +1

    I'm now halfway through, but this is an excellent video for learning OOP, always struggled with it, but this one is just great, so thanks a lot!!
    Learned so much from it.
    EDIT: I've completed the whole video by now - what a journey, thank you so much for this course!!

  • @Andrey-rc6wp
    @Andrey-rc6wp 3 месяца назад

    20 minutes in and the gentleman has clarified all the questions I had regarding OOP. This makes so much sense.

  • @zainulabdin4466
    @zainulabdin4466 2 года назад +10

    1:08:52 The name "is_integer" was a bit confusing because same method exists for 'float' class so in first IF statement num.is_integer() has nothing to do with the is_integer function that has been created in this code. That is_integer() method is pre-defined for the float class and that is only there to check if the num is a float or not and returns TRUE.

    • @jimbowayoutub2
      @jimbowayoutub2 Год назад

      Yes. Exactly. Great tutorial but this was a flub in presentation. Thanks for clarifying.

    • @akhilmachaan5010
      @akhilmachaan5010 Год назад +1

      @@jimbowayoutub2 Can you please explain this, 01:07:07
      if isinstance(num, float):
      #Count out the floats that are point zero
      return num.is_integer()
      what happens when we return num.is_integer()

    • @jimbowayoutub2
      @jimbowayoutub2 Год назад +1

      @@akhilmachaan5010 Hi. The instructor added a static class to his Item class called is_integer() that returns True if num's type is integer and false if it's a float by using the isinstance() method built into python. But that alone would still interpret a number like 5.0 as a float just because it has a decimal. He wants his method to return True in such cases. Now because num is float he can call the is_integer() method that is *built into python's float class* ( same name but different function) One is created by Jim. The other built into Python's float class. Hope that helps.

  • @awosiseoluwaseun5499
    @awosiseoluwaseun5499 2 года назад +20

    The is_integer function name almost confused me. is_integer is a method on its own in python so I thought you were calling your defined function inside the function itself. I'm clear now, made me research more and I'm happy about that. An awesome video by the way, I've mastered OOP basics from this. Thanks so much.

    • @edhernunio
      @edhernunio 2 года назад +3

      It got me confused as well. Thanks for the clarification 👍

    • @ItsDaShin
      @ItsDaShin 2 года назад +1

      Oh wow. I spent like 15 minutes trying to figure out the code. Thanks! 😅

    • @StarFury2
      @StarFury2 2 года назад +2

      Jesus, this was super confusing. I guess he could have called his staticmethod like "check_if_is_integer" to make a difference from the inbuilt function. Super awesome video anyways!

    • @HereToSin
      @HereToSin 2 года назад +1

      @@StarFury2 1:09:00 One thing which you could also observe was that there were no parameters passed when calling the is_integer() {in line 45}, so no way would the is_integer method of the item class would be called, as that would require passing num parameter. But yeah, this was confusing at first glance!

  • @steviegillen82
    @steviegillen82 Год назад

    OOP has always been a sticking point for me, but thanks to this in-depth tutorial, it is all starting to make sense. Thank you FCC for posting this!

  • @pkavenger9990
    @pkavenger9990 2 года назад

    Now i am in this video for 50 minutes and I got to say, this video is golden. This video is like if you want to digest 1000 pages of content in one video. Truly Awesome.

  • @doubando
    @doubando 2 года назад +3

    Amazing OOP training, alot of concepts clear by now for me

  • @user-iq1fg2um5k
    @user-iq1fg2um5k 2 года назад +12

    Я просмотрел все 2 часа этого курса, и научился читать код, и понял общие правила ООП. То что раньше было сложно понять, понимать стало гораздо проще.
    Вместо повторения \ дублирования кода, можно написать код лаконично, и он будет выглядеть очень аккуратно, это очень круто.
    Мне жаль что на просторах интернета, на Русском сегменте, вот таких полных курсов очень и очень мало, но найти ваш канал было просто волшебно.
    За 2 часа, начиная от самого простого, переходя постепенно к пониманию того что происходит, с указанием что откуда наследуется и передается, в общем я очень рад что эта информация очень полезна для меня.
    Осталось только научиться делать это самостоятельно, и продумывать код и его логику. Жаль у нас не было уроков программирования, да и преподаватели обычно не умеют доносить информацию понятным и простым языком, объясняя сложные вещи простым языком.
    Благодарю вас.

    • @jimshapedcoding
      @jimshapedcoding 2 года назад +4

      You are welcome! :) I hope there will be more Russian lecturers in RUclips to help you learn even better!

  • @htaehxela
    @htaehxela 2 года назад

    this made more sense to me than any other OOP tutorial I have ever watched. Thank you so much

  • @James24127
    @James24127 Год назад +1

    Thank you for this tutorial. I've participated in a number of courses and by far this is the best object oriented programming course I've seen.

  • @fadymikhaiel2370
    @fadymikhaiel2370 Год назад +12

    The thing that most tutorials miss is an indepth explanition of the logic of how things work. Fortunately, this tutorial does not skim on explaning the logic and also giving examples of use cases. Thanks Jim!!!

  • @innocent006
    @innocent006 Год назад +9

    The explanation on this tutorial is very clear and to a point. I understood lots of things, which was a bit of a magic before this video. Thank you very much and keep posting fruitful videos

  • @vambylamby83
    @vambylamby83 Год назад +1

    Learned a lot from this course, helped me to understand OOP better. Thank you so much, Jim and FCC.

  • @mvvlpradeep
    @mvvlpradeep 2 года назад

    Very helpful, clear to understand.. loved it, and worth spending time listening

  • @ddelvaller
    @ddelvaller 2 года назад +3

    Thank you very much Jim, this helped me a lot to understand OOP

  • @54peace
    @54peace 2 года назад +19

    God bless this man 🙏

  • @hakimled4300
    @hakimled4300 2 года назад

    I have already watched and downloaded your videos on my computer.
    A great course thank you Jim

  • @Alexr26
    @Alexr26 11 месяцев назад +1

    This is a top notch crash course. Simple and short to start building stuff. Thank you!

  • @venkilfc
    @venkilfc 2 года назад +3

    What a brilliant course! Thank you :)

  • @prabhakar664
    @prabhakar664 2 года назад +3

    Watching at 0.75 X. This is by far the best tutorial on OOP. Hands Down.

  • @jimalix6270
    @jimalix6270 2 месяца назад

    Awesome video! I'm half-way into it, and I've already learned more than I learned in an entire OOP class on another platform! Thanks so much!

  • @ali333291
    @ali333291 5 месяцев назад

    Such a lovely way to explain the OOP. Practical project based examples makes it even more interseting. Thank you

  • @peachgumdrop8067
    @peachgumdrop8067 8 месяцев назад +3

    The best OOP video ive ever seen. I would have failed without you LMAOO my profs could never compare.

  • @tasnimmeem1158
    @tasnimmeem1158 2 года назад +23

    Just what I needed ❤️

  • @kieranoldfield1455
    @kieranoldfield1455 Год назад

    I've learned so much from this video, I really feel this has taken me to the next level of my knowledge in Python. Thank you!!

  • @vinaylofi3105
    @vinaylofi3105 11 месяцев назад +1

    I finally completed these Object oriented of python, i would recommend every body to watch these to have a good grasp of concepts

  • @ShubhamMusafir
    @ShubhamMusafir 2 года назад +3

    waiting for this from a long time , thanks :)

  • @smburhan6323
    @smburhan6323 2 года назад +3

    This is just the thing i was looking for... Thank you very much ❤

  • @federicocaballero6493
    @federicocaballero6493 2 года назад

    Thanks for this course! It's been really useful as a complement to my Software Engineering studies.

  • @anvesh12
    @anvesh12 Год назад

    Being familiar with OOPs concepts already i came here just to brush thing up! Luckily i learnt lot of new things. You just nailed it JIM. Thanks ! Keep teaching!

  • @farazahmed1668
    @farazahmed1668 2 года назад +4

    Thank you so much for this extremely useful tutorial.

  • @danieloluwarotimi48
    @danieloluwarotimi48 Год назад +4

    Hey, For anyone here who might be struggling with a 'NoneType' error when trying to call ur CVS file and convert it into a list, go back and make sure there are no spaces in between attribute names. Remove all extra needed spaces
    example:
    should be: name,price,quantity
    not: name, price, quantity

  • @BrannenTaylor
    @BrannenTaylor 2 года назад

    THANK YOU for making your font size large enough to read on a tablet. So many channels don’t do this.

  • @geetikas3286
    @geetikas3286 2 года назад +1

    Theory intensive but very crisply explained! Excellent video!

  • @gauravmahajan3035
    @gauravmahajan3035 2 года назад +12

    Thanks!

  • @devanshjain5145
    @devanshjain5145 2 года назад +9

    I think naming that is_integer(num) method was wrong because already there exists an inbuilt method called is_integer() that can be called upon floats.... All this while I was thinking of recursion....

    • @-steady-8215
      @-steady-8215 2 года назад

      Haha. Yeah. Took some time to get it cleared for me.

    • @rogue8275
      @rogue8275 2 года назад

      I didn't understood what happened there ... To me it seems to be an infinite loop

  • @stevenho9963
    @stevenho9963 2 месяца назад +1

    i am a self taught programmer and previously ive tried to learn linked list and got totally lost and confused. i was told i should learn OOP first. my friend had a syllabus for a OOP class, but i didnt want to spend threee months on it so i went onto this video and i learned so much. took about 3-4 days digesting information. you broke down the steps in a way thats easy to digest and remember. although this topic has a lot of information, now i see all i need is to practice these concepts often and ill get it. you have explained in two hours a whole entire syllabus that would take aquarter, which is about 3 months. thank you so much

    • @jimshapedcoding
      @jimshapedcoding Месяц назад

      I really appreciate this one, thank you and I am very happy I saved your time :)

  • @NathanBerhe-gw5wv
    @NathanBerhe-gw5wv 3 месяца назад

    watching it now 2 yrs after it was published. Super amazing. Thanks buddy.

  • @SurajMapariPrivate
    @SurajMapariPrivate 2 года назад +4

    Learned so much from single video thanks alot 👏✨💯🔥🔥

  • @sweetie_py
    @sweetie_py 2 года назад +5

    I'm fluent at OOP in Java and now I feel stuck when doing it in Python lol

  • @pawel040408
    @pawel040408 2 года назад

    Really good introduction to OPP in Python! Short, but fairly complete and covering lots of concepts!

  • @arad907
    @arad907 Год назад

    Thank You @JimShapedCoding 🙏
    As you said at the beginning of the tutorial, this is gonna be my last search for OOP. I was looking for someone like you [my whole life😀] to explain the OOP to me. Most tutors just write the codes and never explain what is self or what is the point of using the classes and... You showed in detail why I should do it, and how I should do it. I can't learn anything off by heart, thus, I need to understand everything, so I could use it in the right way, and you man, helped me to understand. Thank You.

  • @Simon_Alexnder
    @Simon_Alexnder 2 года назад +5

    Shalom!

  • @cristiandinu2906
    @cristiandinu2906 2 года назад +10

    Hi, Thanks for posting !!! , there is a catch at least in unix ( !!! items.csv file has spaces in front of columns price, quantity which triggers an error : price=int(item.get('price')),
    TypeError: int() argument must be a string or a number, not 'NoneType')

    • @opeo5418
      @opeo5418 2 года назад +1

      Having this same error with the NoneType as well

    • @hkoranteng1
      @hkoranteng1 2 года назад

      same, but i removed the spaces from my csv file and the error went away. although now, i'm not able to see the objects in the console though. when i run the code Item.instantiate_from_csv(). it's blank after the ...python.exe ...tutorial.py. still trying to figure it out ... so not actually sure if the items in the csv are being created as objects in my program

    • @hkoranteng1
      @hkoranteng1 2 года назад

      when i run print(type(item.instantiate_from_csv())) it returns --->>>
      that doesn't sound right! has anyone faced a similar issue? better still, have any ideas?

    • @mohamedasif5871
      @mohamedasif5871 2 года назад

      @@hkoranteng1 It is because we are not returning anything in the instantiate_from_csv method.
      You should try printing Item.all to know if the ob
      jects has been instantiated.

    • @walky4158
      @walky4158 2 года назад

      @@hkoranteng1 Thank you mate. I was confused where I was being wrong, and I read your comment about spaces. Fixed the error and I can now proceed with the tutorial. Thanks.

  • @user-kt3jj7kf5c
    @user-kt3jj7kf5c 9 месяцев назад

    this is the best OOP video i have ever watched. i also got confused with the concepts used in OOP such as init,self and how to use them and what is the actual mean behind these concepts now has been revealed. thank you very much for your great content.

  • @manojkumar-pt5zz
    @manojkumar-pt5zz 2 года назад

    It's an excellent video with a clear-cut explanation for a learner like me. I have watched many videos for understanding these concepts finally this one made me understand them clearly.

  • @pointer333
    @pointer333 Год назад +3

    I have to admit that when I heard the presenter's thick accent, I was worried, but I've just finished the entire video, and I must say that this was an EXCELLENT presentation. Turns out dude is very easy to understand. Speaks clearly, slowly, concisely, and precisely. Doesn't just superficially intro you to each topic--he really takes the time to explain the principles. A+!
    THANK YOU for taking the time to create and share this with the world! This was basically my into to object oriented programming and I really do feel like I've learned a whole lot after this 2+hr video!

    • @jimshapedcoding
      @jimshapedcoding Год назад +3

      I appreciate such a comment a lot. Working on a smooth accent has been something I am working on a lot and I am happy you found your way to complete the entire video! Keep going :)

    • @MrIanEntertainment
      @MrIanEntertainment Год назад +1

      @@jimshapedcoding I think your accent makes the video nicer to listen to

  • @rayyanamir8560
    @rayyanamir8560 2 года назад +4

    I prayed to God for this

  • @centralcodingethiopia
    @centralcodingethiopia Год назад +1

    I was Struggling to understand the concept of Class through tutorials, but this tutorial helped me to really understand well.
    Thanks a lot!

  • @oscidleus
    @oscidleus Год назад

    Thank you for this course, it's great. In minute 27:20 I've noticed that the interpreter actually does not throw an error when I input a different types . So for any who also use super basic IDE's the type specifier in this case is a hist rather than strict typing