From a84e1b2afafc49449461c49e4afe8c58387cab3a Mon Sep 17 00:00:00 2001 From: Reinier Zwitserloot Date: Tue, 21 Jul 2009 05:59:08 +0200 Subject: Added the slideshow --- website/slideshow.html | 95 +++++++++++++++++++++++++++++++++ website/slideshow/eclipse-generate.png | Bin 0 -> 279930 bytes website/slideshow/eclipse-lombok.png | Bin 0 -> 141944 bytes website/slideshow/javac.png | Bin 0 -> 90828 bytes website/slideshow/slideshow.css | 15 ++++++ 5 files changed, 110 insertions(+) create mode 100644 website/slideshow.html create mode 100644 website/slideshow/eclipse-generate.png create mode 100644 website/slideshow/eclipse-lombok.png create mode 100644 website/slideshow/javac.png create mode 100644 website/slideshow/slideshow.css (limited to 'website') diff --git a/website/slideshow.html b/website/slideshow.html new file mode 100644 index 00000000..1be62eb4 --- /dev/null +++ b/website/slideshow.html @@ -0,0 +1,95 @@ + + + + + + + + + + + Project Lombok + + + Fork me on GitHub +
+

Project Lombok

+ + +
+
+ Imagine you have a very simple class: +
public class Mountain { + private final String name; + private final double latitude, longitude; + private String country; +}
+
+ While that is fairly clear, that class is not complete. In fact, it won't compile like that.
+ You'll need to add a constructor to initialize those final fields, you probably want getters, a setter for country, + and to be complete, a nice toString as well as an implementation for equals and hashCode. + Eclipse can generate all these methods for you, but then you end up with over 70 lines of boilerplate. It's going to be hard + to see any surprises buried amongst all those lines of code! Lombok has the answer to this problem. +
+ So instead of this mess: + + lombok simply offers you an annotation that tells eclipse to generate all this stuff for us silently, without + cluttering up your source file, like so: + +
+ Note how we haven't even saved the file yet, but in the outline view you can already see all the various methods generated + by the @Data annotation. That's because lombok is completely integrated into eclipse. The moment you type + the last character of your annotation, all the methods exist, just as if you write the last character on a method declaration. + In other words, lombok is not just an annotation processor! +
+ But what about your build process? Lombok works just as well in javac. All you need to do is add + lombok.jar to the class path as you compile. Like so: + +
+ @Data is nice, but its certainly not the only boilerplate buster that lombok has to offer. If you need + more fine grained control, there's @Getter and @Setter, and to help you in correctly + cleaning up your resources, @Cleanup can automatically and without cluttering your source files generate + try/finally blocks to safely call close() on your resource objects. That's not all, but for the complete + list you'll need to head over to the feature overview. +
+ Ready to install lombok? Start by clicking the download button at the top of this page. Going from clicking that button + to having your eclipse ready to go takes less than 12 seconds - it's that simple. +
+ Thanks for checking out Project Lombok, and let us know what you think! +
+
+ + +
+ diff --git a/website/slideshow/eclipse-generate.png b/website/slideshow/eclipse-generate.png new file mode 100644 index 00000000..64439b74 Binary files /dev/null and b/website/slideshow/eclipse-generate.png differ diff --git a/website/slideshow/eclipse-lombok.png b/website/slideshow/eclipse-lombok.png new file mode 100644 index 00000000..91b6f0f4 Binary files /dev/null and b/website/slideshow/eclipse-lombok.png differ diff --git a/website/slideshow/javac.png b/website/slideshow/javac.png new file mode 100644 index 00000000..483234f5 Binary files /dev/null and b/website/slideshow/javac.png differ diff --git a/website/slideshow/slideshow.css b/website/slideshow/slideshow.css new file mode 100644 index 00000000..130f0679 --- /dev/null +++ b/website/slideshow/slideshow.css @@ -0,0 +1,15 @@ + +.para { + margin: 4px 0 4px 0; +} + +.screenshot { + margin: 4px 0 4px 0; +} +.snippet { + font-family: "Courier New", Courier; + font-weight: bold; + white-space: pre; + padding: 4px 16px 4px 16px; + border: 1px #888 dashed; +} -- cgit