Snel navigeren naar:

  • Inhoud
  • Voordelen
  • Specificaties
  • Reviews
  • More information
  • FAQ

Productinformatie

In deze Android training leert u de basisprincipes van defensief programmeren in Android kennen. Zo leert u defensief te denken bij het werken met inputs en het creëren van methods, het omgaan met errors en het maken van geautomatiseerde tests. Tevens maakt u kennis met verschillende Java technieken die positief zijn voor het defensief programmeren voor Android applicaties.

Onderwerpen die aan bod komen zijn onder andere URL inputs, SQL, loops, SQlite, Design, Java error classes, API, IDE, UI, ViewAction, ViewInteraction, DataInteraction, assert statements, AsyncTask en nog veel meer.

Inhoud van de training

Defensive Programming in Android

9 uur

Defensive Programming in Android: Input and Methods

  • start the course
  • identify common assumptions not to make about user input
  • create code that handles file inputs to an Android app
  • create code that handles URL inputs to an Android app
  • validate user-provided input
  • use a real-time approach to validating user-provided input
  • use secure coding principles to guard against format string attacks
  • parse and check input values before using that input in a WebView object
  • restrict access to navigation methods in a WebView object
  • protect against SQL injection by using parameterized and prepared statements
  • recognize best practice in writing methods for Android apps in Java
  • use best practices to name methods in Java for Android
  • use best practices to name getter methods in Java for Android
  • use best practices to name callback methods in Java for Android
  • reduce method complexity in Android apps using Java
  • use Java overloaded methods to reduce complexity in Java for Android
  • recognize how constants can be used in defensive programming
  • create and use constants in Java for Android
  • use best practices for naming constants in Java for Android
  • create and use resource files in an Android app
  • recognize how to write if statements defensively to protect against potential bugs
  • design while loops that are not vulnerable to running forever
  • design for loops that are not vulnerable to running forever
  • identify and avoid bugs caused by altered loop variables
  • use defensive practices to code in Java

Defensive Programming in Android: Using Standards

  • start the course
  • recognize how and where standards promote defensive programming
  • identify and use class naming standards in Java
  • identify and use variable naming standards in Java
  • recognize the proper use of comments to make code more readable and maintainable
  • use SQLite prepared statements to protect against SQL attacks
  • recognize how both indentation and whitespace can be used to promote defensive programming
  • use indentation to make source code more readable and maintainable
  • use whitespace to make source code more readable and maintainable
  • recognize what it means to keep code simple and how it makes programs more robust
  • design classes that have a single and defined focus
  • design methods that have a single and defined focus
  • perform refactoring in Java
  • avoid duplicating code in Java Android apps
  • set up dependency management in Apache Maven
  • set up dependency management in Gradle
  • describe the characteristics of Design by Contract
  • use comments to support Design by Contract
  • use preconditions to support Design by Contract
  • use postconditions to support Design by Contract
  • use invariants to support Design by Contract
  • use Design by Contract in Java
  • use Design by Contract in Android
  • create a simple app using Design by Contract principles

Defensive Programming in Android: Errors, Exceptions, and Testing

  • start the course
  • recognize how errors and exceptions can be used in defensive programming
  • use the Java exception classes
  • use exception stack traces
  • test for specific kinds of errors based on domain and code
  • create custom Java error classes
  • inform end users of error information in an Android app
  • use an underlying error object to find out more detail about an error that has occurred
  • release Java resources in the event of an exception
  • recognize how unit testing can be used in defensive programming
  • use the android testing API to construct automated unit tests
  • use instrumentation in automated Android unit testing
  • use test case classes in Android automated unit testing
  • use Android assertion classes
  • use mock object classes in Android automated unit testing
  • use test runner classes for Android automated unit testing
  • view test results in the IDE
  • recognize where end-to-end testing can be used in defensive programming
  • set up the Android Testing Support API for automated UI testing
  • use Espresso test classes for Android automated UI testing
  • use instrumentation of activities for Android automated UI testing
  • test UI components in Android
  • use ViewAction, ViewInteraction, and DataInteraction classes to simulate actions when testing an Android app
  • describe the use of assertions for defensive programming in Java for Android
  • use basic assert statements in Java for Android
  • identify and use precondition, postcondition and invariant assertions
  • use annotations to aid in programming defensively for Android
  • create a Java app to use exceptions and assertions

Defensive Programming in Android: Network Access and Java Defensive Techniques

  • start the course
  • initialize instances of classes safely
  • check for the presence of null to avoid errors
  • design setters to avoid potential errors
  • recognize how to compare two objects in Java avoiding potential errors
  • work safely with the Java switch and case statements
  • use atomic and nonatomic operations in threaded applications
  • use final properties to minimize potential for errors
  • recognize when to use mutable and immutable classes
  • implement a basic enum in Java
  • use enums to reduce the possibility of unexpected input
  • implement an enum with a constructor and recognize the rules for enum constructors
  • implement an interface in an enum
  • create an enum with abstract methods
  • use packages and classes to implement proper encapsulation
  • import packages in Java Android apps
  • use different scopes to implement defensive programming
  • create APKs to run on Android devices
  • create jars for exporting Java code between apps
  • recognize the importance of maintaining a good user experience while accessing the network
  • use AsyncTask to retrieve data asynchronously and preserve user experience
  • use progress reporting to enhance user experience
  • cache retrieved data to enhance user experience
  • transfer large files in the background
  • check network connectivity status in Android apps
  • sanitize data transferred across the network
  • create an Android app to access the network asynchronously

Kenmerken

Engels (US)
9 uur
Software Developer
90 dagen online toegang
HBO

Meer informatie

Extra product informatie 0
Doelgroep Softwareontwikkelaar
Voorkennis

Voor deze cursus is geen specifieke voorkennis vereist. Basiskennis van programmeren is echter wel een pré.

resultaat

Na het volgen van deze training bent u bekend met defensief programmeren in Android.

Positieve reacties van cursisten

Ontwikkel je tot data analist

Service is echt heel goed. Snel, klantvriendelijk, weten waar ze over praten en denken met je mee met oplossingen. Daarnaast hebben ze ook een goed leerplatform om je studie te volgen en na elke module een korte toets om te zien hoeveel je ervan heb begrepen en je kan de status zien hoeveel tijd je hebt besteed aan je studie. Ik waardeer ze enorm en ik raad elke ICT'er aan om met hen in zee te gaan om je studie te volgen.

- Emilio Jones

Training: Introduction to SQL

Eén training geprobeerd en deze naar tevredenheid gevolgd. Een module werkte in eerste instantie niet, maar na contact opgenomen te hebben met klantenservice kreeg ik snel antwoord met een oplossing.

- Lars van der Spek

Training: Certified Ethical Hacker (CEHv12) - incl. examen

Eerste keer dat ik een online training heb gedaan en zou zo weer een training volgen via icttraningen.nl

- Jerry Jialal

Training: Microsoft Managing Modern Desktops (exam MD-101)

Het resultaat van de groep is absoluut bevredigend. Ik ga in ieder geval geen ander meer bellen.

- Antoine Evertze, Sales Engineer bij Chubb

Training: PRINCE2® 6e editie Foundation- incl. examen

Als er wat is staan ze altijd voor me klaar. Ik word meteen geholpen als ik bel.

- E. Zeijlmans, P&O adviseur bij Parnassia Groep

Training: ITIL® 4 Foundation - incl. examen

Wij zijn gebaat bij mensen die bijblijven in hun vakgebied en continu getriggerd worden.

- W. van Uijthoven, IT manager bij gemeente Arnhem

Training: Excel 2013 Compleet

Ik heb al eens eerder een training gehad via icttrainingen.nl en dat was een erg leerzame, leuke ervaring. Nu heb ik via het werk een online cursus en deze lijkt tot nu toe ook erg leerzaam.

- Michelle Brierley

Hoe gaat het te werk?

1

Training bestellen

Nadat je de training hebt besteld krijg je bevestiging per e-mail.

2

Toegang leerplatform

In de e-mail staat een link waarmee je toegang krijgt tot ons leerplatform.

3

Direct beginnen

Je kunt direct van start. Studeer vanaf nu waar en wanneer jij wilt.

4

Training afronden

Rond de training succesvol af en ontvang van ons een certificaat!

Veelgestelde vragen

Veelgestelde vragen

Op welke manieren kan ik betalen?

Je kunt bij ons betalen met iDEAL, PayPal, Creditcard, Bancontact en op factuur. Betaal je op factuur, dan kun je met de training starten zodra de betaling binnen is.

Hoe lang heb ik toegang tot de training?

Dit verschilt per training, maar meestal 180 dagen. Je kunt dit vinden onder het kopje ‘Kenmerken’.

Waar kan ik terecht als ik vragen heb?

Je kunt onze Learning & Development collega’s tijdens kantoortijden altijd bereiken via support@icttrainingen.nl of telefonisch via 026-8402941.

Background Frame
Background Frame

Onbeperkt leren

Met ons Unlimited concept kun je onbeperkt gebruikmaken van de trainingen op de website voor een vast bedrag per maand.

Bekijk de voordelen

Heb je nog twijfels?

Of gewoon een vraag over de training? Blijf er vooral niet mee zitten. We helpen je graag verder. Daar zijn we voor!

Contactopties