Developer's Sandbox
Open in Telegram
ΠΠΏΡΡ ΠΈ ΡΠ°ΠΌΠΎΠΎΠ±ΡΡΠ΅Π½ΠΈΠ΅ ΠΏΡΠ°ΠΊΡΠΈΠΊΡΡΡΠ΅Π³ΠΎ ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠ° Π‘Π²ΡΠ·Ρ Ρ Π°Π²ΡΠΎΡΠΎΠΌ: @alpa1479
Show more1 059
Subscribers
No data24 hours
No data7 days
No data30 days
Posts Archive
1 059
#sandbox_java #lambda_expressions
ΠΡΠ΅Π³Π΄Π° Π»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ ΡΠ΅ΡΠ΅ΡΠ΅Π½Ρ ΠΈΠΌΠ΅Π΅Ρ ΡΠ°ΠΊΠΎΠ΅ ΠΆΠ΅ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ ΠΈ Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅?
Π ΡΠ»ΡΡΠ°Π΅ Π΅ΡΠ»ΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠΊΡΠ°ΡΠΈΡΡ Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΌΠ΅ΡΠΎΠ΄ ΡΠ΅ΡΠ΅ΡΠ΅Π½Ρ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ Π²ΡΠ³Π»ΡΠ΄Π΅ΡΡ Π±ΠΎΠ»Π΅Π΅ ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΠΎ ΠΈ ΠΏΡΠΈ ΡΡΠΎΠΌ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ Π±ΡΠ΄Π΅Ρ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅.
ΠΠΎ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π½Π΅ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠ΅ ΠΌΠΎΠΌΠ΅Π½ΡΡ:
- ΠΡΠ»ΠΈ ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΡ ΠΊΠ°ΠΊΠΈΠ΅-Π»ΠΈΠ±ΠΎ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ, Π° ΠΏΠΎΡΠ»Π΅ ΡΡΠΎΠ³ΠΎ Π±ΡΠ°ΡΡ Ρ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΠ° ΠΌΠ΅ΡΠΎΠ΄ ΡΠ΅ΡΠ΅ΡΠ΅Π½Ρ, ΡΠΎ ΡΠ°ΠΊΠΈΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π½Π΅ Π±ΡΠ΄ΡΡ Π»Π΅Π½ΠΈΠ²ΡΠΌΠΈ
- ΠΠ΅ΡΠΎΠ΄ ΡΠ΅ΡΠ΅ΡΠ΅Π½Ρ ΠΌΠΎΠΆΠ΅Ρ Π·Π°Π²ΡΠ·Π°ΡΡΡΡ Π½Π° ΡΡΡΠ»ΠΊΡ, ΠΊΠΎΡΠΎΡΠ°Ρ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ Π±ΡΠ΄Π΅Ρ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π°
- ΠΠ΅ΡΠ²Π½ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°ΡΡ capturing Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π²ΠΌΠ΅ΡΡΠΎ non-capturing
ΠΡΠΈ ΠΏΡΠΈΠΌΠ΅ΡΡ Π΄ΠΎΡΡΡΠΏΠ½Ρ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ΅:
https://github.com/alpa1479/sandbox-java/tree/main/examples/lambda-expressions/src/main/java/edu/sandbox/lambdaexpressions/methodreferences
1 059
#sandbox_java #lambda_expressions
ΠΠ°ΠΊ Capturing Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π²Π»ΠΈΡΠ΅Ρ Π½Π° GC?
ΠΠΎ Π²ΡΠ΅ΠΌΡ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ, ΠΊΠΎΠ³Π΄Π° ΠΏΠΎΡΠΎΠΊ Π΄ΠΎΡ
ΠΎΠ΄ΠΈΡ Π΄ΠΎ ΠΌΠ΅ΡΠΎΠ΄Π°, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ capturing Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, ΡΠΎΠ·Π΄Π°Π΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡ ΠΊΠ»Π°ΡΡΠ°, ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ LambdaMetafactory, Π΄Π»Ρ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ Π»ΠΎΠ³ΠΈΠΊΠΈ Π²Π½ΡΡΡΠΈ Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ.
Π’Π°ΠΊΠΈΠΌ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ, Π΅ΡΠ»ΠΈ ΠΌΡ ΡΠ°ΡΡΠΎ Π²ΡΠΏΠΎΠ»Π½ΡΠ΅ΠΌ ΠΌΠ΅ΡΠΎΠ΄ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ Π½Π°Ρ
ΠΎΠ΄ΠΈΡΡΡ capturing Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅, Π±ΡΠ΄ΡΡ ΡΠ°ΡΡΠΎ ΡΠΎΠ·Π΄Π°Π²Π°ΡΡΡΡ Π½ΠΎΠ²ΡΠ΅ ΠΎΠ±ΡΠ΅ΠΊΡΡ, ΡΡΠΎ ΠΏΠΎΠ²Π»ΠΈΡΠ΅Ρ Π½Π° ΡΠ°Π±ΠΎΡΡ GC.
ΠΡΠΎΠ³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°ΡΡ Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡΠΌ JVM ΡΠ°ΠΊΠΈΠΌ ΠΊΠ°ΠΊ escape analysis ΠΈ method inlining. ΠΠ΄Π½Π°ΠΊΠΎ ΡΠ°ΠΊΠΈΠ΅ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ°Π±Π°ΡΡΠ²Π°ΡΡ Π½Π΅ Π²ΡΠ΅Π³Π΄Π°. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ Π΅ΡΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π±ΠΎΠ»ΡΡΠΎΠΉ, Ρ ΠΊΠΎΠ½ΡΠΈΠ³ΡΡΠ°ΡΠΈΠ΅ΠΉ ΠΏΠΎ-ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ JVM ΠΌΠΎΠΆΠ΅Ρ Π½Π΅ Π·Π°ΠΈΠ½Π»Π°ΠΉΠ½ΠΈΡΡ ΠΌΠ΅ΡΠΎΠ΄.
ΠΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΡΠΌ Π²ΡΠ·ΠΎΠ²ΠΎΠΌ ΠΌΠ΅ΡΠΎΠ΄Π° Π²ΡΠ²ΠΎΠ΄Π° ΠΏΡΡΡΠΎΠΉ ΡΡΡΠΎΠΊΠΈ Π½Π° ΠΊΠΎΠ½ΡΠΎΠ»Ρ ΡΠ²Π΅Π»ΠΈΡΠΈΡΡ Π½Π°Π³ΡΡΠ·ΠΊΡ Π½Π° GC Π² Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΡΠ°Π·?
ΠΡΠ²Π΅Ρ ΠΈ ΡΠ΅ΠΎΡΠΈΡ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅ Π² ΠΏΡΠΈΠΌΠ΅ΡΠ΅:
https://github.com/alpa1479/sandbox-java/tree/main/examples/lambda-expressions/src/main/java/edu/sandbox/lambdaexpressions/gcimpact
1 059
#sandbox_java #lambda_expressions
ΠΠ°ΠΊΠΈΠ΅ Π±ΡΠ²Π°ΡΡ ΡΠΈΠΏΡ Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠΉ ΠΈ Π² ΡΠ΅ΠΌ ΠΈΡ
ΡΠ°Π·Π»ΠΈΡΠΈΠ΅?
Non-Capturing:
- ΠΠΎΠΆΠ΅Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π²Π½Π΅ΡΠ½ΠΈΠ΅ ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ, Π½Π΅ Π·Π°Π²ΠΈΡΠΈΡ ΠΎΡ Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°
- ΠΠ΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²Π½Π΅ΡΠ½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ Π² ΠΌΠ΅ΡΠΎΠ΄Π΅ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠ±ΡΡΠ²Π»Π΅Π½Π° ΠΈΠ»ΠΈ Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΊΠ»Π°ΡΡΠ° ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ
- ΠΠ»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΠΈ JVM ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠ°ΠΊΠΎΠ³ΠΎ Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΡΠΎΠ·Π΄Π°Π½ 1 ΡΠ°Π· ΠΈ ΠΏΠ΅ΡΠ΅ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½
Capturing:
- ΠΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π²Π½Π΅ΡΠ½ΠΈΠ΅ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠ΅ ΠΈΠ»ΠΈ Π½Π΅ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΈΠ΅ ΠΏΠΎΠ»Ρ ΠΊΠ»Π°ΡΡΠ° ΠΈΠ»ΠΈ ΠΌΠ΅ΡΠΎΠ΄Ρ
- ΠΡΡΡΡΡΡΠ²ΡΠ΅Ρ ΠΎΠΏΡΠΈΠΌΠΈΠ·Π°ΡΠΈΡ JVM, ΠΊΠ°ΠΆΠ΄ΡΠΉ ΡΠ°Π· Π±ΡΠ΄Π΅Ρ ΡΠΎΠ·Π΄Π°Π½ Π½ΠΎΠ²ΡΠΉ ΠΎΠ±ΡΠ΅ΠΊΡ ΡΠ³Π΅Π½Π΅ΡΠΈΡΠΎΠ²Π°Π½Π½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°, Π²ΡΠΏΠΎΠ»Π½ΡΡΡΠΈΠΉ Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
Π’Π΅ΠΎΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΡΠ°Π±ΠΎΡΠΈΡ
ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ
:
https://github.com/alpa1479/sandbox-java/tree/main/examples/lambda-expressions/src/main/java/edu/sandbox/lambdaexpressions/types
1 059
#sandbox_java #anonymous_classes_vs_lambda_expressions
Π ΡΠ΅ΠΌ ΡΠ°Π·Π½ΠΈΡΠ° ΠΌΠ΅ΠΆΠ΄Ρ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΡΠΌ ΠΊΠ»Π°ΡΡΠΎΠΌ ΠΈ Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΈ ΠΊΠ°ΠΊΠΈΠ΅ Ρ Π½ΠΈΡ
Π΅ΡΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ?
ΠΠ½ΠΎΠ½ΠΈΠΌΠ½ΡΠΉ ΠΊΠ»Π°ΡΡ:
- ΠΠ΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΎΡΠΎΠΌ
- ΠΠΎΠΆΠ΅Ρ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ ΡΠΈΠΏ Ρ ΠΌΠ½ΠΎΠΆΠ΅ΡΡΠ²ΠΎΠΌ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²
- ΠΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ ΠΈ ΡΠΎΡ
ΡΠ°Π½ΡΡΡ Π΅Π³ΠΎ ΠΌΠ΅ΠΆΠ΄Ρ Π²ΡΠ·ΠΎΠ²Π°ΠΌΠΈ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ²
- ΠΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΈΠΌΠ΅ΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ°, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅ΡΡ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡ ΠΈΠ»ΠΈ Π±ΡΡΡ Π°Π±ΡΡΡΠ°ΠΊΡΠ½ΡΠΌ ΠΈΠ»ΠΈ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠΎΠ²
- ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ effectively final
- Π‘ΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ scope, Π΅ΡΠ»ΠΈ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Ρ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΡΠΎ ΠΈ Π²Π½Π΅ΡΠ½ΡΡ, ΡΠΎ ΠΎΠ½Π° ΡΠΊΡΠΎΠ΅Ρ Π²Π½Π΅ΡΠ½ΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
- βthisβ Π²Π½ΡΡΡΠΈ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ° Π±ΡΠ΄Π΅Ρ ΠΎΠ±ΡΠ°ΡΠ°ΡΡΡΡ ΠΊ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠ³ΠΎ ΠΊΠ»Π°ΡΡΠ°
ΠΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅:
- Π‘ΠΎΠ·Π΄Π°Π΅ΡΡΡ Π² runtime ΡΠ΅ΡΠ΅Π· LambdaMetafactory
- ΠΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΎ ΡΠΎΠ»ΡΠΊΠΎ Ρ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠΌΠΈ ΠΈΠ½ΡΠ΅ΡΡΠ΅ΠΉΡΠ°ΠΌΠΈ
- ΠΠ΅ ΠΈΠΌΠ΅Π΅Ρ ΡΠΎΡΡΠΎΡΠ½ΠΈΡ, Π΅ΡΠ»ΠΈ Π²Π½ΡΡΡΠΈ ΡΠ²Π½ΠΎ ΠΊΠ°ΠΊΠΈΠΌ-ΡΠΎ ΠΎΠ±ΡΠ°Π·ΠΎΠΌ Π½Π΅ Π·Π°Π²ΡΠ·ΡΠ²Π°ΡΡΡΡ Π½Π° ΡΠΎΡΡΠΎΡΠ½ΠΈΠ΅ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΎΠ±ΡΠ΅ΠΊΡΠ° ΡΠ΅ΡΠ΅Π· ΡΡΡΠ»ΠΊΡ
- Π―Π²Π»ΡΠ΅ΡΡΡ Π°Π½ΠΎΠ½ΠΈΠΌΠ½ΠΎΠΉ ΡΡΠ½ΠΊΡΠΈΠ΅ΠΉ, ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π½Π΅ ΠΈΠΌΠ΅Π΅Ρ ΠΏΠΎΠ»Π΅ΠΉ, ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΎΡΠΎΠ² ΠΈ Ρ.Π΄.
- ΠΠ»Ρ ΡΠ°Π±ΠΎΡΡ Ρ Π²Π½Π΅ΡΠ½ΠΈΠΌΠΈ Π»ΠΎΠΊΠ°Π»ΡΠ½ΡΠΌΠΈ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΠΌΠΈ ΠΎΠ½ΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ Π±ΡΡΡ effectively final
- ΠΠ΅ ΡΠΎΠ·Π΄Π°Π΅Ρ Π½ΠΎΠ²ΡΠΉ scope, Π΅ΡΠ»ΠΈ ΠΎΠ±ΡΡΠ²ΠΈΡΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ Ρ ΡΠ°ΠΊΠΈΠΌ ΠΆΠ΅ ΠΈΠΌΠ΅Π½Π΅ΠΌ ΡΡΠΎ ΠΈ Π²Π½Π΅ΡΠ½ΡΡ, ΡΠΎ Π±ΡΠ΄Π΅Ρ ΠΎΡΠΈΠ±ΠΊΠ° ΠΊΠΎΠΌΠΏΠΈΠ»ΡΡΠΈΠΈ
- βthisβ Π²Π½ΡΡΡΠΈ Π»ΡΠΌΠ±Π΄Π° Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΡ ΠΎΠ±ΡΠ°ΡΠ°Π΅ΡΡΡ ΠΎΠ±ΡΠ΅ΠΊΡΡ Π²Π½Π΅ΡΠ½Π΅Π³ΠΎ ΠΊΠ»Π°ΡΡΠ°, Π΅ΡΠ»ΠΈ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ Π½Π΅ ΠΎΠ±ΡΡΠ²Π»Π΅Π½ΠΎ Π² ΡΡΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ΅
Π’Π΅ΠΎΡΠΈΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ Π½Π° ΡΠ°Π±ΠΎΡΠΈΡ
ΠΏΡΠΈΠΌΠ΅ΡΠ°Ρ
:
https://github.com/alpa1479/sandbox-java/tree/main/examples/anonymous-classes-vs-lambda-expressions/src/main/java/edu/sandbox/anonymousclassesvslambdaexpressions
1 059
ΠΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΠΊΠ°Π½Π°Π»Π°:
ΠΠ΄Π΅ΡΡ Ρ Π±ΡΠ΄Ρ ΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°ΡΡ ΡΠ΅ΠΎΡΠΈΡ Ρ ΡΠ°Π±ΠΎΡΠΈΠΌΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ Π½Π° github ΠΏΠΎ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠΌ ΡΠ΅Ρ
Π½ΠΎΠ»ΠΎΠ³ΠΈΡΠΌ ΠΈ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ Ρ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΉ, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄ΡΠΉ ΠΌΠΎΠΆΠ΅Ρ ΡΠ΄Π΅Π»Π°ΡΡ fork ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠΈΡΡ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠ΅ΡΠ΅Π· pull request.
ΠΡΠΎ ΠΏΡΠΎΡΡΡΠ°Π½ΡΡΠ²ΠΎ Π΄Π»Ρ ΠΎΠ±ΠΌΠ΅Π½Π° Π·Π½Π°Π½ΠΈΡΠΌΠΈ, Π³Π΄Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΠ±ΡΠ°ΡΡΡΡ Π½Π° ΡΠ΅ΠΌΡ ΡΠ°Π·ΡΠ°Π±ΠΎΡΠΊΠΈ, Π΄Π΅Π»ΠΈΡΡΡΡ ΠΎΠΏΡΡΠΎΠΌ ΠΈ ΠΏΠΎΠ»Π΅Π·Π½ΡΠΌΠΈ ΠΌΠ°ΡΠ΅ΡΠΈΠ°Π»Π°ΠΌΠΈ, ΠΎΠ±ΠΎΠ·ΡΠ΅Π²Π°ΡΡ ΠΊΠ½ΠΈΠ³ΠΈ ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄Ρ.
ΠΡΡΡ ΠΈΠ΄Π΅ΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π² Π±ΡΠ΄ΡΡΠ΅ΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²Π°ΡΡ:
- ΠΡΠΎΠ²ΠΎΠ΄ΠΈΡΡ Mock-ΠΈΠ½ΡΠ΅ΡΠ²ΡΡ
- ΠΠ΅Π»Π°ΡΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠ΅ code review
- Π£ΡΡΡΠ°ΠΈΠ²Π°ΡΡ ΡΠΎΡΠ΅Π²Π½ΠΎΠ²Π°Π½ΠΈΡ Ρ Π²ΠΎΠ·Π½Π°Π³ΡΠ°ΠΆΠ΄Π΅Π½ΠΈΡΠΌΠΈ Π½Π° ΡΠ°ΠΌΡΠΉ Π»ΡΡΡΠΈΠΉ ΠΎΡΠ²Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ Ρ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ, Π° ΡΠ°ΠΊΠΆΠ΅ Π½Π° ΡΠ°ΠΌΠΎΠ΅ Π»ΡΡΡΠ΅Π΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π»ΠΈΠ±ΠΎ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠΈΡΡΠ΅ΠΌΠ½ΡΠΉ Π΄ΠΈΠ·Π°ΠΉΠ½
ΠΠΎ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ ΠΈ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΡΠΌ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ ΠΌΠ½Π΅ - @alpa1479 Π»ΠΈΠ±ΠΎ ΠΏΡΠΎΡΡΠΎ ΠΎΡΡΠ°Π²Π»ΡΡΡ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΏΠΎΠ΄ ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΏΠΎΡΡΠΎΠ²
