This Repo contains Notes and Programs on following topics :
- Java Fundamentals
- Java Object-Oriented Programming
- Java Collections Framework
- I/O & Networking in Java
- Concurrency in Java
- Databases in Java
- Design Patterns in Java
- Data Structures in Java
- Algorithms in Java
- Kotlin - Modern JVM Language
- Android Development (Java & Kotlin)
- Spring Boot REST API (Java & Kotlin)
- Unit Testing in Java
-> All 50 Java Keywords with definitions & examples
-> Java Features, Execution Process & JVM Internals
-> Java Fundamentals & OOPS Concepts
-> Java OOPS - few points to remember
-> Methods of Number, Char, String, Array Classes
Arrays | Strings | Date & Time | Misc
.
-> Java Errors and Exception Handling
.
-> Java RegEx & Lambda Expressions
.
-> Java Multithreading & Garbage Collection
-> Java Thread Synchronization
.
-> Design Patterns & Examples in JDK
-> Creational Patterns: Singleton, Builder, Factory Method, Prototype
-> Structural Patterns
-> Behavioral Patterns
-> Design Patterns Cheat Sheet
.
-> Searching and Sorting Algorithms
-> Concepts of Dynamic Programming
Linked Lists | Stacks | Queues
.
- Fastest growing language in Guthub & among the most loved acc. to StackOverflow survey
- Cross-platform, General-purpose, Concise, Safe & fully interoperable with Java
- Primary Official language for Native Android Development since 2019
- Officially supported by Spring Framework, JetBrains Ktor, Eclipse Vert.x (server-side dev)
-> Kotlin Funadamentals and OOP
-> Kotlin Overview, Features & Multi-platform Support
.
- There are 2.5 billion+ monthly active Android devices
- In 2020, Google Play users worldwide downloaded 108.5 billion mobile apps
- Native Apps have better performance, security, access to device hardware and software
- Native apps tends to have less bugs, gets latest features first and run smoother
-> UI Basics - XML layouts, views, event handlers
-> Recycler View - display scrolling list data using adapter pattern
-> Retrofit - type-safe HTTP client for Java & Android
-> Glide - efficient image loading lib with media decoding, memory & disk caching
-> RoomDB - ORM based SQLite wrapper for fluent db access
-> WorkManager - schedule deferrable, asynchronous tasks
-> ViewModel - store & and manage UI-related data in lifecycle-aware way
-> LiveData - lifecycle-aware observable data holder, ootb data binding support
-> DataBinding - bind UI components to data sources in declarative way
-> RxJava - asynchronous, event-based programs using observable sequences
-> Dagger - static, compile-time dependency injection framework
-> JUnit - developer-side testing on the JVM (unit testing framework)
*-> Mockito - mocking objects in unit tests (test doubling framework)
.
-> Comparisons between C, C++, C# and Java Language
-> CheatSheet | C# for Java Developers
.
[USEFUL INFO - Good Java & Computer Science Books for Reference]
[USEFUL INFO - Great Websites for Learning Java & Computer Science]
.
NOTE :
I will keep adding more important codes to this Repo throughout 2021.
Happy Learning! π
.
REFERENCES :
This repository contains some codes and images from other authors.
Used for "Nonprofit Educational Purpose".
References are listed in the above link for Books & Websites.
Thanks to those authors! π
.