• LOGIN
    • No products in the basket.
0 STUDENTS ENROLLED

    Course Curriculum

    Section 01: An Object-Oriented State of Mind
    Downloadable files and codes 00:00:00
    Objects are like puppies 00:03:45
    Before we start with the serious stuff, remember this - Objects, like puppies, are your best friends.
    Classes and Objects: An Object-Oriented State of Mind 00:18:59
    Object-oriented programming languages require you to think in terms of objects and classes. We formally introduce these concepts, as well as encapsulation, abstraction, inheritance and other basic tenets of OO programming. Next come instantiation, member variables and member functions (static and non-static), start with access modifiers (public, private, protected) and finish with constructors and finalizers.
    Static Variables and MethodsFREE 00:06:47
    Static member variables and static member functions are class-specific, not object-specific.
    Access Modifiers 00:14:52
    Member variables and functions can be marked public, private or protected - these keywords are called access modifiers, and they govern the access that derived class objects have to their corresponding base class objects.
    Classes and Objects: A Simple Example I 00:11:57
    A simple coding drill that demonstrates all that we've covered so far: defining classes,instantiation(creating objects), different member variables and different member functions, getters, setters, constructors and finalizers.
    Classes and Objects: A Simple Example II 00:09:17
    We continue our simple coding drill that demonstrates all that we've covered so far: defining classes,instantiation(creating objects), different member variables and different member functions, getters, setters, constructors and finalizers. In this bit, we focus on instantiating objects, and on static member data.
    Is-A Inheritance – setting up a class hierarchy 00:08:57
    What does it really mean for a class to derive from another class? We examine the idea of inheritance using Shapes.
    Is-A Inheritance – parent class, child class relationship 00:07:09
    We continue with our exploration of inheritance and explore how derived class objects have a full version of the base class object within them. This is illustrated using a class hierarchy involving planes and fighter planes.
    Runtime Polymorphism 00:14:21
    Runtime polymorphism is an important OO concept. If an object of type Rectangle holds a reference to derived class Square, will our shape behave like a Rectangle or a Square?
    The Object Base ClassFREE 00:06:08
    We explore the Object base class, which all Java reference types derive from.
    Interfaces : Introduction 00:14:19
    We introduce Interfaces: a special type of classes that have only function signatures but no function implementations.
    Interfaces vs Abstract Base Class 00:06:43
    Abstract base classes and abstract functions are covered in this class. We also compare when it makes sense to use interfaces, and when abstract base classes are a better choice.
    Interfaces In Detail 00:15:36
    Upcasting, downcasting and the instanceof operator. Upcasting is OK but be careful with downcasting!
    Interface Default Methods: Avoid Backward Compatibility Nightmares 00:11:15
    Interface default methods are a new feature in Java, that allow us to go back and retro-fit new methods into old interfaces. Interface default methods involve adding implementations to interfaces, which might seem like cheating, but its all in a great cause: this prevents an explosion of the class hierarchy and maintains backward compatibility in code.
    Interfaces and Inheritance in Action 00:18:58
    We've talked a lot about interfaces, now let's walk the talk with a nice little drill.
    Section 02: Java Language Constructs: The Best Thing Since Sliced Bread
    Exceptions 00:12:09
    Stuff happens - that's life. And when stuff happens, exceptions get thrown. Let's understand how modern programming languages (including Java) deal with unexpected situations. The basic idea: a chain of responsibility, where somebody needs to stand up and be counted. Coding is a lot like life.
    The Immutability of StringsFREE 00:07:27
    Strings never change. Unlike almost everything else in life, they are immutable. Let's see how.
    Object Identity: == and .equals() 00:10:27
    When are two objects 'equal'? How are the == operator and .equals() different from each other?
    Generics: Type Safety and Code Re-use 00:16:07
    Generics are a language feature that help Java maintain its tight rules on Type Safety, while also facilitating code re-use.
    Inner Classes: Horses for Courses – Static vs Non-Static 00:14:15
    Java has a clever way to sort collections: using Comparator objects. (Aside: This clever technique combines the Strategy and the Command Design Pattern). We see how Comparators and Collections work together: nested classes (the classes inside classes) and types of nested classes (static and non-static classes which are also called anonymous inner or local classes).
    Inner Classes: Horses for Courses – Anonymous and Local 00:09:45
    We wrap up our exploration of inner classes with a look at Anonymous and local classes. Anonymous classes are used heavily in UI, while local classes are very infrequently used.
    Section 03: A serious drill with lots of code :-)
    A File is like a Barrel 00:11:21
    Working with files can sometimes seem boring - filled with repetitive boilerplate code. But files can get a bit more interesting if we get why they are so handy and so ubiquitous.
    A Serious Java Application: Our First 00:14:45
    We will be making a useful Java application in this drill using concept of files and classes. The Java application will download daily stock data from a stock exchange website and output an excel file of top movers and heavily traded stocks. The ability to create Excel spreadsheets is a big win: we will use the Apache POI library, which will also serve to show we can use code written by someone else packaged into something called a JAR file.
    A Serious Java Application: Parsing Stock Ticker Data – I 00:18:42
    We will be making a useful Java application in this drill using concept of files and classes. The Java application will download daily stock data from a stock exchange website and output an excel file of top movers and heavily traded stocks. The ability to create Excel spreadsheets is a big win: we will use the Apache POI library, which will also serve to show we can use code written by someone else packaged into something called a JAR file.
    A Serious Java Application: Parsing Stock Ticker Data – II 00:10:40
    We will be making a useful Java application in this drill using concept of files, classes, nested classes and comparator. The Java application will download daily stock data from a stock exchange website and output an excel file of top movers and heavily traded stocks.
    A Serious Java Application: Parsing Stock Ticker Data – III 00:17:01
    We will be making a useful Java application in this drill using a java library (JAR) called POI created by open-source powerhouse called Apache. The JAR POI has a set of classes to work with excel. The Java application will download daily stock data from a stock exchange website and output an excel file of top movers and heavily traded stocks.
    A Serious Java Application: Parsing Stock Ticker Data – IV 00:16:25
    We will be making a useful Java application in this drill using a java library (JAR) called POI created by open-source powerhouse called Apache. The JAR POI has a set of classes to work with excel. The Java application will download daily stock data from a stock exchange website and output an excel file of top movers and heavily traded stocks.
    A Serious Java Application: Parsing Stock Ticker Data – V 00:16:09
    We will be making a useful Java application in this drill using a java library (JAR) called POI created by open-source powerhouse called Apache. The JAR POI has a set of classes to work with excel. The Java application will download daily stock data from a stock exchange website and output an excel file of top movers and heavily traded stocks.
    Section 04: Packages and Jars
    Jars: Not As Boring as They Might Seem 00:17:28
    We will talk about packages and jars in this lecture. We will talk about what they mean, how they are useful and how jar files are smarter than zip files (Hint: self-awareness is the start of smartness. Another hint: Metadata)
    Packages 00:07:04
    We'll see how packages help create namespaces in Java. Packages are closely linked to the directory structure of Java source code.
    Packages and Jars in ActionFREE 00:04:23
    A little drill where we see packages and jars in action
    Section 05: Some Object-Oriented Design Principles
    Design Principle #1: Rely on Interfaces, not Implementations 00:04:14
    Program to interfaces, not implementations' said Eric Gamma. Of course he was right.
    Design Principle #2: The Open/Closed Principle 00:05:31
    Code should be open for extension but closed for modification. How can this be achieved? Well, there are 3 possible ways: inheritance, delegation, and composition.
    Design Principle #3: Principle of Least Knowledge 00:04:39
    Like children, code should only talk to friends, never to strangers!
    Design Principles #4 and #5: Dependency Inversion and the Hollywood Principle 00:05:46
    Always rely only on abstractions, never on details. Oh - and don't call us, we'll call you. That's how Hollywood works, and that's how the Hollywood Principle reads.
    © 2016. LearnBox Education.

    Login

    Register

    Create an Account
    Create an Account Back to login/register