Skip to content

Instantly share code, notes, and snippets.

@rajendhirandev
rajendhirandev / gen_code_snippet.kt
Created October 9, 2022 10:19
Just Generic Code Snippet for reference
// If we use out / in <out T> / <in T> restricts for getter and setter. Also, variance can be used on Classes and Interfaces.
abstract class Test<T> {
abstract fun getTest(input: T): T
}
class TestImpAbs : Test<Int>() {
override fun getTest(input: Int): Int {
return 0
}
@rajendhirandev
rajendhirandev / NavigationCodeSnippet.kt
Created October 2, 2022 11:31
NavController Usage Activity and Fragment Basics -- Ref. Code Snippet
// Code Snippet
// Activity ActionBar with NavController
lateinit var binding: ActivityHomeBinding
lateinit var navController: NavController
lateinit var appBarConfig: AppBarConfiguration
private fun initialize() {
setSupportActionBar(binding.toolbar)
//Earlier Approach:
// Receiver
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if(resultCode == Activity.RESULT_OK && requestCode == REQUEST_CODE){
val dataStr = data?.getStringExtra("Value") ?:"NO Value"
println(dataStr)
}
}
@rajendhirandev
rajendhirandev / StatehoistingSample.kt
Created September 15, 2022 10:07
Sateless and State hoisting Sample
//Stateful Compose
@Composable
fun MyCounterStateful() {
var vStart by remember { mutableStateOf(5) }
var vEnd by remember { mutableStateOf(7) }
var noOfTimes by remember { mutableStateOf(0) }
ComposePracticesTheme {
Column(modifier = Modifier.padding(15.dp)) {
Text(text = "Welcome to the Counter")
ButtonCounter(noOfTimes) {
@rajendhirandev
rajendhirandev / StatefulSample.kt
Created September 15, 2022 09:51
Stateful Compose Sample
@Composable
fun MyCounterStateful() {
var vStart by remember { mutableStateOf(5) }
var vEnd by remember { mutableStateOf(7) }
var noOfTimes by remember { mutableStateOf(0) }
ComposePracticesTheme {
Column(modifier = Modifier.padding(15.dp)) {
Text(text = "Welcome to the Counter")
Button(onClick = {
noOfTimes++
@rajendhirandev
rajendhirandev / PaymentProcessDelegation.kt
Created September 11, 2022 11:48
Delegate Using Kotlin - Code Snippet
package delegation
fun main() {
println(PaymentProcess(CashPayment()).processPayment())
PaymentProcess.isUPIDown = true
println(PaymentProcess(UPIPayment("Tez")).processPayment())
PaymentProcess.isUPIDown = false
println(PaymentProcess(UPIPayment("Paytm")).processPayment())
PaymentProcess.isCardDown = true
println(PaymentProcess(CardPayment("HDFC", "CC")).processPayment())
@rajendhirandev
rajendhirandev / PaymentProcessDelegation.java
Created September 11, 2022 11:45
Delegate Using Java - Code Snippet
package java_comp;
class PaymentProcessDelegation {
public static void main(String[] args) {
new PaymentProcess(new CashPayment()).paymentMode();
System.out.println(new PaymentProcess(new CashPayment()).paymentProcess());
PaymentProcess.isUPIDown = true;
System.out.println(new PaymentProcess(new UPIPayment("Tez")).paymentProcess());
PaymentProcess.isUPIDown = false;
System.out.println(new PaymentProcess(new UPIPayment("Paytm")).paymentProcess());