زبان Java
JavaJava زبان سازمانهاست — نه چون بهترین است، بلکه چون پیشبینیپذیر است: کدی که امروز مینویسی، ده سال دیگر هم کامپایل میشود. این پایداری هزینه دارد (پرگویی) و سود دارد (اکوسیستم عظیم و ابزار بالغ). این مسیر Java مدرن را یاد میدهد، نه Javaی سال ۲۰۰۸: record، var، switch الگویی و virtual thread.
پیشرفت تو
درصد هر فصل از دو چیز میآید: چقدر از بخشهایش را خواندهای (۵۵٪) و چند تمرینش را تیک زدهای (۴۵٪). همهچیز داخل مرورگر خودت میماند.
فصل
فصلها به هم وابستهاند و ترتیبشان معنا دارد. هر مسیر با پروژههای نهایی تمام میشود: ساده، متوسط، پیچیده.
JVM و اولین برنامه
کامپایل، bytecode و اجرا.
در نوبت نوشتننوعها
اولیه در برابر شیء، autoboxing و var.
در نوبت نوشتنشیءگرایی ۱
کلاس، سازنده، encapsulation.
در نوبت نوشتنشیءگرایی ۲
وراثت، interface، abstract و چندریختی.
در نوبت نوشتنrecord و sealed
Java مدرن: داده بدون پرگویی.
در نوبت نوشتنgeneric
wildcard، bound و type erasure.
در نوبت نوشتنمجموعهها
List، Map، Set و انتخاب درست.
در نوبت نوشتنStream و lambda
برنامهنویسی تابعی در Java.
در نوبت نوشتنOptional
null بدون NullPointerException.
در نوبت نوشتنخطا
checked و unchecked، و try-with-resources.
در نوبت نوشتنفایل و I/O
NIO، مسیر، خواندن و نوشتن.
در نوبت نوشتنهمروندی ۱
نخ، executor و synchronized.
در نوبت نوشتنهمروندی ۲
CompletableFuture و virtual thread.
در نوبت نوشتنماژول و پکیج
JPMS و سازماندهی کد.
در نوبت نوشتنMaven و Gradle
وابستگی، lifecycle و چندماژولی.
در نوبت نوشتنتست
JUnit 5، Mockito و assertion خوانا.
در نوبت نوشتنJVM در عمل
حافظه، GC و پروفایل.
در نوبت نوشتنپروژهٔ ۱ — ابزار خط فرمان
خواندن فایل، پردازش و تست.
در نوبت نوشتنپروژهٔ سادهپروژهٔ ۲ — کتابخانه
API تمیز، generic و انتشار Maven.
در نوبت نوشتنپروژهٔ متوسطپروژهٔ ۳ — پردازشگر همروند
executor، virtual thread و اندازهگیری.
در نوبت نوشتنپروژهٔ پیچیده