ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

КакиС Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ошибок, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ Π½Π° этапС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ программист Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π½Π°Ρ‚ΡŒ ΠΎ Π½ΠΈΡ….

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ описаниС самых распространСнных ошибок программирования, cΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ.

Если Π²Ρ‹ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² области программирования Ρ‚ΠΎ эта ΡΡ‚Π°Ρ‚ΡŒΡ Π½Π΅ΠΏΡ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π°ΠΌ интСрСсна: ΠžΡΠ½ΠΎΠ²Ρ‹ программирования для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ….

Ошибки программирования, Π±ΠΎΠ»Π΅Π΅ извСстныС ΠΊΠ°ΠΊ Β«Π‘Π°Π³ΠΈΒ» Π½Π° ΠΆΠ°Ρ€Π³ΠΎΠ½Π΅, Π±ΠΈΡ‡ любого Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ всС Ρ‡Π°Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² автоматичСском Ρ€Π΅ΠΆΠΈΠΌΠ΅, с Π±ΠΎΡ€Ρ‚ΠΎΠ²Ρ‹ΠΌΠΈ встраиваСмыми систСмами ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°ΠΌΠΈ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, программная ошибка ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅ послСдствия. Π‘Ρ‹Π»ΠΈ случаи, ΠΊΠΎΠ³Π΄Π° космичСскиС Ρ‡Π΅Π»Π½ΠΎΠΊΠΈ ΠΈ самолСты, Ρ€Π°Π·Π±ΠΈΠ²Π°Π»ΠΈΡΡŒ ΠΈΠ·-Π·Π° ошибки Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии Π²ΠΎ встраиваСмом ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΌ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ. Одна Π»Π°Π·Π΅ΠΉΠΊΠ°, оставлСнная Π² ΠΊΠΎΠ΄Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΡƒ Π²Ρ…ΠΎΠ΄Π° для Ρ…Π°ΠΊΠ΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ. К этим, ошибкам Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΎΡ‡Π΅Π½ΡŒ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ всС большС ΠΈ большС полагаСмся Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ ошибок Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ это ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ с сотнями языков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, встроСнноС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ систСмы, Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, прилоТСния для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚Ρ‹Ρ… Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅, Π½Π°ΡƒΡ‡Π½Ρ‹Π΅ вычислСния. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ прСдставлСны основныС Π²ΠΈΠ΄Ρ‹ ошибок.

Π’ΠΈΠΏ ошибок программирования

ОписаниС

ЛогичСская ошибка

Π­Ρ‚ΠΎ, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Π°Ρ ΠΈΠ· всСх ошибок. Когда написанная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° любом языкС ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Π½ΠΎ Π²Ρ‹Π΄Π°Π΅Ρ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄, нСдостаток Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π»ΠΎΠ³ΠΈΠΊΠ΅ основного программирования. Π­Ρ‚ΠΎ ошибка, которая Π±Ρ‹Π»Π° унаслСдована ΠΎΡ‚ нСдостатка Π² Π±Π°Π·ΠΎΠ²ΠΎΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅. Π‘Π°ΠΌΠ° Π»ΠΎΠ³ΠΈΠΊΠ°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ базируСтся вся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, являСтся ΡƒΡ‰Π΅Ρ€Π±Π½ΠΎΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠΉ ошибки Π½ΡƒΠΆΠ½ΠΎ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΊΠΎΠΏΠ°Ρ‚ΡŒ Π² алгоритмичСском ΡƒΡ€ΠΎΠ²Π½Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ поиска Ρ‚Π°ΠΊΠΎΠΉ ошибки.

БинтаксичСская ошибка

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΉ язык, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ C, Java, Perl ΠΈ Python ΠΈΠΌΠ΅Π΅Ρ‚ спСцифичСский синтаксис, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ написан ΠΊΠΎΠ΄. Когда программист Π½Π΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ «Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠΈ» спСцификациями ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ³ΠΎ языка, Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ошибка синтаксиса. Π’Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° ошибки Π»Π΅Π³ΠΊΠΎ ΡƒΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π½Π° этапС компиляции.

Ошибка компиляции

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ это процСсс, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, написанная Π½Π° языкС высокого уровня, прСобразуСтся Π² ΠΌΠ°ΡˆΠΈΠ½ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ. МногиС Π²ΠΈΠ΄Ρ‹ ошибок ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° этом этапС, Π² Ρ‚ΠΎΠΌ числС ΠΈ синтаксичСскиС ошибки. Иногда, синтаксис исходного ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π±Π΅Π·ΡƒΠΏΡ€Π΅Ρ‡Π½Ρ‹ΠΌ, Π½ΠΎ ошибка компиляции всС ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ связано с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ Π² самом компиляторС. Π­Ρ‚ΠΈ ошибки ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π° стадии Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Ошибки срСды выполнСния (RunTime)

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ скомпилирован, ΠΈ исполняСмый Ρ„Π°ΠΉΠ» Π±Ρ‹Π» создан. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π·Π΄ΠΎΡ…Π½ΡƒΡ‚ΡŒ с ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ. Ошибки ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π°Π²Π°Ρ€ΠΈΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠΈ рСсурсов носитСля. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ условия развСртывания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ, Π²Π΅Ρ€Π½ΡƒΠ²ΡˆΠΈΡΡŒ ΠΊ стадии кодирования.

АрифмСтичСская ошибка

МногиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ числовыС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ нСсколько матСматичСских вычислСний. АрифмСтичСскиС ошибки Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ «Π”Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ноль», ΠΈΠ»ΠΈ Π²Π΅Π΄ΡƒΡ‰ΠΈΠ΅ ΠΊ бСсконСчному Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ. Π­Ρ‚ΠΎ снова логичСская ошибка, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ исправлСна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡƒΡ‚Π΅ΠΌ измСнСния Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

Ошибки рСсурса

Ошибка взаимодСйствия

Они ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² связи с нСсоотвСтствиСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния с Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ интСрфСйсом ΠΈΠ»ΠΈ интСрфСйсом ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования. Π’ случаС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ошибка интСрфСйса ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ использования Π²Π΅Π±-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

Π˜Π½Ρ‚Π΅Π½ΡΠΈΠ²Π½ΠΎΠ΅ тСстированиС ΠΈ Ρ„Π°Π·Π° ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ Ρ†ΠΈΠΊΠ»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΡ€Π΅ΡΠ΅Ρ‡ΡŒ эти ошибки Π² Π·Π°Ρ€ΠΎΠ΄Ρ‹ΡˆΠ΅, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠ΅ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Много ошибок ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ планирования Π²ΠΎ врСмя стадии кодирования. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ошибок ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π² процСссС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ ΠΈ строгиС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Ошибки ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ обучСния, ΠΈ ΠΈΡ… Π½ΠΈΠΊΠΎΠ³Π΄Π° нСльзя ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ, Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρƒ вас ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Π½ΠΎΠ²Ρ‹Π΅ ошибки, Π½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ старыС Π²Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹!

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Ошибки программирования

ΠšΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚: ошибки программирования ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π°Π·Π΄Π΅Π»ΠΈΡ‚ΡŒ Π½Π° Ρ‚Ρ€ΠΈ Ρ‚ΠΈΠΏΠ°: синтаксичСскиС ошибки, ошибки Π²ΠΎ врСмя выполнСния ΠΈ логичСскиС ошибки.

1. БинтаксичСскиС ошибки

Ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚ компилятор, Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ синтаксичСскими ошибками ΠΈΠ»ΠΈ ошибками компиляции. БинтаксичСскиС ошибки ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ ошибок Π² конструкции ΠΊΠΎΠ΄Π°, Ρ‚Π°ΠΊΠΈΡ… ΠΊΠ°ΠΊ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ написаниС ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ³ΠΎ слова, пропуск Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎΠ³ΠΎ Π·Π½Π°ΠΊΠ° ΠΏΡƒΠ½ΠΊΡ‚ΡƒΠ°Ρ†ΠΈΠΈ ΠΈΠ»ΠΈ использованиС ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобки Π±Π΅Π· ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅ΠΉ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобки. Π­Ρ‚ΠΈ ошибки ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π»Π΅Π³ΠΊΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ компилятор Π³ΠΎΠ²ΠΎΡ€ΠΈΡ‚ Π²Π°ΠΌ, Π³Π΄Π΅ ΠΎΠ½ΠΈ находятся ΠΈ Ρ‡Ρ‚ΠΎ стало ΠΈΡ… ΠΏΡ€ΠΈΡ‡ΠΈΠ½ΠΎΠΉ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ с синтаксичСской ошибкой:

ΠŸΠΎΠΏΡ‹Ρ‚ΠΊΠ° компиляции ΠΏΡ€ΠΈΠ²Π΅Π΄Ρ‘Π½Π½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°:

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

Π‘ΡƒΠ΄Π΅Ρ‚ сообщСно ΠΎ Ρ‡Π΅Ρ‚Ρ‹Ρ€Ρ‘Ρ… ΠΎΡˆΠΈΠ±ΠΊΠ°Ρ…, Π½ΠΎ Π² Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° содСрТит Π΄Π²Π΅ ошибки:

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΎΠ΄Π½Π° ошибка часто Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΊ ΠΏΠΎΠΊΠ°Π·Ρƒ мноТСства ошибок компиляции Π² Ρ€Π°Π·Π½Ρ‹Ρ… строках, Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΉ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠΉ являСтся исправлСниС ошибок начиная с Π²Π΅Ρ€Ρ…Π½Π΅ΠΉ строки ΠΈ постСпСнно двигаясь Π²Π½ΠΈΠ·. Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ошибок, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Ρ€Π°Π½Π΅Π΅ Π²ΠΎΠ·Π½ΠΈΠΊΠ»ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΏΡ€ΠΎΠΈΠ·ΠΎΡˆΠ»ΠΈ ΠΏΠΎΠ·ΠΆΠ΅.

Π‘ΠΎΠ²Π΅Ρ‚: Ссли Π²Ρ‹ Π½Π΅ Π·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ ΠΎΡˆΠΈΠ±ΠΊΡƒ, Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½ΠΎ сравнитС Π²Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, символ Π·Π° символом с ΠΏΠΎΡ…ΠΎΠΆΠΈΠΌΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π°ΠΌΠΈ Π² тСкстС. На Π½Π°Ρ‡Π°Π»ΡŒΠ½ΠΎΠΌ этапС обучСния Π²Ρ‹, вСроятно, Π±ΡƒΠ΄Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²ΠΎΠ΄ΠΈΡ‚ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ исправляя ошибки синтаксиса. Π‘ΠΊΠΎΡ€ΠΎ Π²Ρ‹ Π±ΡƒΠ΄Π΅Ρ‚Π΅ Π·Π½Π°ΠΊΠΎΠΌΡ‹ с синтаксисом Java ΠΈ смоТСтС быстро ΠΈΡΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒ синтаксичСскиС ошибки.

2. Ошибки Π²ΠΎ врСмя выполнСния

Ошибки Π²ΠΎ врСмя выполнСния – это ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ приводят ΠΊ Π½Π΅Π½ΠΎΡ€ΠΌΠ°Π»ΡŒΠ½ΠΎΠΌΡƒ ΠΎΠ±Ρ€Ρ‹Π²Ρ‹ Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Они Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ Π²ΠΎ врСмя Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, Ссли срСда ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°Π΅Ρ‚ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΡŽ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ошибки Π²Π²ΠΎΠ΄Π° становятся ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌΠΈ ошибок Π²ΠΎ врСмя выполнСния. Ошибки Π²Π²ΠΎΠ΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ ΠΎΡ‚ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ Π²Π²ΠΎΠ΄Π° значСния, Π½ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Ρƒ, ΠΊΠΎΡ‚ΠΎΡ€ΡƒΡŽ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ. НапримСр, ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚ ΠΏΠΎΠ»ΡƒΡ‡Π΅Π½ΠΈΠ΅ числа, Π½ΠΎ вмСсто этого ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒ Π²Π²ΠΎΠ΄ΠΈΡ‚ строку, это ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ ошибкам Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅, связанным с Ρ‚ΠΈΠΏΠ°ΠΌΠΈ Π΄Π°Π½Π½Ρ‹Ρ….

Π”Ρ€ΡƒΠ³ΠΎΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ошибок Π²ΠΎ врСмя выполнСния – это Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ноль. Π­Ρ‚ΠΎ происходит, ΠΊΠΎΠ³Π΄Π° Π² цСлочислСнном Π΄Π΅Π»Π΅Π½ΠΈΠ΅ Π΄Π΅Π»ΠΈΡ‚Π΅Π»ΡŒ Ρ€Π°Π²Π΅Π½ Π½ΡƒΠ»ΡŽ. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹, которая Π²Ρ‹Π·ΠΎΠ²Π΅Ρ‚ ΠΎΡˆΠΈΠ±ΠΊΡƒ Π²ΠΎ врСмя выполнСния:

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

3. ЛогичСскиС ошибки

ЛогичСскиС ошибки происходят, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ выполняСт Ρ‚ΠΎ, для Ρ‡Π΅Π³ΠΎ ΠΎΠ½Π° Π±Ρ‹Π»Π° создана. Ошибки этого Ρ€ΠΎΠ΄Π° Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚ ΠΏΠΎ ΠΌΠ½ΠΎΠ³ΠΈΠΌ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π°ΠΌ. Допустим, Π²Ρ‹ написали ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, которая ΠΊΠΎΠ½Π²Π΅Ρ€Ρ‚ΠΈΡ€ΡƒΠ΅Ρ‚ 35 градусов ЦСльсия Π² градусы Π€Π°Ρ€Π΅Π½Π³Π΅ΠΉΡ‚Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ:

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

Π’Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚Π΅ 67 градусов ΠΏΠΎ Π€Π°Ρ€Π΅Π½Π³Π΅ΠΉΡ‚Ρƒ, Ρ‡Ρ‚ΠΎ являСтся Π½Π΅Π²Π΅Ρ€Π½Ρ‹ΠΌ. Π”ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ 95.0. Π’ Java цСлочислСнноС Π΄Π΅Π»Π΅Π½ΠΈΠ΅ ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Π°ΡΡ‚ΡŒ – дробная Ρ‡Π°ΡΡ‚ΡŒ отсСкаСтся, ΠΏΠΎ этой ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ Π² Java 9 / 5 это 1. Для получСния ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°, Π½ΡƒΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ 9.0 / 5, Ρ‡Ρ‚ΠΎ даст Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ 1.8.

ΠžΠ±Ρ‹Ρ‡Π½ΠΎ ошибки синтаксиса Π»Π΅Π³ΠΊΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΡ‚ΡŒ ΠΈ Π»Π΅Π³ΠΊΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ компилятор Π΄Π°Ρ‘Ρ‚ указания ΠΎΡ‚ΠΊΡƒΠ΄Π° ΠΏΡ€ΠΈΡˆΠ»Π° ошибка ΠΈ Ρ‡Ρ‚ΠΎ Π½Π΅ Ρ‚Π°ΠΊ. Ошибки Π²ΠΎ врСмя выполнСния Π½Π΅ Ρ‚Ρ€ΡƒΠ΄Π½Ρ‹ для поиска, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π° ΠΈ мСсто для этих ошибок Ρ‚Π°ΠΊΠΆΠ΅ показываСтся Π² консоли Π²ΠΎ врСмя прСрывания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Поиск логичСских ошибок, Π² свою ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΎΡ‡Π΅Π½ΡŒ слоТный. Π’ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Π³Π»Π°Π²Π°Ρ… Π²Ρ‹ ΠΎΠ±ΡƒΡ‡ΠΈΡ‚Π΅ΡΡŒ Ρ‚Π΅Ρ…Π½ΠΈΠΊΠ°ΠΌ трассировки ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ ΠΈ поиска логичСских ошибок.

4. РаспространённыС ошибки

