Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Как Java сС Ρ€Π°Π·Π»ΠΈΡ‡Π°Π²Π° ΠΎΡ‚ Π΄Ρ€ΡƒΠ³ΠΈΡ‚Π΅ популярни Π΅Π·ΠΈΡ†ΠΈ? Π—Π°Ρ‰ΠΎ Java трябва Π΄Π° бъдС ΠΏΡŠΡ€Π²ΠΈΡΡ‚ Π΅Π·ΠΈΠΊ Π·Π° ΠΈΠ·ΡƒΡ‡Π°Π²Π°Π½Π΅? НСка създадСм ΠΏΠ»Π°Π½, ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ Π²ΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π΅ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΊΠ°ΠΊΡ‚ΠΎ ΠΎΡ‚ Π½ΡƒΠ»Π°Ρ‚Π°, Ρ‚Π°ΠΊΠ° ΠΈ Ρ‡Ρ€Π΅Π· ΠΏΡ€ΠΈΠ»Π°Π³Π°Π½Π΅ Π½Π° умСния Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ Π΅Π·ΠΈΡ†ΠΈ. НСка ΠΈΠ·Π±Ρ€ΠΎΠΈΠΌ Ρ€Π°Π·Π»ΠΈΠΊΠΈΡ‚Π΅ ΠΌΠ΅ΠΆΠ΄Ρƒ ΡΡŠΠ·Π΄Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° производствСн ΠΊΠΎΠ΄ Π² Java ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Π΄Ρ€ΡƒΠ³ΠΈ Π΅Π·ΠΈΡ†ΠΈ. ΠœΠΈΡ…Π°ΠΈΠ» ЗатСпякин ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅ Ρ‚ΠΎΠ·ΠΈ Π΄ΠΎΠΊΠ»Π°Π΄ Π½Π° срСща Π·Π° Π±ΡŠΠ΄Π΅Ρ‰ΠΈ участници стаТовС Yandex ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‰ΠΈ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ - Java Junior срСща.


β€” Π—Π΄Ρ€Π°Π²Π΅ΠΉΡ‚Π΅ всички, ΠΊΠ°Π·Π²Π°ΠΌ сС Миша. Аз съм Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ ΠΎΡ‚ Yandex.Market ΠΈ днСс Ρ‰Π΅ Π²ΠΈ ΠΊΠ°ΠΆΠ° Π·Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. МоТС Π΄Π° Π·Π°Π΄Π°Π΄Π΅Ρ‚Π΅ Ρ€Π°Π·ΡƒΠΌΠ΅Π½ Π²ΡŠΠΏΡ€ΠΎΡ: Π·Π°Ρ‰ΠΎ Π°Π· Ρ‰Π΅ Ρ€Π°Π·ΠΊΠ°ΠΆΠ° Ρ‚Π°Π·ΠΈ история, Π° Π½Π΅ някой силСн Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ с дългогодишСн ΠΎΠΏΠΈΡ‚? Π€Π°ΠΊΡ‚ Π΅, Ρ‡Π΅ самият Π°Π· ΠΈΠ·ΡƒΡ‡Π°Π²Π°Ρ… Java наскоро, ΠΏΡ€Π΅Π΄ΠΈ ΠΎΠΊΠΎΠ»ΠΎ Π³ΠΎΠ΄ΠΈΠ½Π° ΠΈ ΠΏΠΎΠ»ΠΎΠ²ΠΈΠ½Π°, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ всС ΠΎΡ‰Π΅ помня ΠΊΠ°ΠΊΠ²ΠΎ бСшС ΠΈ ΠΊΠ°ΠΊΠ²ΠΈ ΠΊΠ°ΠΏΠ°Π½ΠΈ ΠΈΠΌΠ°.

ΠŸΡ€Π΅Π΄ΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ… стаТ Π² Yandex.Market. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΈΡ… Π±Π΅ΠΊΠ΅Π½Π΄Π° Π·Π° Π‘Π΅Ρ€Ρƒ, Π·Π° самия ΠΏΠ°Π·Π°Ρ€, вСроятно стС Π³ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π»ΠΈ. Π‘Π΅Π³Π° ΠΏΡ€ΠΎΠ΄ΡŠΠ»ΠΆΠ°Π²Π°ΠΌ Π΄Π° работя Ρ‚Π°ΠΌ, Π² Π΄Ρ€ΡƒΠ³ Π΅ΠΊΠΈΠΏ. БъздавамС Π°Π½Π°Π»ΠΈΡ‚ΠΈΡ‡Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° Π·Π° Yandex.Market Π·Π° бизнСс ΠΏΠ°Ρ€Ρ‚Π½ΡŒΠΎΡ€ΠΈ.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Π”Π° Π·Π°ΠΏΠΎΡ‡Π²Π°ΠΌΠ΅. Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΎΡ‚ практичСска Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°? Π€Π°ΠΊΡ‚ Π΅, Ρ‡Π΅ Java Π΅ ΠΌΠ½ΠΎΠ³ΠΎ извСстСн Π΅Π·ΠΈΠΊ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅. Има ΠΌΠ½ΠΎΠ³ΠΎ голяма общност.

НапримСр, ΠΈΠΌΠ° Ρ‚Π°ΠΊΡŠΠ² индСкс TIOBE, популярСн индСкс Π½Π° популярността Π½Π° Π΅Π·ΠΈΡ†ΠΈΡ‚Π΅ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅, ΠΈ Java Π΅ Π½Π° ΠΏΡŠΡ€Π²ΠΎ място Ρ‚Π°ΠΌ. ОсвСн Ρ‚ΠΎΠ²Π° Π² сайтовСтС Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° вСроятно Ρ‰Π΅ Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΡ‚Π΅, Ρ‡Π΅ ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ свободни Ρ€Π°Π±ΠΎΡ‚Π½ΠΈ мСста са ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ с Java, тоСст, ΠΊΠ°Ρ‚ΠΎ сС Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚Π΅ Π² Java, Π²ΠΈΠ½Π°Π³ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°.

Въй ΠΊΠ°Ρ‚ΠΎ общността Π΅ ΠΌΠ½ΠΎΠ³ΠΎ голяма, всСки ваш Π²ΡŠΠΏΡ€ΠΎΡ Ρ‰Π΅ Π½Π°ΠΌΠ΅Ρ€ΠΈ ΠΎΡ‚Π³ΠΎΠ²ΠΎΡ€ Π½Π° някои Stack Overflow ΠΈΠ»ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ сайтовС. Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚Π΅ Π² Java, Π²ΠΈΠ΅ Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ ΠΊΠΎΠ΄ Π½Π° JVM, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ лСсно Π΄Π° ΠΏΡ€Π΅Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ към Kotlin, Scala ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Π΅Π·ΠΈΡ†ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ JVM.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Какво Π΅ Π΄ΠΎΠ±Ρ€ΠΎ Π·Π° Java ΠΎΡ‚ идСологичСска Π³Π»Π΅Π΄Π½Π° Ρ‚ΠΎΡ‡ΠΊΠ°? Има Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Π΅Π·ΠΈΡ†ΠΈ Π·Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅. Π’Π΅ Ρ€Π΅ΡˆΠ°Π²Π°Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, Π·Π½Π°Π΅Ρ‚Π΅ Ρ‚ΠΎΠ²Π°. НапримСр, Python Π΅ страхотСн Π·Π° писанС Π½Π° Π΅Π΄Π½ΠΎΡ€Π΅Π΄ΠΎΠ²ΠΈ скриптовС Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° Π±ΡŠΡ€Π·ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ.

ΠŸΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»Π½Π°Ρ‚Π° страна Π΅, Ρ‡Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ напълно Π΄Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€Π°Ρ‚Π΅ изпълнимия ΠΊΠΎΠ΄. НапримСр, ΠΈΠΌΠ°ΠΌΠ΅ Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΠΈ, Π°Π²Ρ‚ΠΎΠΌΠΎΠ±ΠΈΠ»ΠΈ Yandex Π±Π΅Π· Π²ΠΎΠ΄Π°Ρ‡ΠΈ, тСхният ΠΊΠΎΠ΄ Π΅ написан с плюсовС. Π—Π°Ρ‰ΠΎ? Java ΠΈΠΌΠ° Ρ‚Π°ΠΊΠΎΠ²Π° Π½Π΅Ρ‰ΠΎ - Garbage Collector. Π˜Π·Ρ‡ΠΈΡΡ‚Π²Π° RAM ΠΎΡ‚ Π½Π΅Π½ΡƒΠΆΠ½ΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ. Π’ΠΎΠ²Π° Π½Π΅Ρ‰ΠΎ Π·Π°ΠΏΠΎΡ‡Π²Π° спонтанно ΠΈ спира свСта, тоСст спира останалата част ΠΎΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠ°Ρ‚Π° ΠΈ ΠΎΡ‚ΠΈΠ²Π° Π΄Π° Π±Ρ€ΠΎΠΈ ΠΎΠ±Π΅ΠΊΡ‚ΠΈ, изчиства ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ΠΈΡ‚Π΅. Ако Ρ‚Π°ΠΊΠΎΠ²Π° Π½Π΅Ρ‰ΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π² Π΄Ρ€ΠΎΠ½, Π½Π΅ Π΅ Π³ΠΎΡ‚ΠΈΠ½ΠΎ. Π’Π°ΡˆΠΈΡΡ‚ Π΄Ρ€ΠΎΠ½ Ρ‰Π΅ ΠΊΠ°Ρ€Π° Π½Π°ΠΏΡ€Π°Π²ΠΎ, Π² Ρ‚ΠΎΠ·ΠΈ ΠΌΠΎΠΌΠ΅Π½Ρ‚ Ρ‰Π΅ изчисти ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° си ΠΈ ΠΈΠ·ΠΎΠ±Ρ‰ΠΎ няма Π΄Π° Π³Π»Π΅Π΄Π° към ΠΏΡŠΡ‚Ρ. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ Π΄Ρ€ΠΎΠ½ΡŠΡ‚ Π΅ написан Π½Π° плюсовС.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Какви ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ Ρ€Π΅ΡˆΠ°Π²Π° Java? Π’ΠΎΠ²Π° Π΅ ΠΏΡ€Π΅Π΄ΠΈΠΌΠ½ΠΎ Π΅Π·ΠΈΠΊ Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Π½Π΅ Π½Π° Π³ΠΎΠ»Π΅ΠΌΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΏΠΈΡˆΠ°Ρ‚ с Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΎΡ‚ дСсСтки ΠΈΠ»ΠΈ стотици Ρ…ΠΎΡ€Π°. По-спСциално, голяма част ΠΎΡ‚ Π±Π΅ΠΊΠ΅Π½Π΄Π° Π² Yandex.Market Π΅ написана Π½Π° Java. ИмамС Ρ€Π°Π·ΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ Π΅ΠΊΠΈΠΏ Π² няколко Π³Ρ€Π°Π΄Π°, ΠΏΠΎ дСсСт Π΄ΡƒΡˆΠΈ във всСки. И ΠΊΠΎΠ΄ΡŠΡ‚ Π΅ лСсСн Π·Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°, ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° сС ΠΎΡ‚ дСсСт Π³ΠΎΠ΄ΠΈΠ½ΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΈ Π² ΡΡŠΡ‰ΠΎΡ‚ΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½ΠΎΠ²ΠΈ Ρ…ΠΎΡ€Π° Π²Π»ΠΈΠ·Π°Ρ‚ ΠΈ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ Ρ‚ΠΎΠ·ΠΈ ΠΊΠΎΠ΄.

