2. We won't teaching anything in here, you can get out of
here if you want :)
The main idea is raise (and obviously discuss) the
relevant topics which are being used by the Android
Developer community around the world.
Share bad and good experiences.
Follow the Android Dev BR Slack channel
(slack.androiddevbr.org)
4. Activity is a screen of you app…
Activity accesses the database: SQLite, Content Provider, Loaders, …
Activity accesses the web: HttpUrlConnection, AsyncTask, GSON, Loaders,
Services, …
Activity validates the fields ...
Activity had another Activities (WTF?) :O
5.
6. Pay the consequences
Highly coupled code.
Hard to maintain and add new features.
Hard to test, consequently unstable.
Long story short… it violates all S.O.L.I.D. principles.
7. Initial Stands
for
Concept
S SRP[4] Single responsibility principle
a class should have only a single responsibility (i.e. only one potential change in the software's specification
should be able to affect the specification of the class)
O OCP[5] Open/closed principle
“software entities … should be open for extension, but closed for modification.”
L LSP[6] Liskov substitution principle
“objects in a program should be replaceable with instances of their subtypes without altering the correctness of
that program.” See also design by contract.
I ISP[7] Interface segregation principle
“many client-specific interfaces are better than one general-purpose interface.”[8]
D DIP[9] Dependency inversion principle
one should “depend upon abstractions, [not] concretions.”[8]
21. What is Kotlin?
A JVM based language developed by JetBrains (same creator of IntelliJ IDEA).
Kotlin is very intuitive and easy to learn for Java developers.
We have total integration with our daily IDE for free.
22. What's the advantages?
It’s more expressive: You can write more with much less code.
It’s safer: Kotlin is null safe.
It’s functional: Kotlin is basically an OO language, not a pure functional language.
However, it uses many concepts from functional programming.
It makes use of extension functions.
It’s highly interoperable with Java.
23. More advantages!
Full support in Android Studio
Stable
Developer community adoption is growing
Excellent documentation
Kotlin Web site: kotlinlang.org
Antonio Leiva's Book: antonioleiva.com/kotlin
34. The one who is listening is Observer...
And the other one, who is emitting events, is subject or observable.
* Taken from the book O'Reilly Head First "Design Patterns"
Glauber
Falar que o Android foi criado em 2008 e que a necessidade de desenvolvimento de aplicativos mobile vem crescendo ano após ano.
Para aprender Android utilizamos a documentação oficial, livros, cursos, etc. Todos eles falam da API do Android. E aprendemos que uma Activity é a tela de uma aplicação.