Fast dependency injection for Android applications.
Check my samples out:
https://github.com/rodrigohenriques/android-mvp-clean-architecture
https://github.com/rodrigohenriques/Dagger-2-Sample
Linkedin: https://br.linkedin.com/in/henriquesrodrigo
Meningkatkan SOC dan Reusabillity Kode dengan Duo DI - Sidiq Permana (CIO Nus...DicodingEvent
Clean code, dambaan semua developer. Tapi nyatanya, kode kita kerap memiliki keterkaitan yang sangat erat. Pusing kan. Bingung mau mecahin dan cara implementasi Separation of Concern? Apa selama ini kamu copy paste sana-sini yang penting bisa jalan aplikasinya?
Solusinya ada Dependency Inversion dan Dependency Injection. Dua prinsip penting ini sama singkatannya tapi beda arti dan implementasinya. Jika disatukan, masalah-masalah di atas, tuntas! Implementasi Separation of Concerns dan Reusability (penggunaan ulang komponen) pun meningkat. Kualitas aplikasi dari segi struktur kode yang dibangun pun, demikian.
Mari belajar implementasi keduanya dengan mudah. No pusing. No ribet. Langsung bisa kamu aplikasikan di kodemu.
Poin-poin yang akan dibahas mencakup :
Pengenalan dan implementasi Dependency Inversion
Pengenalan dan Implementasi Dependency Injection dengan cara:
1. Manual;
2. Dagger;
3. Koin.
Dagger 2
In this talk we'll discuss why Dagger 2 will be the best Java dependency injection library yet. We'll show you how to use it and what advantages it offers over the original Dagger.
Fast dependency injection for Android applications.
Check my samples out:
https://github.com/rodrigohenriques/android-mvp-clean-architecture
https://github.com/rodrigohenriques/Dagger-2-Sample
Linkedin: https://br.linkedin.com/in/henriquesrodrigo
Meningkatkan SOC dan Reusabillity Kode dengan Duo DI - Sidiq Permana (CIO Nus...DicodingEvent
Clean code, dambaan semua developer. Tapi nyatanya, kode kita kerap memiliki keterkaitan yang sangat erat. Pusing kan. Bingung mau mecahin dan cara implementasi Separation of Concern? Apa selama ini kamu copy paste sana-sini yang penting bisa jalan aplikasinya?
Solusinya ada Dependency Inversion dan Dependency Injection. Dua prinsip penting ini sama singkatannya tapi beda arti dan implementasinya. Jika disatukan, masalah-masalah di atas, tuntas! Implementasi Separation of Concerns dan Reusability (penggunaan ulang komponen) pun meningkat. Kualitas aplikasi dari segi struktur kode yang dibangun pun, demikian.
Mari belajar implementasi keduanya dengan mudah. No pusing. No ribet. Langsung bisa kamu aplikasikan di kodemu.
Poin-poin yang akan dibahas mencakup :
Pengenalan dan implementasi Dependency Inversion
Pengenalan dan Implementasi Dependency Injection dengan cara:
1. Manual;
2. Dagger;
3. Koin.
Dagger 2
In this talk we'll discuss why Dagger 2 will be the best Java dependency injection library yet. We'll show you how to use it and what advantages it offers over the original Dagger.
Common Java problems when developing with AndroidStephen Gilmore
For some, developing for the Android platform might provide their first experience of working with a complex, modern Java API. This may test your knowledge of the Java programming language, especially with regard to features such as generics. The Android APIs make use of generics throughout and so you will have to know how to create and handle generic classes.
Getting Started with IntelliJ IDEA as an Eclipse UserZeroTurnaround
**Note: This is a sneak preview of the full report, which you can get on RebelLabs: http://zeroturnaround.com/rebellabs/getting-started-with-intellij-idea-as-an-eclipse-user/
---
My name is Anton, and I’m an IntelliJ IDEA addict. Whew, it feels good to say it out loud. The choice of IDE for developers is one of the most contentious debates in the software game. But why? After all, aren’t all IDEs more or less the same?
Perhaps you are Eclipse users who are interested in trying out IntelliJ IDEA, or perhaps considering the migration. Moving from Eclipse to IDEA can be quite overwhelming. My main purpose in writing this report is to show Eclipse users, specifically, how to get started using IDEA faster and with less headaches.
For the full report, check it out on RebelLabs:
http://zeroturnaround.com/rebellabs/getting-started-with-intellij-idea-as-an-eclipse-user/
Flutter vs react native head to toe comparison [2021 edition]Katy Slemon
Flutter vs React Native 2021. Wondering which one to choose for cross-platform mobile app development? Let’s find out best fit for cross-platform application.
Esta presentación expone las principales herramientas y técnicas a utilizar para llevar a cabo un proceso de ingeniería inversa sobre una aplicación Android, con el objetivo de identificar código malicioso en la misma. En la exposición se presenta, desde el punto de vista de un analista de seguridad y de una forma práctica, el proceso de análisis de una aplicación existente en la Google Play Store.
Mobile development with React Native — one year in productionAvivi Academy
JavaScript Meetup
Андрій Шумада
Sr. Software Developer at Debitoor/Ciklum
Більше 10 років у розробці. За останні три роки підготував 25+ доповідей.
Доповідь про створення мобільного додатку Debitoor під iOS на React Native з точки зору JavaScript розробника без навичок ObjectiveC/Swift. Розкажу про процес розробки, автоматичного і ручного тестування, релізи, такі особливості мобільної розробки як offline first, інтеграція з Spotlight search, робота з камерою, InAppPurchases та інші в середовищі React Native
React is a JavaScript library created by Facebook. React is a declarative, efficient, and flexible JavaScript library for building user interfaces. It lets you compose complex UIs from small and isolated pieces of code called “components”. React can be used in the development of single-page or mobile applications.
Ідіоматична ін'єкція залежностей на Kotlin без фреймворків - UA Mobile2019UA Mobile
Всі сучасні популярні DI-фрейморки для Java використовують обробку анотацій під час компіляції та/або під час виконання програми. Вони однаково добре працюють і для Kotlin, але мають свої недоліки, бо генерують забагато коду та/або використовують рефлексію, що негативно позначається на часі компіляції додатку, його розмірі та швидкодії. Крім того, зазвичай їх конфігурація є нетривіальною для великого проекту. Kotlin пішов кращим шляхом...
В рамках доповіді буде продемонстровано як можна легко та ідіоматично організувати DI у своєму коді без допомоги сторонніх фреймворків. Натомість, в режимі програмування наживо ми разом створимо свій фреймворк без жодної анотації, де використаємо виключно стандартні можливості мови Kotlin.
http://uamobile.org/uk/topics/idiomatichna-iniekciya-zalezhnostey-na-kotlin-bez-freymvorkiv
Dagger 2 talk at Ciklum Speakers' Corner 30.11.2017. It covers dependency injection theory, JSR-330, and best practices for Dagger 2 usage in building Android projects architecture.
Common Java problems when developing with AndroidStephen Gilmore
For some, developing for the Android platform might provide their first experience of working with a complex, modern Java API. This may test your knowledge of the Java programming language, especially with regard to features such as generics. The Android APIs make use of generics throughout and so you will have to know how to create and handle generic classes.
Getting Started with IntelliJ IDEA as an Eclipse UserZeroTurnaround
**Note: This is a sneak preview of the full report, which you can get on RebelLabs: http://zeroturnaround.com/rebellabs/getting-started-with-intellij-idea-as-an-eclipse-user/
---
My name is Anton, and I’m an IntelliJ IDEA addict. Whew, it feels good to say it out loud. The choice of IDE for developers is one of the most contentious debates in the software game. But why? After all, aren’t all IDEs more or less the same?
Perhaps you are Eclipse users who are interested in trying out IntelliJ IDEA, or perhaps considering the migration. Moving from Eclipse to IDEA can be quite overwhelming. My main purpose in writing this report is to show Eclipse users, specifically, how to get started using IDEA faster and with less headaches.
For the full report, check it out on RebelLabs:
http://zeroturnaround.com/rebellabs/getting-started-with-intellij-idea-as-an-eclipse-user/
Flutter vs react native head to toe comparison [2021 edition]Katy Slemon
Flutter vs React Native 2021. Wondering which one to choose for cross-platform mobile app development? Let’s find out best fit for cross-platform application.
Esta presentación expone las principales herramientas y técnicas a utilizar para llevar a cabo un proceso de ingeniería inversa sobre una aplicación Android, con el objetivo de identificar código malicioso en la misma. En la exposición se presenta, desde el punto de vista de un analista de seguridad y de una forma práctica, el proceso de análisis de una aplicación existente en la Google Play Store.
Mobile development with React Native — one year in productionAvivi Academy
JavaScript Meetup
Андрій Шумада
Sr. Software Developer at Debitoor/Ciklum
Більше 10 років у розробці. За останні три роки підготував 25+ доповідей.
Доповідь про створення мобільного додатку Debitoor під iOS на React Native з точки зору JavaScript розробника без навичок ObjectiveC/Swift. Розкажу про процес розробки, автоматичного і ручного тестування, релізи, такі особливості мобільної розробки як offline first, інтеграція з Spotlight search, робота з камерою, InAppPurchases та інші в середовищі React Native
React is a JavaScript library created by Facebook. React is a declarative, efficient, and flexible JavaScript library for building user interfaces. It lets you compose complex UIs from small and isolated pieces of code called “components”. React can be used in the development of single-page or mobile applications.
Ідіоматична ін'єкція залежностей на Kotlin без фреймворків - UA Mobile2019UA Mobile
Всі сучасні популярні DI-фрейморки для Java використовують обробку анотацій під час компіляції та/або під час виконання програми. Вони однаково добре працюють і для Kotlin, але мають свої недоліки, бо генерують забагато коду та/або використовують рефлексію, що негативно позначається на часі компіляції додатку, його розмірі та швидкодії. Крім того, зазвичай їх конфігурація є нетривіальною для великого проекту. Kotlin пішов кращим шляхом...
В рамках доповіді буде продемонстровано як можна легко та ідіоматично організувати DI у своєму коді без допомоги сторонніх фреймворків. Натомість, в режимі програмування наживо ми разом створимо свій фреймворк без жодної анотації, де використаємо виключно стандартні можливості мови Kotlin.
http://uamobile.org/uk/topics/idiomatichna-iniekciya-zalezhnostey-na-kotlin-bez-freymvorkiv
Dagger 2 talk at Ciklum Speakers' Corner 30.11.2017. It covers dependency injection theory, JSR-330, and best practices for Dagger 2 usage in building Android projects architecture.
original (better quality) on https://docs.google.com/presentation/d/1bnwj8CrFGo5KekONYSeIHySdkoXZiewJxkHcZjXnzkQ/
slides from OpenDaylight Summit Oct 2016 Seattle
The Power of Dependency Injection with Dagger 2 and KotlinKnoldus Inc.
The dynamic duo transforming the landscape of Android development. We will Explore how Dagger 2 empowers your applications with robust dependency injection, and witness the synergy that Kotlin brings to the table, enhancing readability, conciseness, and developer productivity.
[Android] DI in multimodule applicationOleg Mazhukin
Ever wonder how to organize dependency injection in a multi-module app? In this presentation, we'll look at the production solution that is used in the 150+ module app
Play with Testing on Android - Gilang Ramadhan (Academy Content Writer at Dic...DicodingEvent
Testing merupakan (QA) quality assurance dari sebuah produk. Dalam tahap ini kita jadi tahu, bila di dalam aplikasi yang kita buat terdapat bug, eror, atau salah dalam logika kode. Sehingga testing adalah bagian terpenting pada pengembangan aplikasi.
Eror bisa kita identifikasi jauh lebih dini sebelum proses produksi. Jika terjadi kesalahan dalam tahap produksi, itu sudah melibatkan user. Tentunya kerugian di dalam tahap ini akan lebih fatal. Faktanya, biaya perbaikan sebuah aplikasi eror di tahap produksi, lebih besar dibandingkan dengan biaya pengujian sebelum produksi.
Anda akan mempelajari:
- Mengapa perlu melakukan testing
- Apa sebenarnya yang dimaksud testing
- Apa saja tools yang bisa Anda manfaatkan
Angular2 + Ng-Lightning + Lightning Design System = Great AppsEmily Hurn
In this deck, learn how to use the Ng-Lightning library to create and utilize Lightning designed Angular 2 components while going over the new features available in Angular 2. We’ll go over the basic principles behind Angular 2, the Lightning Design System, and features in TypeScript that you can leverage to create maintainable high-quality code. In addition, the talk will cover tools like Augury to debug your Angular 2 code and helpful plugins and IDEs for coding in TypeScript.
this presentation serve as an introduction to Angular JavaScript framework and also touch on some basic modern JavaScript, front-end development basics.
2. TOPICS
What is Dependency Injection
What is Dagger
Pros and Cons of Dagger
Dagger alternatives
Sample Implementation
QA session
3. WHAT IS DEPENDENCY INJECTION?
Dependency Injection (DI) is a design pattern used to implement Inversion of Control(IoC). It allows the
creation of dependent objects outside of a class and provides those objects to a class through different
ways. Using DI, we move the creation and binding of the dependent objects outside of the class that
depends on them.
It's a design pattern(No need for a library to implement)
We all use some form of DI
Car Engine
Dependency
Depends
11. COMPARISON BETWEEN DAGGER2, KOIN & KODEIN
Dagger 2 Koin Kodein
Written in Java Written in kotlin Written in Kotlin(Java support)
Generates code in build does not generate code(less
build time)
No code generation
Has proxy classes No proxy classes No proxy classes
Uses annotations No annotation No annotation
A lot of boilerplate Less boilerplate
13. DAGGER2
Uses Directed Acyclic Graph = DAGger
There are no cyclic dependencies
@Module and @Provides: define classes and methods which provide dependencies
@Inject: request dependencies. Can be used on a constructor, a field, or a method
@Component: enable selected modules and used for performing dependency injection
15. BENEFITS OF DAGGER2
Provides compile-time verification of the whole dependency graph so app doesn't crash at runtime
Very clear error messages
Designed for low-end devices