Какви характСристики трябва Π΄Π° ΠΈΠΌΠ° Π΅Π΄ΠΈΠ½ Π΅Π·ΠΈΠΊ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ ΠΊΠΎΠ΄ΡŠΡ‚ Π² Π½Π΅Π³ΠΎ Π΄Π° сС ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° лСсно ΠΈ Π΄Π° ΠΌΠΎΠΆΠ΅ лСсно Π΄Π° сС Ρ€Π°Π·Π²ΠΈΠ²Π° Π² Π³ΠΎΠ»Π΅ΠΌΠΈ Π΅ΠΊΠΈΠΏΠΈ. На ΠΏΡŠΡ€Π²ΠΎ място, Ρ‚ΠΎΠΉ трябва Π΄Π° бъдС Ρ‡Π΅Ρ‚ΠΈΠΌ ΠΊΠΎΠ΄ ΠΈ трябва Π΄Π° Π΅ лСсСн Π·Π° внСдряванС Π½Π° слоТни Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. ВоСст, трябва Π΄Π° Π΅ лСсно Π΄Π° сС ΠΏΠΈΡˆΠ°Ρ‚ абстракции Π½Π° високо Π½ΠΈΠ²ΠΎ ΠΈ Ρ‚.Π½. Всичко Ρ‚ΠΎΠ²Π° Π΅, ΠΊΠΎΠ΅Ρ‚ΠΎ Java Π½ΠΈ прСдоставя. Π’ΠΎΠ²Π° Π΅ ΠΎΠ±Π΅ΠΊΡ‚Π½ΠΎ-ΠΎΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€Π°Π½ Π΅Π·ΠΈΠΊ. Наистина Π΅ лСсно Π΄Π° сС внСдрят абстракции ΠΎΡ‚ високо Π½ΠΈΠ²ΠΎ ΠΈ слоТни Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€ΠΈ.

Има ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π°ΠΌΠΊΠΈ ΠΈ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π·Π° Java, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Π΅Π·ΠΈΠΊΡŠΡ‚ Π΅ Π½Π° ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΎΡ‚ 15 Π³ΠΎΠ΄ΠΈΠ½ΠΈ. ΠŸΡ€Π΅Π· Ρ‚ΠΎΠ²Π° Π²Ρ€Π΅ΠΌΠ΅ всичко, ΠΊΠΎΠ΅Ρ‚ΠΎ моТСшС Π΄Π° сС напишС, бСшС написано Π²ΡŠΡ€Ρ…Ρƒ Π½Π΅Π³ΠΎ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ ΠΈΠΌΠ° Ρ‚ΠΎΠ½ΠΎΠ²Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π·Π° всичко, ΠΎΡ‚ ΠΊΠΎΠ΅Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½ΡƒΠΆΠ΄Π°Π΅Ρ‚Π΅.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Какви основни умСния, спорСд ΠΌΠ΅Π½, трябва Π΄Π° ΠΈΠΌΠ° Π΅Π΄ΠΈΠ½ Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‰ JA ΠΈΠ³Ρ€Π°Ρ‡? На ΠΏΡŠΡ€Π²ΠΎ място, Ρ‚ΠΎΠ²Π° Π΅ ΠΏΠΎΠ·Π½Π°Π²Π°Π½Π΅ Π½Π° основния Π΅Π·ΠΈΠΊ Π½Π° Java. Π‘Π»Π΅Π΄Π²Π° някакъв Π²ΠΈΠ΄ Ρ€Π°ΠΌΠΊΠ° Π·Π° ΠΈΠ½ΠΆΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° зависимости. БлСдващият ΠΎΡ€Π°Ρ‚ΠΎΡ€, ΠšΠΈΡ€ΠΈΠ», Ρ‰Π΅ Π³ΠΎΠ²ΠΎΡ€ΠΈ Π·Π° Ρ‚ΠΎΠ²Π° ΠΏΠΎ-ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ. Няма Π΄Π° сС Π·Π°Π΄ΡŠΠ»Π±ΠΎΡ‡Π°Π²Π°ΠΌ. Π‘Π»Π΅Π΄Π²Π°Ρ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ Π½Π° Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° ΠΈ Π΄ΠΈΠ·Π°ΠΉΠ½Π°. Врябва Π΄Π° ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° пишСм Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΎ красив ΠΊΠΎΠ΄, Π·Π° Π΄Π° пишСм Π³ΠΎΠ»Π΅ΠΌΠΈ прилоТСния. И Ρ‚ΠΎΠ²Π° Π΅ някакъв Π²ΠΈΠ΄ SQL ΠΈΠ»ΠΈ ORM Π·Π° Π·Π°Π΄Π°Ρ‡ΠΈ Π·Π° Ρ€Π°Π±ΠΎΡ‚Π° с Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. И Ρ‚ΠΎΠ²Π° сС отнася ΠΏΠΎΠ²Π΅Ρ‡Π΅ Π·Π° Π±Π΅ΠΊΠ΅Π½Π΄Π°.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

ΠžΡ‚ΠΈΠ²Π°ΠΌ! Java ядро. Π’ΡƒΠΊ наистина няма Π΄Π° открия АмСрика - трябва Π΄Π° Π·Π½Π°Π΅Ρ‚Π΅ самия Π΅Π·ΠΈΠΊ. На ΠΊΠ°ΠΊΠ²ΠΎ трябва Π΄Π° ΠΎΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. ΠŸΡŠΡ€Π²ΠΎ, Java пусна ΠΌΠ½ΠΎΠ³ΠΎ вСрсии ΠΏΡ€Π΅Π· послСднитС Π³ΠΎΠ΄ΠΈΠ½ΠΈ, тоСст ΠΏΡ€Π΅Π· 2014-2015 бСшС пусната сСдмата, слСд Ρ‚ΠΎΠ²Π° осмата, Π΄Π΅Π²Π΅Ρ‚Π°Ρ‚Π°, дСсСтата, ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΈ вСрсии ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π½ΠΎΠ²ΠΈ Π³ΠΎΡ‚ΠΈΠ½ΠΈ Π½Π΅Ρ‰Π° бяха въвСдСни Π² тях , Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Java Stream API, lambda ΠΈ Ρ‚.Π½. Много Π³ΠΎΡ‚ΠΈΠ½ΠΈ, свСТи, Π³ΠΎΡ‚ΠΈΠ½ΠΈ Π½Π΅Ρ‰Π°, ΠΊΠΎΠΈΡ‚ΠΎ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π² производствСния ΠΊΠΎΠ΄, Π·Π° ΠΊΠ°ΠΊΠ²ΠΎ ΠΏΠΈΡ‚Π°Ρ‚ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŽΡ‚Π° ΠΈ ΠΊΠΎΠΈΡ‚ΠΎ трябва Π΄Π° Π·Π½Π°Π΅Ρ‚Π΅. Π•Ρ‚ΠΎ Π·Π°Ρ‰ΠΎ Π½Π΅ трябва Π΄Π° Π²Π·Π΅ΠΌΠ°Ρ‚Π΅ ΠΊΠ½ΠΈΠ³Π° ΠΎΡ‚ Ρ€Π°Ρ„Ρ‚Π° Π² Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Java-4 ΠΈ Π΄Π° ΠΎΡ‚ΠΈΠ΄Π΅Ρ‚Π΅ Π΄Π° я Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅. Π’ΠΎΠ²Π° Π΅ Π½Π°ΡˆΠΈΡΡ‚ ΠΏΠ»Π°Π½: ΡƒΡ‡ΠΈΠΌ Java-8 ΠΈΠ»ΠΈ ΠΏΠΎ-висока.

НиС ΠΎΠ±Ρ€ΡŠΡ‰Π°ΠΌΠ΅ голямо Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΈΠ½ΠΎΠ²Π°Ρ†ΠΈΠΈ ΠΊΠ°Ρ‚ΠΎ Stream API, var ΠΈ Π΄Ρ€. Π’Π΅ сС Π·Π°Π΄Π°Π²Π°Ρ‚ ΠΏΠΎ Π²Ρ€Π΅ΠΌΠ΅ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŽΡ‚Π° ΠΈ сС ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ постоянно Π² производството. ВоСст, Stream API Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎ-Π³ΠΎΡ‚ΠΈΠ½ ΠΎΡ‚ Ρ†ΠΈΠΊΠ»ΠΈΡ‚Π΅, ΠΊΠ°Ρ‚ΠΎ цяло, ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΡ‚ΠΈΠ½ΠΎ Π½Π΅Ρ‰ΠΎ. НС забравяйтС Π΄Π° ΠΎΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅.

И ΠΈΠΌΠ° всякакви Π½Π΅Ρ‰Π° ΠΊΠ°Ρ‚ΠΎ ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈ, ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ ΠΈ Ρ‚Π°ΠΊΠ° Π½Π°Ρ‚Π°Ρ‚ΡŠΠΊ. НСща, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΠΈ ΠΈΠ·Π³Π»Π΅ΠΆΠ΄Π°Ρ‚ ΠΌΠ°Π»ΠΎΠ²Π°ΠΆΠ½ΠΈ, стига сами Π΄Π° Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ малък ΠΊΠΎΠ΄. НС сС Π½ΡƒΠΆΠ΄Π°Π΅Ρ‚Π΅ ΠΎΡ‚ Ρ‚Π΅Π·ΠΈ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ, ΠΊΠΎΠΉ ΠΈΠ·ΠΎΠ±Ρ‰ΠΎ ΠΈΠΌΠ° Π½ΡƒΠΆΠ΄Π° ΠΎΡ‚ тях? Но Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ поискани Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŽΡ‚Π°, Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ Ρ‰Π΅ Π²ΠΈ Π±ΡŠΠ΄Π°Ρ‚ ΠΏΠΎΠ»Π΅Π·Π½ΠΈ Π² производството. ΠšΠ°Ρ‚ΠΎ цяло трябва Π΄Π° ΠΎΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡΡ‚Π°, ΠΈΡ‚Π΅Ρ€Π°Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Π½Π΅Ρ‰Π°.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈ ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ. НС ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π±Π΅Π· структури, Π½ΠΎ Ρ‰Π΅ бъдС чудСсно, Π°ΠΊΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅ просто, Ρ‡Π΅ ΠΈΠΌΠ° ΠΊΠΎΠΌΠΏΠ»Π΅ΠΊΡ‚ΠΈ, Ρ€Π΅Ρ‡Π½ΠΈΡ†ΠΈ ΠΈ листовС. А ΡΡŠΡ‰ΠΎ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ изпълнСния Π½Π° структури. НапримСр, ΡΡŠΡ‰ΠΈΡΡ‚ Ρ€Π΅Ρ‡Π½ΠΈΠΊ Π² Java ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ HashMap ΠΈ TreeMap. Π˜ΠΌΠ°Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Π° асимптотика, Π²ΡŠΡ‚Ρ€Π΅ са структурирани Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΎ. Врябва Π΄Π° Π·Π½Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ сС Ρ€Π°Π·Π»ΠΈΡ‡Π°Π²Π°Ρ‚ ΠΈ ΠΊΠΎΠ³Π° Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚Π΅.

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° Ρ‰Π΅ бъдС ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΡ‚ΠΈΠ½ΠΎ, Π°ΠΊΠΎ Π·Π½Π°Π΅Ρ‚Π΅ ΠΊΠ°ΠΊ Ρ‚Π΅Π·ΠΈ структури ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ работят Π²ΡŠΡ‚Ρ€Π΅ΡˆΠ½ΠΎ. ВоСст, Π½Π΅ Π΅ лСсно Π΄Π° сС Π·Π½Π°Π΅ тяхната асимптотика - ΠΊΠΎΠ»ΠΊΠΎ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π·Π°Π»ΠΎΠ³ΡŠΡ‚, ΠΊΠΎΠ»ΠΊΠΎ дълго Ρ€Π°Π±ΠΎΡ‚ΠΈ ΠΏΠ°ΡΡŠΡ‚, Π½ΠΎ ΠΊΠ°ΠΊ Ρ€Π°Π±ΠΎΡ‚ΠΈ структурата Π²ΡŠΡ‚Ρ€Π΅ - Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΊΠ°ΠΊΠ²ΠΎ Π΅ ΠΊΠΎΡ„Π° Π² HashMap.

Π‘ΡŠΡ‰ΠΎ Ρ‚Π°ΠΊΠ° си струва Π΄Π° ΠΎΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° Π΄ΡŠΡ€Π²Π΅Ρ‚Π°Ρ‚Π° ΠΈ Π³Ρ€Π°Ρ„ΠΈΠΊΠΈΡ‚Π΅. Π’ΠΎΠ²Π° са Π½Π΅Ρ‰Π°, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ са ΠΌΠ½ΠΎΠ³ΠΎ чСсто срСщани Π² производствСния ΠΊΠΎΠ΄, Π½ΠΎ са популярни Π² ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŽΡ‚Π°Ρ‚Π°. Π‘ΡŠΠΎΡ‚Π²Π΅Ρ‚Π½ΠΎ, трябва Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΎΠ±Ρ…ΠΎΠΆΠ΄Π°Ρ‚Π΅ Π΄ΡŠΡ€Π²Π΅Ρ‚Π°, Π³Ρ€Π°Ρ„ΠΈΠΊΠΈ Π² ΡˆΠΈΡ€ΠΈΠ½Π° ΠΈ Π΄ΡŠΠ»Π±ΠΎΡ‡ΠΈΠ½Π°. Всичко Ρ‚ΠΎΠ²Π° са прости Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΈ.

Π’Π΅Π΄Π½Π°Π³Π° Ρ‰ΠΎΠΌ Π·Π°ΠΏΠΎΡ‡Π½Π΅Ρ‚Π΅ Π΄Π° ΠΏΠΈΡˆΠ΅Ρ‚Π΅ някакъв голям ΠΊΠΎΠ΄, слоТСн, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‰ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ, многокласов ΠΊΠΎΠ΄, Ρ‰Π΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅, Ρ‡Π΅ Π²ΠΈ Π΅ Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ Π±Π΅Π· ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°Π½Π΅ Π½Π° систСми ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° зависимости. Π’ΠΎΠ²Π° са ΠΏΡ€Π΅Π΄ΠΈΠΌΠ½ΠΎ Maven ΠΈ Gradle. Π’Π΅ Π²ΠΈ позволяват Π΄Π° ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€Π°Ρ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ във вашия ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ Π² Π΅Π΄ΠΈΠ½ Ρ€Π΅Π΄. Π’ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ ΠΏΠΈΡˆΠ΅Ρ‚Π΅ Π΅Π΄Π½ΠΎΡ€Π΅Π΄ΠΎΠ² xml ΠΈ ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€Π°Ρ‚Π΅ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π‘Ρ‚Ρ€Π°Ρ…ΠΎΡ‚Π½ΠΈ систСми. Π’Π΅ са ΠΏΡ€ΠΈΠ±Π»ΠΈΠ·ΠΈΡ‚Π΅Π»Π½ΠΎ Π΅Π΄Π½Π°ΠΊΠ²ΠΈ, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΡ‚Π΅ Сдиния - Maven ΠΈΠ»ΠΈ Gradle.

Π‘Π»Π΅Π΄Π²Π° - някаква систСма Π·Π° ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ» Π½Π° вСрсиитС. ΠŸΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π°ΠΌ Git, Π·Π°Ρ‰ΠΎΡ‚ΠΎ Π΅ популярСн ΠΈ ΠΈΠΌΠ° ΠΌΠ½ΠΎΠ³ΠΎ ΡƒΡ€ΠΎΡ†ΠΈ. ΠŸΠΎΡ‡Ρ‚ΠΈ всСки ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π° Git, Ρ‚ΠΎΠ²Π° Π΅ страхотно Π½Π΅Ρ‰ΠΎ, Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΆΠΈΠ²Π΅Π΅Ρ‚Π΅ Π±Π΅Π· Π½Π΅Π³ΠΎ.

И някаква срСда Π·Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. ΠŸΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π°ΠΌ IntelliJ Idea. Π’ΠΎΠΉ Π·Π½Π°Ρ‡ΠΈΡ‚Π΅Π»Π½ΠΎ ускорява процСса Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, ΠΏΠΎΠΌΠ°Π³Π° Π²ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ, пишС цСлия шаблонСн ΠΊΠΎΠ΄ вмСсто вас, ΠΊΠ°Ρ‚ΠΎ цяло Π΅ страхотно.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Π’Ρ€ΡŠΠ·ΠΊΠΈ ΠΎΡ‚ слайда: SQLZOO, хабрапост

SQL. Малко Π·Π° backenders. Π’ΡƒΠΊ Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ имашС Π·Π°Π±Π°Π²Π΅Π½ случай. Π”Π²Π° Π΄Π½ΠΈ ΠΏΡ€Π΅Π΄ΠΈ Π²Ρ‚ΠΎΡ€ΠΎΡ‚ΠΎ ΠΌΠΈ стаТантско ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŽ ΠΌΠΈ сС ΠΎΠ±Π°Π΄ΠΈ ΠΌΠΎΠΌΠΈΡ‡Π΅ ΠΎΡ‚ HR ΠΈ ΠΊΠ°Π·Π°, Ρ‡Π΅ слСд Π΄Π²Π° Π΄Π½ΠΈ Ρ‰Π΅ ΠΌΠ΅ ΠΏΠΈΡ‚Π°Ρ‚ Π·Π° SQL ΠΈ HTTP, трябва Π΄Π° Π³ΠΎ Π½Π°ΡƒΡ‡Π°. И Π½Π΅ Π·Π½Π°Π΅Ρ… ΠΏΠΎΡ‡Ρ‚ΠΈ Π½ΠΈΡ‰ΠΎ Π·Π° SQL ΠΈΠ»ΠΈ HTTP. И Π½Π°ΠΌΠ΅Ρ€ΠΈΡ… Ρ‚ΠΎΠ·ΠΈ Π³ΠΎΡ‚ΠΈΠ½ сайт - SQLZOO. Научих SQL Π²ΡŠΡ€Ρ…Ρƒ Π½Π΅Π³ΠΎ Π·Π° 12 часа, ΠΈΠΌΠ°ΠΌ ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄ SQL синтаксис, ΠΊΠ°ΠΊ Π΄Π° пиша SELECT заявки, JOIN ΠΈ Ρ‚.Π½. Много Π³ΠΎΡ‚ΠΈΠ½ сайт, силно Π³ΠΎ ΠΏΡ€Π΅ΠΏΠΎΡ€ΡŠΡ‡Π²Π°ΠΌ. Π’ΡΡŠΡ‰Π½ΠΎΡΡ‚ Π·Π° 12 часа Π½Π°ΡƒΡ‡ΠΈΡ… 90% ΠΎΡ‚ Ρ‚ΠΎΠ²Π°, ΠΊΠΎΠ΅Ρ‚ΠΎ Π·Π½Π°ΠΌ сСга.

ОсвСн Ρ‚ΠΎΠ²Π° Π΅ страхотно Π΄Π° Π·Π½Π°Π΅Ρ‚Π΅ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π°Ρ‚Π° Π½Π° Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. Π’ΠΎΠ²Π° са всякакви ΠΊΠ»ΡŽΡ‡ΠΎΠ²Π΅, индСкси, нормализация. Има ΠΏΠΎΡ€Π΅Π΄ΠΈΡ†Π° ΠΎΡ‚ ΠΏΡƒΠ±Π»ΠΈΠΊΠ°Ρ†ΠΈΠΈ Π·Π° Ρ‚ΠΎΠ²Π° Π½Π° HabrΓ©.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Π’ Java, Π² допълнСниС към SQL, ΠΈΠΌΠ° всякакви систСми Π·Π° ΠΎΠ±Π΅ΠΊΡ‚Π½ΠΎ-Ρ€Π΅Π»Π°Ρ†ΠΈΠΎΠ½Π½ΠΎ ΠΊΠ°Ρ€Ρ‚ΠΎΠ³Ρ€Π°Ρ„ΠΈΡ€Π°Π½Π΅ ΠΊΠ°Ρ‚ΠΎ JPA. Има някакъв ΠΊΠΎΠ΄. Π’ ΠΏΡŠΡ€Π²ΠΈΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈΠΌΠ° някакъв SQL ΠΊΠΎΠ΄ - SELECT id name FROM info.users WHERE id IN userIds. ΠžΡ‚ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅, ΠΎΡ‚ Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ‚Π°, сС ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π°Ρ‚ Ρ‚Π΅Ρ…Π½ΠΈΡ‚Π΅ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ΠΈ ΠΈ ΠΈΠΌΠ΅Π½Π°.

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π° ΠΈΠΌΠ° ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΊΠ°Ρ€Ρ‚ΠΎΠ³Ρ€Π°Ρ„, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€Π΅Π²Ρ€ΡŠΡ‰Π° ΠΎΠ±Π΅ΠΊΡ‚ ΠΎΡ‚ основата Π² Java ΠΎΠ±Π΅ΠΊΡ‚. Има ΠΈ Ρ‚Ρ€Π΅Ρ‚ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΡΡŠΡ‰Π½ΠΎΡΡ‚ изпълнява Ρ‚ΠΎΠ·ΠΈ ΠΊΠΎΠ΄. Всичко Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС Π·Π°ΠΌΠ΅Π½Π΅Π½ΠΎ с ΠΏΠΎΠΌΠΎΡ‰Ρ‚Π° Π½Π° JPA с Π΅Π΄ΠΈΠ½ Ρ€Π΅Π΄, ΠΊΠΎΠΉΡ‚ΠΎ Π΅ написан ΠΏΠΎ-Π΄ΠΎΠ»Ρƒ. ΠŸΡ€Π°Π²ΠΈ ΡΡŠΡ‰ΠΎΡ‚ΠΎ - Π½Π°ΠΌΠΈΡ€Π° All ByIdIn. ВоСст, въз основа Π½Π° ΠΈΠΌΠ΅Ρ‚ΠΎ Π½Π° ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Ρ‚ΠΎΠΉ Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° SQL заявка Π·Π° вас.

Много яко Π½Π΅Ρ‰ΠΎ. Аз самият, ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π½Π΅ Π·Π½Π°Π΅Ρ… SQL, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ… JPA. ΠšΠ°Ρ‚ΠΎ цяло, ΠΎΠ±ΡŠΡ€Π½Π΅Ρ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅. Ако Π²ΠΈ ΠΌΡŠΡ€Π·ΠΈ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ SQL, Ρ‚ΠΎΠ²Π° Π΅ катастрофа. И ΠΊΠ°Ρ‚ΠΎ цяло огън!

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

ΠŸΡ€ΠΎΠ»Π΅Ρ‚. Кой Π΅ Ρ‡ΡƒΠ²Π°Π» Π·Π° Ρ‚Π°ΠΊΠΎΠ²Π° Π½Π΅Ρ‰ΠΎ ΠΊΠ°Ρ‚ΠΎ Spring framework? Π’ΠΈΠΆΠ΄Π°Ρ‚Π΅ Π»ΠΈ ΠΊΠΎΠ»ΠΊΠΎ стС? НС Π±Π΅Π· ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°. ΠŸΡ€ΠΎΠ»Π΅Ρ‚Ρ‚Π° Π΅ Π²ΠΊΠ»ΡŽΡ‡Π΅Π½Π° Π² изискванията Π·Π° всяка Π²Ρ‚ΠΎΡ€Π° свободна Ρ€Π°Π±ΠΎΡ‚Π° Π² Java backend. Π‘Π΅Π· Π½Π΅Π³ΠΎ наистина няма никъдС Π² голямо Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅. Какво Π΅ ΠΏΡ€ΠΎΠ»Π΅Ρ‚? На ΠΏΡŠΡ€Π²ΠΎ място, Ρ‚ΠΎΠ²Π° Π΅ Ρ€Π°ΠΌΠΊΠ° Π·Π° ΠΈΠ½ΠΆΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° зависимости. Π—Π° Ρ‚ΠΎΠ²Π° ΡΡŠΡ‰ΠΎ Ρ‰Π΅ ΠΊΠ°ΠΆΠ° слСдващия Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚Π΅Π». Но Π½Π°ΠΊΡ€Π°Ρ‚ΠΊΠΎ, Ρ‚ΠΎΠ²Π° Π΅ Π½Π΅Ρ‰ΠΎ, ΠΊΠΎΠ΅Ρ‚ΠΎ Π²ΠΈ позволява Π΄Π° улСснитС ΠΈΠΌΠΏΠΎΡ€Ρ‚ΠΈΡ€Π°Π½Π΅Ρ‚ΠΎ Π½Π° зависимоститС Π½Π° някои класовС към Π΄Ρ€ΡƒΠ³ΠΈ. ВоСст Π·Π½Π°Π½ΠΈΠ΅Ρ‚ΠΎ Π·Π° зависимоститС Π΅ опростСно.

Spring Boot Π΅ част ΠΎΡ‚ Spring, която Π²ΠΈ позволява Π΄Π° стартиратС Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ с Π΅Π΄ΠΈΠ½ Π±ΡƒΡ‚ΠΎΠ½. ΠžΡ‚ΠΈΠ²Π°Ρ‚Π΅ Π½Π° THID, натискатС няколко Π±ΡƒΡ‚ΠΎΠ½Π° ΠΈ сСга Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΅ Π³ΠΎΡ‚ΠΎΠ²ΠΎ ΠΈ Ρ€Π°Π±ΠΎΡ‚ΠΈ Π½Π° localhost 8080. Π’ΠΎΠ²Π° ΠΎΠ·Π½Π°Ρ‡Π°Π²Π°, Ρ‡Π΅ всС ΠΎΡ‰Π΅ Π½Π΅ стС написали Π½ΠΈΡ‚ΠΎ Π΅Π΄ΠΈΠ½ Ρ€Π΅Π΄ ΠΊΠΎΠ΄, Π½ΠΎ Ρ‚ΠΎΠΉ Π²Π΅Ρ‡Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ. Много яко Π½Π΅Ρ‰ΠΎ. Ако напишСш Π½Π΅Ρ‰ΠΎ своС, огън!

ΠŸΡ€ΠΎΠ»Π΅Ρ‚Ρ‚Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ голяма Ρ€Π°ΠΌΠΊΠ°. Π’ΠΎΠΉ Π½Π΅ само Π²Π·Π΅ΠΌΠ° Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ Ρ€Π°Π·Ρ€Π΅ΡˆΠ°Π²Π° ΠΈΠ½ΠΆΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½Π΅ Π½Π° зависимост. Вя Π²ΠΈ позволява Π΄Π° ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ ΠΊΡƒΠΏ Π½Π΅Ρ‰Π°, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ създаванС Π½Π° REST API ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈ. ВоСст Π²ΠΈΠ΅ стС написали някакъв ΠΌΠ΅Ρ‚ΠΎΠ΄ ΠΈ стС ΠΏΡ€ΠΈΠΊΠ°Ρ‡ΠΈΠ»ΠΈ към Π½Π΅Π³ΠΎ анотацията Get mapping. И сСга Π²Π΅Ρ‡Π΅ ΠΈΠΌΠ°Ρ‚Π΅ някакъв ΠΌΠ΅Ρ‚ΠΎΠ΄ Π½Π° localhost, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ пишС Hello world. Π”Π²Π° Ρ€Π΅Π΄Π° ΠΊΠΎΠ΄ ΠΈ Ρ€Π°Π±ΠΎΡ‚ΠΈ. Π“ΠΎΡ‚ΠΈΠ½ΠΈ Π½Π΅Ρ‰Π°.

Spring ΡΡŠΡ‰ΠΎ улСснява писанСто Π½Π° тСстовС. Няма ΠΊΠ°ΠΊ Π±Π΅Π· тСстванС Π² голяма Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°. ΠšΠΎΠ΄ΡŠΡ‚ трябва Π΄Π° сС тСства. Π—Π° Ρ‚Π°Π·ΠΈ Ρ†Π΅Π» Java ΠΈΠΌΠ° Π³ΠΎΡ‚ΠΈΠ½Π° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ° JUnit 5. И JUnit ΠΊΠ°Ρ‚ΠΎ цяло, Π½ΠΎ послСдната вСрсия Π΅ ΠΏΠ΅Ρ‚Π°. Има всичко Π·Π° тСстванС, всякакви Ρ‚Π²ΡŠΡ€Π΄Π΅Π½ΠΈΡ ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Π½Π΅Ρ‰Π°.

И ΠΈΠΌΠ° страхотна Ρ€Π°ΠΌΠΊΠ° Mockito. ΠŸΡ€Π΅Π΄ΡΡ‚Π°Π²Π΅Ρ‚Π΅ си, Ρ‡Π΅ ΠΈΠΌΠ°Ρ‚Π΅ някаква функционалност, която искатС Π΄Π° тСстватС. Ѐункционалността ΠΏΡ€Π°Π²ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ Π½Π΅Ρ‰Π°, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ някъдС ΠΏΠΎ срСдата Π²Π»ΠΈΠ·Π° във VKontakte с вашия ID, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΈ ΠΏΠΎΠ»ΡƒΡ‡Π°Π²Π° ΠΈΠΌΠ΅Ρ‚ΠΎ ΠΈ фамилията Π½Π° потрСбитСля Π½Π° VKontakte ΠΎΡ‚ ID. ВСроятно няма Π΄Π° Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅ VKontakte Π² тСстовСтС, Ρ‚ΠΎΠ²Π° Π΅ странно. Но трябва Π΄Π° тСстватС функционалността, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ стС Π½Π°ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ Ρ‚ΠΎΠ·ΠΈ клас, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΉΠΊΠΈ Mockito, mok Π³ΠΎ, ΠΈΠΌΠΈΡ‚ΠΈΡ€Π°Ρ‰ Π³ΠΎ.

Π©Π΅ ΠΊΠ°ΠΆΠ΅Ρ‚Π΅, Ρ‡Π΅ ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π΄ΠΎΠΉΠ΄Π΅ заявка Π΄ΠΎ Ρ‚ΠΎΠ·ΠΈ клас с ID Ρ‚Π°ΠΊΡŠΠ² ΠΈ Ρ‚Π°ΠΊΡŠΠ², тя Π²Ρ€ΡŠΡ‰Π° някакво Ρ„Π°ΠΌΠΈΠ»Π½ΠΎ ΠΈΠΌΠ΅, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Vasya Pupkin. И Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ. ВоСст Ρ‰Π΅ тСстватС цялата функционалност Π·Π° mok one class. Много яко Π½Π΅Ρ‰ΠΎ.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Π’Ρ€ΡŠΠ·ΠΊΠ° ΠΎΡ‚ слайд

Π¨Π°Π±Π»ΠΎΠ½ΠΈ Π·Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ€Π°Π½Π΅. Какво Π΅? Π’ΠΎΠ²Π° са шаблони Π·Π° Ρ€Π΅ΡˆΠ°Π²Π°Π½Π΅ Π½Π° Ρ‚ΠΈΠΏΠΈΡ‡Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‚ Π² Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π°. Π’ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°Ρ‚Π° чСсто Π²ΡŠΠ·Π½ΠΈΠΊΠ²Π°Ρ‚ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ‡Π½ΠΈ ΠΈΠ»ΠΈ ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ Π±ΠΈ Π±ΠΈΠ»ΠΎ чудСсно Π΄Π° сС Ρ€Π΅ΡˆΠ°Ρ‚ някак Π΄ΠΎΠ±Ρ€Π΅. Π—Π°Ρ‚ΠΎΠ²Π° Ρ…ΠΎΡ€Π°Ρ‚Π° излязоха с Π½Π°ΠΉ-Π΄ΠΎΠ±Ρ€ΠΈ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΈ, ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈ шаблони Π·Π° Ρ‚ΠΎΠ²Π° ΠΊΠ°ΠΊ Π΄Π° Ρ€Π΅ΡˆΠ°Ρ‚ Ρ‚Π΅Π·ΠΈ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈ.

Има сайт с Π½Π°ΠΉ-популярнитС ΠΌΠΎΠ΄Π΅Π»ΠΈ - refactoring.guru, ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅, Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ ΠΊΠ°ΠΊΠ²ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΈΠΌΠ°, Π΄Π° ΠΏΡ€ΠΎΡ‡Π΅Ρ‚Π΅Ρ‚Π΅ ΠΊΡƒΠΏ тСория. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ Π΅, Ρ‡Π΅ Π΅ практичСски Π±Π΅Π·ΠΏΠΎΠ»Π΅Π·Π΅Π½. Π’ΡΡŠΡ‰Π½ΠΎΡΡ‚ ΠΌΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ Π±Π΅Π· ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Π½Π΅ са особСно ΠΏΠΎΠ»Π΅Π·Π½ΠΈ.

Π©Π΅ Ρ‡ΡƒΠ΅Ρ‚Π΅ Π·Π° някои ΠΌΠΎΠ΄Π΅Π»ΠΈ ΠΊΠ°Ρ‚ΠΎ Singletone ΠΈΠ»ΠΈ Builder. Кой Ρ‡Ρƒ Ρ‚Π΅Π·ΠΈ Π΄ΡƒΠΌΠΈ? Много Ρ…ΠΎΡ€Π°. Има Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π° прости ΠΌΠΎΠ΄Π΅Π»ΠΈ, ΠΊΠΎΠΈΡ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚Π΅ сами. Но ΠΏΠΎΠ²Π΅Ρ‡Π΅Ρ‚ΠΎ ΠΌΠΎΠ΄Π΅Π»ΠΈ: стратСгия, Ρ„Π°Π±Ρ€ΠΈΠΊΠ°, фасада - Π½Π΅ Π΅ ясно къдС Π΄Π° Π³ΠΈ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚Π΅.

И Π΄ΠΎΠΊΠ°Ρ‚ΠΎ Π½Π΅ Π²ΠΈΠ΄ΠΈΡ‚Π΅ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ° Π² ΠΊΠΎΠ΄Π° Π½Π° Π΄Ρ€ΡƒΠ³ Ρ‡ΠΎΠ²Π΅ΠΊ място, към ΠΊΠΎΠ΅Ρ‚ΠΎ сС ΠΏΡ€ΠΈΠ»Π°Π³Π° Ρ‚ΠΎΠ·ΠΈ ΠΌΠΎΠ΄Π΅Π», няма Π΄Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° Π³ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠΈΡ‚Π΅ сами. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°Ρ‚Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π²Π°ΠΆΠ½Π° с ΠΌΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅. И самото Ρ‡Π΅Ρ‚Π΅Π½Π΅ Π·Π° тях Π½Π° refactoring.guru Π½Π΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΠΎ, Π½ΠΎ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΎ си заслуТава.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Π—Π°Ρ‰ΠΎ са Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ? Π”Π° ΠΏΡ€ΠΈΠ΅ΠΌΠ΅ΠΌ, Ρ‡Π΅ ΠΈΠΌΠ°Ρ‚Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ потрСбитСлски клас. Има ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ ΠΈ ΠΈΠΌΠ΅. ВсСки ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» трябва Π΄Π° ΠΈΠΌΠ° ΠΊΠ°ΠΊΡ‚ΠΎ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€, Ρ‚Π°ΠΊΠ° ΠΈ ΠΈΠΌΠ΅. Π“ΠΎΡ€Π΅ вляво Π΅ класната стая.

Какви са Π½Π°Ρ‡ΠΈΠ½ΠΈΡ‚Π΅ Π·Π° ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»? Π’Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΈΡ‚Π΅ са Π΄Π²Π° - ΠΈΠ»ΠΈ конструктор, ΠΈΠ»ΠΈ сСтСр. Какви са Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ†ΠΈΡ‚Π΅ Π½Π° Π΄Π²Π°Ρ‚Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π°?

ΠšΠΎΠ½ΡΡ‚Ρ€ΡƒΠΊΡ‚ΠΎΡ€. Π½ΠΎΠ² ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» (7, "Bond"), Π΄ΠΎΠ±Ρ€Π΅. Π‘Π΅Π³Π° Π΄Π° ΠΊΠ°ΠΆΠ΅ΠΌ, Ρ‡Π΅ нямамС потрСбитСлски клас, Π° някакъв Π΄Ρ€ΡƒΠ³, със сСдСм числови ΠΏΠΎΠ»Π΅Ρ‚Π°. Π©Π΅ ΠΈΠΌΠ°Ρ‚Π΅ конструктор, ΡΡŠΠ΄ΡŠΡ€ΠΆΠ°Ρ‰ сСдСм послСдоватСлни числа. НС Π΅ ясно ΠΊΠ°ΠΊΠ²ΠΈ са Ρ‚Π΅Π·ΠΈ Π½ΠΎΠΌΠ΅Ρ€Π° ΠΈ ΠΊΠΎΠΉ ΠΎΡ‚ тях Π½Π° ΠΊΠΎΠΉ ΠΈΠΌΠΎΡ‚ Π΅. Π”ΠΈΠ·Π°ΠΉΠ½Π΅Ρ€ΡŠΡ‚ Π½Π΅ Π΅ страхотСн.

Вторият Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ Π΅ сСтСр. ΠŸΠΈΡˆΠ΅Ρ‚Π΅ ясно: setId(7), setName(β€œBond”). Π Π°Π·Π±ΠΈΡ€Π°Ρ‚Π΅ ΠΊΠΎΠ΅ свойство към ΠΊΠΎΠ΅ ΠΏΠΎΠ»Π΅ ΠΏΡ€ΠΈΠ½Π°Π΄Π»Π΅ΠΆΠΈ. Но ΡΠ΅Ρ‚Π΅Ρ€ΡŠΡ‚ ΠΈΠΌΠ° ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ. ΠŸΡŠΡ€Π²ΠΎ, ΠΌΠΎΠΆΠ΅ Π΄Π° Π·Π°Π±Ρ€Π°Π²ΠΈΡ‚Π΅ Π΄Π° присвоитС Π½Π΅Ρ‰ΠΎ, ΠΈ Π²Ρ‚ΠΎΡ€ΠΎ, Π²Π°ΡˆΠΈΡΡ‚ ΠΎΠ±Π΅ΠΊΡ‚ сС ΠΎΠΊΠ°Π·Π²Π° ΠΏΡ€ΠΎΠΌΠ΅Π½Π»ΠΈΠ². Π’ΠΎΠ²Π° Π½Π΅ Π΅ бСзопасно Π·Π° нишки ΠΈ Π»Π΅ΠΊΠΎ намалява чСтливостта Π½Π° ΠΊΠΎΠ΄Π°. Π•Ρ‚ΠΎ Π·Π°Ρ‰ΠΎ Ρ…ΠΎΡ€Π°Ρ‚Π° излязоха с Π³ΠΎΡ‚ΠΈΠ½ ΠΌΠΎΠ΄Π΅Π» - Builder.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Π—Π° ΠΊΠ°ΠΊΠ²ΠΎ сС отнася? НСка сС ΠΎΠΏΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° ΠΊΠΎΠΌΠ±ΠΈΠ½ΠΈΡ€Π°ΠΌΠ΅ прСдимствата Π½Π° Π΄Π²Π°Ρ‚Π° ΠΏΠΎΠ΄Ρ…ΠΎΠ΄Π° - сСтСр ΠΈ конструктор - Π² Π΅Π΄Π½ΠΎ. БъздавамС ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ ΠΎΠ±Π΅ΠΊΡ‚, Builder, ΠΊΠΎΠΉΡ‚ΠΎ ΡΡŠΡ‰ΠΎ Ρ‰Π΅ ΠΈΠΌΠ° ΠΏΠΎΠ»Π΅Ρ‚Π° Id ΠΈ Name, ΠΊΠΎΠΉΡ‚ΠΎ сам Ρ‰Π΅ бъдС ΠΈΠ·Π³Ρ€Π°Π΄Π΅Π½ въз основа Π½Π° сСтСра ΠΈ ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ ΠΈΠΌΠ° ΠΌΠ΅Ρ‚ΠΎΠ΄ Build, ΠΊΠΎΠΉΡ‚ΠΎ Π²ΠΈ Π²Ρ€ΡŠΡ‰Π° Π½ΠΎΠ² ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» с всички ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΈ. ΠŸΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΌΠ΅ Π½Π΅ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ ΠΎΠ±Π΅ΠΊΡ‚ ΠΈ сСтСр. Π“ΠΎΡ‚ΠΈΠ½ΠΎ!

Какви са ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΈΡ‚Π΅? Π’ΡƒΠΊ ΠΈΠΌΠ°ΠΌΠ΅ класичСския Builder. ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡŠΡ‚ Π΅, Ρ‡Π΅ всС ΠΎΡ‰Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π·Π°Π±Ρ€Π°Π²ΠΈΠΌ Π΄Π° ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΠΌ Π² някоС ΠΏΠΎΠ»Π΅. И Π°ΠΊΠΎ смС Π·Π°Π±Ρ€Π°Π²ΠΈΠ»ΠΈ Π΄Π° посСтим ID, Π² Ρ‚ΠΎΠ·ΠΈ случай Π² Builder Ρ‚ΠΎΠΉ сС ΠΈΠ½ΠΈΡ†ΠΈΠ°Π»ΠΈΠ·ΠΈΡ€Π° Π½Π° Π½ΡƒΠ»Π°, Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ Ρ‚ΠΈΠΏΡŠΡ‚ int Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½ΡƒΠ»ΠΈΡ€Π°. И Π°ΠΊΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΠΌ Π˜ΠΌΠ΅Ρ‚ΠΎ β€œBond” ΠΈ Π·Π°Π±Ρ€Π°Π²ΠΈΠΌ Π΄Π° посСтим ID офиса, Ρ‰Π΅ ΠΈΠΌΠ°ΠΌΠ΅ Π½ΠΎΠ² ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» с id β€œ0” ΠΈ ΠΈΠΌΠ΅ β€œBond”. НС Π΅ Π³ΠΎΡ‚ΠΈΠ½ΠΎ.

НСка сС ΠΎΠΏΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° сС ΠΏΡ€Π΅Π±ΠΎΡ€ΠΈΠΌ с Ρ‚ΠΎΠ²Π°. Π’ Builder Ρ‰Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΠΌ int Π½Π° int, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΄Π° Π΅ nullable. Π‘Π΅Π³Π° всичко Π΅ супСр.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Ако сС ΠΎΠΏΠΈΡ‚Π°ΠΌΠ΅ Π΄Π° създадСм ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π» с ΠΈΠΌΠ΅Ρ‚ΠΎ β€žBondβ€œ, забравяйки Π΄Π° поставим нСговия ID, Ρ‰Π΅ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΠΌ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ с Π½ΡƒΠ»Π΅Π² ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π», Ρ‚ΡŠΠΉ ΠΊΠ°Ρ‚ΠΎ ID Π½Π΅ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Π½ΡƒΠ»ΠΈΡ€Π°, Π° Builder ΠΈΠΌΠ° Π½ΡƒΠ»Π΅Π²ΠΎ, ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎ ΠΈΠ·ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ Π·Π° ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π».

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Но всС ΠΎΡ‰Π΅ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π·Π°Π±Ρ€Π°Π²ΠΈΠΌ Π΄Π° поставим ΠΈΠΌΠ΅, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π·Π°Π΄Π°Π²Π°ΠΌΠ΅ replay Π½Π° ΠΎΠ±Π΅ΠΊΡ‚ Π½Π° Π½ΡƒΠ»Π°. Π‘Π΅Π³Π°, ΠΊΠΎΠ³Π°Ρ‚ΠΎ ΠΈΠ·Π³Ρ€Π°ΠΆΠ΄Π°ΠΌΠ΅ нашия ΠΎΠ±Π΅ΠΊΡ‚ ΠΎΡ‚ Builder, Ρ‚ΠΎΠΉ провСрява Π΄Π°Π»ΠΈ ΠΏΠΎΠ»Π΅Ρ‚ΠΎ Π½Π΅ Π΅ nullable. И Ρ‚ΠΎΠ²Π° Π½Π΅ Π΅ всичко.

НСка Ρ€Π°Π·Π³Π»Π΅Π΄Π°ΠΌΠ΅ послСдния ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π’ Ρ‚ΠΎΠ·ΠΈ случай, Π°ΠΊΠΎ ΠΏΠΎ някакъв Π½Π°Ρ‡ΠΈΠ½ поставим null във Π²Ρ€Π΅ΠΌΠ΅Ρ‚ΠΎ Π·Π° изпълнСниС Π½Π° ID, Π±ΠΈ Π±ΠΈΠ»ΠΎ чудСсно Π²Π΅Π΄Π½Π°Π³Π° Π΄Π° Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ, Ρ‡Π΅ стС Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΠ»ΠΈ ΠΈ Π½Π΅ Π΅ Π³ΠΎΡ‚ΠΈΠ½ΠΎ, Ρ‡Π΅ ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠ° сСга.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Врябва Π΄Π° Ρ…Π²ΡŠΡ€Π»ΠΈΡ‚Π΅ Π³Ρ€Π΅ΡˆΠΊΠ° Π½Π΅ Π² ΠΌΠΎΠΌΠ΅Π½Ρ‚Π° Π½Π° създаванС Π½Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π», Π° ΠΊΠΎΠ³Π°Ρ‚ΠΎ Π·Π°Π΄Π°Π΄Π΅Ρ‚Π΅ null Π½Π° ID. Π‘Π»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»Π½ΠΎ Π² Builder Ρ‰Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈΠΌ сСтСра Integer Π½Π° int ΠΈ Ρ‚ΠΎΠΉ Π²Π΅Π΄Π½Π°Π³Π° Ρ‰Π΅ сС закълнС, Ρ‡Π΅ са ΠΈΠ·Ρ…Π²ΡŠΡ€Π»ΠΈΠ»ΠΈ null.

Накратко, какъв Π΅ ΡΠΌΠΈΡΡŠΠ»ΡŠΡ‚? Има прост ΠΌΠΎΠ΄Π΅Π» Π½Π° Builder, Π½ΠΎ Π΄ΠΎΡ€ΠΈ ΠΈ Π½Π΅Π³ΠΎΠ²Π°Ρ‚Π° рСализация ΠΈΠΌΠ° някои Ρ‚ΡŠΠ½ΠΊΠΎΡΡ‚ΠΈ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΡ‚ΠΈΠ½ΠΎ Π΄Π° Ρ€Π°Π·Π³Π»Π΅Π΄Π°Ρ‚Π΅ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° шаблони. ВсСки ΠΌΠΎΠ΄Π΅Π» ΠΈΠΌΠ° дСсСтки Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Всичко Ρ‚ΠΎΠ²Π° Π΅ ΠΌΠ½ΠΎΠ³ΠΎ интСрСсно.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Как Π΄Π° напишСм Builder Π² производствСн ΠΊΠΎΠ΄? Π•Ρ‚ΠΎ Π³ΠΎ нашия ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π». ΠŸΡ€ΠΈΠΊΠ°Ρ‡Π²Π°ΠΌΠ΅ ротация Π½Π° Builder ΠΎΡ‚ Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°Ρ‚Π° Π½Π° Lombok към Π½Π΅Π³ΠΎ ΠΈ Ρ‚ΠΎΠΉ сам Π³Π΅Π½Π΅Ρ€ΠΈΡ€Π° Builder Π·Π° нас. ВоСст, Π½ΠΈΠ΅ Π½Π΅ пишСм никакъв ΠΊΠΎΠ΄, Π½ΠΎ Java Π²Π΅Ρ‡Π΅ смята, Ρ‡Π΅ Ρ‚ΠΎΠ·ΠΈ клас ΠΈΠΌΠ° Builder ΠΈ ΠΌΠΎΠΆΠ΅ΠΌ Π΄Π° Π³ΠΎ Π½Π°Ρ€Π΅Ρ‡Π΅ΠΌ Ρ‚Π°ΠΊΠ°.

Π’Π΅Ρ‡Π΅ ΠΊΠ°Π·Π°Ρ…, Ρ‡Π΅ Java ΠΈΠΌΠ° Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π·Π° ΠΏΠΎΡ‡Ρ‚ΠΈ всичко, Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»Π½ΠΎ Lombok, страхотна Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠ°, която Π²ΠΈ позволява Π΄Π° ΠΈΠ·Π±Π΅Π³Π½Π΅Ρ‚Π΅ писанСто Π½Π° шаблон. Π‘Ρ‚Ρ€ΠΎΠΈΡ‚Π΅Π», Π’Π—Π•ΠœΠ˜.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

ΠŸΠ°Ρ‚Π΅Ρ€Π½ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π±ΡŠΠ΄Π°Ρ‚ Π°Ρ€Ρ…ΠΈΡ‚Π΅ΠΊΡ‚ΡƒΡ€Π½ΠΈ – ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ Π½Π΅ само с Π΅Π΄ΠΈΠ½ клас, Π½ΠΎ ΠΈ със систСмата ΠΊΠ°Ρ‚ΠΎ цяло. Има Ρ‚Π°ΠΊΡŠΠ² страхотСн ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π² систСмния Π΄ΠΈΠ·Π°ΠΉΠ½: ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏ Π½Π° Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½Π°Ρ‚Π° отговорност. ΠΊΠ°ΠΊΠ²ΠΎ Π³ΠΎΠ²ΠΎΡ€ΠΈ Ρ‚ΠΎΠΉ Π€Π°ΠΊΡ‚ΡŠΡ‚, Ρ‡Π΅ всСки клас трябва Π΄Π° отговаря Π·Π° част ΠΎΡ‚ собствСната си функционалност. Π’ Ρ‚ΠΎΠ·ΠΈ случай ΠΈΠΌΠ°ΠΌΠ΅ ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»Π΅Ρ€, ΠΊΠΎΠΉΡ‚ΠΎ ΠΊΠΎΠΌΡƒΠ½ΠΈΠΊΠΈΡ€Π° с ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ, JSON ΠΎΠ±Π΅ΠΊΡ‚ΠΈ. Има Facade, ΠΊΠΎΠΉΡ‚ΠΎ ΠΏΡ€Π΅ΠΎΠ±Ρ€Π°Π·ΡƒΠ²Π° JSON ΠΎΠ±Π΅ΠΊΡ‚ΠΈ Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ, с ΠΊΠΎΠΈΡ‚ΠΎ Java ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ слСд Ρ‚ΠΎΠ²Π° Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ. Има услуга, която ΠΈΠΌΠ° слоТна Π»ΠΎΠ³ΠΈΠΊΠ°, която Ρ€Π°Π±ΠΎΡ‚ΠΈ с Ρ‚Π΅Π·ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ. Има ΠΎΠ±Π΅ΠΊΡ‚ Π·Π° Π΄ΠΎΡΡ‚ΡŠΠΏ Π΄ΠΎ Π΄Π°Π½Π½ΠΈ, ΠΊΠΎΠΉΡ‚ΠΎ поставя Ρ‚Π΅Π·ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ ΠΈ Π³ΠΈ ΠΈΠ·Π²Π»ΠΈΡ‡Π° ΠΎΡ‚ Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. А ΠΈΠΌΠ° ΠΈ самата Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ. Π‘ Π΄Ρ€ΡƒΠ³ΠΈ Π΄ΡƒΠΌΠΈ, Π½Π΅ всичко Π΅ Π² Π΅Π΄ΠΈΠ½ клас, Π½ΠΎ създавамС ΠΏΠ΅Ρ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½ΠΈ класа ΠΈ Ρ‚ΠΎΠ²Π° Π΅ Π΄Ρ€ΡƒΠ³ ΠΌΠΎΠ΄Π΅Π».

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Π‘Π»Π΅Π΄ ΠΊΠ°Ρ‚ΠΎ ΠΏΠΎΠ²Π΅Ρ‡Π΅ ΠΈΠ»ΠΈ ΠΏΠΎ-ΠΌΠ°Π»ΠΊΠΎ Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java, Π΅ страхотно Π΄Π° Π½Π°ΠΏΠΈΡˆΠ΅Ρ‚Π΅ свой собствСн ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ ΠΈΠΌΠ° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, Ρ‰Π΅ Ρ€Π°Π±ΠΎΡ‚ΠΈ с Π΄Ρ€ΡƒΠ³ΠΈ API ΠΈ Ρ‰Π΅ ΠΈΠ·Π»ΠΎΠΆΠΈ Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π½Π° REST API ΠΊΠ»ΠΈΠ΅Π½Ρ‚ΠΈ. Π’ΠΎΠ²Π° Π±ΠΈ Π±ΠΈΠ»ΠΎ чудСсно Π½Π΅Ρ‰ΠΎ Π΄Π° Π΄ΠΎΠ±Π°Π²ΠΈΡ‚Π΅ към автобиографията си, Π±ΠΈ Π±ΠΈΠ»ΠΎ Π³ΠΎΡ‚ΠΈΠ½ Π·Π°Π²ΡŠΡ€ΡˆΠ΅ΠΊ Π½Π° Π²Π°ΡˆΠ΅Ρ‚ΠΎ ΠΎΠ±Ρ€Π°Π·ΠΎΠ²Π°Π½ΠΈΠ΅. Π‘ Ρ‚ΠΎΠ²Π° ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π΄Π° ΠΎΡ‚ΠΈΠ΄Π΅Ρ‚Π΅ ΠΈ Π΄Π° си Π½Π°ΠΌΠ΅Ρ€ΠΈΡ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

Π•Ρ‚ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΠΌΠΎΠ΅Ρ‚ΠΎ ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅. ΠŸΡ€Π΅Π· Π²Ρ‚ΠΎΡ€Π°Ρ‚Π° си Π³ΠΎΠ΄ΠΈΠ½Π° написах курсова Ρ€Π°Π±ΠΎΡ‚Π° с ΠΌΠΎΠΌΡ‡Π΅Ρ‚Π°Ρ‚Π°. Π’Π΅ ΠΏΠΈΡˆΠ΅Ρ…Π° ΠΌΠΎΠ±ΠΈΠ»Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π° ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΈΡ€Π°Π½Π΅ Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ. Π’Π°ΠΌ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ ΠΌΠΎΠ³Π°Ρ‚ Π΄Π° Π²Π»ΠΈΠ·Π°Ρ‚ Ρ‡Ρ€Π΅Π· VKontakte, Π΄Π° поставят Ρ‚ΠΎΡ‡ΠΊΠΈ Π½Π° ΠΊΠ°Ρ€Ρ‚Π°Ρ‚Π°, Π΄Π° ΡΡŠΠ·Π΄Π°Π²Π°Ρ‚ ΡΡŠΠ±ΠΈΡ‚ΠΈΡ, Π΄Π° канят приятСли Π² тях, Π΄Π° Π·Π°ΠΏΠ°Π·Π²Π°Ρ‚ изобраТСния Π½Π° ΡΡŠΠ±ΠΈΡ‚ΠΈΡ ΠΈ Ρ‚.Π½.

Какво Π½Π°ΠΏΡ€Π°Π²ΠΈΡ… Π² ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°? Написах ΡΡŠΡ€Π²ΡŠΡ€Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π² Spring Boot, Π±Π΅Π· Π΄Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°ΠΌ SQL. НС Π³ΠΎ ΠΏΠΎΠ·Π½Π°Π²Π°Ρ…, ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ… JPA. Какво ΠΌΠΎΠΆΠ΅ Π΄Π° Π½Π°ΠΏΡ€Π°Π²ΠΈ? Π’Π»Π΅Π·Ρ‚Π΅ във VK Ρ‡Ρ€Π΅Π· OAuth-2. Π’Π·Π΅ΠΌΠ΅Ρ‚Π΅ Ρ‚ΠΎΠΊΠ΅Π½Π° Π½Π° потрСбитСля, ΠΎΡ‚ΠΈΠ΄Π΅Ρ‚Π΅ във VK с Π½Π΅Π³ΠΎ, ΠΏΡ€ΠΎΠ²Π΅Ρ€Π΅Ρ‚Π΅ Π΄Π°Π»ΠΈ Π΅ истински ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π». ΠŸΠΎΠ»ΡƒΡ‡Π°Π²Π°ΠΉΡ‚Π΅ информация Π·Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈΡ‚Π΅ Ρ‡Ρ€Π΅Π· VKontakte. Π’ΠΎΠΉ успя Π΄Π° Π·Π°ΠΏΠ°Π·ΠΈ информация Π² Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ, ΡΡŠΡ‰ΠΎ Ρ‡Ρ€Π΅Π· JPA. Π£ΠΌΠ΅Π»ΠΎ Π·Π°ΠΏΠ°Π·Π²Π°ΠΉΡ‚Π΅ снимки ΠΈ Π΄Ρ€ΡƒΠ³ΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Π΅ Π² ΠΏΠ°ΠΌΠ΅Ρ‚Ρ‚Π° Π½Π° ΠΊΠΎΠΌΠΏΡŽΡ‚ΡŠΡ€Π° ΠΈ Π·Π°ΠΏΠ°Π·Π²Π°ΠΉΡ‚Π΅ Π²Ρ€ΡŠΠ·ΠΊΠΈ към тях Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ. По Ρ‚ΠΎΠ²Π° Π²Ρ€Π΅ΠΌΠ΅ Π½Π΅ Π·Π½Π°Π΅Ρ…, Ρ‡Π΅ ΠΈΠΌΠ° CLOB ΠΎΠ±Π΅ΠΊΡ‚ΠΈ Π² Π±Π°Π·Π°Ρ‚Π° Π΄Π°Π½Π½ΠΈ, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ… ΠΏΠΎ Ρ‚ΠΎΠ·ΠΈ Π½Π°Ρ‡ΠΈΠ½. ИмашС REST API Π·Π° ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΈΡ‚Π΅Π»ΠΈ, клиСнтски прилоТСния. И имашС Π΅Π΄ΠΈΠ½ΠΈΡ‡Π½ΠΈ тСстовС Π·Π° основна функционалност.

[…] Малък ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π·Π° ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎΡ‚ΠΎ ΠΌΠΈ ΠΈΠ·ΡƒΡ‡Π°Π²Π°Π½Π΅ Π½Π° Java. ΠŸΡ€Π΅Π· ΠΏΡŠΡ€Π²Π°Ρ‚Π° ΠΌΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° Π² унивСрситСта ΠΌΠ΅ Π½Π°ΡƒΡ‡ΠΈΡ…Π° C# ΠΈ ΠΌΠΈ Π΄Π°Π΄Π΅Ρ…Π° Ρ€Π°Π·Π±ΠΈΡ€Π°Π½Π΅ Π·Π° ООП ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΈΡ€Π°Π½Π΅ - ΠΊΠ°ΠΊΠ²ΠΎ прСдставляват класовСтС, интСрфСйситС, абстракцията ΠΈ Π·Π°Ρ‰ΠΎ са Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ. Много ΠΌΠΈ ΠΏΠΎΠΌΠΎΠ³Π½Π°. Π‘Π΅Π· Ρ‚ΠΎΠ²Π° ΠΈΠ·ΡƒΡ‡Π°Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° Java Π΅ доста Ρ‚Ρ€ΡƒΠ΄Π½ΠΎ, Π½Π΅ Π΅ ясно Π·Π°Ρ‰ΠΎ са Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΈ класовС.

Π—Π°Ρ‰ΠΎ Π΄Π° Π½Π°ΡƒΡ‡ΠΈΡ‚Π΅ Java ΠΈ ΠΊΠ°ΠΊ Π΄Π° Π³ΠΎ Π½Π°ΠΏΡ€Π°Π²ΠΈΡ‚Π΅ Π΅Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎ. Π”ΠΎΠΊΠ»Π°Π΄ Π½Π° Yandex

ΠŸΡ€Π΅Π· Π²Ρ‚ΠΎΡ€Π°Ρ‚Π° ΠΌΠΈ Π³ΠΎΠ΄ΠΈΠ½Π° Π² унивСрситСта Ρ‚Π΅ ΠΎΡ‚Π½ΠΎΠ²ΠΎ ΠΏΡ€Π΅ΠΏΠΎΠ΄Π°Π²Π°Ρ…Π° Java ядро, Π½ΠΎ Π°Π· Π½Π΅ спрях Π΄ΠΎΡ‚ΡƒΠΊ, ΠΎΡ‚ΠΈΠ΄ΠΎΡ… сам Π΄Π° ΡƒΡ‡Π° Spring ΠΈ написах курсова Ρ€Π°Π±ΠΎΡ‚Π°, моя ΠΏΡ€ΠΎΠ΅ΠΊΡ‚, ΠΊΠΎΠΉΡ‚ΠΎ спомСнах ΠΏΠΎ-Π³ΠΎΡ€Π΅. И с всичко Ρ‚ΠΎΠ²Π° ΠΎΡ‚ΠΈΠ΄ΠΎΡ… Π½Π° стаТ Π² Yandex, ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Ρ… ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŽ ΠΈ влязох Π² Yandex.Market. Π’Π°ΠΌ написах Π±Π΅ΠΊΠ΅Π½Π΄Π° Π·Π° Beru, Ρ‚ΠΎΠ²Π° Π΅ Π½Π°ΡˆΠΈΡΡ‚ ΠΏΠ°Π·Π°Ρ€ ΠΈ Π·Π° самия Yandex.Market.

Π‘Π»Π΅Π΄ Ρ‚ΠΎΠ²Π°, ΠΏΡ€Π΅Π΄ΠΈ ΡˆΠ΅ΡΡ‚ мСсСца, сС ΠΏΡ€Π΅Ρ…Π²ΡŠΡ€Π»ΠΈΡ… Π² Π΄Ρ€ΡƒΠ³ ΠΎΡ‚Π±ΠΎΡ€ Π½Π° ΡΡŠΡ‰ΠΈΡ ΠΏΠ°Π·Π°Ρ€. ΠŸΡ€Π°Π²ΠΈΠΌ Π°Π½Π°Π»ΠΈΠ·ΠΈ Π·Π° бизнСс ΠΏΠ°Ρ€Ρ‚Π½ΡŒΠΎΡ€ΠΈ. НиС смС Π² Π°Π½Π°Π»ΠΈΡ‚ΠΈΡ‡Π½Π°Ρ‚Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ°, Ρ‚Ρ€ΠΈΠΌΠ° смС Π² Π±Π΅ΠΊΠ΅Π½Π΄Π°, Ρ‚Π°ΠΊΠ° Ρ‡Π΅ ΠΈΠΌΠ°ΠΌ ΠΌΠ½ΠΎΠ³ΠΎ голям дял ΠΎΡ‚ влияниСто Π²ΡŠΡ€Ρ…Ρƒ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π°. Π’ΡΡŠΡ‰Π½ΠΎΡΡ‚ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ интСрСсно. ВоСст Ρ€Π΅Π°Π»Π½ΠΎ прСдоставямС Π΄Π°Π½Π½ΠΈ Π·Π° ΠΏΠ°Π·Π°Ρ€Π° – ΠΊΠ°ΠΊΠ²ΠΈ са ΠΏΡ€ΠΎΠ΄Π°ΠΆΠ±ΠΈΡ‚Π΅, Π² ΠΊΠ°ΠΊΠ²ΠΈ ΠΊΠ°Ρ‚Π΅Π³ΠΎΡ€ΠΈΠΈ, Π² ΠΊΠ°ΠΊΠ²ΠΈ ΠΌΠΎΠ΄Π΅Π»ΠΈ, Π·Π° бизнСс ΠΏΠ°Ρ€Ρ‚Π½ΡŒΠΎΡ€ΠΈ, Π³ΠΎΠ»Π΅ΠΌΠΈ извСстни ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. И Π½ΠΈΠ΅ смС само Ρ‚Ρ€ΠΈΠΌΠ°, пишСм Ρ‚ΠΎΠ·ΠΈ ΠΊΠΎΠ΄ ΠΈ Π΅ ΠΌΠ½ΠΎΠ³ΠΎ Π³ΠΎΡ‚ΠΈΠ½.

Благодаря Ρ‚ΠΈ! ПолСзни Π²Ρ€ΡŠΠ·ΠΊΠΈ:
- β€žJava 8. Π ΡŠΠΊΠΎΠ²ΠΎΠ΄ΡΡ‚Π²ΠΎ Π·Π° Π½Π°Ρ‡ΠΈΠ½Π°Π΅Ρ‰ΠΈβ€œ.
- Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈ Π½Π° Π΄Π°Π½Π½ΠΈ.
- SQLZOO.
- Нормализация Π½Π° Π±Π°Π·Π° Π΄Π°Π½Π½ΠΈ.
- ДизайнСрски ΠΌΠΎΠ΄Π΅Π»ΠΈ.
- МодСли на дизайн.
- Чист ΠΊΠΎΠ΄.
- Π•Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½Π° Java.

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: www.habr.com

ДобавянС Π½Π° Π½ΠΎΠ² ΠΊΠΎΠΌΠ΅Π½Ρ‚Π°Ρ€