Java- Intermediate to Advance

CDIP offers the certificate course on Professional Java Training. Java is top pick as one of the most popular programming languages, used for building server-side applications to video games and mobile applications. In this interactive training we will start by revisiting the very basics of computer programming and gradually step through clearly to help you understand and relate to the programming concepts. We will roam around the ecosystem of Java. We will go further and step into the world of web. Will sneak peek into the software development industry. And try to develop real world applications using Java based technologies.

Name: Md. Sajedul Islam

Designation: Lead Software Development Team

Company: Robi Axiata Ltd

Experience: 10 years

Linkedin: https://bd.linkedin.com/in/shajedulislam

Prologue: Computer Programming 

  • What is computer programming? 
  • How does a computer take command and perform accordingly? 
  • What does a computer programmer do? 
  • Why should I learn computer programming? 
  • What’s happening in current technology world? 

Let’s Step into the Industry 

  •  Current condition of the software industry in Bangladesh 
  • How does a company manage a software project? 
  • What does a company expect from a programmer? 
  • How does a standard software development team work? 
  • Get familiar with the trendy tools and technologies that a team uses:[Text Wrapping Break]1. Source code management 2. Build Tool 3. Project Management Tool 

Why Should I Learn Java? 

  • Comparative discussion with other technologies. 
  • Impact of Java in real world. 
  • Benefits & opportunities in the industry. 

Welcome to the Object Oriented World 

  • Functional VS Object Oriented Programming 
  • Learn to think in Object Oriented way. 
  • Java Installation & configuration. 
  • Introduction to Class, attributes, methods, objects. 

Let’s Get Started 

  • Let’s Get Started 
  • More examples. 

Flow of Any Application 

  • Standard code flow of any application; desktop, web or mobile 
  • Better coding practices: Introduction to MVC 

Let’s Build a Simple Application 

  • Develop a simple application 
  • Present a design problem and solve it by demonstrating Access Modifiers. 
  • Present a design problem and solve it by demonstrating OOP concepts: Encapsulation, Inheritance, Polymorphism step by step. 
  • Present a design problem and solve it by demonstrating Abstract class & Interface. 
  • Demonstrate Exception Handling. 

Review 

  • Review session on the previous application 

What About Another Application 

  •  Develop another application. 
  • Take suggestions from the students to make it interactive 
  • Apply best practices and design pattern. 

Empower the Application with Database 

  • Use popular database management system with the previous application with JDBC. 

Web is Amazing 

  • Basics of web and HTTP. Request response cycle. 
  • Web server VS Application server 
  • Java web components: JSP & Servlets 

Our Very First Web Application 

  • Develop a simple web application using JSP & Servlets 
  • Use our previous Java application. 

Introduction to Web Services 

  •   Develop a simple web service using the popular Spring Framework. 

Sneak Peek into Real World Project 

  • My daily activities as a software engineer. 
  • Demonstrate a couple of my professional projects. 

Brainstorming 

  •  Brainstorming session with the students to generate some project ideas. 
  • Form teams to develop those projects. 
  • Set up development and project management environment for the teams. 

Follow Up 

  •  Follow up with the progress of the projects. 

Celebrate The Journey So Far 

  •  Rewind and recap everything. 
  • Let the students give lecture on selected topics. 
  • Mock Interviews 
  • Student can develop any kind of Java Program.
  • To understand how to use Java APIs for program development.
  • To learn how to extend Java classes with inheritance and dynamic binding.
  • To learn how to use exception handling in Java applications.
  • To understand how to design GUI components with the Java Swing API.
  • To learn Java generics and how to use the Java Collections API.
  • To understand how to design applications with threads in Java.