Nice video! The Authenticated annotation is really useful. In the birthdate example, the code is looping all fields, and then all annotations, but in the innerloop it is checking one specific annotation. This means that it will check the annotation multiple times if you have multiple annotations. The loop over the annotations is not needed.
Annotations are really powerful but sometimes there are prettier ways with Kotlin. For example, you could have used a value class to achieve the same thing without throwing runtime exceptions. Having a value class with a private constructor and a factory companion method that returns either the inline class instance or null if the value does not match the constraint. The kotlin type checker can then ensure that the constraint only has to be checked once during construction and doesn't require having the value boxed when passed as a parameter.
Is there a way to write Annotation logic in the annotation class itself? You added the logic check I the init{} at first. Instead of that checks for each class I create. Cannot I add the logic in Annotation class itself? BTW enjoyed the content much!
I made an extension function for Any and I call it from unit block to run the annotation validation code instead of within the data class unit block I have it on my git hub. Realityexpander
I have some questions, please tell me what is best practices for these question. 1. How to pass token dynamically for retrofit using share prefence and hilt.
Nice video! But this is kinda tough I think.. Like we need to find out or search the class.. like if we have a nested data class then it is bit difficult for filed annotation right..! Anyway nice.
HI Philip i have a one question I/Choreographer: Skipped 60 frames! The application may be doing too much work on its main thread. Why that is printing... How to manage with threads and CoroutineScope in real time sample. please.
Well, the way birthDay field is checked is very ugly and I would never use it like this, it is not useful at all. The useful way I think would be that the annotation class itself doing the check, and this check would be applicable to any other field from other classes, not just the User class. But thanks for the video any way.
Nice video! The Authenticated annotation is really useful. In the birthdate example, the code is looping all fields, and then all annotations, but in the innerloop it is checking one specific annotation. This means that it will check the annotation multiple times if you have multiple annotations. The loop over the annotations is not needed.
Indeed Mr.Achthoven! ;)
I was looking forward for a detailed video on annotations. I haven't even watched it yet but already commenting. Thanks for it anyway.
Annotations are really powerful but sometimes there are prettier ways with Kotlin.
For example, you could have used a value class to achieve the same thing without throwing runtime exceptions. Having a value class with a private constructor and a factory companion method that returns either the inline class instance or null if the value does not match the constraint. The kotlin type checker can then ensure that the constraint only has to be checked once during construction and doesn't require having the value boxed when passed as a parameter.
Can you give us a Reference to your solution so we can contrast and compare your proposed technique?
@@ChrisAthanas I would but youtube comments don't allow linking to other sites.
@@ChrisAthanas zirman/7d68ee7fa04766b53d2d0e37c6e0b144
@@robchr very interesting, thanks for posting!
I left a comment on the gist
It would be cool to see Annotations with annotations proccessing / KAPT / KCP
Is there a way to write Annotation logic in the annotation class itself? You added the logic check I the init{} at first. Instead of that checks for each class I create. Cannot I add the logic in Annotation class itself? BTW enjoyed the content much!
I made an extension function for Any and I call it from unit block to run the annotation validation code instead of within the data class unit block
I have it on my git hub. Realityexpander
You have to write an annotation processor for that , the way annotations have been used in this video is very rudimentary and not viable
Look up Kotlin Symbol Processor
thank you very much for your perfect examples and explanations .. can you make a video on processing these annotations using Processor
I have some questions, please tell me what is best practices for these question.
1. How to pass token dynamically for retrofit using share prefence and hilt.
Hi Philipp , Thank you for the content on your channel, this helped me a lot.👍👍👍 can you make video on reflection and how it works.
Hey Philipp can you please make a video about SearchableActivity. The Google docs are shallow in explanation.
Awsome video, how your logging interceptor returns formated json instead of plain text json ?
So complex , wow . Okay keep learning then. Thanks for posting.
Perfect as always. Do you have any videos about KSP?
Thanks Philipp
Thanks!
Nice video! But this is kinda tough I think.. Like we need to find out or search the class.. like if we have a nested data class then it is bit difficult for filed annotation right..! Anyway nice.
nice video!you always teach and explain technology so concise and clearly,thanks a lot!
Nice explanation... Thanks!
thanks,
what is your androidstudio theme?
Great Video!
HI Philip i have a one question
I/Choreographer: Skipped 60 frames! The application may be doing too much work on its main thread. Why that is printing... How to manage with threads and CoroutineScope in real time sample. please.
Are you running in debug mode? Try running without debug and see if the messages still appear
@@ChrisAthanas its appear in normal.
Well, the way birthDay field is checked is very ugly and I would never use it like this, it is not useful at all. The useful way I think would be that the annotation class itself doing the check, and this check would be applicable to any other field from other classes, not just the User class. But thanks for the video any way.
i thought that's how annotation works, but after watch this video i realized that annotation is just... marker? i think.
awesome!
Nice !! tks!! S2
Thanks
Currently Im asking my doubts to CharGpt Ai.. Its much more efficiently answered.
Knowing what to ask and what the answer means will become the new skill set
Until the skill set is completely subsumed
@@ChrisAthanas Knowing what to ask is way easier than knowing how to search for info.
@@excalibur8147 I would.say all skills are needed in the player vs player new universe
I haven't understanded anything from this video.
youre not alone