CodeGym /ื‘ืœื•ื’ Java /Random-HE /ืจืฉื™ืžืช ื‘ื“ื™ืงื” ืฉืœ ืžืคืชื— Java. ืžื” ืฉืžืคืชื— ืฆืจื™ืš ืœื“ืขืช
John Squirrels
ืจึธืžึธื”
San Francisco

ืจืฉื™ืžืช ื‘ื“ื™ืงื” ืฉืœ ืžืคืชื— Java. ืžื” ืฉืžืคืชื— ืฆืจื™ืš ืœื“ืขืช

ืคื•ืจืกื ื‘ืงื‘ื•ืฆื”
ื”ื™ื™! ื”ื™ื•ื ื ื“ื‘ืจ ืขืœ ื ืชื™ื‘ ื”ืฆืžื™ื—ื” ืฉืœ ืžืคืชื— Java ื•ืขืœ ืžื” ืฉื”ื•ื ืื• ื”ื™ื ื—ื™ื™ื‘ื™ื ืœื“ืขืช ื›ื“ื™ ืœื”ื™ื•ืช ืžื‘ื•ืงืฉ. ืจืฉื™ืžืช ื‘ื“ื™ืงื” ืฉืœ ืžืคืชื— Java.  ืžื” ืฉืžืคืชื— ืฆืจื™ืš ืœื“ืขืช - 1ื‘ืจืื™ื•ืŸ, ื›ืœ ืžืคืชื— ืขืฉื•ื™ ืœื”ื’ืจื™ืœ ืืช ื”ืžื•ืขืžื“ ืœืขื‘ื•ื“ื”. ืœื“ื•ื’ืžื”, ื”ื ืขืฉื•ื™ื™ื ืœื”ืชื—ื™ืœ ืœืฉืื•ืœ ืฉืืœื•ืช ืขืœ ื ื•ืฉืื™ื ืกืคืฆื™ืคื™ื™ื ืฉื”ื ื ืชืงืœื• ื‘ื”ื ื‘ืคืจื•ื™ืงื˜ ื”ื ื•ื›ื—ื™ ืฉืœื”ื. ืื‘ืœ ืœื ืœื“ืขืช ื”ื›ืœ ื ื•ืจืžืœื™. ื’ื ื”ืขื•ื‘ื“ื” ืฉืืชื” ืœื ื™ื›ื•ืœ ืœืขื ื•ืช ืขืœ ื›ืžื” ืฉืืœื•ืช ื”ื™ื ื ื•ืจืžืœื™ืช. ื›ื›ืœืœ, ื›ืœ ืžืชื›ื ืช Java ื—ื™ื™ื‘ ืœื”ื™ื•ืช ื‘ืขืœ ื”ื‘ื ื” ื‘ืกื™ืกื™ืช ื‘ืคื™ืชื•ื— ืชื•ื›ื ื”. ืื– ื‘ื•ืื• ื ืกืชื›ืœ ืขืœ ืžื” ืฉื ื—ืฉื‘ "ื‘ืกื™ืกื™".

1. ืืœื’ื•ืจื™ืชืžื™ื ื‘ืกื™ืกื™ื™ื