ΠŸΡ€ΠΎΠΏΡƒΡΠΊ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобки, пропуск Ρ‚ΠΎΡ‡ΠΊΠΈ с запятой, пропуск ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ для строки ΠΈ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ написаниС ΠΈΠΌΡ‘Π½ – всё это самыС распространённыС ошибки для Π½ΠΎΠ²Ρ‹Ρ… программистов.

ЧастыС ошибки 1: ΠŸΡ€ΠΎΠΏΡƒΡ‰Π΅Π½Π½Ρ‹Π΅ Ρ„ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки

Π€ΠΈΠ³ΡƒΡ€Π½Ρ‹Π΅ скобки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для обозначСния Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ Π±Π»ΠΎΠΊΠΎΠ². КаТдой ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобкС Π΄ΠΎΠ»ΠΆΠ½Π° ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π°Ρ фигурная скобка. Распространённая ошибка – это пропуск Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобки. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ эту ошибки, ΠΏΠ΅Ρ‡Π°Ρ‚Π°ΠΉΡ‚Π΅ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ Ρ„ΠΈΠ³ΡƒΡ€Π½ΡƒΡŽ скобку всякий Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° ΠΏΠ΅Ρ‡Π°Ρ‚Π°Π΅Ρ‚Π΅ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ Ρ„ΠΈΠ³ΡƒΡ€Π½ΡƒΡŽ скобку ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ IDE Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°ΠΊ NetBeans ΠΈ Eclipse, Ρ‚ΠΎ IDE автоматичСски вставит Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ Ρ„ΠΈΠ³ΡƒΡ€Π½ΡƒΡŽ скобку ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π²Π²Π΅Π΄Ρ‘Π½Π½ΠΎΠΉ Π²Π°ΠΌΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π΅ΠΉ Ρ„ΠΈΠ³ΡƒΡ€Π½ΠΎΠΉ скобки.

ЧастыС ошибки 2: ΠŸΡ€ΠΎΠΏΡƒΡΠΊ Ρ‚ΠΎΡ‡ΠΊΠΈ с запятой

КаТдая инструкция заканчиваСтся ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅Π»Π΅ΠΌ инструкции (;). Часто Π½ΠΎΠ²Ρ‹Π΅ программисты Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡ΠΈΡ‚Π΅Π»ΡŒ инструкции для послСднСй инструкции Π² Π±Π»ΠΎΠΊΠ΅ ΠΊΠ°ΠΊ это ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

ЧастыС ошибки 3: ΠŸΡ€ΠΎΠΏΡƒΡΠΊ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ

Π‘Ρ‚Ρ€ΠΎΠΊΠΈ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΠΎΠΌΠ΅Ρ‰Π°Ρ‚ΡŒΡΡ Π² ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠΈ. Часто Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΠ΅ программисты Π·Π°Π±Ρ‹Π²Π°ΡŽΡ‚ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΡƒ Π² ΠΊΠΎΠ½Ρ†Π΅ строки ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π² ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅:

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

Если Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ IDE, Ρ‚Π°ΠΊΡƒΡŽ ΠΊΠ°ΠΊ NetBeans ΠΈ Eclipse, Ρ‚ΠΎ IDE автоматичСски вставит Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΡƒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·, ΠΊΠΎΠ³Π΄Π° Π²Ρ‹ Π²Π²Π΅Π»ΠΈ ΠΎΡ‚ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰ΡƒΡŽ ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΡƒ.

ЧастыС ошибки 4: ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ написаниС ΠΈΠΌΡ‘Π½

Java Ρ‡ΡƒΠ²ΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½Π°Ρ ΠΊ рСгистру. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ написаниС ΠΈΠΌΡ‘Π½ – частая ошибка для Π½ΠΎΠ²Ρ‹Ρ… программистов. НапримСр, ΠΏΠΈΡˆΡƒΡ‚ слово main ΠΊΠ°ΠΊ Main, Π° вмСсто String ΠΏΠΈΡˆΡƒΡ‚ string. ΠŸΡ€ΠΈΠΌΠ΅Ρ€:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π‘Π°ΠΌΡ‹Π΅ распространСнныС Ρ‚ΠΈΠΏΡ‹ ошибок Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ срСди Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ²

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

Но самоС интСрСсноС, Ρ‡Ρ‚ΠΎ Π΄Π°ΠΆΠ΅ программисты со срСдним ΠΎΠΏΡ‹Ρ‚ΠΎΠΌ Π΄ΠΎΠΏΡƒΡΠΊΠ°ΡŽΡ‚ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ пСрСчислСнныС Π½ΠΈΠΆΠ΅ ошибки, зная ΠΎ Π± ΠΈΡ… сущСствовании.

РаспространСнныС Ρ‚ΠΈΠΏΡ‹ ошибок Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρƒ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ²

ВсС пСрСчислСнныС Ρ‚ΠΈΠΏΡ‹ ошибок Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΠΈ Π² Ρ†Π΅Π»ΠΎΠΌ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ Ρƒ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² Π±Ρ‹Π»ΠΈ собраны ΠΈΠ· Ρ€Π°Π·Π½Ρ‹Ρ… источников, поэтому Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΈΡ… ΠΏΡ€ΠΈΠΏΠΈΡΡ‹Π²Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΌΠΎΠ»ΠΎΠ΄ΠΎΠΌΡƒ программисту. ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ располоТСния ошибок ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ случайный.

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ Π±Π΅Π· Ρ‡Π΅Ρ‚ΠΊΠΎΠ³ΠΎ ΠΏΠ»Π°Π½Π°

внСсСниС ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ послС ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠΈ.

К соТалСнию, ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΈ ΠΏΠΈΡˆΡƒΡ‚ ΠΊΠΎΠ΄ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π±Π΅Π· всяких ΠΏΠ»Π°Π½ΠΎΠ² ΠΈ исслСдований. Π’Π°ΠΊΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρ‹ срабатываСт, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠ΄ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ для нСбольшой Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ, Π½ΠΎ ΠΊΠΎΠ³Π΄Π° Π΄Π΅Π»ΠΎ коснСтся Ρ‡Π΅Π³ΠΎ-Ρ‚ΠΎ большого, Ρ‚ΠΎ Π±Π΅Π· планирования своСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ программиста ΠΆΠ΄Π΅Ρ‚ фиаско.

ИзлишнСС ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π’ ΠΎΠ±Ρ‰Π΅ΠΌ, ΠΊ ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΠΈΡ‚ΡŒ со всСй ΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²Π΅Π½Π½ΠΎΡΡ‚ΡŒΡŽ, Π½ΠΎ ΠΈ с ΠΎΡΡ‚ΠΎΡ€ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒΡŽ.

НСдооцСнка ваТности качСства ΠΊΠΎΠ΄ΠΈΠ½Π³Π°

Π’ качСство ΠΊΠΎΠ΄Π° входят Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΠΈ. Ошибка ΠΌΠ½ΠΎΠ³ΠΈΡ… Π½ΠΎΠ²ΠΈΡ‡ΠΊΠΎΠ² β€” это ориСнтация Π½Π° написаниС Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°. ΠŸΠΎΠ½ΡΡ‚Π½Ρ‹ΠΉ ΠΈ Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ β€” это ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Ссли ΠΎΠ½ нСпонятный ΠΈ Π½Π΅Ρ‡ΠΈΡ‚Π°Π±Π΅Π»ΡŒΠ½Ρ‹ΠΉ, Ρ‚ΠΎ ΠΎΠ½ прСвращаСтся Π² мусор, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΠΈ ΠΊ Ρ‡Π΅ΠΌΡƒ Ρ…ΠΎΡ€ΠΎΡˆΠ΅ΠΌΡƒ Π½Π΅ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚.

Π›ΡŽΠ±Π°Ρ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ° Ρ€Π΅ΡˆΠ°Π΅Ρ‚ΡΡ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ΠΌ

МногиС ΠΌΠΎΠ»ΠΎΠ΄Ρ‹Π΅ программисты Π±Ρ€ΠΎΡΠ°ΡŽΡ‚ΡΡ Π½Π° ΠΏΠ΅Ρ€Π²ΠΎΠ΅ ΠΆΠ΅ Π³ΠΎΠ΄Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ сво Π΅ ΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΈ Π²ΠΎΠΎΠ±Ρ‰Π΅ Π½Π΅ Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎ пСрспСктивах ΠΈ послСдствиях Ρ‚Π°ΠΊΠΎΠ³ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ. ΠŸΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ находится Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° ΠΈΡ… Π΅ΡΡ‚ΡŒ нСсколько ΡˆΡ‚ΡƒΠΊ ΠΈ производится Π²Π·Π²Π΅ΡˆΠ΅Π½Π½Ρ‹ΠΉ ΠΎΡ‚Π±ΠΎΡ€ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ подходящСго. РСшСниС Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ простым ΠΈ эффСктивным, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π² дальнСйшСм Π½Π΅ ΠΏΡ€ΠΈΡˆΠ»ΠΎΡΡŒ Β«Π»ΠΎΠΌΠ°Ρ‚ΡŒ Π³ΠΎΠ»ΠΎΠ²ΡƒΒ» ΠΏΠΎ ΠΏΠΎΠ²ΠΎΠ΄Ρƒ своСго Π²Ρ‹Π±ΠΎΡ€Π°.

Никогда Π½Π΅ ΠΎΡ‚ΡΡ‚ΡƒΠΏΠ»ΡŽ

«Никогда Π½Π΅ ΠΎΡ‚ΡΡ‚ΡƒΠΏΠ»ΡŽ!Β» β€” это Π»ΠΎΠ·ΡƒΠ½Π³ ΠΌΠ½ΠΎΠ³ΠΈΡ… ΠΌΠΎΠ»ΠΎΠ΄Ρ‹Ρ… программистов. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, Π² Π΄Ρ€ΡƒΠ³ΠΈΡ… сфСрах Π΄Π΅ΡΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΎΠ½ срабатываСт всСгда, Π½ΠΎ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΎΠ½ Π½Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Иногда Π½ΡƒΠΆΠ½ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΎΡ‚ΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ Π½Π°Π·Π°Π΄ ΠΈ воврСмя ΠΏΡ€ΠΈΠ·Π½Π°Ρ‚ΡŒ свою ΠΎΡˆΠΈΠ±ΠΊΡƒ, ΠΏΠΎΠΊΠ° ΠΎΠ½Π° Π½Π΅ принСсла ΠΎΡ‡Π΅Π½ΡŒ ΠΌΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅Π΄Π°.

НС ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π“ΡƒΠ³Π»ΠΎΠΌ

Поиск, ΠΏΠΎΠΌΠΈΠΌΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌ, Π΄Π°Π΅Ρ‚ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ взгля Π΄ со стороны Π½Π° Π²Π°ΡˆΡƒ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Π½ΡŒ Ρ†Π΅Π½Π½ΠΎ, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ΠΈΠ½ΠΎΠ³Π΄Π° вашС ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅Π²Π΅Ρ€Π½ΠΎΠ΅ ΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΡƒΡΡƒΠ³ΡƒΠ±ΠΈΡ‚ΡŒ ΡΠΈΡ‚ΡƒΠ°Ρ†ΠΈΡŽ Π² дальнСйшСм.

Π€Π°Π½Ρ‚Π°Π·ΠΈΠΈ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°

Π’Π°ΠΆΠ½ΠΎ ΠΊΠΎΠ΄ΠΈΡ‚ΡŒ ΠΈΠΌΠ΅Π½Π½ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°ΠΏΠ»Π°Π½ΠΈΡ€ΠΎΠ²Π°Π½ΠΎ Π½Π° сСгодня, поэтому Π½Π΅ Π½ΡƒΠΆΠ½ΠΎ ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π² Π±ΡƒΠ΄ΡƒΡ‰Π΅ΠΌ, Π° ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈ Π½Π΅ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ Π²ΠΎΠΎΠ±Ρ‰Π΅.

Π£Ρ…ΡƒΠ΄ΡˆΠ΅Π½ΠΈΠ΅ ΠΊΠΎΠ΄Π°

ВсСгда Π½ΡƒΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ «порядок» Π² Ρ‚ΠΎΠΌ мСстС, Π³Π΄Π΅ ΠΏΠ»Π°Π½ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ.

ИзлишнСС ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅

Π—Π°Ρ‡Π΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ тСсты

Если ΠΊΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, Ρ‚ΠΎ ΠΎΠ½ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ

Π Π°Π½ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΠ·Π΄Π½ΠΎ, Π½ΠΎ всС ΡΡ‚Π°Π»ΠΊΠΈΠ²Π°ΡŽΡ‚ΡΡ с Ρ‡ΡƒΠΆΠΈΠΌ ΠΊΠΎΠ΄ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ. ΠœΠΎΠ»ΠΎΠ΄Ρ‹Π΅ программисты ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚ Ρ‚Π°ΠΊ : Ρ€Π°Π· ΠΊΠΎΠ΄ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚, ΠΎΠ½ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ, поэтому Π΅Π³ΠΎ ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΡ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Ρ‚ΡŒ.

Β«Π›ΡƒΡ‡ΡˆΠ°Ρ ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ°Β»

Π’Π°ΠΆΠ½ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ свою Ρ€Π°Π±ΠΎΡ‚Ρƒ Ρ…ΠΎΡ€ΠΎΡˆΠΎ, Π° Π½Π΅ Π³Π½Π°Ρ‚ΡŒΡΡ Π±Π΅Π·Π΄ΡƒΠΌΠ½ΠΎ Π·Π° всСм «самым Π»ΡƒΡ‡ΡˆΠΈΠΌΒ» Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Ρ‚Π΅ΠΌ Π±ΠΎΠ»Π΅ Π΅ Π΅ сли ΠΎΠ± этом «самом Π»ΡƒΡ‡ΡˆΠ΅ΠΌΒ» Π²Ρ‹ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π²Ρ‡Π΅Ρ€Π° ΠΏΡ€ΠΎΡ‡ΠΈΡ‚Π°Π»ΠΈ Π² ΠΊΠ°ΠΊΠΎΠΉ-Ρ‚ΠΎ ΡΡ‚Π°Ρ‚ΡŒΠ΅.

ΠŸΡ€Π΅ΠΆΠ΄Π΅Π²Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ оптимизация

ΠžΡ€ΠΈΠ΅Π½Ρ‚Π°Ρ†ΠΈΡ Π½Π° ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Ρ

ΠŸΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π² ΠΏΠ΅Ρ€Π²ΡƒΡŽ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π΄ΡƒΠΌΠ°Π΅Ρ‚ ΠΎ своСм ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅, Π° Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΠΎΡ‚ΠΎΠΌ ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΎΠ½ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ всС Π·Π°Π΄ΡƒΠΌΠ°Π½Π½ΠΎΠ΅.

ΠžΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ ошибкам

Π›ΡŽΠ±Π°Ρ ошибка Π² вашСм ΠΊΠΎΠ΄Π΅ β€” это ΠΌΠ°Ρ€ΠΊΠ΅Ρ€, Ρ‡Ρ‚ΠΎ Π²Ρ‹ Π΄Π²ΠΈΠΆΠ΅Ρ‚Π΅ΡΡŒ Π² ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠΌ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ. ΠžΠΏΡ‹Ρ‚Π½Ρ‹Π΅ программисты Π·Π½Π°ΡŽΡ‚ ΠΎΠ± этом, поэтому ΠΊ ошибкам относятся спокойно. ΠœΠΎΠ»ΠΎΠ΄Ρ‹Π΅ программисты ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ошибок Π² ΠΊΠΎΠ΄Π΅ β€” это ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π΅Π³ΠΎ Π½ΠΈΠ·ΠΊΠΎΠ³ΠΎ качСства, поэтому ΠΈΡ… Π½Π΅ Π»ΡŽΠ±ΡΡ‚.

НуТно ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ΡŒ ΠΎΡ‚Π½ΠΎΡˆΠ΅Π½ΠΈΠ΅ ΠΊ ошибкам, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ ошибки β€” это Ρ…ΠΎΡ€ΠΎΡˆΠΎ, ΠΈΠΌΠ΅Π½Π½ΠΎ ΠΈΡ… Π½Π°Π»ΠΈΡ‡ΠΈΠ΅ ΠΈ исправлСниС ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚ ΡΡ‚Π°Ρ‚ΡŒ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½Ρ‹ΠΌ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠΌ.

ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ ΠΎΡ‚Π΄Ρ‹Ρ…Π°

ΠœΠΎΠ»ΠΎΠ΄Ρ‹Π΅ программисты ΡΡ‡ΠΈΡ‚Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ Ρ€Π°Π±ΠΎΡ‚Π°Ρ‚ΡŒ Π±Π΅Π· ΠΏΠ΅Ρ€Π΅Ρ€Ρ‹Π²ΠΎΠ² ΠΈ ΠΌΠ½ΠΎΠ³ΠΎ часов подряд β€” это ΠΊΡ€ΡƒΡ‚ΠΎ ΠΈ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ. ΠžΠΏΡ‹Ρ‚Π½Ρ‹Π΅ программисты Π·Π½Π°ΡŽΡ‚, Ρ‡Ρ‚ΠΎ ΠΌΠΎΠ·Π³Ρƒ Π½ΡƒΠΆΠ΅Π½ ΠΎΡ‚Π΄Ρ‹Ρ…, поэтому ΠΎΠ½ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Ρ‹, Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΊΠΈ ΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΈΠΊΠΈ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π½Π΅ Π·Π°Π±Ρ‹Π²Π°Ρ‚ΡŒ воврСмя ΠΎΡ‚Π΄Ρ‹Ρ…Π°Ρ‚ΡŒ.

Π—Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅

ΠœΡ‹ Π±ΡƒΠ΄Π΅ΠΌ ΠΎΡ‡Π΅Π½ΡŒ Π±Π»Π°Π³ΠΎΠ΄Π°Ρ€Π½Ρ‹

Ссли ΠΏΠΎΠ΄ ΠΏΠΎΠ½Ρ€Π°Π²ΠΈΠ²ΡˆΠ΅ΠΌΡΡ ΠΌΠ°Ρ‚Π΅Ρ€ΠΈΠ°Π»ΠΎΠΌ Π’Ρ‹ Π½Π°ΠΆΠΌΡ‘Ρ‚Π΅ ΠΎΠ΄Π½Ρƒ ΠΈΠ· ΠΊΠ½ΠΎΠΏΠΎΠΊ ΡΠΎΡ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтСй ΠΈ ΠΏΠΎΠ΄Π΅Π»ΠΈΡ‚Π΅ΡΡŒ с Π΄Ρ€ΡƒΠ·ΡŒΡΠΌΠΈ.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

КакиС Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Π΅ Ρ‚ΠΈΠΏΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… ошибок, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ°Ρ‚ΡŒ Π½Π° этапС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния ΠΈ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ программист Π΄ΠΎΠ»ΠΆΠ΅Π½ Π·Π½Π°Ρ‚ΡŒ ΠΎ Π½ΠΈΡ….

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ Π²Ρ‹ Π½Π°ΠΉΠ΄Π΅Ρ‚Π΅ описаниС самых распространСнных ошибок программирования, cΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΌΠΈ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΡ‚ΠΎΠ»ΠΊΠ½ΡƒΡ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ.

Если Π²Ρ‹ Π°Π±ΡΠΎΠ»ΡŽΡ‚Π½Ρ‹ΠΉ Π½ΠΎΠ²ΠΈΡ‡ΠΎΠΊ Π² области программирования Ρ‚ΠΎ эта ΡΡ‚Π°Ρ‚ΡŒΡ Π½Π΅ΠΏΡ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ Π²Π°ΠΌ интСрСсна: ΠžΡΠ½ΠΎΠ²Ρ‹ программирования для Π½Π°Ρ‡ΠΈΠ½Π°ΡŽΡ‰ΠΈΡ….

Ошибки программирования, Π±ΠΎΠ»Π΅Π΅ извСстныС ΠΊΠ°ΠΊ Β«Π‘Π°Π³ΠΈΒ» Π½Π° ΠΆΠ°Ρ€Π³ΠΎΠ½Π΅, Π±ΠΈΡ‡ любого Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ ΠΌΠ°ΡˆΠΈΠ½Ρ‹ всС Ρ‡Π°Ρ‰Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² автоматичСском Ρ€Π΅ΠΆΠΈΠΌΠ΅, с Π±ΠΎΡ€Ρ‚ΠΎΠ²Ρ‹ΠΌΠΈ встраиваСмыми систСмами ΠΈΠ»ΠΈ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°ΠΌΠΈ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΠΈΡ€ΡƒΡŽΡ‰ΠΈΠΌΠΈ ΠΈΡ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, программная ошибка ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Π΅ послСдствия. Π‘Ρ‹Π»ΠΈ случаи, ΠΊΠΎΠ³Π΄Π° космичСскиС Ρ‡Π΅Π»Π½ΠΎΠΊΠΈ ΠΈ самолСты, Ρ€Π°Π·Π±ΠΈΠ²Π°Π»ΠΈΡΡŒ ΠΈΠ·-Π·Π° ошибки Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠΌ обСспСчСнии Π²ΠΎ встраиваСмом ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠΌ ΠΎΠ±ΠΎΡ€ΡƒΠ΄ΠΎΠ²Π°Π½ΠΈΠΈ. Одна Π»Π°Π·Π΅ΠΉΠΊΠ°, оставлСнная Π² ΠΊΠΎΠ΄Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΡ‚ΡŒ Ρ‚ΠΎΡ‡ΠΊΡƒ Π²Ρ…ΠΎΠ΄Π° для Ρ…Π°ΠΊΠ΅Ρ€ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ эту ΡƒΡΠ·Π²ΠΈΠΌΠΎΡΡ‚ΡŒ. К этим, ошибкам Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚ΡŒΡΡ ΠΎΡ‡Π΅Π½ΡŒ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½ΠΎ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΡ‹ всС большС ΠΈ большС полагаСмся Π½Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Ρ‹.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ Π²ΠΈΠ΄Ρ‹ ошибок Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ

ΠšΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ это ΠΎΠ³Ρ€ΠΎΠΌΠ½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ с сотнями языков, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ ΠΌΠΈΠ»Π»ΠΈΠΎΠ½Ρ‹ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π­Ρ‚ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ систСмы, ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅, встроСнноС ΠΊΠΎΠ΄ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ систСмы, Π²Π΅Π±-Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ°, прилоТСния для ΠΌΠΎΠ±ΠΈΠ»ΡŒΠ½Ρ‹Ρ… ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌ, Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌ, Ρ€Π°Π·Π²Π΅Ρ€Π½ΡƒΡ‚Ρ‹Ρ… Π² ΠΈΠ½Ρ‚Π΅Ρ€Π½Π΅Ρ‚Π΅, Π½Π°ΡƒΡ‡Π½Ρ‹Π΅ вычислСния. Π’ Ρ‚Π°Π±Π»ΠΈΡ†Π΅ прСдставлСны основныС Π²ΠΈΠ΄Ρ‹ ошибок.

Π’ΠΈΠΏ ошибок программирования

ОписаниС

ЛогичСская ошибка

Π­Ρ‚ΠΎ, ΠΏΠΎΠΆΠ°Π»ΡƒΠΉ, Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Π°Ρ ΠΈΠ· всСх ошибок. Когда написанная ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° Π½Π° любом языкС ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅Ρ‚ ΠΈ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ, Π½ΠΎ Π²Ρ‹Π΄Π°Π΅Ρ‚ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Ρ‹ΠΉ Π²Ρ‹Π²ΠΎΠ΄, нСдостаток Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Π»ΠΎΠ³ΠΈΠΊΠ΅ основного программирования. Π­Ρ‚ΠΎ ошибка, которая Π±Ρ‹Π»Π° унаслСдована ΠΎΡ‚ нСдостатка Π² Π±Π°Π·ΠΎΠ²ΠΎΠΌ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ΅. Π‘Π°ΠΌΠ° Π»ΠΎΠ³ΠΈΠΊΠ°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ базируСтся вся ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, являСтся ΡƒΡ‰Π΅Ρ€Π±Π½ΠΎΠΉ. Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°ΠΉΡ‚ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ Ρ‚Π°ΠΊΠΎΠΉ ошибки Π½ΡƒΠΆΠ½ΠΎ Ρ„ΡƒΠ½Π΄Π°ΠΌΠ΅Π½Ρ‚Π°Π»ΡŒΠ½ΠΎΠ΅ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°. Π’Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π½Π°Ρ‡Π°Ρ‚ΡŒ ΠΊΠΎΠΏΠ°Ρ‚ΡŒ Π² алгоритмичСском ΡƒΡ€ΠΎΠ²Π½Π΅, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΡΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΠ±Π»Π°ΡΡ‚ΡŒ поиска Ρ‚Π°ΠΊΠΎΠΉ ошибки.

БинтаксичСская ошибка

ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½Ρ‹ΠΉ язык, Ρ‚Π°ΠΊΠΎΠΉ ΠΊΠ°ΠΊ C, Java, Perl ΠΈ Python ΠΈΠΌΠ΅Π΅Ρ‚ спСцифичСский синтаксис, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ Π±ΡƒΠ΄Π΅Ρ‚ написан ΠΊΠΎΠ΄. Когда программист Π½Π΅ ΠΏΡ€ΠΈΠ΄Π΅Ρ€ΠΆΠΈΠ²Π°Ρ‚ΡŒΡΡ «Π³Ρ€Π°ΠΌΠΌΠ°Ρ‚ΠΈΠΊΠΈ» спСцификациями ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΠΎΠ³ΠΎ языка, Π²ΠΎΠ·Π½ΠΈΠΊΠ½Π΅Ρ‚ ошибка синтаксиса. Π’Π°ΠΊΠΎΠ³ΠΎ Ρ€ΠΎΠ΄Π° ошибки Π»Π΅Π³ΠΊΠΎ ΡƒΡΡ‚Ρ€Π°Π½ΡΡŽΡ‚ΡΡ Π½Π° этапС компиляции.

Ошибка компиляции

ΠšΠΎΠΌΠΏΠΈΠ»ΡΡ†ΠΈΡ это процСсс, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°, написанная Π½Π° языкС высокого уровня, прСобразуСтся Π² ΠΌΠ°ΡˆΠΈΠ½ΠΎΡ‡ΠΈΡ‚Π°Π΅ΠΌΡƒΡŽ Ρ„ΠΎΡ€ΠΌΡƒ. МногиС Π²ΠΈΠ΄Ρ‹ ошибок ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΎΠΈΡΡ…ΠΎΠ΄ΠΈΡ‚ΡŒ Π½Π° этом этапС, Π² Ρ‚ΠΎΠΌ числС ΠΈ синтаксичСскиС ошибки. Иногда, синтаксис исходного ΠΊΠΎΠ΄Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π±Π΅Π·ΡƒΠΏΡ€Π΅Ρ‡Π½Ρ‹ΠΌ, Π½ΠΎ ошибка компиляции всС ΠΆΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΡ‚ΠΈ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ связано с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ Π² самом компиляторС. Π­Ρ‚ΠΈ ошибки ΠΈΡΠΏΡ€Π°Π²Π»ΡΡŽΡ‚ΡΡ Π½Π° стадии Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ.

Ошибки срСды выполнСния (RunTime)

ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹ΠΉ ΠΊΠΎΠ΄ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ скомпилирован, ΠΈ исполняСмый Ρ„Π°ΠΉΠ» Π±Ρ‹Π» создан. Π’Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ Π²Π·Π΄ΠΎΡ…Π½ΡƒΡ‚ΡŒ с ΠΎΠ±Π»Π΅Π³Ρ‡Π΅Π½ΠΈΠ΅ΠΌ ΠΈ Π·Π°ΠΏΡƒΡΡ‚ΠΈΡ‚ΡŒ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΈΡ‚ΡŒ Π΅Π΅ Ρ€Π°Π±ΠΎΡ‚Ρƒ. Ошибки ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π΅ Π°Π²Π°Ρ€ΠΈΠΈ ΠΈΠ»ΠΈ Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠΈ рСсурсов носитСля. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Π» ΠΏΡ€Π΅Π΄Π²ΠΈΠ΄Π΅Ρ‚ΡŒ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ условия развСртывания ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ, Π²Π΅Ρ€Π½ΡƒΠ²ΡˆΠΈΡΡŒ ΠΊ стадии кодирования.

АрифмСтичСская ошибка

МногиС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ числовыС ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Ρ‹Π΅, ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π²ΠΊΠ»ΡŽΡ‡Π°Ρ‚ΡŒ нСсколько матСматичСских вычислСний. АрифмСтичСскиС ошибки Π²ΠΎΠ·Π½ΠΈΠΊΠ°ΡŽΡ‚, ΠΊΠΎΠ³Π΄Π° ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒΡΡ с ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠ°ΠΌΠΈ, Ρ‚Π°ΠΊΠΈΠΌΠΈ ΠΊΠ°ΠΊ «Π”Π΅Π»Π΅Π½ΠΈΠ΅ Π½Π° ноль», ΠΈΠ»ΠΈ Π²Π΅Π΄ΡƒΡ‰ΠΈΠ΅ ΠΊ бСсконСчному Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρƒ. Π­Ρ‚ΠΎ снова логичСская ошибка, которая ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ исправлСна Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΏΡƒΡ‚Π΅ΠΌ измСнСния Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°.

Ошибки рСсурса

Ошибка взаимодСйствия

Они ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² связи с нСсоотвСтствиСм ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния с Π°ΠΏΠΏΠ°Ρ€Π°Ρ‚Π½Ρ‹ΠΌ интСрфСйсом ΠΈΠ»ΠΈ интСрфСйсом ΠΏΡ€ΠΈΠΊΠ»Π°Π΄Π½ΠΎΠ³ΠΎ программирования. Π’ случаС Π²Π΅Π±-ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ, ошибка интСрфСйса ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π½Π΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎΠ³ΠΎ использования Π²Π΅Π±-ΠΏΡ€ΠΎΡ‚ΠΎΠΊΠΎΠ»Π°.

Π˜Π½Ρ‚Π΅Π½ΡΠΈΠ²Π½ΠΎΠ΅ тСстированиС ΠΈ Ρ„Π°Π·Π° ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ Π½Π΅ΠΎΡ‚ΡŠΠ΅ΠΌΠ»Π΅ΠΌΠ°Ρ Ρ‡Π°ΡΡ‚ΡŒ Ρ†ΠΈΠΊΠ»Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠΌΠΎΡ‡ΡŒ ΠΏΡ€Π΅ΡΠ΅Ρ‡ΡŒ эти ошибки Π² Π·Π°Ρ€ΠΎΠ΄Ρ‹ΡˆΠ΅, ΠΏΡ€Π΅ΠΆΠ΄Π΅ Ρ‡Π΅ΠΌ ΠΏΡ€ΠΎΠΈΠ·ΠΎΠΉΠ΄Π΅Ρ‚ ΠΏΠΎΠ»Π½ΠΎΠΌΠ°ΡΡˆΡ‚Π°Π±Π½ΠΎΠ΅ Ρ€Π°Π·Π²Π΅Ρ€Ρ‚Ρ‹Π²Π°Π½ΠΈΠ΅ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния. Много ошибок ΠΌΠΎΠΆΠ½ΠΎ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ планирования Π²ΠΎ врСмя стадии кодирования. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ ошибок ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΡ€Π°Π²ΠΈΡ‚ΡŒ Π² процСссС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ обСспСчСния Ρ‡Π΅Ρ€Π΅Π· ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΡƒ ΠΈ строгиС ΠΏΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Ρ‹ ΠΎΡ‚Π»Π°Π΄ΠΊΠΈ. Ошибки ΡΠ²Π»ΡΡŽΡ‚ΡΡ Ρ‡Π°ΡΡ‚ΡŒΡŽ обучСния, ΠΈ ΠΈΡ… Π½ΠΈΠΊΠΎΠ³Π΄Π° нСльзя ΠΏΠΎΠ»Π½ΠΎΡΡ‚ΡŒΡŽ ΠΈΠ·Π±Π΅ΠΆΠ°Ρ‚ΡŒ, Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρƒ вас ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡΠ²Π»ΡΡ‚ΡŒΡΡ Π½ΠΎΠ²Ρ‹Π΅ ошибки, Π½ΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€ΡΡ‚ΡŒ старыС Π²Ρ‹ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹!

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹: 3 Ρ‚ΠΈΠΏΠ° ошибок

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΡ€ΠΈΠ·Π²Π°Π½Π° Π²Ρ‹ΠΈΡΠΊΠΈΠ²Π°Ρ‚ΡŒ Β«Π²Ρ€Π΅Π΄ΠΈΡ‚Π΅Π»Π΅ΠΉΒ» ΠΊΠΎΠ΄Π° ΠΈ ΡƒΡΡ‚Ρ€Π°Π½ΡΡ‚ΡŒ ΠΈΡ…. Π—Π° это ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ ΠΎΡ‚Π»Π°Π΄Ρ‡ΠΈΠΊ ΠΈ ΠΆΡƒΡ€Π½Π°Π»ΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ для Π²Ρ‹Π²ΠΎΠ΄Π° свСдСний ΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅.

Π§Π°ΡΡ‚ΡŒ 3 – ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π’ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΉ части ΠΌΡ‹ рассмотрСли исходный ΠΊΠΎΠ΄ ΠΈ Π΅Π³ΠΎ ΡΠΎΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠ΅.

ПослС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π²Ρ‹ Π½Π°Ρ‡Π½Π΅Ρ‚Π΅ ΠΏΡ€ΠΎΠ²Π΅Ρ€ΡΡ‚ΡŒ Ρ„Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚Ρ‹ ΠΊΠΎΠ΄Π° ΠΈΠ»ΠΈ ΠΏΠΎΠΏΡ‹Ρ‚Π°Π΅Ρ‚Π΅ΡΡŒ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ связанныС с Π½ΠΈΠΌ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹, Π²Ρ‹ ΠΎΡ‡Π΅Π½ΡŒ скоро ΠΏΠΎΠΉΠΌΠ΅Ρ‚Π΅, Ρ‡Ρ‚ΠΎ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ΠΌΠΎΠΌΠ΅Π½Ρ‚Ρ‹, ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° ΠΊΡ€Π°ΡˆΠΈΡ‚ΡΡ, прСрываСтся ΠΈ ΠΏΡ€Π΅ΠΊΡ€Π°Ρ‰Π°Π΅Ρ‚ Ρ€Π°Π±ΠΎΡ‚Ρƒ.

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

Π­Ρ‚ΠΎ часто Π²Ρ‹Π·Π²Π°Π½ΠΎ ошибками, извСстными ΠΊΠ°ΠΊ Π΄Π΅Ρ„Π΅ΠΊΡ‚Ρ‹ ΠΈΠ»ΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ситуации Π²ΠΎ врСмя выполнСния. Акт обнаруТСния ΠΈ удалСния ошибок ΠΈΠ· нашСго ΠΊΠΎΠ΄Π° – это ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹. Π’Ρ‹ Π»ΡƒΡ‡ΡˆΠ΅ Ρ€Π°Π·Π±Π΅Ρ€Π΅Ρ‚Π΅ΡΡŒ Π² ΠΎΡ‚Π»Π°Π΄ΠΊΠ΅ Π½Π° ΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠ΅, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ Π΅Π΅ ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Ρ‡Π°Ρ‰Π΅. ΠœΡ‹ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΡ‚Π»Π°ΠΆΠΈΠ²Π°Π΅ΠΌ собствСнный ΠΊΠΎΠ΄, Π½ΠΎ ΠΈ ΠΏΠΎΡ€ΠΎΠΉ Π΄Π΅Π±Π°ΠΆΠΈΠΌ написанноС Π΄Ρ€ΡƒΠ³ΠΈΠΌΠΈ программистами.

Для Π½Π°Ρ‡Π°Π»Π° Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ Ρ€Π°ΡΡΠΎΡ€Ρ‚ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ ΠΎΠ±Ρ‰ΠΈΠ΅ ошибки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π²ΠΎΠ·Π½ΠΈΠΊΠ½ΡƒΡ‚ΡŒ Π² исходном ΠΊΠΎΠ΄Π΅.

ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ Π²ΠΈΠ΄Ρ‹ ошибок программирования ΡƒΠΊΠ°Π·Π°Π½Ρ‹ Π²Π΅Ρ€Π½ΠΎ

БинтаксичСскиС ошибки

Π­Ρ‚ΠΈ эрроры Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ ΡΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ исходный ΠΊΠΎΠ΄ Π½Π° ΠΊΠΎΠΌΠΏΠΈΠ»ΠΈΡ€ΡƒΠ΅ΠΌΡ‹Ρ… языках программирования. Они ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ Π²ΠΎ врСмя компиляции ΠΈΠ»ΠΈ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ†ΠΈΠΈ исходного ΠΊΠΎΠ΄Π°. Они Ρ‚Π°ΠΊΠΆΠ΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Ρ‹ статичСскими Π°Π½Π°Π»ΠΈΠ·Π°Ρ‚ΠΎΡ€Π°ΠΌΠΈ (Π»ΠΈΠ½Ρ‚Π°ΠΌΠΈ). ΠŸΠΎΠ΄Ρ€ΠΎΠ±Π½Π΅Π΅ ΠΎ Π»ΠΈΠ½Ρ‚Π°Ρ… ΠΌΡ‹ ΡƒΠ·Π½Π°Π΅ΠΌ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ·ΠΆΠ΅.

БинтаксичСскиС ошибки Π² основном Π²Ρ‹Π·Π²Π°Π½Ρ‹ Π½Π°Ρ€ΡƒΡˆΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΉ Ρ„ΠΎΡ€ΠΌΡ‹ ΠΈΠ»ΠΈ структуры языка, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΠΈΡˆΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ°. Как ΠΏΡ€ΠΈΠΌΠ΅Ρ€, это ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π°Ρ Π·Π°ΠΊΡ€Ρ‹Π²Π°ΡŽΡ‰Π°Ρ скобка Π² ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠΈ.

БСмантичСскиС ошибки

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΈ ΠΏΠΎ ΠΏΡ€ΠΈΡ‡ΠΈΠ½Π΅ сСмантичСских ошибок, Ρ‚Π°ΠΊΠΆΠ΅ извСстных ΠΊΠ°ΠΊ логичСскиС. Они ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ слоТными ΠΈΠ· всСх, ΠΏΠΎΡ‚ΠΎΠΌΡƒ Ρ‡Ρ‚ΠΎ Π½Π΅ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π»Π΅Π³ΠΊΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Ρ‹. ΠŸΡ€ΠΈΠ·Π½Π°ΠΊ Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎ сущСствуСт сСмантичСская ошибка, – это ΠΊΠΎΠ³Π΄Π° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ° запускаСтся, ΠΎΡ‚Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°Π΅Ρ‚, Π½ΠΎ Π½Π΅ Π΄Π°Π΅Ρ‚ ΠΆΠ΅Π»Π°Π΅ΠΌΠΎΠ³ΠΎ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Π°.

Рассмотрим Π΄Π°Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

