Design Patterns – 24 That Matter – In Java

About this Course
  • Prerequisites: Basic understanding of Java
  • Taught by a Stanford-educated, ex-Googler, husband-wife team
  • More than 50 real-world examples

This is an intensely practical, deeply thoughtful, and quirky take on 24 Design Patterns that matter.

Let’s parse that.

  • The course is intensely practical, bursting with examples – the more important patterns have 3-6 examples each. More than 50 real-world Java examples in total
  • The course is deeply thoughtful, and it will coax and cajole you into thinking about the irreducible core of an idea – in the context of other patterns, overall programming idioms and evolution in usage
  • The course is also quirky. The examples are irreverent. Lots of little touches: repetition, zooming out so we remember the big picture, active learning with plenty of quizzes. There’s also a peppy soundtrack, and art – all shown by studies to improve cognition and recall
  • Lastly, the patterns matter because each of these 24 is a canonical solution to recurring problems

design-patterns-24-that-matter-in-java

What’s Covered:

  • Decorator, Factory, Abstract Factory, Strategy, Singleton, Adapter, Facade, Template, Iterator, MVC, Observer, Command, Composite, Builder, Chain of Responsibility, Memento, Visitor, State, Flyweight, Bridge, Mediator, Prototype, Proxy, Double-Checked Locking and Dependency Injection
  • The only GoF pattern not covered is the Interpreter pattern, which we felt was too specialized and too far from today’s programming idiom; instead we include an increasingly important non-GoF pattern, Dependency Injection
  • Examples: Java Filestreams, Reflection, XML specification of UIs, Database handlers, Comparators, Document Auto-summarization, Python Iterator classes, Tables and Charts, Threading, Media players, Lambda functions, Menus, Undo/Redo functionality, Animations, SQL Query Builders, Exception handling, Activity Logging, Immutability of Strings, Remote Method Invocation, Serializable and Cloneable, networking
  • Dependency Inversion, Demeter’s Law, the Open-Closed Principle, loose and tight coupling, the differences between frameworks, libraries and design patterns

Who is the target audience?

  • Yep! Engineers – from street-smart coders to wise architects – ought to take this course. After this class, you’ll look at software design with a new pair of eyes
  • Yep! Product Managers ought to take this course – you will learn to understand the ‘how’ of Software Design without being constrained by it
  • Yep! Technology executives and investors who don’t write code ought to take this course – after this you will always have an intelligent point-of-view on software, and won’t find your eyes glazing over when its time to talk nitty-gritty
  • Computer Science majors (undergrad or grad) – if you are among the folks that make ‘real world example Observer Pattern’ such a common search phrase on Google, this is precisely the place for you
  • Yep! Journalists, Wall Street types or IP lawyers seeking to understand recurring patterns of problems and solutions in technology
  • Yep! If you are prepping hard for software engineering interviews 🙂
  • Nope! This course is not right for you if you are looking for a Programming 101 course. That’s not because there are pre-requisites, but simply because a Programming 101 course focuses on syntax, and on doing, while this course focuses on design, and on thinking

Design Patterns - 24 That Matter - In Java1

Basic knowledge
  • There are no pre-requisites other than curiosity – about Design, about Patterns, about Life 🙂
What you will learn
  • Identify situations that call for the use of a Design Pattern
  • Understand each of 24 Design Patterns – when, how, why and why not to use them
  • Distill the principles that lie behind the Design Patterns, and apply these in coding and in life, whether or not a Design Pattern is needed
  • Spot programming idioms that are actually built on Design Patterns, but that are now hiding in plain sight

More: 

Advertisements

Crack Programming And Coding Interviews in 1st Attempt

About this Course

Programming interviews are like standard plays in professional sport – prepare accordingly. Don’t let Programming Interview gotchas get you down!

  • This course has been drawn by a team that has conducted hundreds of technical interviews at Google and Flipkart
  • Just like teams prepare for their opponent’s playbooks in professional sport, it makes sense for you to approach programming interviews anticipating the interviewer’s playbook
  • Programming interviews differ from real programming jobs in several important aspects, so they merit being treated differently, just like set pieces in sport

