Soumettre la recherche
Mettre en ligne
Annotation processing
•
Télécharger en tant que PPTX, PDF
•
3 j'aime
•
650 vues
Benjamin Cheng
Suivre
Annotation processing shared on Android Taipei 2016-12-19
Lire moins
Lire la suite
Logiciels
Signaler
Partager
Signaler
Partager
1 sur 36
Télécharger maintenant
Recommandé
Clean architecture: Android
Clean architecture: Android
intive
Nicholas Gustilo "Clean Android: building great mobile apps"
Nicholas Gustilo "Clean Android: building great mobile apps"
IT Event
Android clean architecture workshop 3h edition
Android clean architecture workshop 3h edition
Jorge Ortiz
Testing for people who hate testing
Testing for people who hate testing
Sam Bolgert
The working architecture of node js applications open tech week javascript ...
The working architecture of node js applications open tech week javascript ...
Viktor Turskyi
Android Frameworks: Highlighting the Need for a Solid Development Framework 
Android Frameworks: Highlighting the Need for a Solid Development Framework 
Mutual Mobile
Migration from AngularJS to Angular
Migration from AngularJS to Angular
Aleks Zinevych
Productive Android developers (Meetup slides)
Productive Android developers (Meetup slides)
Michal Juhas
Recommandé
Clean architecture: Android
Clean architecture: Android
intive
Nicholas Gustilo "Clean Android: building great mobile apps"
Nicholas Gustilo "Clean Android: building great mobile apps"
IT Event
Android clean architecture workshop 3h edition
Android clean architecture workshop 3h edition
Jorge Ortiz
Testing for people who hate testing
Testing for people who hate testing
Sam Bolgert
The working architecture of node js applications open tech week javascript ...
The working architecture of node js applications open tech week javascript ...
Viktor Turskyi
Android Frameworks: Highlighting the Need for a Solid Development Framework 
Android Frameworks: Highlighting the Need for a Solid Development Framework 
Mutual Mobile
Migration from AngularJS to Angular
Migration from AngularJS to Angular
Aleks Zinevych
Productive Android developers (Meetup slides)
Productive Android developers (Meetup slides)
Michal Juhas
How do we test nodejs apps?
How do we test nodejs apps?
Michal Juhas
React native introduction (Mobile Warsaw)
React native introduction (Mobile Warsaw)
Jarek Potiuk
Use React tools for better Angular apps
Use React tools for better Angular apps
Martin Hochel
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
Mickael Istria
Leaning on the two Ts
Leaning on the two Ts
Mani Sarkar
Automatic Test 2019-07-25
Automatic Test 2019-07-25
FedericoGuerinoni
Insights on Protractor testing
Insights on Protractor testing
Dejan Toteff
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
Weverton Timoteo
Angular Vienna - Use React tools for better Angular apps
Angular Vienna - Use React tools for better Angular apps
Martin Hochel
TestWorks Conf Robot framework - the unsung hero of test automation - Michael...
TestWorks Conf Robot framework - the unsung hero of test automation - Michael...
Xebia Nederland BV
Introduzione a junit + integrazione con archibus
Introduzione a junit + integrazione con archibus
Davide Fella
.NET compiler platform codename Roslyn
.NET compiler platform codename Roslyn
Piotr Benetkiewicz
BDD and Behave
BDD and Behave
Adam Englander
PHPUnit with Magento
PHPUnit with Magento
Tu Hoang
Php[tek] 2016 - BDD with Behat for Beginners
Php[tek] 2016 - BDD with Behat for Beginners
Adam Englander
Protractor end-to-end testing framework for angular js
Protractor end-to-end testing framework for angular js
codeandyou forums
Unit Testing your React / Redux app (@BucharestJS)
Unit Testing your React / Redux app (@BucharestJS)
Alin Pandichi
Dicoding Developer Coaching #13: Android | Melakukan Testing secara Otomatis ...
Dicoding Developer Coaching #13: Android | Melakukan Testing secara Otomatis ...
DicodingEvent
ITAKE Unconference - Holding down your technical debt with Sonarqube
ITAKE Unconference - Holding down your technical debt with Sonarqube
Patroklos Papapetrou (Pat)
Workshop - E2e tests with protractor
Workshop - E2e tests with protractor
Walmyr Lima e Silva Filho
Annotation processing and code gen
Annotation processing and code gen
koji lin
Annotation processing tool
Annotation processing tool
Andrzej Ludwikowski
Contenu connexe
Tendances
How do we test nodejs apps?
How do we test nodejs apps?
Michal Juhas
React native introduction (Mobile Warsaw)
React native introduction (Mobile Warsaw)
Jarek Potiuk
Use React tools for better Angular apps
Use React tools for better Angular apps
Martin Hochel
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
Mickael Istria
Leaning on the two Ts
Leaning on the two Ts
Mani Sarkar
Automatic Test 2019-07-25
Automatic Test 2019-07-25
FedericoGuerinoni
Insights on Protractor testing
Insights on Protractor testing
Dejan Toteff
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
Weverton Timoteo
Angular Vienna - Use React tools for better Angular apps
Angular Vienna - Use React tools for better Angular apps
Martin Hochel
TestWorks Conf Robot framework - the unsung hero of test automation - Michael...
TestWorks Conf Robot framework - the unsung hero of test automation - Michael...
Xebia Nederland BV
Introduzione a junit + integrazione con archibus
Introduzione a junit + integrazione con archibus
Davide Fella
.NET compiler platform codename Roslyn
.NET compiler platform codename Roslyn
Piotr Benetkiewicz
BDD and Behave
BDD and Behave
Adam Englander
PHPUnit with Magento
PHPUnit with Magento
Tu Hoang
Php[tek] 2016 - BDD with Behat for Beginners
Php[tek] 2016 - BDD with Behat for Beginners
Adam Englander
Protractor end-to-end testing framework for angular js
Protractor end-to-end testing framework for angular js
codeandyou forums
Unit Testing your React / Redux app (@BucharestJS)
Unit Testing your React / Redux app (@BucharestJS)
Alin Pandichi
Dicoding Developer Coaching #13: Android | Melakukan Testing secara Otomatis ...
Dicoding Developer Coaching #13: Android | Melakukan Testing secara Otomatis ...
DicodingEvent
ITAKE Unconference - Holding down your technical debt with Sonarqube
ITAKE Unconference - Holding down your technical debt with Sonarqube
Patroklos Papapetrou (Pat)
Workshop - E2e tests with protractor
Workshop - E2e tests with protractor
Walmyr Lima e Silva Filho
Tendances
(20)
How do we test nodejs apps?
How do we test nodejs apps?
React native introduction (Mobile Warsaw)
React native introduction (Mobile Warsaw)
Use React tools for better Angular apps
Use React tools for better Angular apps
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
[EclipseCon NA 2014] Integration tests for RCP made easy with SWTBot and Tycho
Leaning on the two Ts
Leaning on the two Ts
Automatic Test 2019-07-25
Automatic Test 2019-07-25
Insights on Protractor testing
Insights on Protractor testing
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
21o. RubyFloripa - Maintaining legacy Rails app and introducing Elixir
Angular Vienna - Use React tools for better Angular apps
Angular Vienna - Use React tools for better Angular apps
TestWorks Conf Robot framework - the unsung hero of test automation - Michael...
TestWorks Conf Robot framework - the unsung hero of test automation - Michael...
Introduzione a junit + integrazione con archibus
Introduzione a junit + integrazione con archibus
.NET compiler platform codename Roslyn
.NET compiler platform codename Roslyn
BDD and Behave
BDD and Behave
PHPUnit with Magento
PHPUnit with Magento
Php[tek] 2016 - BDD with Behat for Beginners
Php[tek] 2016 - BDD with Behat for Beginners
Protractor end-to-end testing framework for angular js
Protractor end-to-end testing framework for angular js
Unit Testing your React / Redux app (@BucharestJS)
Unit Testing your React / Redux app (@BucharestJS)
Dicoding Developer Coaching #13: Android | Melakukan Testing secara Otomatis ...
Dicoding Developer Coaching #13: Android | Melakukan Testing secara Otomatis ...
ITAKE Unconference - Holding down your technical debt with Sonarqube
ITAKE Unconference - Holding down your technical debt with Sonarqube
Workshop - E2e tests with protractor
Workshop - E2e tests with protractor
En vedette
Annotation processing and code gen
Annotation processing and code gen
koji lin
Annotation processing tool
Annotation processing tool
Andrzej Ludwikowski
Smart annotation processing - Paris JUG
Smart annotation processing - Paris JUG
gdigugli
Don't reinvent the wheel, use libraries
Don't reinvent the wheel, use libraries
Polidea
Intro to nlp
Intro to nlp
Rutu Mulkar-Mehta
ButterKnife
ButterKnife
Himanshu Dudhat
Annotation processing
Annotation processing
Felipe Theodoro
Android advanced client architecture
Android advanced client architecture
Ran Nachmany
Android AIDL Concept
Android AIDL Concept
Charile Tsai
Androd rest client architecture
Androd rest client architecture
Ran Nachmany
Trace 程式碼之皮
Trace 程式碼之皮
Wen Liao
Unit test and ui testing with cucumber
Unit test and ui testing with cucumber
哲偉 楊
Natural Language Processing in Practice
Natural Language Processing in Practice
Vsevolod Dyomkin
Clean architecture on android
Clean architecture on android
Benjamin Cheng
Practical Natural Language Processing
Practical Natural Language Processing
Jaganadh Gopinadhan
Introduction to Natural Language Processing
Introduction to Natural Language Processing
rohitnayak
Android Clean Architecture for Dummies
Android Clean Architecture for Dummies
Kengo Suzuki
Annotation Processing in Android
Annotation Processing in Android
emanuelez
Java Annotation Processing: A Beginner Walkthrough
Java Annotation Processing: A Beginner Walkthrough
Mahfuz Islam Bhuiyan
Natural Language Processing
Natural Language Processing
Jaganadh Gopinadhan
En vedette
(20)
Annotation processing and code gen
Annotation processing and code gen
Annotation processing tool
Annotation processing tool
Smart annotation processing - Paris JUG
Smart annotation processing - Paris JUG
Don't reinvent the wheel, use libraries
Don't reinvent the wheel, use libraries
Intro to nlp
Intro to nlp
ButterKnife
ButterKnife
Annotation processing
Annotation processing
Android advanced client architecture
Android advanced client architecture
Android AIDL Concept
Android AIDL Concept
Androd rest client architecture
Androd rest client architecture
Trace 程式碼之皮
Trace 程式碼之皮
Unit test and ui testing with cucumber
Unit test and ui testing with cucumber
Natural Language Processing in Practice
Natural Language Processing in Practice
Clean architecture on android
Clean architecture on android
Practical Natural Language Processing
Practical Natural Language Processing
Introduction to Natural Language Processing
Introduction to Natural Language Processing
Android Clean Architecture for Dummies
Android Clean Architecture for Dummies
Annotation Processing in Android
Annotation Processing in Android
Java Annotation Processing: A Beginner Walkthrough
Java Annotation Processing: A Beginner Walkthrough
Natural Language Processing
Natural Language Processing
Similaire à Annotation processing
The Java Content Repository
The Java Content Repository
nobby
Comparative Development Methodologies
Comparative Development Methodologies
elliando dias
Tangram
Tangram
Yubei Li
Annotation processing
Annotation processing
Florent Champigny
Hack Like It's 2013 (The Workshop)
Hack Like It's 2013 (The Workshop)
Itzik Kotler
Visual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 Overview
bwullems
Gwt and JSR 269's Pluggable Annotation Processing API
Gwt and JSR 269's Pluggable Annotation Processing API
Arnaud Tournier
GWT: Our Experiences
GWT: Our Experiences
Yenwen Feng
Dart the Better JavaScript
Dart the Better JavaScript
Jorg Janke
.NET 4 Demystified - Sandeep Joshi
.NET 4 Demystified - Sandeep Joshi
Spiffy
Scala parsers Error Recovery in Production
Scala parsers Error Recovery in Production
Alexander Azarov
"Error Recovery" by @alaz at scalaby#8
"Error Recovery" by @alaz at scalaby#8
Vasil Remeniuk
An Introduction to Java Compiler and Runtime
An Introduction to Java Compiler and Runtime
Omar Bashir
Metaprogramming with javascript
Metaprogramming with javascript
Ahmad Rizqi Meydiarso
Re-imaginging CakePHP
Re-imaginging CakePHP
Graham Weldon
Write code that writes code! A beginner's guide to Annotation Processing - Ja...
Write code that writes code! A beginner's guide to Annotation Processing - Ja...
DroidConTLV
Write code that writes code!
Write code that writes code!
Jason Feinstein
Workflow Management with Espresso Workflow
Workflow Management with Espresso Workflow
Rolf Kremer
Jvm fundamentals
Jvm fundamentals
Miguel Pastor
Con-FESS 2015 - Having Fun With Javassist
Con-FESS 2015 - Having Fun With Javassist
Anton Arhipov
Similaire à Annotation processing
(20)
The Java Content Repository
The Java Content Repository
Comparative Development Methodologies
Comparative Development Methodologies
Tangram
Tangram
Annotation processing
Annotation processing
Hack Like It's 2013 (The Workshop)
Hack Like It's 2013 (The Workshop)
Visual Studio 2010 and .NET 4.0 Overview
Visual Studio 2010 and .NET 4.0 Overview
Gwt and JSR 269's Pluggable Annotation Processing API
Gwt and JSR 269's Pluggable Annotation Processing API
GWT: Our Experiences
GWT: Our Experiences
Dart the Better JavaScript
Dart the Better JavaScript
.NET 4 Demystified - Sandeep Joshi
.NET 4 Demystified - Sandeep Joshi
Scala parsers Error Recovery in Production
Scala parsers Error Recovery in Production
"Error Recovery" by @alaz at scalaby#8
"Error Recovery" by @alaz at scalaby#8
An Introduction to Java Compiler and Runtime
An Introduction to Java Compiler and Runtime
Metaprogramming with javascript
Metaprogramming with javascript
Re-imaginging CakePHP
Re-imaginging CakePHP
Write code that writes code! A beginner's guide to Annotation Processing - Ja...
Write code that writes code! A beginner's guide to Annotation Processing - Ja...
Write code that writes code!
Write code that writes code!
Workflow Management with Espresso Workflow
Workflow Management with Espresso Workflow
Jvm fundamentals
Jvm fundamentals
Con-FESS 2015 - Having Fun With Javassist
Con-FESS 2015 - Having Fun With Javassist
Dernier
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Alberto González Trastoy
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
ThousandEyes
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Nitya salvi
Software Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
Arshad QA
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
kalichargn70th171
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
OnePlan Solutions
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
masabamasaba
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
Jittipong Loespradit
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
ICS
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
Anusha Are
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
proinshot.com
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
ryanfarris8
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
aagamshah0812
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
AmarnathKambale
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
Jhone kinadey
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
Presentation.STUDIO
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
panagenda
Dernier
(20)
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Chinsurah Escorts ☎️8617697112 Starting From 5K to 15K High Profile Escorts ...
Software Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
Introducing Microsoft’s new Enterprise Work Management (EWM) Solution
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
%in ivory park+277-882-255-28 abortion pills for sale in ivory park
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
MarTech Trend 2024 Book : Marketing Technology Trends (2024 Edition) How Data...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
Pharm-D Biostatistics and Research methodology
Pharm-D Biostatistics and Research methodology
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
VTU technical seminar 8Th Sem on Scikit-learn
VTU technical seminar 8Th Sem on Scikit-learn
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
AI & Machine Learning Presentation Template
AI & Machine Learning Presentation Template
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
Annotation processing
1.
Annotation Processing Benjamin Cheng
2.
Examples
3.
AutoValue github.com/google/auto/
4.
AutoValue github.com/google/auto/
5.
Butterknife jakewharton.github.io/butterknife/
6.
Butterknife jakewharton.github.io/butterknife/
7.
8.
Annotation Processing
9.
10.
Annotation Processing (Why?) ●
Reduce writing boilerplate code ● May beyond our imagination
11.
Annotation Processing (What?) ●
Part of javac ● @Annotation based ● Generate .java source files (new files only)
12.
Components ● Annotations ● Processor ●
APT (Annotation Processing Tool) ● Annotated Sources
13.
Annotations
14.
Annotation Processor
15.
Annotation Processor (conti.)
16.
Annotation Processor (conti.)
17.
Elements
18.
ServiceLoader Discovery File -
com/example/ExampleProcessor.class - META-INF/services/javax.annotation.processing.Processor com.example.ExampleProcessor
19.
Processing Rounds javac BuilderProcesso r OtherProcessor out/ User.class UserBuilder.class @Other public class
GeneratedClass { // … }
20.
Processing Rounds (conti.) javac BuilderProcesso r OtherProcessor out/ User.class UserBuilder.class public
class OtherGenClass { // … } GeneratedClass.class
21.
Processing Rounds (conti.) javac BuilderProcesso r OtherProcessor out/ User.class UserBuilder.class public
class OtherGenClass { // … } GeneratedClass.class
22.
Processing Rounds (conti.) javac BuilderProcesso r OtherProcessor out/ User.class UserBuilder.class GeneratedClass.class OtherGenClass.class
23.
Add to APT
Classpath
24.
Code Generation
25.
Code Generation ● StringBuilder ●
JavaPoet
26.
JavaPoet ● Use Fluent
API with builders ● Based on Specs ○ TypeSpec ○ MethodSpec ○ ParameterSpec ○ FiledSpec github.com/square/javapoet/
27.
JavaPoet (conti.) github.com/square/javapoet/
28.
JavaPoet (conti.) github.com/square/javapoet/ public
final class UserBuilder { … }
29.
JavaPoet (conti.) github.com/square/javapoet/ public
final class UserBuilder { // fields private String username; }
30.
JavaPoet (conti.) github.com/square/javapoet/
31.
JavaPoet (conti.) github.com/square/javapoet/
32.
JavaPoet (conti.) github.com/square/javapoet/
33.
Testing and Debugging
34.
Testing and Debugging ●
Guava ● compile-testing ● Truth
35.
References ● Droidcon NYC
2016 - @Eliminate("Boilerplate") https://youtu.be/NBkl_SIHUr8 ● #droidconDE 2015: Hannes Dorfmann – Annotation Processing 101 https://youtu.be/43FFfTyDYEg http://hannesdorfmann.com/annotation- processing/annotationprocessing101 ● Android Tech Talk: Annotation Processing Boilerplate Destruction by Jake Wharton https://youtu.be/dOcs-NKK-RA https://speakerdeck.com/jakewharton/annotation-processing-boilerplate- destruction-square-waterloo-2014 ● The 10-step guide to annotation processing in Android studio by Chris Logan http://blog.stablekernel.com/the-10-step-guide-to-annotation-processing-in-
36.
Q&A
Notes de l'éditeur
https://speakerdeck.com/jakewharton/annotation-processing-boilerplate-destruction-square-waterloo-2014
https://speakerdeck.com/jakewharton/annotation-processing-boilerplate-destruction-square-waterloo-2014
Télécharger maintenant