摘要:
After a broadcaster is "done", starting it up again requires calling the broadcaster with the same listener. This creates a kind of "async recursion" 阅读全文
摘要:
Controlling when a broadcaster starts and stops gives you complete control over your broadcasters. This let's you hook multiple pieces of UI together 阅读全文
摘要:
Chrome DevTools provide many handy utility functions that we can use to make debugging faster and easier so we can fix the bug and move on. In this le 阅读全文
摘要:
Sometimes you encounter a backend issue which seems to occur only on your computer, with a very specific sets of headers, cookies etc. Because of that 阅读全文
摘要:
In this lesson, we use CSS variables with calc and hsl to implement a rudimentary dark mode. We can do this by adjusting the lightness of our colors b 阅读全文
摘要:
In Kotlin, you are able to extend a class. Just like add prototype in Javascript. fun toSentenceCase(a: String): String { return a[0].toUpperCase() + 阅读全文
摘要:
In Java, when you write code in try(...), if exception throw, the resource will be closed automactially: This is not necessary in Kotlin fun printFile 阅读全文
摘要:
In java, it requires you to handle the exception when you declaring and using the code: public class BoringJavaCode { public static Double divide(int 阅读全文
摘要:
List is not mutable, when you want to add data into list, you can do is: "adding data to a mutableList", then return a immutable list by calling toLis 阅读全文