twitteroct2008.pdf

12
BAY AREA SCALA ENTHUSIASTS WELCOME TO TWITTER! HELP YOURSELF TO BEER AND SUCH IN THE KITCHEN.

Upload: hiroshi-ono

Post on 22-Nov-2014

700 views

Category:

Documents


0 download

DESCRIPTION

 

TRANSCRIPT

Page 1: TwitterOct2008.pdf

BAY AREA SCALA ENTHUSIASTSWELCOME TO TWITTER!

HELP YOURSELF TO BEER AND SUCH IN THE KITCHEN.

Page 2: TwitterOct2008.pdf

TWITTER’S SCALA HEADS

ROBEY

STEVE

ALEX

Page 3: TwitterOct2008.pdf

STYLE GUIDELINES

Page 4: TwitterOct2008.pdf

IMPORTS

ENUMERATE ALL IMPORTS

USE WILDCARDS FOR MORE THAN SIX

USE BRACE NOTATION FOR MULTIPLE ITEMS IN A PACKAGE

AVOID “RELATIVE” IMPORTS

ALL IMPORTS MUST BE AT THE TOP OF THE FILE

Page 5: TwitterOct2008.pdf

IMPLICITS

AVOID THEM!

THEY MAKE DEBUGGING CONFUSING

DOCUMENT THOROUGHLY IF YOU HAVE TO USE THEM

RESTRICT TO THE SMALLEST POSSIBLE SCOPE

Page 6: TwitterOct2008.pdf

REFLECTION (JAVA)

AVOID IT!

SLOW

POTENTIALLY CONFUSING

Page 7: TwitterOct2008.pdf

COMMENTS

MANDATORY

VSCALADOC

SCALADOC EVERY CLASS AND NON-TRIVIAL METHOD

WRITE IN PASSIVE VOICE, EX:

“RETURNS A LIST[STATUS] OF 20 STATUSES FOR THE GIVEN USER.”

Page 8: TwitterOct2008.pdf

WHITESPACE

2 SPACES, NO TABS

NO TRAILING WHITESPACE

KEEP LINES TO 100 COLUMNS MAX

Page 9: TwitterOct2008.pdf

LOGGING

USE ONLY JAVA.UTIL.LOGGING.LOGGER

NOTHING GOES TO STDOUT/STDERR

NAME THE LOGGING OBJECT/VARIABLE “LOG”

Page 10: TwitterOct2008.pdf

PROJECT LAYOUT

MAVEN CONVENTIONS FOR DIRECTORY STRUCTURE, EX:

SRC/[MAIN|TEST]/[SCALA|JAVA]/COM/TWITTER/FOO

DEPLOY JARS

USE ANT + IVY AS THE BUILD SYSTEM

Page 11: TwitterOct2008.pdf

VARIABLE NOMENCLATURE

DON’T EXCESSIVELY ABBREVIATE VARIABLE NAMES

IT’S OKAY TO USE I, J, K, ETC. FOR INDICES

USE “RV” FOR TEMPORARY RETURN VALUES

Page 12: TwitterOct2008.pdf

THANKS FOR COMING!