Crack Programming And Coding Interviews

What’s Covered:

  • Pointers: Memory layout of pointers and variables, pointer arithmetic, arrays, pointers to pointers, pointers to structures, argument passing to functions, pointer reassignment and modification – complete with visuals to help you conceptualize how things work
  • Strings: Strings, Character pointers, character arrays, null termination of strings, string.h function implementations with detailed explanations
  • Linked lists: Visualization, traversal, creating or deleting nodes, sorted merge, reversing a linked list and many many problems and solutions, doubly linked lists
  • Bit Manipulation: Work with bits and bit operations
  • Sorting and searching algorithms: Visualize how common sorting and searching algorithms work and the speed and efficiency of those algorithms
  • Recursion: Master recursion with lots of practice! 8 common and uncommon recursive problems explained. Binary search, finding all subsets of a subset, finding all anagrams of a word, the infamous 8 Queens problem, executing dependent tasks, finding a path through a maze, implementing PaintFill, comparing two binary trees
  • Data Structures: Understand queues, stacks, heaps, binary trees and graphs in detail along with common operations and their complexity. Includes code for every data structure along with solved interview problems based on these data structures
  • Step-by-step solutions to dozens of common programming problems: Palindromes, Game of Life, Sudoku Validator, Breaking a Document into Chunks, Run Length Encoding, Points within a distance are some of the problems solved and explained

Who is the target audience?

  • YEP! New engineering graduate students who are interviewing for software engineering jobs
  • YEP! Professionals from other fields with some programming knowledge looking to change to a software role
  • YEP! Software professionals with several years of experience who want to brush up on core concepts
  • NOPE! Other technology related professionals who are looking for a high level overview of pointer concepts

Programming And Coding Interviews

Basic knowledge
  • This course requires some basic understanding of a programming language, preferably C. Some solutions are in Java, though Java is not a requirement
What you will learn
  • Know how to approach and prepare for coding interviews
  • Understand pointer concepts and memory management at a very deep and fundamental level
  • Tackle a wide variety of linked list problems and know how to get started when asked linked list questions as a part of interviews
  • Tackle a wide variety of general pointer and string problems and know how to answer questions on them during interviews
  • Tackle a wide variety of general programming problems which involve just plain logic, no standard algorithms or data structures, these help you get the details right!

 More: 

Data Structures & Algorithms in Java

About this Course

This is an animated, visual and spatial way to learn data structures and algorithms

  • Our brains process different types of information differently – evolutionarily we are wired to absorb information best when it is visual and spatial i.e. when we can close our eyes and see it
  • More than most other concepts, Data Structures and Algorithms are best learnt visually. These are incredibly easy to learn visually, very hard to understand most other ways
  • This course has been put together by a team with tons of everyday experience in thinking about these concepts and using them at work at Google, Microsoft and Flipkart

Data Structures & Algorithms in Java1

What’s Covered:

  • Big-O notation and complexity
  • Stacks
  • Queues
  • Trees
  • Heaps
  • Graphs and Graph Algorithms
  • Linked lists
  • Sorting
  • Searching

Using discussion forums