По порядку ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚Π°, Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΌΡƒ ΡΡ‚Π°Ρ€ΡˆΠΈΠ½ΡΡ‚Π²ΠΎΠΌ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ, с ΡƒΡ‡Π΅Ρ‚ΠΎΠΌ матСматичСских ΠΏΡ€Π°Π²ΠΈΠ» ΠΌΡ‹ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌ, Ρ‡Ρ‚ΠΎ сначала Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΡ†Π΅Π½Π΅Π½Π° Ρ‡Π°ΡΡ‚ΡŒ умноТСния, ΠΈ ΠΎΠΊΠΎΠ½Ρ‡Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ Π±ΡƒΠ΄Π΅Ρ‚ Ρ€Π°Π²Π΅Π½ 33. Если программист Ρ…ΠΎΡ‚Π΅Π», Ρ‡Ρ‚ΠΎΠ±Ρ‹ сначала происходило Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π΄Π²ΡƒΡ… чисСл, слСдовало ΠΏΠΎΡΡ‚ΡƒΠΏΠΈΡ‚ΡŒ ΠΈΠ½Π°Ρ‡Π΅. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ ΠΊΡ€ΡƒΠ³Π»Ρ‹Π΅ скобки, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΎΡ‚Π²Π΅Ρ‡Π°ΡŽΡ‚ Π·Π° смСщСниС ΠΏΡ€ΠΈΠΎΡ€ΠΈΡ‚Π΅Ρ‚ΠΎΠ² Π² матСматичСской Ρ„ΠΎΡ€ΠΌΡƒΠ»Π΅. Π˜ΡΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π²Ρ‹Π³Π»ΡΠ΄Π΅Ρ‚ΡŒ Ρ‚Π°ΠΊ:

3 + 5, Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½Π½Ρ‹Π΅ Π² скобки, Π΄Π°Π΄ΡƒΡ‚ ΠΆΠ΅Π»Π°Π΅ΠΌΡ‹ΠΉ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚, Π° ΠΈΠΌΠ΅Π½Π½ΠΎ 48.

Ошибки Π² процСссС выполнСния

Как ΠΈ сСмантичСскиС, ошибки Π²ΠΎ врСмя выполнСния Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠΈΠ²Π°ΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ компиляции. Π’ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ сСмантичСских ошибок, эти ΠΏΡ€Π΅Ρ€Ρ‹Π²Π°ΡŽΡ‚ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡƒ ΠΈ ΠΏΡ€Π΅ΠΏΡΡ‚ΡΡ‚Π²ΡƒΡŽΡ‚ Π΅Π΅ Π΄Π°Π»ΡŒΠ½Π΅ΠΉΡˆΠ΅ΠΌΡƒ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡŽ. Они ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹Π·Π²Π°Π½Ρ‹ Π½Π΅ΠΎΠΆΠΈΠ΄Π°Π½Π½Ρ‹ΠΌ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚ΠΎΠΌ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… вычислСний Π² исходном ΠΊΠΎΠ΄Π΅.

Π’ΠΎΡ‚ Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Π€Ρ€Π°Π³ΠΌΠ΅Π½Ρ‚ ΠΊΠΎΠ΄Π° Π²Ρ‹ΡˆΠ΅ Π±ΡƒΠ΄Π΅Ρ‚ скомпилирован ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ, Π½ΠΎ input 25 ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Ρ‚ ΠΊ ZeroDivisionError. Π­Ρ‚ΠΎ ошибка Π²ΠΎ врСмя выполнСния. Π”Ρ€ΡƒΠ³ΠΈΠΌ популярным ΠΏΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ являСтся StackOverflowError ΠΈΠ»ΠΈ IndexOutofBoundError. Π’Π°ΠΆΠ½ΠΎ Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΡ†ΠΈΡ€ΡƒΠ΅Ρ‚Π΅ эти ошибки ΠΈ ΡƒΠ·Π½Π°Π΅Ρ‚Π΅, ΠΊΠ°ΠΊ с Π½ΠΈΠΌΠΈ Π±ΠΎΡ€ΠΎΡ‚ΡŒΡΡ.

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ ошибки, связанныС с Ρ‚Π΅ΠΌ, ΠΊΠ°ΠΊ ваш исходный ΠΊΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ ΠΏΠ°ΠΌΡΡ‚ΡŒ ΠΈ пространство Π½Π° ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ΅ ΠΈΠ»ΠΈ Π² срСдС, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΎΠ½ Π·Π°ΠΏΡƒΡ‰Π΅Π½. Они Ρ‚Π°ΠΊΠΆΠ΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ошибками Π²ΠΎ врСмя выполнСния. Π’Π°ΠΊΠΈΠ΅ ошибки, ΠΊΠ°ΠΊ OutOfMemoryErrorand ΠΈ HeapError ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ Π²Ρ‹Π·Π²Π°Π½Ρ‹ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ваш исходный ΠΊΠΎΠ΄ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ слишком ΠΌΠ½ΠΎΠ³ΠΎ рСсурсов. Π₯ΠΎΡ€ΠΎΡˆΠ΅Π΅ Π·Π½Π°Π½ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² ΠΏΠΎΠΌΠΎΠΆΠ΅Ρ‚ Π½Π°ΠΏΠΈΡΠ°Ρ‚ΡŒ ΠΊΠΎΠ΄, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π»ΡƒΡ‡ΡˆΠ΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ рСсурсы. Π’ этом ΠΈ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

ΠŸΡ€ΠΎΡ†Π΅ΡΡ пСрСзаписи ΠΊΠΎΠ΄Π° для ΠΏΠΎΠ²Ρ‹ΡˆΠ΅Π½ΠΈΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ называСтся ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ. МСнСС популярноС Π½Π°ΠΈΠΌΠ΅Π½ΠΎΠ²Π°Π½ΠΈΠ΅ процСсса – Ρ€Π΅Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΈΠ½Π³. ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Π²Ρ‹ Ρ‚Ρ€Π°Ρ‚ΠΈΡ‚Π΅ большС Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π½Π° ΠΊΠΎΠ΄ΠΈΠ½Π³, Ρ‚ΠΎ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΈΠΌΠ΅Ρ‚ΡŒ это Π² Π²ΠΈΠ΄Ρƒ.

ΠžΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹

Π’ΠΎΡ‚ нСсколько совСтов ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΎΡ‚Π»Π°Π΄ΠΊΡƒ:

ДвигаСмся дальшС

ΠŸΠΎΠ·Π΄Ρ€Π°Π²Π»ΡΠ΅ΠΌ! Π‘Π»ΠΎΠ²ΠΎ «ошибка» ΡƒΠΆΠ΅ ΠΏΡ€ΠΈΠ²Ρ‹Ρ‡Π½ΠΎ для вас, Ρ€Π°Π²Π½ΠΎ ΠΊΠ°ΠΊ ΠΈ Β«ΠΎΡ‚Π»Π°Π΄ΠΊΠ° ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹Β». Π’ качСствС Π½ΠΎΠ²ΠΈΡ‡ΠΊΠ° Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΠΈΠ·ΡƒΡ‡Π°Ρ‚ΡŒ ΠΊΠΎΠ΄ΠΈΠ½Π³ ΠΏΠΎ ΠΊΠ½ΠΈΠ³Π°ΠΌ, ΠΎΠ½Π»Π°ΠΉΠ½-ΡƒΡ€ΠΎΠΊΠ°ΠΌ ΠΈΠ»ΠΈ Π²ΠΈΠ΄Π΅ΠΎ. И Π΄Π°ΠΆΠ΅ Ρ‡ΡƒΠΆΠΎΠΉ ΠΊΠΎΠ΄ Π²Π°ΠΌ Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ Π½Π΅ ΡΡ‚Ρ€Π°ΡˆΠ΅Π½ πŸ™‚

Π’ процСссС ΠΊΠΎΠ΄ΠΈΠ½Π³Π° ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Ρ‡Ρ‚ΠΎ-Π½ΠΈΠ±ΡƒΠ΄ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ½ΡΡ‚ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚. Но Π±ΡƒΠ΄ΡŒΡ‚Π΅ ΡƒΠ²Π΅Ρ€Π΅Π½Ρ‹ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ сами написали.

Π’ΠΈΠΊΡ‚ΠΎΡ€ΠΈΠ½Π°

ΠžΡ‚Π²Π΅Ρ‚Ρ‹ Π½Π° вопросы

2. БинтаксичСская ошибка: ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΡƒΠ΅Ρ‚ стартовая ΠΊΠ°Π²Ρ‹Ρ‡ΠΊΠ° Π² ΠΏΠ΅Ρ€Π²ΠΎΠΉ строкС.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *