+ All Categories
Home > Technology > FTC Robot C to Java

FTC Robot C to Java

Date post: 02-Aug-2015
Category:
Upload: jeanne-boyarsky
View: 646 times
Download: 1 times
Share this document with a friend
23
FTC: Moving from Robot-C to Java 5/2/15 Jeanne Boyarsky Programming Mentor FRC Team 694 slideshare.net/boyarsky Twitter @jeanneboyarsky Blog: http://www.selikoff.net Moderator on Java forums at: http://www.coderanch.com
Transcript
Page 1: FTC Robot C to Java

FTC: Moving from Robot-C to Java

5/2/15Jeanne Boyarsky

Programming Mentor FRC Team 694

slideshare.net/boyarskyTwitter @jeanneboyarsky

Blog: http://www.selikoff.netModerator on Java forums at:

http://www.coderanch.com

Page 2: FTC Robot C to Java

Pause for CommercialMy first book:

Page 3: FTC Robot C to Java

Choices for CodingStep Tool Type of

programmingComments

Crawl Point to Point (download two existing apps)

Configuration Rookie teams?Prototyping?

Walk MIT App Inventor

Blocks Like Scratch

Run Android Studio Text (most like Robot-C)

Real programmers use

http://appinventor.mit.edu/explorehttps://developer.android.com/sdk/index.html

Page 4: FTC Robot C to Java

Java – the lay of the land

Non-Android Java program stops here

Page 5: FTC Robot C to Java

Major parts

JDK (Java Development Kit)

IDE (integrated development environment)

Editor Emulator

javac

JRE (java runtime environment)

APIs (libraries)

Git (version control)

javaGradle (build)

Note: Github.com offers free hosting

Page 6: FTC Robot C to Java

Installing Android Studio

Pre-reqs:

Java JDK 8 (or 7 if already have it)

Lots of RAM (2-4 GB)

Any Operating System

http://www.oracle.com/technetwork/java/javase/downloads/index.html

https://developer.android.com/sdk/index.html

The official IDE for Android!

Page 7: FTC Robot C to Java

SetupPre-reqs:

Time

Internet

Admin rights

Wizard guides you through setup/downloads runtime

Page 8: FTC Robot C to Java

Create Android project (even to play with Java)

Page 9: FTC Robot C to Java

Create Java library

Page 10: FTC Robot C to Java

Finish up

Page 11: FTC Robot C to Java

First class

Page 12: FTC Robot C to Java

Run it

Run > Run FTC

Page 13: FTC Robot C to Java

C/C++ vs Java - differences

For C/C++ Java

Constants Header file Interfaces or static/final fields

Referencing other code

#include import

Primitives bool, int, short, etc boolean, short, int, long, float, double

Strings char[] or string String

These are not logical equivalents. Just in similar spaces.

Page 14: FTC Robot C to Java

Same in Java

LotsArrays

If statements

Math

Calling a method (mostly)

Comments

Page 15: FTC Robot C to Java

Big differences in Java

Garbage collection!

no malloc/free – unless calling C/C++

No pre-processor directives

No pointers

No operator overloading

Platform independent

Page 16: FTC Robot C to Java

Android Studio - ViewsDefault – Android view

Project view – shows file system

Page 17: FTC Robot C to Java

Android Studio – AutocompleteControl + space

Page 18: FTC Robot C to Java

Reading: Parts of a class

Imports

Superclass Interface

Page 19: FTC Robot C to Java

Reading: C-like enough, right?

Instancevariable

Page 20: FTC Robot C to Java

Package (like a folder for grouping)Top level Class

Nested class

Comment

Constant

Reading: Complex Android Class

Page 21: FTC Robot C to Java

Java Version Q&A

Why doesn't Java know how to count? The versions go 1.1, 1.2, 1.3, 1.4, 5, 6, 7, 8

Blame marketing!

What books are good for learning Java?Head First Java

Thinking in Java (older versions free)

Java for Dummies

Deitel & Deitel

Core Java

Page 22: FTC Robot C to Java

Questions

About Java:

– Friendly forums for those new (or not new) to Java:

http://www.coderanch.comFor FTC specific questions:

– http://www.chiefdelphi.com

– http://ftcforum.usfirst.org/forum.php

– https://www.reddit.com/r/FTC/

– Where else?

Page 23: FTC Robot C to Java

References

Android Studio: https://developer.android.com/sdk/index.htm

FTC Schematic: http://modernroboticsinc.com/Content/Images/uploaded/Schematicx1000.jpg

FTC Kit: http://modernroboticsinc.com/first-ftc

FTC Controller: http://first.intelitek.com


Recommended