Please use the discussion forums on this course to engage with other students and to help each other out. Unfortunately, much as we would like to, it is not possible for us at Loonycorn to respond to individual questions from students:-(

We’re super small and self-funded with only 2 people developing technical video content. Our mission is to make high-quality courses available at super low prices.

The only way to keep our prices this low is to *NOT offer additional technical support over email or in-person*. The truth is, direct support is hugely expensive and just does not scale.

We understand that this is not ideal and that a lot of students might benefit from this additional support. Hiring resources for additional support would make our offering much more expensive, thus defeating our original purpose.

It is a hard trade-off.

Thank you for your patience and understanding!

Who is the target audience?

  • Yep! Computer Science and Engineering grads who are looking to really visualise data structures, and internalise how they work
  • Yep! Experienced software engineers who are looking to refresh important fundamental concepts
Basic knowledge
  • Basic knowledge of programming is assumed, preferably in Java
What you will learn
  • Visualise – really vividly imagine – the common data structures, and the algorithms applied to them
  • Pick the correct tool for the job – correctly identify which data structure or algorithm makes sense in a particular situation
  • Calculate the time and space complexity of code – really understand the nuances of the performance aspects of code

More:

Easy to Advanced Data Structures

About this Course

Data structures are amongst the most fundamental ingredients in the recipe for creating efficient algorithms and good software design. Knowledge of how to create and design good data structures is an essential skill required in becoming an exemplary programmer. This course will teach you how to master the fundamental ideas surrounding data structures.

Learn and master the most common data structures in this comprehensive course:

4 Easy to Advanced Data Structures

  • Static and dynamic arrays
  • Singly and doubly linked lists
  • Stacks
  • Queues
  • Heaps/Priority Queues
  • Binary Trees/Binary Search Trees
  • Union find/Disjoint Set
  • Hash tables
  • Fenwick trees
  • AVL trees

Course contents

This course provides you with high quality animated videos explaining a multitude of data structures and how they are represented visually. You will learn how to code various data structures together with simple to follow step-by-step instructions. Every data structure presented will be accompanied by some working source code (in Java) to solidify your understanding of that particular data structure. I will also be posting various coding exercises and multiple choice questions to ensure that you get some hands on experience.

Who is the target audience?

  • Individuals hungry for new knowledge
  • Students who want a fundamental understanding of data structures
Basic knowledge
  • Basic computer science knowledge
What you will learn
  • Mature understanding of data structures
  • Algorithms associated with data structures
  • Dynamic arrays
  • Singly and doubly linked list
  • Queues & Stacks
  • Binary Trees and Binary search trees
  • Heaps & Priority queues
  • Union find/Disjoint set
  • Hash table/Associative array
  • Fenwick tree/Binary indexed tree

More:  

Full Stack Development with Angular and Spring MVC

About this Course

Welcome to the Full Stack Development with Angular and Spring MVC. For those of you, who don’t know Angular and Spring MVC, i would like give a quick introduction about these two technologies.

Angular is one of the most popular front end Javascript framework for building web application, on the other hand, Spring MVC is also one of most popular Java framework for building Java Web Applications, using which we can build industry standard Java/J2EE Enterprise Applications.

Full Stack Development with Angular and Spring MVC

So in this course we are taking an advantage of these two technologies and we are going to build a web application. The application that we are going to build is not a simple Hello World application, we are going to build an End-to-End Database Application, we are going to perform all the CRUD operations, like CREATE, READ, UPDATE, DELETE.

What are we going to build in this course ?

In this course we are going to build a Book Management System, where the user can,

  • CREATE a book
  • READ a book
  • UPDATE a book
  • DELETE a book

How do we start this course?

  • We will begin this course by Creating a REST API which is a BOOK API and we are going to build this API using Spring MVC and we will make use of Hibernate as our ORM. The BOOK API provide a bunch of service end points which we are going to make HTTP calls on those service end points using Angular

I am super excited to teach you this course. I will see you inside the course.

Basic knowledge
  • Basic knowledge of HTML, CSS and Javascript
  • Basic knowledge of Core Java
  • Basic knowledge of Spring MVC
  • Basic knowledge of Hibernate
  • Basic knwoledge of RESTful web services
What you will learn
  • So by the end of this course, you will have a better knowledge of Angular and Spring MVC. You will have a better understanding of how to integrate Angular and Spring MVC. You are able to create your own API and making a HTTP calls using Angular

More:

Eclipse Tutorial For Beginners

About this Course

Eclipse is the most popular Open Source Java IDE. More developers use Eclipse than any other tool for Java Programming.

In this course, we take you on a fun ride with Eclipse.

By the end of this course, you would have a number of Eclipse tips and tricks up your sleeve. You will also understand various features of Eclipse – Views, Perspectives, Debugger, Save Actions, Plugins and Code Generation.

Eclipse1

 

You will improve your productivity with Eclipse Shortcuts . You will also learn to import projects from Git and the basics of Maven projects.

Course is Organised into 11 Steps : Experienced Eclipse Developers can give Step 0 a skip

  • Step 0 : Eclipse Basics – Workspace & Your First Java File
  • Step 1 : Most Important Editing Shortcuts ctrl-1 and ctrl-space
  • Step 2 : Debugging Java Programs
  • Step 3 : Eclipse Short Cuts
  • Step 4 : Refactoring with Eclipse
  • Step 5 : Code Generation with Eclipse
  • Step 6 : Automate with Save Actions
  • Step 7 : Eclipse Views
  • Step 8 : Eclipse Perspectives
  • Step 9 : Plugins
  • Step 10 : Setting up Projects From Git and Maven

Who is the target audience?

  • Students who want to learn Programming with Eclipse
  • Students who have some experience with Eclipse but who want to learn a lot more about Eclipse
  • Students Learning Java
Basic knowledge
  • Some programming experience with Java will be handy
What you will learn
  • Be more productive with Eclipse
  • Understand Eclipse Basics : Views, Perspectives, Shortcuts, Code Generation & Plugins
  • Make use of Eclipse Save Actions Features

   More:

Spring Boot Microservices with JPA

About this Course

This course is a practical course which explains how to realise a microservice infrastructure in order to realise a full-stack web application composed by a “framework-less” Single Page Application and two restful Spring Boot microservices interacting with each other and with two different databases thanks to the implementation of the JPA (Java Persistence Api).

You’ll have the basis to generate fastly a microservice infrastructure, to organise your application using different layers according to the “SOLID” principle and following the MVC pattern.

You will have the instrument to organise your communication protocols using simple and effective rules, to implement restful web services which communicate with Json Messages.

This is course has the same topic of the Italian course Sviluppo Web a Microservizi con Java Spring Boot e Ajax” so it can easily considered as its English version. The example developed is different but with the same topics: microservices, Spring Boot, JPA and Rest calls.

5 Spring Boot Microservices with JPA

Who is the target audience?

  • Anybody who wants to understand microservice infrastructure and the difference existing between monolithic application and microservices
  • Anybody who wants to learn Spring Boot and how to realize fastly a microservice infrastructure using this precious instrument
  • Anybody who wants to understand the difference between the classical use of Spring MVC and its implementation through Spring Boot
  • Anyone who wants to learn the basis of JPA (Java Persistence Api) in order to interact with Databases
  • Anyone who wants to learn how to implement Restful Web services using a microservice infrastructure
  • Anyone who wants to learn how to consume Restful web service either from the user interface than from server-side code
  • Anyone who want to have a basic idea on Single Page Applications and how they works
  • Anyone who wants to realise a full stack web application using the most modern technologies and approaches
  • Anyone who wants to learn how Ajax calls and javascript can be used to let our web pages become dynamics
  • Anybody who wants to understand how to generate a dynamic web page using multiple resources con temporarily

Spring Boot Microservices with JPA2

Basic knowledge
  • A few basis of Object Oriented Language in order to understand better the practical implementation of the code
What you will learn
  • Create two Spring boot restful web services implementing the JPA for the interaction with the databases
  • Create a full stack web application composed of a microservices infrastructure and a single page application
  • Learn how two microservices can communicate with each-other and exchange information through JSON messages
  • This is course has the same topic of the Italian course “Sviluppo Web a Microservizi con Java Spring Boot e Ajax” so it can easily considered as its English version. The example developed is different but with the same topics: microservices, Spring Boot, JPA and Rest calls

More: