á፠á¨ááá˝ áłáá ááááá˝ á¨ááá¨á áĽáá´áľ áá? ááá á፠áááá á¨ááááŞáŤ ááá ááá á áá áľ? ááŤá á¨áŁáś áĽá á ááá˝ ááááá˝ á¨ááŽááŤá á˝ááłáá˝á á áá°áá á áááá á¨áá¨áłááľá áĽá
áľ áĽááá áᢠá á፠ááľáĽ á¨áááľ áŽáľ á ááá á áĽá á ááá˝ ááááá˝ á áá°á ááŤá¨á áŤááá ááŠááľ áĽáááááᢠááŤáá áá´ááŤáŞá ááá°ááľ á°áłáłááá˝ á áá°á¨áá áľáĽá°áŁ áá áá
á ááᣠá áá á
- á°áá áááá˝áá áľá ááť áĽáŁáááᢠáĽá ᨠYandex.Market ááᢠáá ᣠáĽá áᏠááá ááŤá ááá áĽá áĽáá´áľ áá¤áłá á áá ááááľ ááľá¨á áĽááłááĽá áĽáááááłááᢠááááŤáłá áĽáŤá áá áá áá˝ááᥠááááľáá áá á áłáŞá á¨áááá¨áᣠáĽá á¨áĽá á ááłáľ áááľ áŤáá á ááŤáŤ ááᢠá áá°áá? áĽáááłá áá áĽá áŤá´ ááŤá á á áᥠáŤá áááľ á¨á ááľ áááľ á°áŠá á ááľ áá, áľááá áá áĽáá°áááľá áĽá áá á áááľ ááĽááśá˝ áĽááłá á ááá á áľáłááłáá.
á¨á ááľ áááľ á ááľ á Yandex.Market ááľáĽ internship á áááťááᢠáá¤áŠ áááŁáá á ááá áťááᣠááá áŤá áŤáąáŁ ááááŁáľ á°á áááá áľá˘ á áá áĽá፠ááľáŤá´á áĽááĽáááᣠá á°áᨠáĄáľá ááľáĽá˘ á Yandex.Market ááááľ á ááŽá˝ á¨áľááłá ááľá¨á áĽáááĽáŤáá.
áĽáááá. ááŤá á¨á°ááŁáŤá áĽááł ááá á°áá? áĽáááłá áá á፠á áŁá áłáá á¨ááŽááŤá á ááŁáĽ ááá ááᢠá áŁá áľáá
áá
á á¨á°áĽ á ááá˘
áááłáᣠáĽáá°áá áŤá TIOBE á˘áá´ááľ á áᣠá¨ááŽááŤá á ááŁáĽ ááááá˝ áłááááľ áłááááľ áŤáá áá¨á á ááᣠáĽá á፠áĽá፠á áá°á á°á¨á áá áľáááá˝á˘ á á°á¨ááŞáᣠá áľáŤ áŚáłáá˝ ááᣠá áĽááá áááľ á¨áľáŤ áá°áŚá˝ áľá ááŤáŁ áááľáᣠá á፠á ááłá áᣠááááá áľáŤ ááááľ áĽáá°áá˝á áłáľá°áááá á˘
áá á á¨á°áĄ á áŁá áľáá áľááá ááááá áŤáá áĽáŤá á á ááłááľ á¨Stack Overflow ááá ááá˝ áŁá˘áŤáá˝ áá áááľ áłáááá ᢠáĽáá˛áá á á፠ááľáĽ á ááááĄá áľ áá á JVM áá áŽáľ áĽá¨áá áá ᣠáľáááá á ááá áá° áŽáľáá ᣠáľáŤá áĽá ááá˝ JVM á¨áá áá ááááá˝á ááá¨á áá˝ááá˘
á¨áááŽá° ááá á ááá áľá á፠áá áĽáŠ ááá á á? á¨á°ááŤáŠ á¨ááŽááŤááá ááááá˝ á áᢠá¨á°ááŤáŠ á˝ááŽá˝á áááłá, áŤáá áŤááá. áááłá, Python ááŁá á˝ááŽá˝á ááááłáľ á¨á ááľ ááľáá áľááŞááśá˝á áááťá á áŁá áĽáŠ áá.
á áááŤá ááᣠá¨áááááá áŽáľ áá á áá áááŁá á áá˝ááᢠáááłá ááŞáá˝ á áá Yandex áá á áᣠááŞáá˝ áŽáłá¸á á áááľ áá á¨á°áááᢠááá? á፠áĽáá˛á áŤá ááá á áá - ááťáť á°áĽáłá˘. áŤá á¨ááŤáľááá áááŽá˝ áŤá¸áłáᢠáá ááá á áľáááľ ááááŤá áĽá áááá áŤááá ᣠáááľá ᣠá¨áá¨áá ááŽááŤá áŤááá áĽá áĽááá˝á áááá á áááłá ᣠá¨áááŽá˝á ááá áľááľáłá˘ áĽáá˛á ááááą ááá á áľáŽá ááľáĽ á˘á ፠áĽáŠ á áá°áá. á¨áĽááľá áľáŽá á ááĽáł áááłáᣠá áá áá áá á°á¨ áľááľáłáá áŤá¸áłá áĽá ááááąá á ááŤá˝ á áááá¨áľáᢠáľááá , áľáŤáá á ááŽáá˝ááš áá á°á˝áá.
á፠áá á˝ááŽá˝á áááłá? á áááááľ ááááłáľ á á°ááá ááá á ááśáá˝ á ááá አá°áá˝ á¨á°áťá áľááá
ááŽááŤáá˝á ááááááľ ááá ááᢠá á°ááá á Yandex.Market ááľáĽ áĽá á¨ááᣠá˝áá á á፠á°á˝áá. á á ááŤáł á¨á°áá˝ ááľáĽ á¨á°á¨ááá áĄáľá á áá, á áĽáŤááłááą ááľáĽ á áľá á°áá˝. áĽá áŽáą áááá¨áľ ááá áá, áá áľá á ááłáľ ááá á¨á፠á áá áá°ááá, áĽá á á°ááłáłá áá á á˛áľ á°áá˝ ááĽá°á áá
á áŽáľ áááááŁá.
á ááľáĄ áŤáá áŽáľ á ááá áĽáá˛á°áá áĽá á áľááá áĄáľáá˝ ááľáĽ á ááá áĽáá˛áłáĽá á ááľ ááá áá á áááľ áŁá áŞáŤáľ ááá¨á áááŁá. á ááááŞáŤ á°á¨á, ááá ἠá¨áá˝á áŽáľ ááá á áá áľ, áĽá ááľáĽáľáĽ á¨áľá-á áá áááľááá˝á ááá°áá á ááá ááá á áá áľ. áááľá á¨áá°á á°á¨á áá áá፠ááá° áááťá ááá ááá á áá áľ áá áá á፠á¨áá°á á ááᢠáá á ááá áá áŤá°áŽá¨ ááá ááᢠá¨á¨áá°á á°á¨á á¨áá áĽá ááľáĽáľáĽ á ááá´áá¸áá áá°áá á á áĽáááľ ááá ááá˘
áĽáá˛áá áá፠áĽá ááááá˝ áĽá á¤á°-ááťáááľ á á, ááááŤáąá áááá ᨠ15 áááľ á áá áá. á áá áá ááľáĽ, ááťá á¨áá˝á ááá áá á áአáá á°á˝áá, áľááá ááááááľ ááá áá áĽá áśá á¤á°-ááťáááľ á á.
á áĽá á áľá°áŤá¨áľ áá᪠JA á°áŤáá˝ áá á áááľ áá°á¨áłá á˝ááłáá˝ ááá¨á áááŁá? á ááááŞáŤ á°á¨á, áá
á¨á፠áá ááá áĽáááľ áá. ááĽá á ááłááľ ááááľ á¨áĽáá ááá áááá ááᢠá¨áááĽáá á°áá᪠áŞáŞá áľááá
ááłá á á°áá áááł ááááŤáᢠáá° ááľáĽ á áááŁáᢠááĽá á¨á ááá´áá¸á áĽá á¨ááľá ááľáá˝ áá¸á. áľááá
á áááŹá˝áá˝á áááťá á áĽá ááá áἠáŽáľ ááťá ááťá á ááĽáᢠáĽá áá
á¨áá¨á ááą áá áááľáŤáľ á ááłááľ ááááľ SQL ááá ORM ááᢠáĽá áá ááááŁá á¨á áá áá áŤá.
ááľ! á፠áŽá. á ááŞáŤá áĽáá
á áááá - ááááá áŤáą ááá
á ááĽá
ᢠáľáŠá¨áľ ááľá áľ áŤááĽááľ ááá. á ááááŞáŤ ᣠá፠á á
áἠáááłáľ ááľáĽ áĽá áľáŞáśá˝á á ááĽáˇá ᣠáááľá ᣠá 2014-2015 á°áŁá°áá á°ááá ᣠá¨á፠áľááá°áá ᣠáá ááá ᣠá áĽá¨áá ᣠáĽá á áłá˛áľ áľáŞáśá˝ áĽá áĽá á áłá˛áľ á áŞá áááŽá˝ á ááľáŁá¸á ááĽá°áá ᢠáááłá, Java Stream API , lambda, ááá°. á áŁá á áŞá, áľáŠáľ, á áŞá áááŽá˝ á áááľ áŽáľ ááľáĽ áĽá
á áá á¨ááá, á áá áá áá
áľááá áááľ áĽá ááá
áŤááĽááľ. áľááá
á ááŤ-4 áááĽá¨áŞ ááľáĽ áŤáá áá°áá°áŞáŤ áá áá˝áá ááľá°á
á°ááá áľá˘ áá
á¨áĽá áĽá
áľ áá: Java-8 ááá á¨á፠á áá áĽáááŤáá.
áĽáá° Stream API, var, ááá° áááłá°ááľ áá áŤáá˝ áľáŠá¨áľ áĽáá°áŁáá. á áá-áá ááá˝ ááľáĽ áá á¨áá áĽá ááááá á áááľ ááľáĽ áĽá á áá áááá. áááľáᣠá¨áĽá¨áľ á¤áá á á¨áááľ á áŁá áááá ááᣠá á á áááᣠá áŁá á áŞá ááá ááᢠáľáŠá¨áľ ááľá áąá áĽááá á ááá.
áĽá áĽáá° á°á°áááᣠáአáááłáá˝ áĽá á¨ááłá°ááľ ááá á áááľ áááŽá˝ á áᢠáľáá˝ áŽáľ áĽáŤáľá áĽáľá¨áťá áľá¨áľ ááĽááľá á áľááá áŤááá á¨áááľá áááŽá˝á˘ áĽááá áአáááłáá˝ á áŤáľáááááľá ᣠáááááá áá áŤáľááááá? áá á áĽááá áááľ á áá áá áá áá á¨áá, á áĽááá áááľ á áááľ ááľáĽ ááĽááľá á áá áááá. á á á ááá áááŠááľáŁ á°á°ááá áĽá ááá˝ áááŽá˝ áľáŠá¨áľ ááľá áľ á ááŚáľá˘
á¨ááἠá ááááŽá˝. áŤá ááá
áŽá˝ áááľ á áá˝áá, ááá áá áľáĽáľáŚá˝, áááá áááľ áĽá ááá˝ áĽááłá áŤááá á áŁá áĽáŠ áááá. áĽáá˛áá á¨á°ááŤáŠ ááá
áŽá˝ á á°ááŁá á. áááłáᣠá á፠ááľáĽ áŤáá á°ááłáłá áááá -áááľ HashMap áĽá TreeMapá á¨áᎠáĽá áľáá áŤáá˝ á ááľá˘ á¨á°ááŤáŠ á á˛ááá˛ááľ á áá¸á, á ááľáŁá¸á á á°ááŤá¨ ááááľ á¨á°ááአáá¸á. áĽáá´áľ áĽáá°áááŤáŠ áĽá á¨áľááá ááź áĽáá°áá áá ááá
áŤáľáááááłá.
áĽááá á¨ááἠá ááááŽá˝ á ááľáĽá áĽáá´áľ áĽáá°áá አáŤáá á áŁá áĽáŠ áááá. áŤá áááľ á¨áĽááąá asymptotics ááá ááá á áá°áá - ááááľ áá áŤá á áĽáá°áá°áŤ, ááááŤá ááá áŤá á áá áĽáá°áá°áŤ, ááá áá á áááአáĽáá´áľ áĽáá°áá°áŤ - áááłá, á HashMap ááľáĽ á ááľ áŁáᲠáááľá áá.
áĽáá˛áá áááá˝ áĽá ááŤáá˝ áľáŠá¨áľ ááľá áľ á°áᢠáá. áĽááá á áááľ áŽáľ ááľáĽ á áŁá á¨á°áááą áŤááá áááŽá˝ áá¸á, ááá áá á áá áá ááá˝ ááľáĽ áłáá áá¸á. á áá áá á¨áľ ááá˝á, áľááśá˝á áĽá áĽáááľá ááŤáá˝á ááá ááťá á ááĽááľ. áĽááá áá ááá áľáá° áááŽá˝ áá¸á.
áááááá áľáá áŽáľ ᣠááľáĽáľáĽ ᣠá¤á°-áá˝áááľ á áá áá ᣠáŁááĽá ááá áŽáľ ááťá áĽáá°ááአᣠáľáááśá˝á áłáľááᥠáĽá áĽáááá˝á áááłáľ ááĽááľá á¨áŁáľ áĽáá°áá áááááŁáᢠáĽááá á áááááľ Maven áĽá Gradle áá¸á. á á ááľ ááľáá áááĽá¨áŞáá˝á áá° ááŽáááľá áĽáá˛áŤáľáᥠáŤáľá˝áááłáᢠáááľáᣠáŁá á ááľ ááľáá xml áťá áĽá á¤á°-ááťá ááľ áá° ááŽáááą á áľááŁá˘ ááἠáľáááśá˝. áĽááą á áááľ á°ááłáłá áá¸á ᣠá ááąá áá áá - Maven ááá Gradleá˘
ááŁá - á ááłááľ ááááľ á¨áľáŞáľ ááĽáĽá áľáááľ. Gitá áĽáááŤáá ááááŤáąá áłáá áľááá áĽá áĽá áááŞáŤáá˝ á áᢠááá á°á áááľ ááťáá Git á áá ááá, áĽáŠ ááá áá, áŤááą ááá á áá˝áá.
áĽá á ááľ ááááľ á¨áĽáľááľ á áŤáŁá˘á˘ IntelliJ Ideaá áĽáááŤáá. á¨áĽáľááľ áá°áąá á áŁá áŤááĽáá, á áŁá áá¨áłá, áááá á¨áŚááá áŽáľ áá˝ááááłá, á á á ááá, á áŞá áá.
á áááá˝ á¨áľáááľáĄ- SQLZOO , ááĽáŤááľáľ
SQL áľá á°áááá˝ áľáá˝á˘ á áĽáááą áĽáá
á ááľ á áľáá ááłá áá áᢠá¨ááá°áá á¨á˘áá°áááşá áá áá áá
áááľ áá áá°á áĽá á áá˛áľ á¨á°á ááá áá
á°ááá áĽá á áááľ áááľ ááľáĽ áľá SQL áĽá HTTP áĽáá°áá ááá ááá¨á˝áᣠááá á ááĽáᢠáĽá áľá SQL ááá HTTP ááá á ááá
á áá áᢠáĽá áá
á áĽáŠ áŁá˘áŤ á ááá -
áĽáá˛áá á¨ááἠááł á ááá´áá¸áá ááá á áŁá áĽáŠ ááᢠáĽááá ááá ááááľ áááá˝, á˘áá´ááśá˝, áá°á áááľ áá¸á. á áá Ꮰáá áľááá ááłá á°á¨áłáłá á˝ááá˝ á áá˘
á ááŤáŁ ᨠSQL á á°á¨ááŞáŁ áĽáá° JPA áŤá ááá ááááľ á¨ááá-á°ááá
á¨áŤááł áĽáááśá˝ á áᢠá¨á°áá°á áŽáľ á áᢠá ááááŞáŤá áá´ á ááłááľ SQL áŽáľ á á - á¨áá¨á á°á áááá˝ á¨ááłáá፠áľá ááá¨áĄ WHERE id in userIDsᢠá¨á°á áááá˝ á¨ááἠááł, á¨á á¨á´áá, ááłáááŤááťá¸á áĽá áľááťá¸á áááá.
á ááá á, á ááľá ááá á¨áá á¨áą áá° á፠ááá á¨áááá á¨á°áá°á áŤááł á á. áĽá áá á áŽáľ á áľááá á¨ááŤáľáá˝á áśáľá°áá áá´ á¨áá á áłá˝ á áᢠáá áá á¨áá á áłá˝ á á°ááá á ááľ ááľáá JPA á áá áá áá°áŤ áá˝áá. á°ááłáłá ááá áŤá°ááá - áááá ByIdIn áŤááᢠáŤá áááľ á áá´á áľá áá°á¨áľ ᨠSQL áĽáŤáá áŤáááŤá.
á áŁá á áŞá áááᢠáĽá áŤá´áŁ SQL áłááá JPAá á°á áááŠá˘ á á á ááá, áľáŠá¨áľ ááľáĄ. SQL áááá á áŁá á°áá á¨ááá áĽááľ ááᢠáĽá á á á ááá, áĽáłáľ!
á¸á°á. áĽáá° á¨áá°á áááá áŤá ááá áá á°á? áá áŤá
ááťá˝á áĽááłá áłáŤáá˝á? áŤáááááŤáľ á áá°ááᢠáá°á á áĽáŤááłááą ááá°á á¨á፠á¨ááᣠáááľ á¨áľáŤ áŚáł ááľáááśá˝ ááľáĽ á°áŤáľáˇáᢠáŤááą, á áĽáááą áľáá
áĽáľááľ ááľáĽ á¨áľá áŚáł á¨áá. á¸á°á áááľá áá? á ááááŞáŤ á°á¨á, áá
á¨áĽáá ááá áááá áá. áľááá
ááłá
áľááŞáá áĄáľ á¨á áááá áá°áá áŞáŤáá á á ááľ ááá áĽáá˛áŤááą á¨ááŤáľá˝áá á¨áľááŞáá ááŤá ááᢠáá° THID ááľáŁ áááľ áááá˝á á°áŤáᣠáĽá á áá á¨á áááá á áááŹá˝á á localhost 8080 áĽá¨á°áŤá ááᢠáááľá á ááľ áá á á¨áŽáľ ááľáá áá á áááá ááá áá á áľááľá áĽá¨á°áŤ ááᢠá áŁá á áŞá áááᢠá¨áŤáľá á¨áá ááá á¨áťáá áĽáłáľ!
áá°á á áŁá áľáá áááá áá. á¨á áááá áá°áá áŞáŤáá áĽáť á áááľáľá áĽá á¨áĽááááľ áááá áááłáᢠᨠREST API áá´áá˝á ááá áá á¨áᎠáĽá áááŽá˝á áĽáá˛áŤá°áá ááá áľáááłá. áááľá á ááłááľ áá´ á˝áá á¨Get maping ááĽáŤáŞáŤáá á áŤááááłáᢠáĽá á áá áĽááľá áá á ááá á¨áá˝ááááľ á localhost áá á ááłááľ áá´ á áááľá˘ áááľ á¨áŽáľ ááľááŽá˝ áĽá áá°áŤá. á áŞá áááŽá˝á˘
áá°á áĽáá˛á á¨ááá áá¨áŤáá˝á ááá áŤá°ááááᢠá áľáá áĽáľááľ ááľáĽ áŤá áá¨áŤ ááá ááááľ á¨áá. áŽáą ááá¨á á áá áľá˘ ááá á áá á፠á áŞá áááĽá¨áŞ á áá JUnit 5. áĽá JUnit á á á ááá áá á¨á áἠááá áľáŞáľ á ááľá°áá ááᢠáááá°á˝ ááá ááá á á, ááá á áááľ áá¨áááŤáá˝ áĽá ááá˝ áááŽá˝.
áĽá á áľá°áá á¨ááŞáś áááá á áᢠáááá°á˝ á¨áááááľ á ááłááľ á°ááŁáŤáľ áĽááłáá á áľáĽá˘ á°ááŁáŤáą áĽá áááŽá˝á áŤá¨áááá, á ááá áá á¨áá áŚáł, á ááłáááŤá áá° VKontakte ááľáĽ áááŁá, áááłá, á¨ááłáááŤá ᨠVKontakte á°á áá á¨ááááŞáŤ áĽá á¨áá¨á¨áť áľá ááá áá. ááááŁáľ VKontakteá á áá°ááá˝ ááľáĽ á áłáŤáľáąáľ ᣠ፠áĽáááł ááá ááᢠáá á°ááŁáŤáááąá ááá°á˝ áŤáľáááááłá, áľááá áá áá ááá á áá°áá, ááŞáś, áá, á áľááľááłá.
áĽáá°áá á áááľ ááłáá፠áŤáá áĽáŤá áá°áá ááá á˛áᣠá ááłááľ á¨á áŤáľ áľá ááááłá ááá áááłá áŤáľáŤ ááŞáᢠáĽá áá°áŤáᢠáááľá ááá á ááľ ááá áááá á°ááŁáŤáľ áááľáťáᢠá áŁá á áŞá áááá˘
á ááá á¨áľáááľ
á¨ááľá á áŚá˝. áááľá áá? áĽááá á áááľ ááľáĽ á¨áááą áááá°á á˝ááŽá˝á ááááłáľ á áĽááśá˝ áá¸áᢠá áĽáľááľ ááľáĽ, á°ááłáłá ááá á°ááłáłá á˝ááŽá˝ áĽááá áá áááłá, áá á á áá ááááľ á áľááá áááłáľ áĽáŠ áááá. áľááá , á°áá˝ áĽááá á á˝ááŽá˝ áĽáá´áľ áĽáá°áááą ááἠáááśá˝á, á¨á°áá°á á áĽááśá˝á á ááĄ.
á áŁá áłáá á áŚá˝ áŤáá áľá áŁá˘áŤ á á - refactoring.guru, ááŤááĄáľ áá˝áá, áá á áááľ á áŚá˝ áĽááłá ááá, á¨ááľá ááłáĽ áľáĽáľáĽ áŤááĽáĄ. á˝áአá á°ááŁá á¨ááą ááá ááᢠá áĽáááĽ, áŤá ááááľ á áŚá˝ á á°áá á áá á áá°áá.
áĽáá° áá á áśá ááá ááá á áŤá á ááłááľ á áŚá˝á áá°ááᢠáĽááá á áááľ áá á°á? áĽá á°áá˝. áĽáŤáľáá áá°áá á á¨áá˝ááľ áĽáá°áá á áááľ ááá á áŚá˝ á á. áá á áĽááááš á áŚá˝: áľááľ, ááĽáŞáŤ, ááľ áááľ - á¨áľ áĽáá°áá°áá አááá˝ á áá°áá.
áĽá á áá á°á áŽáľ ááľáĽ áá áľááá°-áĽááľ á¨á°á°áá á¨á áľá áŚáł á á°ááŁá áĽáľáŤáአáľá¨áľ áĽáŤáľá áá°áá á á áá˝ááᢠáľááá , á¨áľááá°-áĽááľ áá ááááľ á áŁá á áľááá áá. áĽá áľááĽááą á refactoring.guru áá ááá ἠáĽáť á áŁá á áá á áá°ááᣠáá á áĽááá áááľ ááľá¨á á°áᢠááá˘
á
áŚá˝ ááá áŤáľáááá? á¨á°áá°á á¨á°á áá ááá á áá
áĽáá áᢠááłáá፠áĽá áľá á ááᢠáĽáŤááłááą á°á áá áááąá ááłáá፠áĽá áľá áááŤá¸á áááŁáᢠá¨áááá á፠ááá ááá˘
á°á ááá ááááá áá ááááśá˝ á á? áááľ á ááŤáŽá˝ á á - ááᢠááá á ááá ᢠá¨áááąá áá´áá˝ ááłáśá˝ áááľáá¸á?
ááá˘á˘ á á˛áľ á°á áá (7ᣠ"áŚááľ")ᣠáĽáşá˘ á áá á¨á°á áá ááá á¨ááá áĽáá áᣠáá ááᣠá°áŁáľ á¨ááĽá ááľáŽá˝ áŤááᢠá°áŁáľ á°á¨áłáłá ááĽáŽá˝ á¨áŤá ááᢠáááááłáᢠáĽááá ááĽáŽá˝ áá áĽáá°áá áĽá á¨áľáá ááĽá¨áľ á¨áľáá áĽáá°áá ááá˝ á áá°áá. ááľá á ááŞá á áŁá áĽáŠ á áá°áá.
ááá°áá á ááŤá á ááá áá. á ááá˝ áá˝ááᥠsetId(7)ᣠsetName("Bond")ᢠá¨áľáá ááĽá¨áľ á¨á¨áľáá ááľá áĽáá°áá áááŁááłáᢠáá á ááá á˝áá á áá áľá˘ á ááááŞáŤáŁ á¨áá ááá ááá°áĽ áá¨áą áá˝ááᣠáĽá ááá°áᣠá¨áĽááľá ááá á°áááá ááááᢠáá áá á°á áááą á¨á°á á á á áá°áá áĽá á¨áŽáąá á°ááŁá˘ááľ á áľááš ááááłáᢠááá áá á°áá˝ á áŞá áĽááľ ááá á¨ááĄáľ - ááá áá˘
áá
áľá áááľá áá? á¨áááąáá á ááŤá¨áŚá˝-á áááŁáŞ áĽá ááá˘-á á ááľ áá áááŁáá áĽááááᢠáĽá á ááľ á¨á°áá°á ááá áĽáá°áŤáá ᣠááá á ᣠáĽáąá áĽáá˛á á¨ááłáá፠áĽá á¨áľá ááľáŽá˝ ááá¨áá ᣠáĽáą áŤáą á á ááá áá á áááľá¨áľ á¨áááᣠáĽá á¨ááá áááŞáŤáá˝ áá á á˛áľ á°á ááá á¨ááááľ á¨áááŁáł áá´ ááá¨ááᢠá¨ááááἠááá áĽá á ááá
áĽááááá. áĽáŠ!
á˝ááŽáš áááľá áá¸á? áĽáá áĽá ááá˛á ááá á á ááᢠá˝áአá ááá á á ááłááľ ááľá áá áá¨ááἠááá¨áłá áĽáá˝ááá. ááłáááŤáá áááĽááľ á¨á¨áłá ᣠá áá áááł á áááŁáł ááľáĽ áá° áᎠá°áááŻá ᣠááááŤáąá ᨠint ááááľ ááľá á áá°áá ᢠáĽá áľáá "áŚááľ" á¨á°áŤá áĽá ááłáá፠á˘áŽáá áááĽááľ á¨á¨áłá, ááłáá፠"0" áĽá "áŚááľ" á¨áá áľá áŤáá á á˛áľ á°á áá ááá¨áá. á°áľ á ááá.
áá áá áááááľ áĽáááá. á ááᢠááľáĽ á¨ááą áĽáá˛áá á˘ááľá áá° á˘ááľ áĽááááŁááᢠá áá ááá ááá áĽáŠ ááá˘
âáŚááľâ á¨áá áľá áŤáá á°á áá áááá á á¨áá¨áá ááłáááŤáá ááľáááĄá á¨á¨áłá áŁááłáááŤá ááľá
áľáááá áĽá ááá˘á áŁáś ᣠá á°ááá á áá ááŠááľ á ááá˘
áá á ááá áľá ááľááἠááá¨áłá áĽáá˝áááᣠáľááá
á¨ááá áááś ááŤááľá áŁáś á áľáááááᢠá ááᣠáĽáá˝áá á¨áááŁáł áľáááᣠááłá ááľá
áĽááłááá áááľáťáᢠáĽá ፠áĽáť á áá°áá.
á¨áá¨á¨áťáá ááłá áĽáááá¨áľá˘ á áá á ááŁáᣠá ááłáááŤá á¨áŠáŤ áá ááľáĽ áĽáá°ááá áŁáś áŤáľáááĽááᣠáĽááľá áĽááłá°á¨ááľ áá˛áŤáá ááá á áŁá áĽáŠ áá áĽá á áá áľá á°áľ áĽá¨á°áŠ ááá áĽáŠ á áá°ááá˘
áľá
á°áľ ááááá áŤááĽá
á°á áá á ááá áá áľ áá áłááá áá° ááłáááŤá áŁáś áľáłáááĽá ááᢠáľááá
ᣠá Builder ááľáĽ á´á°á á˘áá˛ááá áá° á˘ááľ áĽááááŁáá áĽá áá˛áŤáá áŁáś áĽáá°áŁááľ ááááá˘
áŁáአáĽá á áááľá áá? ááá á¨ááᢠááľá á áᣠááá áá á á°ááŁá አáĽááłá á ááłááľ á¨áá áááŽá˝ á ááľáŁ áľááá á¨á°ááŤáŠ á¨áľááá°-áĽááľ á á°ááŁá áá áááá¨áľ á áŁá á áŞá ááᢠáĽáŤááłááą ááľá á á°ááá á¨ááá አá á°ááŁá ááá˝ á ááľá˘ áá áá á áŁá á áľá°áłá˝ ááá˘
á áááľ áŽáľ ááľáĽ ááá áá áĽáá´áľ áĽáá˝ááá? áĽáá
á¨áĽá á°á áá ááᢠá¨áááŚá á¤á°-áá˝áááľ ááľáĽ á¨ááᢠá˝ááááŞáľ áĽááŤáááá, áĽá áĽáą áŤáą ááĽá ááá á áŤáááŤá. áŤá áááľ ááá áŽáľ á áá˝áá, áá á፠ááľááá áá
ááá ááᢠáĽááłáá áŤáľáŁá, áĽá áĽáá°áá
áĽáá ááá áŤá áĽáá˝ááá.
á፠áááá ááá áááľ ááťáá á¤á°ááá ááľ áĽááłáá á°áááŹá ááᣠáááŚáá á¨ááŽáŁ áŚááááááľá á¨ááá áááá ἠá¨ááŤáľá˝á á áŞá áááĽá¨áŞá˘ ááá˘áŁ GET
á
áŚá˝ á¨áľá-á
áá ááá áá˝áá - á¨á ááľ ááá áá áĽáť áłááá á á á ááá áľáááą áá á¨á°áŤáŤá. á áľáááľ á˛ááá ááľáĽ áĽáá°áá
áŤá áĽáŠ ááá
á á áá á áááááľ ááá
ᢠáľá áá áĽáŤá፠áá? áĽáŤááłááą ááá áá ááłááľ á¨áŤáą á°ááŁáŤáľ á°á áŤá ááá á áá áľ á¨ááá áĽáááł. á áá
á ááŁáᣠá¨á°á áááá˝áŁ JSON áááŽá˝ áá á¨áááá áááŁá áŞáŤ á ááᢠá¨JSON áááá˝á á¨á፠á áááŹá˝á áá° áá áŤá¸á áá´áá˝ á¨áááá ááľ áááľ á áᢠá¨áĽááá
áá´áá˝ áá á áĽáŽ á¨áá°áŤ ááľáĽáľáĽ ááá áŤáá á áááááľ á áᢠáĽááá
á áá´áá˝ áá° áłáłá¤á á¨ááŤá°ááá¸á áĽá á¨áá¨á ááą ááľáĽ á¨ááŤáᣠá¨áá¨á á°á°áŤá˝ááľ ááá á áᢠáĽá á¨áá¨á ááą áŤáą á áᢠá áá á ááááᣠááá á á ááľ ááá ááľáĽ á áá°ááᣠááá áá á ááľáľ á¨á°ááŤáŠ áááá˝á áĽá¨á áŤá ááᣠáĽá áá áá áľááá°-áĽááľ ááá˘
á áá´ áĽá ááá áŁáá° á፠á¨á°ááŠáŁ áłáłá¤á áŤááᣠá¨ááá˝ á¤áá ááá˝ áá á áĽáŽ á¨áá°áŤ áĽá á¨á áááá áá°áá áŞáŤáá áREST API á°áá áá˝ á¨ááŤááἠá¨áŤáľáá ááŽáááľ ááá á áŁá áĽáŠ ááᢠáá
á ááłáĽá áá á˘á¨ááŠáľ áĽáŠ ááá ááᣠááľáá
ááľá áĽáŠ áá¨á¨áť ááááᢠá áá
áá°á
áĽáŤ ááááľ áľá˝ááá
á˘
á¨á áááᏠáá°áá áŞáŤ ááłá áĽáá
á áᢠá ááá°áá ááá´áŁ á¨áááśáš áá á¨áá áá¨ááľ áťááŠá˘ ááá
áśá˝á ááááááľ á¨ááŁáá áá°áá áŞáŤ áá˝á áá á. áĽááŤ, á°á áááá˝ á VKontakte á áŠá áááŁáľ, á áŤááłá áá ááĽáŚá˝á ááľáááĽ, ááľá°áśá˝á ááá á, áá°ááťá¸áá áá° áĽáááą ááá á, á¨ááľá°áśá˝á ááľáá˝ ááľáááĽ, ááá°.
á ááŽáááą ááľáĽ áá á á°á¨áá? SQL áłáá áá á¨á áááá áá°áá áŞáŤá á áľááŞáá áĄáľ á˝áááᢠá ááááá áá áᣠJPA á°á á ááŤááᢠáá ááŤá°áá áá˝áá? á OAuth-2 á áŠá áá° VK áááĄá˘ á¨á°á áááá ááľáá°áŤ ááá°áą ᣠá¨áĽáą áá áá° VK ááṠᣠáĽáą áĽááá°á á°á áá áááá áŤá¨áááĄá˘ á VKontakte á áŠá áľáá°á áááá˝ áá¨á ááá áᢠáá¨áá á áłáłá¤á ááľáĽ ááľááἠá˝ááᣠáĽáá˛áá á JPA á áŠáᢠáľááá˝á áĽá ááá˝ áááá˝á á áŽáááŠá°á áá á°á¨ áľááľáł ááľáĽ á áĽááľ áŤáľááᥠáĽá áá° áĽááą á¨áááľáąáľá á áá¨á ááľ ááľáĽ áŤáľáááĄá˘ á áá áá á áá¨á ááą ááľáĽ ᨠCLOB áĽááá˝ áĽááłá á ááá á áá á, áľááá áĽá á áá ááááľ á á°á¨ááŠáľ. áá°á áááá˝áŁ á¨á°áá á áá°áá áŞáŤáá˝ REST API áá áᢠáĽá ááá á¨áłá á°ááŁáŤáľ á¨áŠááľ áá¨áŤáá˝ áá áŠ.
[âŚ] á¨ááŤá áľáŹáłá á¨ááá áľáá˝ ááłáᢠá áŠáá¨ááľá˛ á¨ááááŞáŤ á ááľáŹáŁ C # á°ááŹáŤáá áĽá áľá OOP ááŽááŤááá - áá á áááľ áááá˝áŁ á˘áá°áááŤááá˝áŁ á áĽáľáľáŤááľ áĽáá°áá áĽá ááá áĽáá°ááŤáľááá áááᤠá°á°á áᢠá áŁá á¨áľáśááᢠáŤááá ᣠá፠ááá á áŁá á¨áŁáľ áá ᣠááá áááá˝ áĽáá°ááŤáľááá ááá á áá°ááá˘
á áŠáá¨ááľá˛á á ááá°áá á ááľ áĽáá°áá á፠áŽáá á áľá°ááŠ, ááá áá áĽá፠á ááááŠá, áĽá áĽáŤá´ áľááŞááá áááĽááľ áá á ááľ áŽááľ áá¨ááľ áťááŠá, ááŽááá´á, á¨áá á¨á ááľáŠáľ. áĽá á¨áá
áá áá, á Yandex ááľáĽ ááľáŤ ááááľ ááľáŠ, áá áá áá
á áá áĽá áá° Yandex.Market ááŁá. áĽááŤá áá¤áŠ áááŁáá áťááŠá, áá
á¨áĽá á¨áá ፠áŚáł áá, áĽá á Yandex.Market áĽáŤáą.
á¨á፠á ááᣠá¨áľáľáľáľ ááŤáľ á ááľáŁ á ááŤá áá ፠ááľáĽ ááłá áá áĄáľá á°ááááŠá˘ ááááľ á ááŽá˝ áľááłááá˝á áĽáá°áááá. áĽá á¨áľááłá ááľá¨á áá ááᣠá¨áá á áŠá áśáľáľ ááᣠáľááá á ááŽáááą áá áľáá á°á áá á ááᢠá áĽáááą á áŁá á áľá°áłá˝ ááᢠáŤá áááľ á áĽáááą á áá ፠áá áá¨áá áĽááááŁáá - á˝áŤáŽá˝ áá áĽáá°áá ᣠá áá ááľáŚá˝ ᣠá áá áá´áὠᣠááááľ á ááŽá˝ ᣠáľááá áłáá áŠáŁááŤáá˝á˘ áĽá áĽá áśáľáľ áĽáť áá, áá áá áŽáľ áĽáá˝ááá, áĽá á áŁá á áŞá áá.
á áá°áááá! á áá á áááá˝áĄ-
-
-
-
-
-
-
-
-
ááá: hab.com