ื”ื“ื‘ืจ ื”ืจืืฉื•ืŸ ืฉืฆืจื™ืš ืœื”ืชืžื•ื“ื“ ืื™ืชื• ื›ืฉืžืชื—ื™ืœื™ื ืœืœืžื•ื“ ืชื›ื ื•ืช (ืœื ืจืง ื’'ืื•ื•ื”) ื”ื•ื ืœื”ื‘ื™ืŸ ืืช ื”ื™ืกื•ื“ื•ืช. ืœืžืฉืœ, ืืœื’ื•ืจื™ืชืžื™ื. ื™ืฉ ืื™ื ืกื•ืฃ ืžื”ื, ื•ืœื ื›ื“ืื™ ืœื”ืจื•ื’ ืฉื ื™ื ืฉืœืžื•ืช ืžื—ื™ื™ืš ื‘ื ื™ืกื™ื•ืŸ ืœืœืžื•ื“ ื›ืžื” ืฉื™ื•ืชืจ ืืœื’ื•ืจื™ืชืžื™ื: ืจื•ื‘ื ืœื ื™ื•ืขื™ืœื• ืœืš. ืืชื” ื™ื›ื•ืœ ืœืงื‘ืœ ืืช ื”ืžื™ื ื™ืžื•ื ื”ื“ืจื•ืฉ ืฉืœ ื™ื“ืข ืžื”ืกืคืจ "ืืœื’ื•ืจื™ืชืžื™ื ืฉืœ ื’ืจื•ืงื™ื ื’". ื–ื” ืžืกืคื™ืง ื›ื“ื™ ืœื”ืชื—ื™ืœ, ืื‘ืœ ืื ืชืจืฆื•, ืชื•ื›ืœื• ืœืœืžื•ื“ ืžื”ืกืคืจ "ืžื‘ื ื™ื ื•ืืœื’ื•ืจื™ืชืžื™ื" ืื• "ืืœื’ื•ืจื™ืชืžื™ื ื‘ื’'ืื•ื•ื”" ืžืืช ืจื•ื‘ืจื˜ ืกื“ื’'ื•ื•ื™ืง ื•ืงื•ื•ื™ืŸ ื•ื•ื™ื™ืŸ. ืื ื™ ื’ื ืžืžืœื™ืฅ ืœืš ืœืฉืคืจ ืืช ื”ื™ื“ืข ืฉืœืš ื‘ื™ืกื•ื“ื•ืช ืžื“ืขื™ ื”ืžื—ืฉื‘. ื ื™ืชืŸ ืœืขืฉื•ืช ื–ืืช ืขื ืงื•ืจืก ื”ืจื•ื•ืืจื“ CS50.

2. ืชื—ื‘ื™ืจ ื’'ืื•ื•ื”

ืœืื—ืจ ืœื™ืžื•ื“ ื”ื™ืกื•ื“ื•ืช ืฉืœ ืืœื’ื•ืจื™ืชืžื™ื, ืขืœื™ื ื• ืœืœืžื•ื“ ืชื—ื‘ื™ืจ Java. ืื—ืจื™ ื”ื›ืœ, ื›ื•ืœื ื• ืœื•ืžื“ื™ื ืœื”ื™ื•ืช ืžืชื›ื ืชื™ ื’'ืื•ื•ื” ื›ืืŸ, ื ื›ื•ืŸ? ืงื•ืจืก CodeGym ืžื•ืฉืœื ืขื‘ื•ืจ ื–ื”. ื›ืืฉืจ ืชื‘ืฆืขื• ืื™ื ืกืคื•ืจ ืžืฉื™ืžื•ืช, ืชืฉื™ืžื• ื™ื“ื›ื ืขืœ ืชื—ื‘ื™ืจ ื’'ืื•ื•ื” ื•ืื–, ื‘ืœื™ ื”ืจื‘ื” ื”ื™ืกื•ืก, ืชื›ืชื‘ื•/ืชืงืจืื• ืงื•ื“ ื’'ืื•ื•ื” ื›ืื™ืœื• ื”ื•ื ืฉืคืช ื”ืื ืฉืœื›ื. CodeGym ื”ื•ื ืชืจื’ื•ืœ, ืื‘ืœ ืžืขื‘ืจ ืœื–ื”, ืืชื” ืฆืจื™ืš ื’ื ืœื”ืกืชื›ืœ ืขืœ ื”ืชื™ืื•ืจื™ื” ื›ื“ื™ ืœื”ื‘ื™ืŸ ืžื” ืืชื” ืขื•ืฉื”. ื›ื“ื™ ืœืขืฉื•ืช ื–ืืช, ืืชื” ื™ื›ื•ืœ ืœืงืจื•ื ืกืคืจื™ื. ืœื“ื•ื’ืžื”, ืื—ื“ ืžื”ื‘ืื™ื:
  • "ืจืืฉ ื’'ืื•ื•ื”",
  • "Java for Dummies" ืžืืช ื‘ืืจื™ ื‘ื™ืจื“;
  • "Java: A Beginner's Guide" ืžืืช ื”ืจื‘ืจื˜ ืฉื™ืœื“ื˜.
ืœืื—ืจ ืงืจื™ืืช ื”ืกืคืจื™ื ื”ืืœื”, ืืชื” ื™ื›ื•ืœ ืœืจื“ืช ืœืกืคืจื™ื ืงืฉื™ื ื™ื•ืชืจ:
  • "ื—ื•ืฉื‘ื™ื ื‘ื’'ืื•ื•ื”", ื‘ืจื•ืก ืืงืœ;
  • "ื’'ืื•ื•ื” ื™ืขื™ืœื”" ืžืืช ื™ื”ื•ืฉืข ื‘ืœื•ืš;
  • "Java: The Complete Reference" ืžืืช ื”ืจื‘ืจื˜ ืฉื™ืœื“ื˜.
ืฉืœื•ืฉืช ื”ืกืคืจื™ื ื”ืื—ืจื•ื ื™ื ืื™ื ื ืงืจื™ืื” ืงืœื” ืœืžืชื—ื™ืœื™ื, ืืš ื”ื ืžืกืคืงื™ื ื‘ืกื™ืก ืžื•ืฆืง ื‘ืชื•ืจืช ื’'ืื•ื•ื”. ื›ืžื• ื›ืŸ, ืืœ ืชืฉื›ื— ืืช ื”ืžืืžืจื™ื ืฉืœ CodeGym, ืžื›ื™ื•ื•ืŸ ืฉื”ื ืžืกืคืงื™ื ื”ืกื‘ืจื™ื ืœืจื•ื‘ ื”ื ื•ืฉืื™ื ืฉืขืฉื•ื™ื™ื ืœืขื ื™ื™ืŸ ืื•ืชืš. ืืชื” ื™ื›ื•ืœ ืœืžืฆื•ื ืžืืžืจ ืจืœื•ื•ื ื˜ื™ ืขืœ ื™ื“ื™ ื”ืงืœื“ืช ื”ื ื•ืฉื ืฉืžืขื ื™ื™ืŸ ืื•ืชืš ื‘ืฉื•ืจืช ื”ื—ื™ืคื•ืฉ: ืจืฉื™ืžืช ื‘ื“ื™ืงื” ืฉืœ ืžืคืชื— Java.  ืžื” ืฉืžืคืชื— ืฆืจื™ืš ืœื“ืขืช - 2ืื ื™ ื’ื ืžืžืœื™ืฅ ื‘ื—ื•ื ืœื—ืคืฉ ืฉืืœื•ืช ืžืจืื™ื•ื ื•ืช Java. ื–ื” ื™ืขื–ื•ืจ ืœืš ืœื”ื‘ื™ืŸ ืžื” ื‘ื“ื™ื•ืง ืืชื” ืฆืจื™ืš ืœืœืžื•ื“ ื•ืœืื™ืœื• ืฉืืœื•ืช ืœื”ืชื›ื•ื ืŸ.

3. ืขื™ืฆื•ื‘ ื“ืคื•ืกื™ื

ื“ืคื•ืกื™ ืขื™ืฆื•ื‘ ื”ื ื“ืคื•ืกื™ื ืžืกื•ื™ืžื™ื ืฉื ื™ืชืŸ ืœื—ื–ื•ืจ ืขืœื™ื”ื ื”ืคื•ืชืจื™ื ื‘ืขื™ื•ืช ื‘ื”ืงืฉืจื™ื ืฉื ืชืงืœื™ื ื‘ื”ื ืœืขืชื™ื ืงืจื•ื‘ื•ืช. ื”ื ื›ื•ืœืœื™ื ื“ืคื•ืกื™ื ื‘ืกื™ืกื™ื™ื ื•ืคืฉื•ื˜ื™ื ืฉื›ืœ ืžืชื›ื ืช ืฉืžื›ื‘ื“ ืืช ืขืฆืžื• ืฆืจื™ืš ืœื”ื›ื™ืจ. ื›ื“ื™ ืœื”ื‘ื™ืŸ ืืช ื”ื ื•ืฉื ื”ื–ื”, ืงื— ืืช ื”ืกืคืจ "ื“ืคื•ืกื™ ืขื™ืฆื•ื‘ ืจืืฉ ืจืืฉื•ืŸ". ื”ื•ื ืžืกื‘ื™ืจ ืืช ื“ืคื•ืกื™ ื”ืขื™ืฆื•ื‘ ื”ื‘ืกื™ืกื™ื™ื ื‘ืฆื•ืจื” ื ื’ื™ืฉื”. ืื‘ืœ ื”ืกืคืจ ืžื“ื‘ืจ ื”ืจื‘ื” ืขืœ ื’'ืื•ื•ื”, ื›ืš ืฉื›ืฉืชืฆืจื•ืš ืืช ื”ืกืคืจ ื”ื–ื” ืชืฆื˜ืจืš ื’ื ืฉืœื™ื˜ื” ื‘ืฉืคืช ื”ืชื›ื ื•ืช ื”ื–ื•. ืœืฆืœื™ืœื” ืขืžื•ืงื” ื™ื•ืชืจ ืœืชื•ืš ื“ืคื•ืกื™ื, ืืชื” ื™ื›ื•ืœ ื’ื ืœืงืจื•ื ืืช "ื“ืคื•ืกื™ ืขื™ืฆื•ื‘: ืืœืžื ื˜ื™ื ืฉืœ ืชื•ื›ื ื” ืžื•ื›ื•ื•ื ืช ืขืฆืžื™ื ืœืฉื™ืžื•ืฉ ื—ื•ื–ืจ" ืžืชื•ืš ื›ื ื•ืคื™ื™ืช ื”ืืจื‘ืขื” ( ื”ืขืจืช ื”ืขื•ืจืš: ื›ื ื•ืคื™ื™ืช ื”ืืจื‘ืขื” ื”ื™ื ืฆื•ื•ืช ืžื—ื‘ืจื™ื ื”ื›ื•ืœืœ ืืช ืืจื™ืš ื’ืžื, ืจื™ืฆ'ืจื“ ื”ืœื, ืจืืœืฃ ื’'ื•ื ืกื•ืŸ, ื’'ื•ืŸ ื•ืœื™ืกื™ื“ืก. ). ืœืื—ืจ ืฉืœืžื“ืช ืืช ื”ื ื•ืฉื ื”ื–ื”, ืชืชื—ื™ืœ ืœืจืื•ืช ื“ืคื•ืกื™ื ื›ืžืขื˜ ื‘ื›ืœ ืžืงื•ื ื‘ืงื•ื“ ืฉืœืš. ืฉื™ืžื• ืœื‘ ืœื›ืš, ื‘ืžื™ื•ื—ื“ ืœื“ืคื•ืกื™ื ื‘ื”ื ื ืขืฉื” ืฉื™ืžื•ืฉ ื‘ืื‘ื™ื‘, ืžื›ื™ื•ื•ืŸ ืฉื–ื•ื”ื™ ืฉืืœืช ืจืื™ื•ืŸ ืคื•ืคื•ืœืจื™ืช.

4. ืคืจื“ื™ื’ืžื•ืช ืชื›ื ื•ืช. ื ื™ืงื™ื•ืŸ ืงื•ื“

ืžืœื‘ื“ ื“ืคื•ืกื™ ื”ืขื™ืฆื•ื‘ ื”ืกื˜ื ื“ืจื˜ื™ื™ื, ื™ืฉื ื ืขืงืจื•ื ื•ืช ื•ืคืจื“ื™ื’ืžื•ืช ืฉื•ื ื•ืช ืฉื›ื“ืื™ ืœื”ื›ื™ืจ ( SOLID , GRASP ). ืืชื” ื’ื ืฆืจื™ืš ืœืฉืžื•ืจ ืขืœ ื”ืงื•ื“ ืฉืœืš ื ืงื™ ื•ืงืจื™ื. ืœื›ืœ ื“ื‘ืจ, ืืชื” ืฆืจื™ืš ืœื“ืขืช ืขืœ ื”ื ื•ืฉื ื”ื–ื”, ืจืื” ืงื•ื“ ื ืงื™ ืžืืช ืจื•ื‘ืจื˜ ืžืจื˜ื™ืŸ, ืื• ื‘ื“ื•ืง ืืช "ืงื•ื“ ืžืœื" ืžืืช ืกื˜ื™ื‘ ืžืงื•ื ืœ.

5. SQL

ื”ืฆืขื“ ื”ื‘ื ืฉืœื ื• ื”ื•ื ืœืœืžื•ื“ ืฉืคื” ืขื‘ื•ืจ ืžืกื“ื™ ื ืชื•ื ื™ื ื™ื—ืกื™ื™ื - SQL . ืžืื’ืจื™ ืžื™ื“ืข ื”ื ื”ืžืงื•ื ืฉื‘ื• ืžืื•ื—ืกืŸ ื”ืžื™ื“ืข (ื”ื ืชื•ื ื™ื) ื”ืžืฉืžืฉื™ื ื™ื™ืฉื•ื ืื™ื ื˜ืจื ื˜. ืžืกื“ ื ืชื•ื ื™ื ืžื•ืจื›ื‘ ืžืžืกืคืจ ื˜ื‘ืœืื•ืช (ืคื ืงืก ื”ื›ืชื•ื‘ื•ืช ื‘ื˜ืœืคื•ืŸ ืฉืœืš ื”ื•ื ื“ื•ื’ืžื” ืคืฉื•ื˜ื”). ืžืคืชื—ื™ Java ืื—ืจืื™ื ืœื ืจืง ืขืœ ืืคืœื™ืงืฆื™ื™ืช Java, ืืœื ื’ื ืขืœ ืžืกื“ ื”ื ืชื•ื ื™ื ืฉื”ื•ื ืžืงื™ื™ื ืื™ืชื• ืื™ื ื˜ืจืืงืฆื™ื” ื•ื”ื™ื›ืŸ ื”ื•ื ืžืื—ืกืŸ ืืช ื”ื ืชื•ื ื™ื ืฉืœื•. ื‘ืžืกื“ื™ ื ืชื•ื ื™ื ื™ื—ืกื™ื™ื (ืฉื”ื ื”ืกื•ื’ ื”ื ืคื•ืฅ ื‘ื™ื•ืชืจ), ื›ืœ ื”ืื™ื ื˜ืจืืงืฆื™ื” ืžืชืจื—ืฉืช ื‘ืืžืฆืขื•ืช ืฉืคื” ืžื™ื•ื—ื“ืช ื”ื ืงืจืืช Structured Query Language, ืื• SQL. ื›ื“ื™ ืœื”ื‘ื™ืŸ ืืช ื”ื ื•ืฉื ื”ื–ื”, ื›ืœ ืžื” ืฉืืชื” ืฆืจื™ืš ืœืขืฉื•ืช ื”ื•ื ืœืงืจื•ื ืืช ืื—ื“ ืžื”ืกืคืจื™ื ื”ื‘ืื™ื:
  • "ืœื™ืžื•ื“ SQL" ืžืืช ืืœืŸ ื‘ื•ืœื™ื•;
  • "SQL" ืžืืช ื›ืจื™ืก ืคื”ื™ืœื™;
  • "SQL ืจืืฉ ืจืืฉื•ืŸ" ืžืืช ืœื™ืŸ ื‘ื™ื™ืœื™.
ืื‘ืœ ืชืจื’ื•ืœ ืœืœื ืชื™ืื•ืจื™ื” ืœื ื—ื•ืชืš ืืช ื–ื”, ื ื›ื•ืŸ? ื•ื‘ืจืื™ื•ื ื•ืช ืืชื” ื™ื›ื•ืœ ืœืฆืคื•ืช ืœืžื‘ื—ืŸ ืฉืœ ื”ื™ื“ืข ืฉืœืš ื‘-SQL. ืžืจืื™ื™ื ื™ื ืœืจื•ื‘ (ื›ืžืขื˜ ืชืžื™ื“) ื ื•ืชื ื™ื ืžื˜ืœื” ืื—ืช ืื• ืฉืชื™ื™ื ื”ื›ื•ืœืœื•ืช ื›ืชื™ื‘ืช ืฉืื™ืœืชืช SQL. ื›ืชื•ืฆืื” ืžื›ืš, ื—ืฉื•ื‘ ืžืื•ื“ ืœื—ื“ื“ ืืช ื›ื™ืฉื•ืจื™ ื”-SQL ื”ืžืขืฉื™ื™ื ืฉืœืš ื›ื“ื™ ืœื”ืจืื•ืช ืืช ืขืฆืžืš ื‘ืื•ืจ ื˜ื•ื‘.

6. MySQL/PostgreSQL

ืœืื—ืจ ืœื™ืžื•ื“ ืฉืคืช SQL, ืขืœื™ืš ืœื”ื›ื™ืจ ื™ื™ืฉื•ื ืžืกื“ ื ืชื•ื ื™ื ืกืคืฆื™ืคื™. ื‘ื”ืชืื ืœืžืกื“ ื”ื ืชื•ื ื™ื, ืคืงื•ื“ื•ืช ืžืกื•ื™ืžื•ืช ืขืฉื•ื™ื•ืช ืœื”ืฉืชื ื•ืช ื‘ืื•ืคืŸ ื“ืจืžื˜ื™. ื•ื™ืฉ ื”ื‘ื“ืœื™ื ื‘ื•ืœื˜ื™ื ืœืžื“ื™ ื‘ื™ื›ื•ืœื•ืช ืžืกื“ ื”ื ืชื•ื ื™ื. ืžืกื“ื™ ื”ื ืชื•ื ื™ื ื”ื™ื—ืกื™ื™ื ื”ื ืคื•ืฆื™ื ื‘ื™ื•ืชืจ ื”ื MySQL ื•- PostgreSQL . ืจืฉื™ืžืช ื‘ื“ื™ืงื” ืฉืœ ืžืคืชื— Java.  ืžื” ืฉืžืคืชื— ืฆืจื™ืš ืœื“ืขืช - 3MySQL ื”ื•ื ื”ืจื‘ื” ื™ื•ืชืจ ืคืฉื•ื˜, ืื‘ืœ ืœ-PostgreSQL ื™ืฉ ื™ื›ื•ืœื•ืช ื”ืจื‘ื” ื™ื•ืชืจ ืจื—ื‘ื•ืช. ืžืกืคื™ืง ืœื”ื›ื™ืจ ืœืคื—ื•ืช ืื—ื“ ืžื”ื ื›ื“ื™ ืœื”ืชื—ื™ืœ. ืืชื” ื™ื›ื•ืœ ืœืœืžื•ื“ ื™ื™ืฉื•ืžื™ ืžืกื“ ื ืชื•ื ื™ื ืื ืืชื” ืžืฉืชืžืฉ ื‘ื›ื™ืฉื•ืจื™ ื”ื’ื•ื’ืœ ืฉืœืš - ืžืฆื ืžืืžืจื™ื ื•ืžื“ืจื™ื›ื™ื ืจืœื•ื•ื ื˜ื™ื™ื ื‘-YouTube. ืชืฆื˜ืจืš ืœื˜ืคื— ืืช ื”ื™ื›ื•ืœืช ืฉืœืš ืœื™ืฆื•ืจ ืฉืื™ืœืชื•ืช ื—ื™ืคื•ืฉ ื ื›ื•ื ื•ืช ืขื‘ื•ืจ ื”ืฉืืœื•ืช ืฉืืชื” ืฆืจื™ืš ืœืขื ื•ืช ืขืœื™ื”ืŸ. ืื—ืจื™ ื”ื›ืœ, ืžืชื›ื ืช ื”ื•ื ืžื™ืฉื”ื• ืขื ื—ื’ื•ืจื” ืฉื—ื•ืจื” ื‘ื’ื•ื’ืœ.

7. Maven/Gradle

ืืชื” ืฆืจื™ืš ืœืœืžื•ื“ ืืช ื”ืžืกื’ืจืช ืฉืœ Gradle ืื• Maven . ื”ื ืžื™ื•ืขื“ื™ื ืœื‘ื ื™ื™ืช ืคืจื•ื™ืงื˜ื™ื, ื•ืขื‘ื•ืจื›ื, Java ืžื™ื•ืขื“ืช ื›ืขืช ืœื ืจืง ืœืžืฉื™ืžื•ืช ื”ื›ื•ืœืœื•ืช ื›ืžื” ืฉื™ืขื•ืจื™ื, ืืœื ื’ื ืฉืคื” ืœื›ืชื™ื‘ืช ื™ื™ืฉื•ืžื™ื ืžืœืื™ื. ืขืœื™ื›ื ืœื”ื‘ื™ืŸ ื›ื™ืฆื“ ื‘ื•ื ื™ื ืคืจื•ื™ืงื˜, ืžื”ื ืฉืœื‘ื™ ื”ื‘ื ื™ื™ื”, ื›ื™ืฆื“ ืœื˜ืขื•ืŸ ืืช ื”ืกืคืจื™ื•ืช ื”ื—ื™ืฆื•ื ื™ื•ืช ื”ื“ืจื•ืฉื•ืช ื‘ืงื•ื“ ืฉืœ ืฆื“ ืฉืœื™ืฉื™ ื•ืขื•ื“ ื•ืขื•ื“. ืœืžืจื•ืช ื”ืขื•ื‘ื“ื” ืฉ- Gradle ื—ื“ืฉ ื•ืชืžืฆื™ืชื™ ื™ื•ืชืจ, ืžืฉืชืžืฉื™ื ื‘-Maven ื‘ืจื•ื‘ ื”ืžืงืจื™ื. ืœื›ืŸ, ืฉื™ืžื• ืœื‘ ื‘ืžื™ื•ื—ื“ ืœืžื—ื–ื•ืจ ื”ื—ื™ื™ื ืฉืœ Maven build.

8. ื’ื™ื˜

Git ื”ื™ื ืžืขืจื›ืช ื‘ืงืจืช ื’ืจืกืื•ืช ืžื‘ื•ื–ืจืช. ื˜ื›ื ื•ืœื•ื’ื™ื” ื–ื• ืžืืคืฉืจืช ืœืžืคืชื—ื™ื ืœืฉืชืฃ ืคืขื•ืœื” ื‘ืืคืœื™ืงืฆื™ื” ืื—ืช ืžื‘ืœื™ ืœื”ืคืจื™ืข ื–ื” ืœื–ื”. ื›ืžื•ื‘ืŸ, ื™ืฉ ืžืขืจื›ื•ืช ืื—ืจื•ืช ืœื‘ืงืจืช ื’ืจืกืื•ืช. ืœื“ื•ื’ืžื”, Subversion . ืื‘ืœ Git ื ืžืฆื ื‘ืฉื™ืžื•ืฉ ื”ื ืคื•ืฅ ื‘ื™ื•ืชืจ, ื•ืืชื” ืฆืจื™ืš ืœื”ื™ื•ืช ืžืกื•ื’ืœ ืœืขื‘ื•ื“ ืื™ืชื•. ืจืฉื™ืžืช ื‘ื“ื™ืงื” ืฉืœ ืžืคืชื— Java.  ืžื” ืฉืžืคืชื— ืฆืจื™ืš ืœื“ืขืช - 4ื‘ื ื•ืกืฃ ืœืžืืžืจื™ื ื”ืจื‘ื™ื ืขืœ Git ืฉืชื•ื›ืœื• ืœืžืฆื•ื ื‘ืื™ื ื˜ืจื ื˜, ืœื™ื•ื˜ื™ื•ื‘ ื™ืฉ ื“ื™ ื•ื”ื•ืชืจ ืกืจื˜ื•ื ื™ื ืฉื™ืขื–ืจื• ืœื›ื ืœืฉืœื•ื˜ ื‘ื˜ื›ื ื•ืœื•ื’ื™ื” ื”ื–ื•, ืฆืขื“ ืื—ืจ ืฆืขื“. ื‘ื”ืชื—ืœื”, ืขื“ื™ืฃ ืœื”ืฉืชืžืฉ ื‘-Git ืžืฉื•ืจืช ื”ืคืงื•ื“ื” ื•ืœื ื‘ืžื™ืžื•ืฉ GUI ื›ืœืฉื”ื•, โ€‹โ€‹ื›ื™ ืชืืœืฅ ืœืขืฉื•ืช ื”ื›ืœ ื‘ืืžืฆืขื•ืช ืคืงื•ื“ื•ืช. ื‘ืจืื™ื•ื ื•ืช, ืื ืฉื™ื ืื•ื”ื‘ื™ื ืœืขืชื™ื ืงืจื•ื‘ื•ืช ืœืฉืื•ืœ ืขืœ ื›ืžื” ืคืงื•ื“ื•ืช Git, ืื– ืื ื™ ืžืžืœื™ืฅ ืœืš ืœื›ืชื•ื‘ ืื•ืชืŸ ื•ืœืฉืžื•ืจ ืื™ืคืฉื”ื• ืงืจื•ื‘. ืื ื™ ื’ื ืžืžืœื™ืฅ ืœืš ืœืจืฉื•ื ื”ืขืจื•ืช, ืœืขืงื•ื‘ ืื—ืจ ื”ื ืงื•ื“ื•ืช ื”ื—ืฉื•ื‘ื•ืช ื‘ื™ื•ืชืจ ืขืœ ืžื ืช ืœืขื‘ื•ืจ ืขืœื™ื”ืŸ ืœืคื ื™ ื”ืจืื™ื•ืŸ ื•ืœืจืขื ืŸ ืืช ื”ื–ื™ื›ืจื•ืŸ.

9. JDBC

ื˜ื›ื ื•ืœื•ื’ื™ื” ื–ื• ืžื—ื‘ืจืช ืืช ืืคืœื™ืงืฆื™ื™ืช Java ืฉืœืš ื•ืžืกื“ ื ืชื•ื ื™ื ื™ื—ืกื™. ืขื‘ื•ืจ ื”ื™ืกื•ื“ื•ืช, ืื ื™ ืžืžืœื™ืฅ ืœืงืจื•ื ื›ืœ ืžื“ืจื™ืš ืฉืœ JDBC. ื™ืฉ ืฉืคืข ืฉืœ ืžืืžืจื™ื ืฉืžืกื‘ื™ืจื™ื ืืช JDBC ื•ืžืกืคืงื™ื ื“ื•ื’ืžืื•ืช ื‘ืกื™ืกื™ื•ืช, ืœืžืจื•ืช ืฉืืฃ ืื—ื“ ื›ื‘ืจ ืœื ืžืฉืชืžืฉ ื™ืฉื™ืจื•ืช ื‘-JDBC ืขื™ืจื•ื.

10. JPA. ืฉื™ื ื”

JPA ื”ื™ื ื“ืจืš ืœื™ืฆื•ืจ ื—ื™ื‘ื•ืจ ื‘ื™ืŸ ื™ื™ืฉื•ื Java ืœืžืกื“ ื ืชื•ื ื™ื, ื‘ื“ื™ื•ืง ื›ืžื• JDBC. ืืš ื™ื—ื“ ืขื ื–ืืช, JPA ื”ื™ื ื˜ื›ื ื•ืœื•ื’ื™ื” ื‘ืจืžื” ื’ื‘ื•ื”ื” ื™ื•ืชืจ ื•ืœื›ืŸ ืงืœื” ื™ื•ืชืจ ืœืฉื™ืžื•ืฉ. ืื‘ืœ JPA ื”ื•ื ืจืง ืžืคืจื˜, ืœื ื™ื™ืฉื•ื. ื–ื” ืฆืจื™ืš ื™ื™ืฉื•ื ืงื•ื ืงืจื˜ื™. ืจื‘ื™ื ืžื”ื ืงื™ื™ืžื™ื, ืื‘ืœ ื”ืงืจื•ื‘ ื‘ื™ื•ืชืจ ืœืื™ื“ื™ืืœื™ื ืฉืœ ื”-JPA, ื”ืคื•ืคื•ืœืจื™ ื•ื”ืžืคื•ืชื— ื‘ื™ื•ืชืจ ื”ื•ื Hibernate. ืืชื” ืชืชืงืœ ื‘ื˜ื›ื ื•ืœื•ื’ื™ื” ื”ื–ื• ื™ื•ืชืจ ืžืคืขื ืื—ืช ื‘ืงืจื™ื™ืจืช ืคื™ืชื•ื— ื”ืชื•ื›ื ื” ืฉืœืš. ืœื›ืŸ, ื‘ื ื•ืกืฃ ืœื”ื™ื›ืจื•ืช ืขื ื”ื˜ื›ื ื•ืœื•ื’ื™ื” ื”ื–ื• ืขืœ ื™ื“ื™ ืงืจื™ืืช ืžืืžืจื™ื, ืื•ืœื™ ื›ื“ืื™ ืœื—ืฉื•ื‘ ืขืœ ืงืจื™ืืช ืกืคืจ, ืœืžืฉืœ, "Java Persistence API".

11. ืื‘ื™ื‘

ื›ืฉืืชื” ื”ื•ืคืš ืœืžืคืชื— Java, Spring ื”ื™ื ื›ื‘ืจ ืœื ืจืง ืžื™ืœื” ื‘ืฉื‘ื™ืœืš. ืจืฉื™ืžืช ื‘ื“ื™ืงื” ืฉืœ ืžืคืชื— Java.  ืžื” ืฉืžืคืชื— ืฆืจื™ืš ืœื“ืขืช - 5ื”ื›ืจืช ื”ืžืกื’ืจืช ื”ื–ื• ื—ืฉื•ื‘ื” ื›ืขืช ื›ืžื• ื”ื›ืจืช ืชื—ื‘ื™ืจ Java. ืืคืฉืจ ืœื•ืžืจ ืฉืœืื‘ื™ื‘ ื™ืฉ ืื—, ื›ืœื•ืžืจ Java EE. ืื‘ืœ Java EE ืžื™ื•ืฉืŸ ื•ืื™ื ื• ื‘ืฉื™ืžื•ืฉ ืขื•ื“ ื‘ืคืจื•ื™ืงื˜ื™ื ื—ื“ืฉื™ื. ื”ืจื•ื‘ ื”ืžื›ืจื™ืข ืฉืœ ืžืคืชื—ื™ Java ื”ื ื›ืขืช ืžืคืชื—ื™ Java-Spring, ื›ืš ืฉื”ื›ืจืช ื›ืžื” ื˜ื›ื ื•ืœื•ื’ื™ื•ืช Spring ื‘ืกื™ืกื™ื•ืช ื”ื™ื ื—ื•ื‘ื”. ืื‘ื™ื‘ ื”ื•ื ืœื ืจืง ืžืกื’ืจืช, ืืœื ืžืกื’ืจืช ืฉืœืžื” ืฉืœ ืžืกื’ืจื•ืช: ืจืฉื™ืžืช ื‘ื“ื™ืงื” ืฉืœ ืžืคืชื— Java.  ืžื” ืฉืžืคืชื— ืฆืจื™ืš ืœื“ืขืช - 6ื•ื–ื• ืจืง ืชืช-ืงื‘ื•ืฆื” ืฉืœ ื”ืžืกื’ืจื•ืช ืฉืื‘ื™ื‘ ืžืกืคืง. ืœืžืชื—ื™ืœื™ื, ืœื“ืขืช ืจืง ื›ืžื” ืžื”ื ื–ื” ืžืกืคื™ืง ื˜ื•ื‘:

  • ืœื™ื‘ืช ืื‘ื™ื‘

ืืชื” ืฆืจื™ืš ืœืฉื™ื ืืช ื–ื” ื‘ืžืงื•ื ื”ืจืืฉื•ืŸ, ื›ื“ื™ ืฉืชื•ื›ืœ ืœื”ื‘ื™ืŸ ืžื” ื–ื” Spring - ื”ื›ืœ ืขืœ ืžื™ื›ืœื™ Spring, ืฉืขื•ืขื™ืช, DI, IoC ื•ื›ืŸ ื”ืœืื”. ืœื”ื‘ื™ืŸ ืืช ืขืฆื ื”ืคื™ืœื•ืกื•ืคื™ื” ืฉืœ ื”ืฉื™ืžื•ืฉ ื‘ืื‘ื™ื‘, ื›ื‘ื™ื›ื•ืœ. ื”ืžืฉืš ื”ืœื™ืžื•ื“ ืฉืœืš ื‘ืžืกื’ืจื•ืช ืื‘ื™ื‘ ื™ืชื‘ืกืก ืขืœ ื”ื‘ืกื™ืก ื”ื–ื”. ืื•ืœื™ ื›ื“ืื™ ืœื™ืฆื•ืจ ืืคืœื™ืงืฆื™ื” ืงื˜ื ื” ืžืฉืœืš ืฉื‘ื” ืชื•ื›ืœ ืœืฉืœื‘ ื‘ื”ื“ืจื’ื” ืืช ื›ืœ ื”ื˜ื›ื ื•ืœื•ื’ื™ื•ืช ื”ื—ื“ืฉื•ืช ืฉื ืœืžื“ื•.

  • ืื‘ื™ื‘ JDBC

ืงื•ื“ื ืœื›ืŸ ื”ื–ื›ืจื ื• ืืช JDBC ื›ื˜ื›ื ื•ืœื•ื’ื™ื” ืœื™ืฆื™ืจืช ื—ื™ื‘ื•ืจ ืœืžืกื“ ื ืชื•ื ื™ื. ื‘ืื•ืคืŸ ื›ืœืœื™, ื›ื‘ืจ ืœื ื ื™ืชืŸ ืœืžืฆื•ื ืฉื™ืžื•ืฉ "ืขื™ืจื•ื" ื‘ื˜ื›ื ื•ืœื•ื’ื™ื” ื‘ืคืจื•ื™ืงื˜ื™ื, ื›ืš ืฉืืชื” ืขืฉื•ื™ ืœื”ืกื™ืง ืฉืื™ืŸ ืฆื•ืจืš ื‘ืœื™ืžื•ื“ JDBC. ื–ื• ืœื ื‘ื“ื™ื•ืง ื”ื’ื™ืฉื” ื”ื ื›ื•ื ื”. ืขืœ ื™ื“ื™ ื—ืงื™ืจืช ืฉื™ืžื•ืฉ ืขื™ืจื•ื (ื™ืฉื™ืจ) ื‘-JDBC, ืืชื” ื™ื›ื•ืœ ืœืจืื•ืช ืืช ื”ื˜ื›ื ื•ืœื•ื’ื™ื” ื‘ืจืžื” ื ืžื•ื›ื” ื™ื•ืชืจ ื•ืœื”ื‘ื™ืŸ ืืช ื”ื‘ืขื™ื•ืช ื•ื”ื—ืกืจื•ื ื•ืช ืฉืœื”. ื•ืื– ื›ืฉืชืชื—ื™ืœ ืœืœืžื•ื“ Spring JDBC, ืชื‘ื™ืŸ ืžื” ื‘ื“ื™ื•ืง ื”ืžืกื’ืจืช ื”ื–ื• ืžืฉืคืจืช, ืžื™ื™ืขืœืช ื•ืžืกืชื™ืจื”.

  • ืฉื™ื ื” ืื‘ื™ื‘ื™ืช

ื‘ื“ื•ืžื” ืœืžืฆื‘ ืขื JDBC ืขื™ืจื•ื, ื”ืžืกื’ืจืช ื”ื–ื• ืžืžื ืคืช ื˜ื›ื ื•ืœื•ื’ื™ื” ืงื™ื™ืžืช, ื‘ืžืงืจื” ื–ื”, Hibernate. ืื ืืชื” ืฉื•ืงืœ ืœื”ืฉืชืžืฉ ื‘-Hibernate ืœืœื Spring, ืืชื” ื‘ื”ื—ืœื˜ ืžื‘ื™ืŸ ืืช ื”ื™ืชืจื•ื ื•ืช ืฉ-Spring Hibernate ืžืฆื™ืข.

  • ืื‘ื™ื‘ JPA

ืงื•ื“ื ืœื›ืŸ ื“ื™ื‘ืจื ื• ืขืœ JPA ื•ื”ื–ื›ืจื ื• ืฉื–ื” ืจืง ืžืคืจื˜, ืื ื›ื™ ื™ืฉ ืœื• ื™ื™ืฉื•ืžื™ื ืฉื•ื ื™ื. ื‘ื™ืŸ ื”ื”ื˜ืžืขื•ืช ื”ืœืœื•, Hibernate ืžื’ื™ืข ื”ื›ื™ ืงืจื•ื‘ ืœืื™ื“ื™ืืœ. ืœ-Spring ื™ืฉ ื™ื™ืฉื•ื JPA ืื™ื“ื™ืืœื™ ืžืฉืœื• ื”ืžืฉืชืžืฉ ื‘-Hibernate ืžืชื—ืช ืœืžื›ืกื” ื”ืžื ื•ืข. ื–ื” ืงืจื•ื‘ ื›ื›ืœ ื”ืืคืฉืจ ืœืื™ื“ื™ืืœ ืฉืœ ืžืคืจื˜ ื”-JPA. ื–ื” ื ืงืจื Spring JPA. ื‘ืžื™ืœื” ืื—ืช, ื–ื” ืžืคืฉื˜ ืžืื•ื“ ืืช ื”ื’ื™ืฉื” ืœืžืกื“ ื”ื ืชื•ื ื™ื. ืืชื” ื™ื›ื•ืœ ืœืœืžื•ื“ JPA ืจืง ื‘ืœื™ ืœืœืžื•ื“ JDBC, Hibernate, Spring JDBC ืื• Spring Hibernate. ืื‘ืœ ืื ืชื ืงื•ื˜ ื‘ื’ื™ืฉื” ื”ื–ื•, ื”ื™ื“ืข ืฉืœืš ื›ื™ืฆื“ ืœื”ืชื—ื‘ืจ ืœืžืกื“ ื ืชื•ื ื™ื ื™ื”ื™ื” ืžืื•ื“ ืฉื˜ื—ื™.

  • ืื‘ื™ื‘ MVC

ื˜ื›ื ื•ืœื•ื’ื™ื” ื–ื• ืžืืคืฉืจืช ืœื”ืฆื™ื’ ืืช ืžืžืฉืง ื”ืื™ื ื˜ืจื ื˜ ืฉืœ ื”ืืคืœื™ืงืฆื™ื” ืฉืœื ื• ืœืžืฉืชืžืฉื™ื ื•ืœื”ืงืœ ืขืœ ื”ืชืงืฉื•ืจืช ื‘ื™ืŸ ื”ืžืžืฉืง ืœืฉืืจ ื”ืืคืœื™ืงืฆื™ื”. ื ื™ืชืŸ ืœื”ืฉืชืžืฉ ื‘ื˜ื›ื ื•ืœื•ื’ื™ื” ื’ื ืœืœื ืชืฆื•ื’ื” ื›ืืฉืจ ื™ืฉ ืœืš ืืคืœื™ืงืฆื™ื” ืฉืื—ืจืื™ืช ืขืœ ื”ื˜ื™ืคื•ืœ ื‘ืชืฆื•ื’ื” ื•ืืชื” ืžืงื™ื™ื ืื™ื ื˜ืจืืงืฆื™ื” ืขื ื”ืืคืœื™ืงืฆื™ื” ื‘ืืžืฆืขื•ืช ื˜ื›ื ื•ืœื•ื’ื™ื™ืช RESTful . ืขืœ ืžื ืช ืœืกืคื•ื’ ื˜ื•ื‘ ื™ื•ืชืจ ืžื™ื“ืข ืขืœ ืื‘ื™ื‘, ื‘ื ื•ืกืฃ ืœืžืืžืจื™ื ื•ื”ืจืฆืื•ืช ื‘ื™ื•ื˜ื™ื•ื‘, ืชื•ื›ืœื• ืœืงืจื•ื ืžืกืคืจ ืกืคืจื™ื. ืื”ื‘ืชื™ ืžืื•ื“ ืืช ื”ืกืคืจ "ืื‘ื™ื‘ ื‘ืคืขื•ืœื”" ืžืืช ืงืจื™ื™ื’ ื•ื•ืœืœืก. ืื ื™ ืžืžืœื™ืฅ ืœืš ืœืงืจื•ื ืืช ื”ื’ืจืกื” ื”ืฉื™ืฉื™ืช, ืื ืืชื” ื™ื•ื“ืข ืื ื’ืœื™ืช ื”ื™ื˜ื‘. ืกืคืจ ื ื”ื“ืจ ื ื•ืกืฃ ืขืœ ืื‘ื™ื‘ ื”ื•ื "ืื‘ื™ื‘ 5 ืœืžืงืฆื•ืขื ื™ื". ื–ื” ื™ื•ืชืจ ืฆืคื•ืฃ. ื™ื•ืชืจ ื›ืžื• ืจืคืจื ืก ืฉื™ื•ืชืจ ื—ืฉื•ื‘ ืœื”ื—ื–ื™ืง ื‘ื”ื™ืฉื’ ื™ื“ ืžืืฉืจ ืœืงืจื•ื ื›ืจื™ื›ื” ืœื›ืจื™ื›ื”.ืจืฉื™ืžืช ื‘ื“ื™ืงื” ืฉืœ ืžืคืชื— Java.  ืžื” ืฉืžืคืชื— ืฆืจื™ืš ืœื“ืขืช - 7

  • ืžื’ืฃ ืื‘ื™ื‘

