VB.NET 2012 Training Course (1-5 Sep 2014)

Prerequisites

You should know Beginner VB.NET

Intended Audience

This course is for anyone who want to learn how to program in VB using the .NET framework.

Further Training

Recommended - ASP.NET

Course Material

Included in the course price.

Course Info

Day 1

  • Welcome to Visual Basic 2010
  • Event-Driven Programming
  • Installing Visual Basic 2010
  • The Visual Studio 2010 IDE
  • Creating a Simple Application
  • Using the Help System
  • The Microsoft .NET Framework
  • Microsoft’s Reliance on Windows
  • Writing Software for Windows
  • Common Language Runtime
  • The Common Type System and Common Language Specification
  • Writing Software
  • Information and Data
  • Working with Variables
  • Comments and Whitespace
  • Data Types
  • Storing Variables
  • Methods
  • Controlling the Flow
  • Making Decisions
  • The If Statement
  • Select Case
  • Loops

Day 3

  • Creating Menus
  • Understanding Menu Features
  • Creating Menus
  • Context Menus
  • Debugging and Error Handling
  • Major Error Types
  • Debugging
  • Error Handling
  • Building Objects
  • Understanding Objects
  • Building Classes
  • Reusability
  • Designing an Object
  • Constructors
  • Inheritance
  • Objects and Structures
  • The Framework Classes
  • Advanced Object-Oriented Techniques
  • Building a Favorites Viewer
  • An Alternative Favorite Viewer
  • Using Shared Properties and Methods
  • Understanding Object-Oriented Programming and Memory Management

Day 5

  • Dynamic Data Web Site
  • Creating a Dynamic Data Linq to SQL Web Site
  • ASP.NET
  • Thin-Client Architecture
  • Web Forms versus Windows Forms
  • Web Applications: The Basic Pieces
  • Active Server Pages
  • Building Web Sites
  • Visual Basic 2010 and XML
  • Understanding XML
  • The Address Book Project
  • Integrating with the Address Book Application
  • Deploying Your Application
  • What Is Deployment?
  • Creating a Visual Studio 2010 Setup Application
  • User Interface Editor
  • Deploying Different Solutions
 Day 2

  • Working with Data Structures
  • Understanding Arrays
  • Understanding Enumerations
  • Understanding Constants
  • Structures
  • Working with ArrayLists
  • Working with Collections
  • Building Lookup Tables with Hashtable
  • Advanced Array Manipulation
  • Extensible Application Markup Language (XAML)
  • What Is XAML?
  • XAML Syntax
  • Windows Presentation Foundation
  • Building Windows Applications
  • Responding to Events
  • Building a Simple Application
  • Counting Characters
  • Counting Words
  • Creating More Complex Applications
  • Creating the Toolbar
  • Creating the Status Bar
  • Creating an Edit Box
  • Clearing the Edit Box
  • Responding to Toolbar Buttons
  • Using Multiple Forms
  • Displaying Dialog Boxes
  • The MessageBox
  • The OpenFileDialog Control
  • The SaveDialog Control
  • The FontDialog Control
  • The ColorDialog Control
  • The PrintDialog Control
  • The FolderBrowserDialog Control

Day 4

  • Building Class Libraries
  • Understanding Class Libraries
  • Using Strong Names
  • Registering Assemblies
  • Designing Class Libraries
  • Using Third-Party Class Libraries
  • Viewing Classes with the Object Browser
  • Creating Windows Forms User Controls
  • Windows Forms Controls
  • Creating and Testing a User Control
  • Exposing Properties from User Controls
  • Design Time or Runtime
  • Creating a Command Link Control
  • Accessing Databases
  • What Is a Database?
  • The SQL SELECT Statement
  • Queries in Access
  • Data Access Components and Controls
  • Data Binding
  • Database Programming with SQL Server and ADO.NET
  • ADO.NET
  • The ADO.NET Classes in Action
  • Data Binding

Duration and pricing

  • Full-time over 5 days (R7995 excl VAT)
  • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R9995 excl Vat)
  • Part-time over 8 Saturdays, 3 hour sessions (R9995 excl Vat)
  • Distance-learning over up to 3 months (R6995 excl Vat)

Certificate

1. Upon completion of this course we will issue you with attendance certificate to certify your attendance and / or completion of the prescribed minimum examples.
2. You have the option to get the competency / academic certificate if you :
hand in a project (pre-approved) covering most of the topics in the book.

Schedule

On the calender on this page below.
If your browser doesn’t display the calendar below, please click on this link or try using Google Chrome, alternatively please enquire via our ‘Contact Us’ page.

Bookings

You can download the course registration form on our home page or by clicking here

Brochure see http://getcertified.co.za/short-courses/programming/net/vb-net-advanced

You may download a pdf copy of this page by clicking here.

Questions

Please email us

PHP Beginner Training Course 15-19 Sep 2014

http://getcertified.co.za/short-courses/programming/php/php-beginner

Prerequisites

You should be at the level of Introduction to Programming or Excel VBA before starting this course.
HTML knowledge will be handy, but not required as we focus on the back-end in this course.

Intended Audience

This course is for web designers probably with HTML or XHTML who want to take their web pages to the next level.

After this course you should be able to

  • Use PHP to transform static HTML pages into dynamic web sites
  • Use email from your web server
  • Creating feedback forms
  • Create and populate your own MySQL database tables, and work with data stored in files
  • Perform sophisticated MySQL queries with joins, and refining your results
  • Uploading images
  • Protect your data from SQL injection attacks
  • Secure your pages with HTTP Authentication
  • Build a basic functional PHP website with management and user functionality that could be useful to a small business with basic requirements

Further Training

The next course in the series is Advanced PHP .

Course Material

We give you an original copy of the book: Head First PHP & MySQL (by O’Reilly Press) as we use this mainly,
but we also give additional examples where it falls short.

Course Contents

Day 1
  • Add life to your static pages
  • PHP brings web pages to life
  • Forms are made of HTML
  • HTML acts on the CLIENT
  • PHP acts on the SERVER
  • Use PHP to access the form data
  • The server turns PHP into HTML
  • A few PHP rules to code by
  • Variables are for storing script data
  • $-POST transports form data to your script
  • Creating the email message body with PHP
  • Newlines need doublequoted strings
  • Variables store the email pieces and parts
  • Sending an email message with PHP
  • Connecting to MySQL
  • MySQL excels at storing data
  • Create a MySQL database and table
  • The INSERT statement in action
  • Use SELECT to get table data
  • Connect to your database from PHP
  • Insert data with a PHP script
  • Use PHP functions to talk to the database
  • Get connected with mysqli_connect()
  • Build the INSERT query in PHP
  • Query the MySQL database with PHP
  • Close your connection with mysqli-close()
  • $-POST provides the form data
  • Create and populate a database
  • It all starts with a table
  • Make contact with the MySQL server
  • Create a database for emails
  • Create a table inside the database
  • We need to define our data
  • MySQL data types
  • Create your table with a query
  • USE the database before you use it
  • DESCRIBE reveals the structure of tables
  • Create the Add Email script
  • The Send Email script
  • mysqli_fetch_array() fetches query results
  • Looping through data with while
  • Removing data with DELETE
  • Use WHERE to DELETE specific data
  • Minimize the risk of accidental deletions
Day 2
  • Realistic and practical application
  • Demand good form data
  • The logic behind Send Email validation
  • Your code can make decisions with IF
  • Testing for truth
  • IF checks for more than just equality
  • The logic behind Send Email validation
  • PHP functions for verifying variables
  • Test multiple conditions with AND and OR
  • Form users need feedback
  • Ease in and out of PHP as needed
  • Use a flag to avoid duplicate duplicate code
  • Code the HTML form only once
  • A form that references itself
  • Point the form action at the script
  • Check to see if the form has been submitted
  • Table rows should be uniquely identifiable
  • Primary keys enforce uniqueness
  • From checkboxes to customer IDs
  • Loop through an array with foreach
Day 3
  • Working with data stored in files
  • The application needs to store images
  • Planning for image file uploads
  • The high score database must be ALTERed
  • How do we get an image from the user?
  • Insert the image filename into the database
  • Find out the name of the uploaded file
  • Where did the uploaded file go?
  • Create a home for uploaded image files
  • Shared data has to be shared
  • Shared script data is required
  • Think of require_once as “insert”
  • Order Timing is everything with high scores
  • Format the top score with HTML and CSS
  • Only small images allowed
  • File validation makes the app more robust
  • Plan for an Admin page
  • Generate score removal links on the Admin page
  • Scripts can communicate with each other
  • Of GETs and POSTs
  • GET, POST, and high score removal
  • Isolate the high score for deletion
  • Control how much you delete with LIMIT
Day 4 
  • Securing your application
  • Protecting the Admin page
  • HTTP authentication requires headers
  • Header Exposed
  • Take control of headers with PHP
  • Authenticating with headers
  • Create an Authorize script
  • Subtraction by addition
  • Security requires humans
  • Plan for moderation
  • Make room for approvals with ALTER
  • Unapproved scores aren’t worthy
  • The million-point hack
  • Tricking MySQL with comments
  • The Add Score form was SQL injected
  • Protect your data from SQL injections
  • A safer INSERT (with parameters)
  • Form validation can never be too smart
Day 5
  • Using Variables in PHP
  • Understanding Data Types
  • Operators and Expressions
  • if, else Statement
  • Testing One Expression Many Times with the switch Statement
  • Compact Coding with the Ternary Operator
  • Doing Repetitive Tasks with Looping
  • Creating and Accessing Strings
  • Searching Strings
  • Replacing Text within Strings
  • Dealing with Upper- and Lowercase
  • Formatting Strings
  • The Anatomy of an Array
  • Creating Arrays
  • Accessing Array Elements
  • Looping Through Arrays with foreach
  • Working with Multidimensional Arrays
  • Manipulating Arrays

Practical project for competency certificate :

Create a website with 2 tables:
Product table (id, date, description, price, picture)
Members table (id, name, surname, email-address, description)
and pages for:

Customers:
to join the site
to view the product list (will be expanded in the Advanced Course to add a shopping cart)

Pages and tables should be designed to be secure
from SQL injections by hackers

Management:
display the product list and add / remove and change products
moderate new customer applications, delete customers
the management pages must be protected with http authentication
send an email newsletter to members
Ensure that you use self-referencing forms that remember fields

Duration and pricing

    • Full-time over 5 days (R7995 excl VAT)
    • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R9995 excl Vat)
    • Part-time over 8 Saturdays, 3 hour sessions (R9995 excl Vat)
    • Distance-learning over up to 3 months (R6995 excl Vat)

Certificate

  • Upon completion of this course you will receive an attendance certificate to certify your attendance and / or completion of the prescribed minimum examples.
  • You have the option to get the competency / academic certificate if you hand in a project (pre-approved) covering most of the topics in the book, within 3 months
  • The project is useful for unemployed students who want to enter the job market. This project and certificate can be used to show employers your abilities.

Schedule

On the calender on this page below.  This course is repeated approximately once every 6 weeks, unless a customised specific booking is requested via email.
If your browser doesn’t display the calendar below, please click on this link or try using Google Chrome, alternatively please enquire via our ‘Contact Us’ page.

Bookings

You can download the course registration form on our home page or by clicking here

Brochure

You may download a pdf copy of this page by clicking here.

Questions

Please email us

 

Java 7 OCP Exam Workshop (5 days) starting Monday 18 August 2014

For course information see below or – click here  .

Prerequisites

You should have mastered the topics up to our Advanced Java Programmer Course very well  - it tests your theoretical knowledge of Java and prepares you for the international exam.

Intended Audience

This course focuses on all the building blocks of JAVA with a view to pass the Oracle Java Certification exam. We also do lots of exercises, similar to the questions you will get in the SUN exam.

After this course you should be able to

Understand all the topics covered in the Oracle Certification exam for Java Associate and Programmer (Also Sun Certification). You should be well-equipped to prepare for and pass these Exams.

Further Training

If you have not yet, you should seriously consider doing our Beginning Servlets course.

Course material

Included in the course price

Course Contents We cover the SCJP 6 (Sun Certified Java Programmer – still alive and very popular, and cheaper to get certified) as well as the OCA 7 syllabus. This is also the stepping stone towards the rest of the certifications in the Oracle Java Syllabus.

 Day 1

  • The OCP JP 7 Exam Overview
  • Pretest
  • Java Class Design
  • OOP Essentials
  • Class Fundamentals
  • Overloading
  • Inheritance
  • Packages
  • Exam Questions

Day 2

  • Abstract Classes
  • The final keyword
  • The static keyword
  • Nested and Inner classes
  • Enums
  • Object-Oriented Design
  • Interfaces
  • Object Composition
  • Design Patterns
  • Generics
  • Collections
  • Exam Questions

Day 3

  • String Processing
  • Regular Expressions
  • String Formatting
  • Java I/O Fundamentals
  • Console I/O
  • Streams
  • Java File I/O (NIO.2)
  • Path Interface
  • Files Class
  • Traversing a File Tree
  • Exam Questions
Day 4

  • Building Database Applications with JDBC
  • JDBC Architecture
  • JDBC Drivers
  • Querying and Updating
  • Transactions
  • Exceptions Handling
  • Try-with-Resources
  • Exception Types
  • Assertions
  • Localizaton
  • Locales
  • Resource Bundles
  • Loading a Resource Bundle
  • Formatting for Local Culture
  • Exam Questions

Day 5

  • Threads
  • The states of a Thread
  • Concurrent Access
  • Concurrent Collections
  • Atomic Variables and Locks
  • Executors and Thread Pools
  • The Parallel Fork / Join Framework
  • Summarising OCP JP 7
  • Mock Exam

Duration and pricing

  • Full-time over 5 days (R7995 excl VAT)
  • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R9995 excl Vat)
  • Part-time over 8 Saturdays, 3 hour sessions (R9995 excl Vat)
  • Distance-learning over up to 3 months (R6995 excl Vat)
  • An Oracle Exam will cost you around R1500 – dpending on the exchange rate. This is not included in the course and has to be booked and written seperately at any Prometric Exam centre worldwide.

Certificate

1. Upon completion of this course we will issue you with attendance certificate to certify your attendance and / or completion of the prescribed minimum exercises.

Schedule

On the calender on this page below. If your browser doesn’t display the calendar below, please click on this link or try using Google Chrome, alternatively please enquire via our ‘Contact Us’ page.

Bookings

You can download the course registration form on our home page or by clicking here

Brochure

You may download a pdf copy of this page by clicking here.

Questions

Please email us

Employing Junior Java Bootcamp Graduates is an Investment in Your Teams Future

Our Java Bootcamp teaches promising students the latest skills and knowledge about programming in Java as well as to pass the international OCP / Java exam.

The government has created various incentives to employ juniors, so is it not a good idea to look at a few promising junior Java Programmers. Any software team needs a long term strategy for growth and sustainability.

Why I studied the Java Bootcamp and would like to recommend it.

Here is my story.
I come from a call centre environment and I was really tired of it, so I wanted to do programming on a full-time basis and had no prior education or experience in any IT field and I did the bootcamp from the 1st of July last year and got my Java international(SCJP 6) on the 10th of December there after took a few weeks to complete my java project. Which was completed at the end of Jan this year, I have to be honest with you I don’t look over my shoulders, I’m thinking its the best decision I have ever made, because shortly there after I got 2 interviews. I currently work as a junior software developer at one of the companies.
If you ask me I would say, “It doesn’t get any better than this”, its the ultimate job satisfaction.
Kind regards,
Xolani

 

Java Bootcamp – July – December 2014

Entry Requirements:
  • Matric with Pure Maths (60%) or
  • Good aptitude test results
  • Previous work experience or -training

Course Contents:

The following modules are covered in the Java Bootcamp

(remember, you should be at the Intro to Programming level)

Every student so far who has passed the Java Bootcamp (incl OCP Exam and Java Bootcamp project) has found employment, some have chosen to continue with the Java EE Bootcamp 
 
 

Cape Town

 

We need 6+ people, we will run the full bootcamp in Cape Town. So if you are interested, let us know and we will notify you if we have a group of 6.

Duration:

Every module (*) is attended in-classroom for 5 full days, with projects to be completed on campus and / or at home with video conferencing support over the internet over the following week. The lecturing portion duration span 3 months and another 3 months can be added to hand in practical projects, making the total duration up to 6 months. Weekly / bi-weekly project progress sessions are held to support students.

Part-time:
 
Every module is presented as 8 evening classes during the week. The full course duration is one year
The full price for part-time is R59 995.

Bursaries / Sponsorships:

Please read our application procedure 

Schedule:

  • July 2014
  • January 2015
  • July 2015
Course Price :  R46 970 excl  Vat
Oracle Certified Associate Java Exam : R1460 excl Vat
Oracle Certified Professional Java Exam : R1460 excl Vat

Booking/Enquiries

You can download the course registration form on our home page or by clicking here 

Any questions? Please click here

 

Saturday Classes Java OCBCD/EJB 3.1 Certification Workshop – Aug 2014

Java / J2EE Business Component Developer for ORACLE Certification (OCBCD) 

Prerequisites 
You should be at the Advanced Java Programmer level.
Intended Audience
This course covers EJB 3.0 required to use on a practical Java project and also to pass the SUN exam. We not only try to help you to pass the exam, but teach it in a way you can use it in the real world.
After this course you should be able to Pass the Sun Certified Business Component Developer Exam and also be able to use EJB’s in the way it was intended for your projects at work.
Further Training
Further Java Certification courses.
Course Material
Included in the course price.

Course Info

The EJB 3.0 Standard

1. Introduction

  • The Problem Domain
  • Breaking Up Responsibilities
  • Code Smart, Not Hard
  • The Enterprise JavaBeans™ 3.1 Specification

2. Component Types

  • Server-Side Component Types
  • Session Beans
  • Message-Driven Beans (MDBs)
  • Entity Beans
  • The Java Persistence Model
  • The Model Isn’t Everything

3. Container Services

  • Dependency Injection (DI)
  • Concurrency
  • Instance Pooling/Caching
  • Transactions
  • Security
  • Timers
  • Naming and Object Stores
  • Interoperability
  • Lifecycle Callbacks
  • Interceptors
  • Platform Integration
  • Bringing It Together

4. Developing Your First EJBs

  • Step 1: Preparation
  • Definitions
  • Naming Conventions
  • Conventions for the Examples
  • Step 2: Coding the EJB
  • The Contract
  • The Bean Implementation Class
  • Out-of-Container Testing
  • Integration Testing

5. The Stateless Session Bean

  • The XML Deployment Descriptor
  • SessionContext
  • EJBContext
  • The Lifecycle of a Stateless Session Bean
  • The Does Not Exist State
  • The Method-Ready Pool
  • Example: The EncryptionEJB
  • The Contract: Business Interfaces
  • Application Exceptions
  • Bean Implementation Class
  • Accessing Environment Properties (Injection and Lookup)
  • Asynchronous Methods

6. The Stateful Session Bean

  • The Lifecycle of a Stateful Session Bean
  • The Does Not Exist State
  • The Method-Ready State
  • The Passivated State
  • Example: The FileTransferEJB
  • The Contract: Business Interfaces
  • Exceptions
  • Bean Implementation Class
  • POJO Testing Outside the Container
  • Integration Testing

7. The Singleton Session Bean

  • Concurrency
  • Shared Mutable Access
  • Container-Managed Concurrency
  • Bean-Managed Concurrency
  • Lifecycle
  • Explicit Startup
  • Example: The RSSCacheEJB
  • Value Objects
  • The Contract: Business Interfaces
  • Bean Implementation Class

8. Message-Driven Beans

  • JMS and Message-Driven Beans
  • JMS as a Resource
  • JMS Is Asynchronous
  • JMS Messaging Models
  • Learning More About JMS
  • JMS-Based Message-Driven Beans
  • @MessageDriven
  • The Lifecycle of a Message-Driven Bean
  • The Does Not Exist State
  • The Method-Ready Pool
  • Connector-Based Message-Driven Beans
  • Message Linking
  • Session Beans Should Not Receive Messages
  • The JMS APIs
  • Example: The StatusUpdateEJBs

9. Persistence: EntityManager

  • Entities Are POJOs
  • Managed Versus Unmanaged Entities
  • Persistence Context
  • Packaging a Persistence Unit
  • The Persistence Unit Class Set
  • Obtaining an EntityManager
  • EntityManagerFactory
  • Obtaining a Persistence Context
  • Interacting with an EntityManager
  • Example: A Persistent Employee Registry
  • A Transactional Abstraction
  • Persisting Entities
  • Finding and Updating Entities
  • Removing Entities
  • refresh()
  • contains() and clear()
  • flush() and FlushModeType
  • Locking
  • unwrap() and getDelegate()

10. Mapping Persistent Objects

  • The Programming Model
  • The Employee Entity
  • The Bean Class
  • XML Mapping File
  • Basic Relational Mapping
  • Elementary Schema Mappings
  • Primary Keys
  • @Id
  • Table Generators
  • Sequence Generators
  • Primary-Key Classes and Composite Keys
  • Property Mappings
  • @Transient
  • @Basic and FetchType
  • @Lob
  • @Temporal
  • @Enumerated
  • @Embedded Objects

11. Entity Relationships

  • The Seven Relationship Types
  • One-to-One Unidirectional Relationship
  • One-to-One Bidirectional Relationship
  • One-to-Many Unidirectional Relationship
  • Many-to-One Unidirectional Relationship
  • One-to-Many Bidirectional Relationship
  • Many-to-Many Bidirectional Relationship
  • Many-to-Many Unidirectional Relationship
  • Mapping Collection-Based Relationships
  • Ordered List-Based Relationship
  • Map-Based Relationship
  • Detached Entities and FetchType
  • Cascading
  • PERSIST
  • MERGE
  • REMOVE
  • REFRESH
  • ALL
  • When to Use Cascading

12. Entity Inheritance

  • Single Table per Class Hierarchy
  • Advantages
  • Disadvantages
  • Table per Concrete Class
  • Advantages
  • Disadvantages
  • Table per Subclass
  • Advantages
  • Disadvantages
  • Mixing Strategies
  • Nonentity Base Classes
 13. Queries, the Criteria API, and JPA QL

  • Query API
  • Parameters
  • Date Parameters
  • Paging Results
  • Hints
  • FlushMode
  • JPA QL
  • Abstract Schema Names
  • Simple Queries
  • Selecting Entity and Relationship Properties
  • Constructor Expressions
  • The IN Operator and INNER JOIN
  • LEFT JOIN
  • Fetch Joins
  • Using DISTINCT
  • The WHERE Clause and Literals
  • The WHERE Clause and Operator Precedence
  • The WHERE Clause and Arithmetic Operators
  • The WHERE Clause and Logical Operators
  • The WHERE Clause and Comparison Symbols
  • The WHERE Clause and Equality Semantics
  • The WHERE Clause and BETWEEN
  • The WHERE Clause and IN
  • The WHERE Clause and IS NULL
  • The WHERE Clause and IS EMPTY
  • The WHERE Clause and MEMBER OF
  • The WHERE Clause and LIKE
  • Functional Expressions
  • The ORDER BY Clause
  • Bulk UPDATE and DELETE
  • Native Queries
  • Scalar Native Queries
  • Simple Entity Native Queries
  • Complex Native Queries
  • Named Queries
  • Named Native Queries

14. Entity Callbacks and Listeners

  • Callback Events
  • Callbacks on Entity Classes
  • Entity Listeners
  • Default Entity Listeners
  • Inheritance and Listeners

15. Security 

  • Authentication and Identity
  • Authorization
  • Example: A Secured School
  • The Business Interface
  • Assigning Method Permissions
  • Programmatic Security
  • The RunAs Security Identity

16. JNDI, the ENC, and Injection

  • Global JNDI
  • The JNDI ENC
  • What Can Be Registered in the JNDI ENC?
  • How Is the JNDI ENC Populated?
  • How Are Things Referenced from the ENC?
  • Reference and Injection Types
  • EJB References
  • EntityManagerFactory References
  • EntityManager References
  • Resource References
  • Resource Environment and Administered Objects
  • Environment Entries
  • Message Destination References

17. Transactions

  • ACID Transactions
  • Example: The BlackjackEJB
  • Helper EJBs for Testing Transactions
  • Is the BlackjackEJB Atomic?
  • Is the BlackjackEJB Consistent?
  • Is the BlackjackEJB Isolated?
  • Is the BlackjackEJB Durable?
  • Declarative Transaction Management
  • Transaction Scope
  • Transaction Attributes
  • Transaction Propagation
  • Isolation and Database Locking
  • Dirty, Repeatable, and Phantom Reads
  • Database Locks
  • Transaction Isolation Levels
  • Balancing Performance Against Consistency
  • Optimistic Locking
  • Programmatic Locking
  • Nontransactional EJBs
  • Explicit Transaction Management
  • Transaction Propagation in Bean-Managed Transactions
  • Heuristic Decisions
  • UserTransaction
  • Status
  • EJBContext Rollback Methods
  • Exceptions and Transactions
  • Application Exceptions Versus System Exceptions
  • Transactional Stateful Session Beans
  • The Transactional Method-Ready State
  • Conversational Persistence Contexts

18. Interceptors

  • Intercepting Methods
  • Interceptor Class
  • Applying Interceptors
  • Interceptors and Injection
  • Intercepting Lifecycle Events
  • Custom Injection Annotations
  • Exception Handling
  • Aborting a Method Invocation
  • Catch and Rethrow Exceptions
  • Interceptor Lifecycle
  • Bean Class @AroundInvoke Methods

19. Timer Service

  • Example: A Batch Credit Card Processing System
  • The Business Interface
  • javax.ejb.ScheduleExpression and @javax.ejb.Schedule
  • The Bean Implementation Class
  • The TimerService
  • The Timer
  • Transactions
  • Stateless Session Bean Timers
  • Message-Driven Bean Timers

20. EJB 3.1: Web Services Standards

  • Web Services Overview
  • XML Schema and XML Namespaces
  • XML Schema
  • XML Namespaces
  • SOAP 1.1
  • Web Services Styles
  • Exchanging SOAP Messages with HTTP
  • Now You See It, Now You Don’t
  • WSDL 1.1
  • The <definitions> Element
  • The <portType> and <message> Elements
  • The <types> Element
  • The <binding> and <service> Elements
  • UDDI 2.0
  • From Standards to Implementation

21. EJB 3.1 and Web Services

  • Accessing Web Services with JAX-RPC
  • Generating JAX-RPC Artifacts from WSDL
  • Calling a Service from an EJB
  • The <service-ref> Deployment Element
  • The JAX-RPC Mapping File
  • Defining a Web Service with JAX-RPC
  • The WSDL Document
  • The Service Endpoint Interface
  • The Stateless Bean Class
  • The Deployment Files
  • Using JAX-WS
  • The @WebService Annotation
  • The @WebMethod Annotation
  • The @SOAPBinding Annotation
  • The @WebParam Annotation
  • The @WebResult Annotation
  • The @OneWay Annotation
  • Separating the Web Services Contract
  • The Service Class
  • The Service Endpoint Interface
  • The @WebServiceRef Annotation
  • Other Annotations and APIs
  • JAXB
  • Taking JAXB Further
  • Conclusion

 

SCBCD Example

Open SCBCD Example

 

Duration and pricing
  • Full-time over 5 days (R8995 excl VAT)
  • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R11995 excl Vat) or 8 Saturdays, 3 hour sessions) (R11995 excl Vat)
  • Distance-learning over up to 6 months (R9995 excl Vat)

Certificate

 
Upon successfully completion of this course we will issue you with an attendance certificate.
You may write our Mock exam which, if you pass will qualify you for the competency certificate.

Schedule

On the calender on this page below. This course is repeated approximately once every 6 weeks, unless a customised specific booking is requested via email.
If your browser doesn’t display the calendar below, please click on this link or try using Google Chrome, alternatively please enquire via our ‘Contact Us’ page.


Bookings

 

You can download the course registration form on our home page or by clicking here

 

Saturday Classes Java Web Services Starting On 28 June

Prerequisites

You should be at or beyond the Java Servlets level

Intended Audience

Java Web Developers who want to improve/consolidate their skills in web services

After this course you should be able to

Develop REST-style and SOAP-based web services and clients with this quick and thorough introduction. 
This hands-on course delivers a clear, pragmatic approach to web services by providing an architectural overview, complete working code examples, and short yet precise instructions for compiling and deploying.
Further Training

Various Java EE courses

 
Course Material

We give you an original copy of the book: Java Web Services: Up and Running, 2nd Edition (Martin Kalin) as we use this mainly, but we also give additional examples where it falls short.

Course Contents
Day 1
Web Services Quickstart
  • Web Service Miscellany
  • What Good Are Web Services?
  • Web Services and Service-Oriented Architecture
  • A Very Short History of Web Services
  • What Is REST?
  • Review of HTTP Requests and Responses
  • HTTP as an API
  • A First RESTful Example
  • Why Use Servlets for RESTful Web Services?
Day 2
RESTful Web Services: The Service Side
  • A RESTful Service as an HttpServlet
  • A RESTful Web Service as a JAX-RS Resource
  • A RESTful Web Service as Restlet Resources
  • A RESTful Service as a @WebServiceProvider
RESTful Web Services: The Client Side
  • A Perl Client Against a Java RESTful Web Service
  • A Client Against the Amazon E-Commerce Service
  • A Standalone JAX-B Example
  • Another Client Against the Amazon E-Commerce Service
  • The CTA Bus-Tracker Services
  • RESTful Clients and WADL Documents
  • The JAX-RS Client API
  • JSON for JavaScript Clients
Day 3
SOAP-Based Web Services
  • A SOAP-Based Web Service
  • The RandService in Two Files
  • Clients Against the RandService
  • The WSDL Service Contract in Detail
  • SOAP-Based Clients Against Amazon’s E-Commerce Service
SOAP Handlers and Faults
  • The Handler Level in SOAP-Based Services and Clients
  • Handlers and Faults in the predictionsSOAP Service
  • A Handler Chain with Two Handlers
  • SOAP-Based Web Services and Binary Data
  • The Transport Level
  • Axis2
Day 4
Web Services Security
  • Wire-Level Security
  • A Very Lightweight HTTPS Server and Client
  • HTTPS in a Production-Grade Web Server
  • Container-Managed Security
  • WS-Security
Day 5
Web Services and Java Application Servers
  • The Web Container
  • Toward a Lightweight JAS
  • GlassFish Basics
  • Servlet-Based Web Services Under GlassFish
  • An Interactive Website and a SOAP-Based Web Service
  • A @WebService as a @Stateless Session EJB
  • TomEE: Tomcat with Java EE Extensions
  • Where Is the Best Place to Be in Java Web Services?
Duration and pricing
  • Part-time 4-8 Saturdays, 3-6 hour sessions (R10995 excl Vat)

Certificate

1. Upon completion of this course we will issue you with attendance certificate to certify your attendance and / or completion of the prescribed minimum examples.
2. You have the option to get the competency  / academic certificate if you :
hand in a project (pre-approved) covering most of the topics in the book
The project is useful for unemployed students who want to enter the job market. This project and certificate can be used to show employers your abilities.

Schedule

Have a look at the calendar below or click here or email to info@getcertified.co.za
 


Bookings

You can download the course registration form on our home page or by clicking here

 

Beginner C# Evening Classes starting 24 June

If you would like to join, please book here now

Prerequisites

You should be at the minimum of Introduction to Programming level.
It contains introductory as well as advanced topics, making it applicable for both beginners and intermediate programmers.
If in doubt, you must be able to pass this test in a programming language of your choice, before attempting this course.

For beginner, intermediate and advanced students

Intended Audience

This course is for anyone who want to learn how to program in C# using the .NET framework

After this course you should be able to

Create a fun arcade game and build games and other projects

Further Training

Alignment

 Together, the Beginner and Advanced C#.NET are on the same level as Microsoft : 10266A . View the MCPD Course Schedules
Course Material:
We give you an original copy of the book: Head First C# (by O’Reilly Press) as we use this mainly,
but we also give additional examples where it falls short.

Course info 
 
Day 1

Start Building With c#: Build something cool, fast!

  • Why you should learn C#
  • C# and the Visual Studio IDE make lots of things easy
  • What you do in Visual Studio…
  • What Visual Studio does for you…
  • Aliens attack!
  • Only you can help save the Earth
  • Here’s what you’re going to build
  • Start with a blank application
  • Set up the grid for your page
  • Add controls to your grid
  • Use properties to change how the controls look
  • Controls make the game work
  • You’ve set the stage for the game
  • What you’ll do next
  • Add a method that does something
  • Fill in the code for your method
  • Finish the method and run your program
  • Here’s what you’ve done so far
  • Add timers to manage the gameplay
  • Make the Start button work
  • Run the program to see your progress
  • Add code to make your controls interact with the player
  • Dragging humans onto enemies ends the game
  • Your game is now playable
  • Make your enemies look like aliens
  • Add a splash screen and a tile
  • Publish your app
  • Use the Remote Debugger to sideload your app
  • Start remote debugging
It’s all Just Code: Under the hood

  • When you’re doing this…
  • …the IDE does this
  • Where programs come from
  • The IDE helps you code
  • Anatomy of a program
  • Two classes can be in the same namespace
  • Your programs use variables to work with data
  • C# uses familiar math symbols
  • Use the debugger to see your variables change
  • Loops perform an action over and over
  • if/else statements make decisions
  • Build an app from the ground up
  • Make each button do something
  • Set up conditions and see if they’re true
  • Windows Desktop apps are easy to build
  • Rebuild your app for Windows Desktop
  • Your desktop app knows where to start
  • You can change your program’s entry point
  • When you change things in the IDE, you’re also changing your code
Day 2
Objects: Get Oriented!: Making code make sense

  • How Mike thinks about his problems
  • How Mike’s car navigation system thinks about his problems
  • Mike’s Navigator class has methods to set and modify routes
  • Use what you’ve learned to build a program that uses a class
  • Mike gets an idea
  • Mike can use objects to solve his problem
  • You use a class to build an object
  • When you create a new object from a class, it’s called an instance of that class
  • A better solution…brought to you by objects!
  • An instance uses fields to keep track of things
  • Let’s create some instances!
  • Thanks for the memory
  • What’s on your program’s mind
  • You can use class and method names to make your code intuitive
  • Give your classes a natural structure
  • Class diagrams help you organize your classes so they make sense
  • Build a class to work with some guys
  • Create a project for your guys
  • Build a form to interact with the guys
  • There’s an easier way to initialize objects
  • A few ideas for designing intuitive classes
Types and References: It’s 10:00. Do you know where your data is?

  • The variable’s type determines what kind of data it can store
  • A variable is like a data to-go cup
  • 10 pounds of data in a 5-pound bag
  • Even when a number is the right size, you can’t just assign it to any variable
  • When you cast a value that’s too big, C# will adjust it automatically
  • C# does some casting automatically
  • When you call a method, the arguments must be compatible with the types of the parameters
  • Debug the mileage calculator
  • Combining = with an operator
  • Objects use variables, too
  • Refer to your objects with reference variables
  • References are like labels for your object
  • If there aren’t any more references, your object gets garbage-collected
  • Multiple references and their side effects
  • Two references means TWO ways to change an object’s data
  • A special case: arrays
  • Arrays can contain a bunch of reference variables, too
  • Welcome to Sloppy Joe’s Budget House o’ Discount Sandwiches!
  • Objects use references to talk to each other
  • Where no object has gone before
  • Build a typing game
  • Controls are objects, just like any other object
  • Chapter C# Lab A Day at the Races
  • The Spec: Build a Racetrack Simulator
  • You’ll need three classes and a form
  • Here’s your application architecture
  • Here’s what your GUI should look like
  • The Finished Product
Day 3

Encapsulation: Keep your privates… private

  • Kathleen is an event planner
  • What does the estimator do?
  • You’re going to build a program for Kathleen
  • Kathleen’s test drive
  • Each option should be calculated individually
  • It’s easy to accidentally misuse your objects
  • Encapsulation means keeping some of the data in a class private
  • Use encapsulation to control access to your class’s methods and fields
  • But is the RealName field REALLY protected?
  • Private fields and methods can only be accessed from inside the class
  • A few ideas for encapsulating classes
  • Encapsulation keeps your data pristine
  • Properties make encapsulation easier
  • Build an application to test the Farmer class
  • Use automatic properties to finish the class
  • What if we want to change the feed multiplier?
  • Use a constructor to initialize private fields
Inheritance: Your object’s family tree

  • Kathleen does birthday parties, too
  • We need a BirthdayParty class
  • Build the Party Planner version 2.0
  • One more thing…can you add a $100 fee for parties over 12?
  • When your classes use inheritance, you only need to write your code once
  • Build up your class model by starting general and getting more specific
  • How would you design a zoo simulator?
  • Use inheritance to avoid duplicate code in subclasses
  • Different animals make different noises
  • Think about how to group the animals
  • Create the class hierarchy
  • Every subclass extends its base class
  • Use a colon to inherit from a base class
  • We know that inheritance adds the base class fields, properties, and methods to the subclass…
  • A subclass can override methods to change or replace methods it inherited
  • Any place where you can use a base class, you can use one of its subclasses instead
  • A subclass can hide methods in the superclass
  • Use the override and virtual keywords to inherit behavior
  • A subclass can access its base class using the base keyword
  • When a base class has a constructor, your subclass needs one, too
  • Now you’re ready to finish the job for Kathleen!
  • Build a beehive management system
  • How you’ll build the beehive management system
  • Use inheritance to extend the bee management system
 
 
 
 
Day 4
Interfaces and Abstract Classes: Making classes keep their promises

  • Let’s get back to bee-sics
  • We can use inheritance to create classes for different types of bees
  • An interface tells a class that it must implement certain methods and properties
  • Use the interface keyword to define an interface
  • Now you can create an instance of NectarStinger that does both jobs
  • Classes that implement interfaces have to include ALL of the interface’s methods
  • Get a little practice using interfaces
  • You can’t instantiate an interface, but you can reference an interface
  • Interface references work just like object references
  • You can find out if a class implements a certain interface with “is”
  • Interfaces can inherit from other interfaces
  • The RoboBee 4000 can do a worker bee’s job without using valuable honey
  • is tells you what an object implements; as tells the compiler how to treat your object
  • A CoffeeMaker is also an Appliance
  • Upcasting works with both objects and interfaces
  • Downcasting lets you turn your appliance back into a coffee maker
  • Upcasting and downcasting work with interfaces, too
  • There’s more than just public and private
  • Access modifiers change visibility
  • Some classes should never be instantiated
  • An abstract class is like a cross between a class and an interface
  • Like we said, some classes should never be instantiated
  • An abstract method doesn’t have a body
  • The Deadly Diamond of Death!
  • Polymorphism means that one object can take many different forms
Enums and Collections: Storing Lots of Data

  • Strings don’t always work for storing categories of data
  • Enums let you work with a set of valid values
  • Enums let you represent numbers with names
  • We could use an array to create a deck of cards…
  • Arrays are hard to work with
  • Lists make it easy to store collections of…anything
  • Lists are more flexible than arrays
  • Lists shrink and grow dynamically
  • Generics can store any type
  • Collection initializers are similar to object initializers
  • Let’s create a List of Ducks
  • Lists are easy, but SORTING can be tricky
  • IComparable<Duck> helps your list sort its ducks
  • Use IComparer to tell your List how to sort
  • Create an instance of your comparer object
  • IComparer can do complex comparisons
  • Overriding a ToString() method lets an object describe itself
  • Update your foreach loops to let your Ducks and Cards print themselves
  • You can upcast an entire list using IEnumerable
  • You can build your own overloaded methods
  • Use a dictionary to store keys and values
  • The dictionary functionality rundown
  • Build a program that uses a dictionary
  • And yet MORE collection types…
  • A queue is FIFO—First In, First Out
  • A stack is LIFO—Last In, First Out
Day 5
Reading and Writing Files: Save the last byte for me!

  • .NET uses streams to read and write data
  • Different streams read and write different things
  • A FileStream reads and writes bytes to a file
  • Write text to a file in three simple steps
  • The Swindler launches another diabolical plan
  • Reading and writing using two objects
  • Data can go through more than one stream
  • Use built-in objects to pop up standard dialog boxes
  • Dialog boxes are just another WinForms control
  • Dialog boxes are objects, too
  • Use the built-in File and Directory classes to work with files and directories
  • Use file dialogs to open and save files (all with just a few lines of code)
  • IDisposable makes sure your objects are disposed of properly
  • Avoid filesystem errors with using statements
  • Trouble at work
  • Writing files usually involves making a lot of decisions
  • Use a switch statement to choose the right option
  • Use a switch statement to let your deck of cards read from a file or write itself out to one
  • Add an overloaded Deck() constructor that reads a deck of cards in from a file
  • What happens to an object when it’s serialized?
  • But what exactly IS an object’s state? What needs to be saved?
  • When an object is serialized, all of the objects it refers to get serialized, too…
  • Serialization lets you read or write a whole object graph all at once
  • If you want your class to be serializable, mark it with the [Serializable] attribute
  • Let’s serialize and deserialize a deck of cards
  • .NET uses Unicode to store characters and text
  • C# can use byte arrays to move data around
  • Use a BinaryWriter to write binary data
  • You can read and write serialized files manually, too
  • Find where the files differ, and use that information to alter them
  • Working with binary files can be tricky
  • Use file streams to build a hex dumper
  • StreamReader and StreamWriter will do just fine (for now)
  • Use Stream.Read() to read bytes from a stream
Duration and pricing
  • Full-time over 5 days (R7995 excl VAT)
  • Part-time over 4 weeks (2 nights per week, 3 hour sessions) (R9995 excl Vat) or 8 Saturdays, 3 hour sessions) (R9995 excl Vat)
  • Distance-learning over up to 3 months (R6995 excl Vat)

Certificate

1. Upon completion of this course we will issue you with attendance certificate to certify your attendance and / or completion of the prescribed minimum examples.
2. You have the option to get the competency  / academic certificate if you :
hand in a project (pre-approved) covering most of the topics in the book
The project is useful for unemployed students who want to enter the job market. This project and certificate can be used to show employers your abilities.


My WordPress Blog