Git Product home page Git Product logo

syllabus's Introduction

Raptor Cohort syllabus

The Raptor cohort is the 2016S03 (that is the 3rd semester of GreenFoxAcademy (GFA) 2016 academic year) starting October 17th 2016 and ending, February 24th 2017. The technical stack for this cohort covers:-

  • HTML
  • CSS
  • Java (JSP, Spring)

The mentors are Aze, Misi & Eric.

Important Links

Module Training Phase

The course consists of 3 distinct phases:-

  • Basics - introducing the foundations of software development and studying HTML and CSS
  • Java - learning the core concepts in programming (that can translate to other languages), and then expanding deeper into the facilities and opportunities afforded in the Java environment.
  • Practical Application - applying the knowledge and skills learnt to a full deliverable.

Module 01 - Basics (Phase 1)

What are the core elements of how software and computers operate and communicate to deliver and capture information.

  • Introduction
  • Team building
  • Command-line, GIT
  • HTML, CSS
  • Practice - "Create CV using HTML and CSS"

Module 02 - Sitebuilding

Expand on the HTML, to deliver a more complex experience.

  • Layout
  • Forms
  • Advanced CSS
  • Build a complex webpage (like Wikipedia article)

First exam

  • HTML, CSS
  • Basic Sitebuilding
  • Understanding the internet

Module 03 - Introduction Java Basics (Phase 2)

  • Become familiar with the typical components of a programming language; setting the foundation for further learning. *
  • Turing machine, anatomy of programming; interpreters, compilers
  • The components of the Java world - IDE & program, compile to byte code, linking, running in the JVM
  • Variables, Data Types
  • Arrays - multi-dimensional, jagged
  • Expressions
  • Control Flow - loops (while, do-while, for), statements (if, if-then, if-then-else, elseif), intro to code blocks
  • Strings & StringBuilder
  • Simple I/O - the Scanner class (reading from the prompt (System.in), writing to the prompt (System.out))
  • Collections - ArrayList, LinkedList
  • Functions - parameters, return values, signatures/overloading; main args[], variable scoping
  • Mop up/Revisit - Iterators, foreach, data conversion (Autoboxing, unboxing, casting)
  • Math Libraries, floor, ceiling, conversion

Module 04 - Object Orientation

Understanding how to model the world using Objects; and becoming familiar with the tools and advantages of such.

  • What is OO
  • The benefits of OO - theory behind OO, covering encapsulation, data hiding, polymorphism, inheritance
  • Intentions/Classes - what is a class and how are they derived, their anatomy (methods, properties, scope); creator; this
  • Extensions/Objects - how are they created and used
  • Extending OO - sub-classes, super, polymorphism, abstract and interface, boxing/unboxing
  • Static, Final, Protected & Private
  • Mop up/Revisit - data conversion, Streams, I/O, Scanner in context
    • Date
    • Localisation - decimal point, mm/dd/yy vs dd/mm/yy vs ...

Module 05 - Consolidating Skills

Having covered the core concepts at the heart of Java, solidify with practice dojos and gain experience; at the same time, start to understand how to deliver code by testing and handling issues.

  • Exceptions
  • Testing (TDD basics) - Karnaugh / Key maps, Assert
  • Annotations
  • Libraries and Dependency management (Maven, Gradle)
  • Project "Todo App" - exercise working through many of the elements learnt thus far

Module 06 - Approaches - Conventions, Patterns & Frameworks

  • Developing and supporting larger applications demands management and commonly understood tools and approaches.*
  • Overview of Swing and GUI controls
  • Listeners / Events
  • Tiered architectures - benefits and anatomy
  • Patterns & Frameworks - conceptual
  • MVC (pattern) and Architecture
  • Project/Workshop: RPG using MVC
  • Practical: Mapping objects

Second Exam

  • Basics of Programming
  • Fundamentals of Java

Module 07 - Java as a Server

Continuing on from the previous Module, we look at a Framework. We also tie together how Java can be used to serve pages and integrate with HTML.

  • Java foundation classes
  • Servlets
  • Java Server Pages (JSP) - java web basics with templates, integrating with HTML
  • Templating (view part; how to display data, HTML generation)
  • Mop up/Revisit - Annotations, Collections, Iterators
  • Project/Workshop: Building a Gallery site using JSP

Module 08 - Working with Data

How to store and work with data.

  • File I/O - char and binary streams
  • Connecting to a database - JDBC (querying, resetting, mechanics)
  • SQL Basics - DDL vs DML; select, delete, update statements;
  • Alternatives NoSQL, MongoDB
  • Object Repository (ORM) - Hibernate framework
  • More SQL - keys, normalization; Stored Procedures & Triggers
  • Project/Workshop: Convert Gallery to run using JDBC

Module 09 - Spring Part 1

Delve into the Spring Framework to better understand how Java can be used to serve pages while strengthening the understand of JDBC, MVC, annotation, etc.

  • Serialization & marshalling
  • xml parsing and xmlpath
  • json

Module 10 - Spring Part 2

  • Web container
  • MVC
  • Generics
  • Aspect-Oriented Programming (AOP)

Third Exam

  • Java as backend
  • Understanding Frameworks
  • Persistence

Team Project (Phase 3)

Working in teams, deliver specific projects based upon requirements that will be posted later in the semester.

Final Exam

  • Work and find solutions for problems on your own
  • Combination of learnt skills

syllabus's People

Contributors

erichofer avatar mgyongyosi avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.