ื˜ื›ื ื•ืœื•ื’ื™ื” ื–ื• ืžืคืฉื˜ืช ืžืื•ื“ ืืช ื”ืฉื™ืžื•ืฉ ื‘-Spring. ืœื ืฉืžืชื™ ืืช ื–ื” ื‘ืกื•ืฃ ื”ืจืฉื™ืžื” ื‘ื’ื—ืžื”. ื•ืื›ืŸ, ื”ื•ื ืžืกืชืชืจ ื”ืจื‘ื” ืžืชื—ืช ืœืžื›ืกื” ื”ืžื ื•ืข, ื•ืœืžื™ ืฉืœื ืžื›ื™ืจ ืืช ืงืคื™ืฅ ื”ื•ื ื™ืœ, ื ืงื•ื“ื•ืช ืจื‘ื•ืช ืขืฉื•ื™ื•ืช ืœื”ื™ื•ืช ืœื ื‘ืจื•ืจื•ืช ืื• ืœื ืžื•ื‘ื ื•ืช. ืจืืฉื™ืช, ื›ื“ื™ ืœื”ื‘ื™ืŸ ื˜ื•ื‘ ื™ื•ืชืจ ื›ื™ืฆื“ ืคื•ืขืœื•ืช ืžืกื’ืจื•ืช Spring, ืขืœื™ืš ืœื”ืฉืชืžืฉ ื‘-Spring ืจื’ื™ืœ, ื•ืœืื—ืจ ืžื›ืŸ ืœื”ืคื™ืง ืืช ื›ืœ ื”ื™ืชืจื•ื ื•ืช ื”ื’ื‘ื•ื”ื™ื ื™ื•ืชืจ ืฉืœ ื”ืฉื™ืžื•ืฉ ื‘-Spring Boot. ืื ื™ ืžืžืœื™ืฅ ืœืš ื’ื ืœื”ื›ื™ืจ ืืช Spring Security ื•-Spring AOP. ืื‘ืœ ื‘ื ื™ื’ื•ื“ ืœื˜ื›ื ื•ืœื•ื’ื™ื•ืช ืฉืœืžืขืœื”, ืขื“ื™ื™ืŸ ืื™ืŸ ืฆื•ืจืš ื‘ื™ื“ืข ืขืžื•ืง ืฉืœ ืฉืชื™ ืืœื”. ื˜ื›ื ื•ืœื•ื’ื™ื” ื–ื• ืื™ื ื” ืžื™ื•ืขื“ืช ืœืžืชื—ื™ืœื™ื. ื‘ืจืื™ื•ื ื•ืช, ืžืคืชื—ื™ื ื–ื•ื˜ืจื™ื ืœื ื™ืฉืืœื• ืขืœื™ื”ื (ืœืžืขื˜ ืฉืืœื” ืฉื˜ื—ื™ืช ืื—ืช, ืื•ืœื™). ืงืจื ืกืงื™ืจื” ื›ืœืœื™ืช ืฉืœ ืžื”ืŸ ื”ื˜ื›ื ื•ืœื•ื’ื™ื•ืช ื”ืœืœื• ื•ื”ืขืงืจื•ื ื•ืช ืžืื—ื•ืจื™ ืขื‘ื•ื“ืชืŸ. ื‘ืžืืžืจ ื–ื” ื”ื–ื›ืจืชื™ ืฉื•ื‘ ื•ืฉื•ื‘ ืกืคืจื™ ืงืจื™ืื”. ืžืฆื“ ืื—ื“, ื–ื” ืœื ื—ื•ื‘ื”. ืืชื” ื™ื›ื•ืœ ืœื”ืคื•ืš ืœืžืชื›ื ืช ืžื‘ืœื™ ืœืงืจื•ื ืกืคืจ ืื—ื“, ืœืฆื‘ื•ืจ ืืช ื›ืœ ื”ื™ื“ืข ื”ื ื“ืจืฉ ืžืžืืžืจื™ื ืžืงื•ื•ื ื™ื ื•ืกืจื˜ื•ื ื™ ื”ื“ืจื›ื”. ืžืฆื“ ืฉื ื™, ื‘ืฉื•ืง ื”ืขื‘ื•ื“ื” ื”ืชื—ืจื•ืช ื‘ื™ืŸ ืžืคืชื—ื™ื ืžืชื—ื™ืœื™ื ื’ื‘ื•ื”ื” ื›ื™ื•ื, ืžื” ืฉืžืขืœื” ืืช ื”ืจืฃ ืœืžื” ืฉืžืชื—ื™ืœ ืฆืจื™ืš ืœื“ืขืช. ืœื›ืŸ, ื›ื›ืœ ืฉืชื“ืข ื™ื•ืชืจ, ื›ืš ืชืžืฆื ืžื”ืจ ื™ื•ืชืจ ืืช ื”ืขื‘ื•ื“ื” ื”ืจืืฉื•ื ื” ืฉืœืš ืขืœ ื™ื“ื™ ื”ืจืฉืžืช ื”ืžืจืื™ื™ืŸ ื‘ืจืžืช ื”ื™ื“ืข ืฉืœืš. ืชื•ื“ื” ืœื›ื•ืœื, ื•ืฉื’'ืื•ื•ื” ืชื”ื™ื” ืื™ืชืš.
ื”ืขืจื•ืช
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION