Download presentation
Presentation is loading. Please wait.
Published byMagnus Tucker Modified over 6 years ago
1
Let’s be honest, there are more Java Villains than Java Champions
Getting the job done without Best Practices since . . . With Ken Fogel
3
A developer who gets the job done but isn’t encumbered with such annoying concepts as “Best Practices” or “Separation of Concerns”. What is a Java Villain?
4
Once upon a time . . . Given that
“Users expect software to crash. To become a software god write your code to never crash!” Corollary “A wrong answer is better than no answer because the program crashed” Once upon a time . . .
5
Villainous Software Patterns
Walmart Pattern Kitchen Sink Pattern One loop to rule them all Pattern Simpleton Pattern
6
SOLID is for champions, MESS is for real developers
Multiple Responsibility Principle Egregious Open Principle Simply Abstract Principle Sharing Interface Principle
7
Villainous Design Principles
Rather than Separation of Concerns use Stream of Consciousness. Don’t mind the rocks.
8
Naming Identifiers the Villainous Way
9
Exceptions belong in a program’s logic
// This is how we do it public static Boolean isEqual(int a, int b) { try { int c = 1 / (a - b); } catch (ArithmeticException e) { return true; } return false; * Found on Reddit Exceptions belong in a program’s logic
10
Don’t be Agile, be Limber!
You don’t need code reviews or scrums if your code is Limber. Limber code is code where any change has a dramatic effect. No time to waste on meetings when your code is Limber!
11
What are the two best methods to code?
main If this is where it all begins then why ever leave Constructor The main method of classes What are the two best methods to code?
12
Time to play “Invent an Exception”
java.lang.OutOfYourMind java.lang.NothingToSeeHereMoveAlong java.lang.Misteak java.lang.BobFault java.lang.OutOfCoffee
13
Let’s not forget how main should be coded.
public static void main(String[] args) { while (true) { try { // You can never be certain when an exception can // show up so everything goes into the try break; // No exceptions encountered to get here } catch (Exception ex) { // Exception encountered so let’s start over again }
14
Built-in Java Villainy
No unsigned integers IoT be dammed. Half Generics Good thing nothing important happens at run-time. Date Really, really, its time to put it out of its misery. Built-in Java Villainy
15
Whose fault is it? Although their recent announcement that they are joining the Open Invention Network is seriously hurting their villainous street cred.
16
Montreal Developers Lined Up at the SQDC
Society of Quebec Developers who are Cool Mellow Coding * Actually the Société québécoise du cannabis
17
Who are the Java Villains?
We all are!
18
Who am I? Co-Chair & Co-Program Coordinator of the Computer Science Technology Program at Dawson College, Montreal Instructor in the Computer Institute of Concordia University Blogger at and on DZone Frequent Tweeter on Speaker at JavaOne from Speaker at Code One in 2018 Speaker at ApacheCon in 2018 Organizer of DawsCon, free one day conference in Montreal on January 11, 2019
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.