Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° PHP ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠΈΡ…Π° P++, Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚ със строга типизация

Π Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ Π½Π° Π΅Π·ΠΈΠΊΠ° PHP прСдставиха с идСя Π·Π° създаванС Π½Π° Π½ΠΎΠ² Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚ P++, ΠΊΠΎΠΉΡ‚ΠΎ Ρ‰Π΅ ΠΈΠ·Π΄ΠΈΠ³Π½Π΅ Π΅Π·ΠΈΠΊΠ° PHP Π½Π° Π½ΠΎΠ²ΠΎ Π½ΠΈΠ²ΠΎ. Π’ сСгашния си Π²ΠΈΠ΄ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ Π½Π° PHP сС затруднява ΠΎΡ‚ нСобходимостта Π΄Π° сС Π·Π°ΠΏΠ°Π·ΠΈ ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚Ρ‚Π° с Ρ‚Π΅ΠΊΡƒΡ‰ΠΈΡ‚Π΅ ΠΊΠΎΠ΄ΠΎΠ²ΠΈ Π±Π°Π·ΠΈ Π½Π° ΡƒΠ΅Π± ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΈΡ‚Π΅, ΠΊΠΎΠ΅Ρ‚ΠΎ Π·Π°Π΄ΡŠΡ€ΠΆΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π² ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΈ Ρ€Π°ΠΌΠΊΠΈ. ΠšΠ°Ρ‚ΠΎ ΠΈΠ·Ρ…ΠΎΠ΄ сС ΠΏΡ€Π΅Π΄Π»Π°Π³Π° ΠΏΠ°Ρ€Π°Π»Π΅Π»Π½ΠΎ Π΄Π° Π·Π°ΠΏΠΎΡ‡Π½Π΅ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ Π½Π° Π½ΠΎΠ² Π΄ΠΈΠ°Π»Π΅ΠΊΡ‚ PHP β€” P++, чиято Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Ρ‰Π΅ сС Π²ΠΎΠ΄ΠΈ Π±Π΅Π· ΠΎΠ³Π»Π΅Π΄ Π½Π° Π½ΡƒΠΆΠ΄Π°Ρ‚Π° ΠΎΡ‚ Π·Π°ΠΏΠ°Π·Π²Π°Π½Π΅ Π½Π° ΠΎΠ±Ρ€Π°Ρ‚Π½Π° ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚, ΠΊΠΎΠ΅Ρ‚ΠΎ Ρ‰Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈ добавянСто Π½Π° Ρ€Π΅Π²ΠΎΠ»ΡŽΡ†ΠΈΠΎΠ½Π½ΠΈ подобрСния Π² Π΅Π·ΠΈΠΊΠ° ΠΈ ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° остарСли ΠΊΠΎΠ½Ρ†Π΅ΠΏΡ†ΠΈΠΈ.

Най-Π·Π°Π±Π΅Π»Π΅ΠΆΠΈΠΌΠΈΡ‚Π΅ ΠΏΡ€ΠΎΠΌΠ΅Π½ΠΈ Π² P++ Ρ‰Π΅ Π±ΡŠΠ΄Π°Ρ‚ ΠΏΡ€Π΅ΠΌΠΈΠ½Π°Π²Π°Π½Π΅Ρ‚ΠΎ към ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° строга типизация, ΠΏΡ€Π΅ΠΌΠ°Ρ…Π²Π°Π½Π΅Ρ‚ΠΎ Π½Π° ΡƒΠΏΠΎΡ‚Ρ€Π΅Π±Π°Ρ‚Π° Π½Π° Ρ‚Π°Π³ΠΎΠ²Π΅ Β«β€Ή?Β», прСкратяванСто Π½Π° ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ°Ρ‚Π° Π½Π° array() Π² ΠΏΠΎΠ»Π·Π° Π½Π° синтаксиса Β«[]Β» ΠΈ Π·Π°Π±Ρ€Π°Π½Π°Ρ‚Π° Π·Π° ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Π½Π΅ Π½Π° Π³Π»ΠΎΠ±Π°Π»Π½ΠΎΡ‚ΠΎ пространство ΠΎΡ‚ ΠΈΠΌΠ΅Π½Π° Π·Π° Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π—Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»Π½ΠΎ Π΅ ΠΈΠ·Π±Ρ€Π°Π½ΠΎ ΠΈΠΌΠ΅Ρ‚ΠΎ P++ (PHP Plus Plus) ΠΏΠΎ аналогия с C++. PHP ΠΈ P++ Ρ‰Π΅ сС Ρ€Π°Π·Π²ΠΈΠ²Π°Ρ‚ успорСдно ΠΈ Ρ‰Π΅ ΠΈΠ·ΠΏΠΎΠ»Π·Π²Π°Ρ‚ Π΅Π΄Π½Π° ΠΈ ΡΡŠΡ‰Π° срСда Π·Π° изпълнСниС. НискоуровнСвитС ΠΊΠΎΠΌΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈ, структури ΠΎΡ‚ Π΄Π°Π½Π½ΠΈ, Ρ€Π°Π·ΡˆΠΈΡ€Π΅Π½ΠΈΡ ΠΈ ΠΎΠΏΡ‚ΠΈΠΌΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° производитСлността, ΠΊΠΎΠΈΡ‚ΠΎ Π½Π΅ са ΡΠ²ΡŠΡ€Π·Π°Π½ΠΈ със синтаксиса, Ρ‰Π΅ сС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Π²Π°Ρ‚ Π΅Π΄Π½ΠΎΠ²Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎ Π·Π° PHP ΠΈ P++, Π½ΠΎ Ρ€Π΅ΠΆΠΈΠΌΡŠΡ‚ Π½Π° PHP Ρ‰Π΅ Π·Π°ΠΏΠ°Π·ΠΈ ΠΎΠ±Ρ€Π°Ρ‚Π½ΠΎ ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚, Π° Π² P++ Ρ‰Π΅ бъдС възмоТно СкспСримСнтиранС с Π΅Π²ΠΎΠ»ΡŽΡ†ΠΈΡΡ‚Π° Π½Π° Π΅Π·ΠΈΠΊΠ°.

ΠšΠΎΠ΄ΡŠΡ‚ Π½Π° PHP ΠΈ P++ ΠΌΠΎΠΆΠ΅ Π΄Π° бъдС смСсван Π² Π΅Π΄Π½ΠΎ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅ ΠΈ изпълняван ΠΎΡ‚ Π΅Π΄ΠΈΠ½ ΠΈΠ½Ρ‚Π΅Ρ€ΠΏΡ€Π΅Ρ‚Π°Ρ‚ΠΎΡ€, Π½ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄ΡŠΡ‚ Π·Π° раздСлянС Π½Π° ΠΊΠΎΠ΄Π° всС ΠΎΡ‰Π΅ Π½Π΅ Π΅ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½. ВсС ΠΏΠ°ΠΊ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π΅ сС ΠΎΡ‚ΠΊΠ°Π·Π²Π°Ρ‚ ΠΎΡ‚ ΠΏΠ»Π°Π½ΠΎΠ²Π΅Ρ‚Π΅ Π·Π° Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅ Π½Π° вСрсия PHP 8, Π² която сС ΠΏΠ»Π°Π½ΠΈΡ€Π° Ρ‰Π΅ бъдС Π΄ΠΎΠ±Π°Π²Π΅Π½ JIT ΠΊΠΎΠΌΠΏΠΈΠ»Π°Ρ‚ΠΎΡ€ ΠΈ срСдства Π·Π° осигуряванС Π½Π° прСносимост с Π±ΠΈΠ±Π»ΠΈΠΎΡ‚Π΅ΠΊΠΈ Π½Π° C/C++. ΠŸΡ€ΠΎΠ΅ΠΊΡ‚ΡŠΡ‚ P++ всС ΠΎΡ‰Π΅ Π΅ Π² стадий Π½Π° обсъТданС Π½Π° ΠΏΡ€Π΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ. ОсновСн ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠ½ΠΈΠΊ Π½Π° P++ Π΅ Π—Π΅Π΅Π² Бураски (Zeev Suraski), Π΅Π΄ΠΈΠ½ ΠΎΡ‚ Π»ΠΈΠ΄Π΅Ρ€ΠΈΡ‚Π΅ Π² общността Π½Π° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈΡ‚Π΅ Π½Π° PHP, ΡΡŠΠΎΡΠ½ΠΎΠ²Π°Ρ‚Π΅Π» Π½Π° компанията Zend Technologies ΠΈ Π°Π²Ρ‚ΠΎΡ€ Π½Π° Π΄Π²ΠΈΠΆΠΊΠ° Zend Engine.

ΠžΡ‚ противорСчия Π‘Ρ€Π΅Π΄ ΠΎΠΏΠΎΠ½Π΅Π½Ρ‚ΠΈΡ‚Π΅ сС отбСлязва притСснСниС относно Π½Π΅Π΄ΠΎΡΡ‚Π°Ρ‚ΡŠΡ‡Π½ΠΈΡ‚Π΅ рСсурси Π·Π° Π½Π°ΠΏΡ€Π΅Π΄ΡŠΠΊΠ° Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° (Π² Ρ€Π΅ΠΆΠΈΠΌΠ° Π½Π° пълСн Ρ€Π°Π±ΠΎΡ‚Π΅Π½ Π΄Π΅Π½ Π½Π°Π΄ PHP работят само Π΄Π²Π°ΠΌΠ° Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΡ†ΠΈ), Π²ΡŠΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚Ρ‚Π° Π·Π° фрагмСнтация Π½Π° общността, конкурСнцията с Π²Π΅Ρ‡Π΅ ΡΡŠΡ‰Π΅ΡΡ‚Π²ΡƒΠ²Π°Ρ‰ΠΈΡ Π΅Π·ΠΈΠΊ. Hack (PHP със статична типизация), ΠΎΠΏΠΈΡ‚ΡŠΡ‚ Π½Π° ΠΏΡ€ΠΎΠ΅ΠΊΡ‚Π° HHVM (Π² ΠΊΡ€Π°ΠΉΠ½Π° смСтка ΠΎΡ‚ΠΊΠ°Π·Π°Π» сС Π΄Π° ΠΏΠΎΠ΄Π΄ΡŠΡ€ΠΆΠ° PHP ΠΈ Hack Π² Π΅Π΄ΠΈΠ½ runtime), нСобходимостта ΠΎΡ‚ промяна Π½Π° сСмантиката Π·Π° строго Ρ‚ΠΈΠΏΠΈΠ·ΠΈΡ€Π°Π½Π΅, опасността ΠΎΡ‚ стагнация Π½Π° PHP ΠΈ Ρ€Π°Π·Π²ΠΈΡ‚ΠΈΠ΅Ρ‚ΠΎ Π½Π° ΠΈΠ½ΠΎΠ²Π°Ρ†ΠΈΠΈ само Π² P++, Π²ΡŠΠΏΡ€ΠΎΡΠΈΡ‚Π΅ относно организацията Π½Π° ΡΡŠΠΆΠΈΡ‚Π΅Π»ΡΡ‚Π²ΠΎΡ‚ΠΎ ΠΈ взаимодСйствиСто ΠΌΠ΅ΠΆΠ΄Ρƒ PHP ΠΈ P++ (нСпосрСдствСната конвСрсия Π½Π° PHP ΠΊΠΎΠ΄ Π² P++ (ΡΠΈΠ½Ρ‚Π°ΠΊΡΠΈΡΡŠΡ‚ ΠΌΠΎΠΆΠ΅ Π΄Π° сС Ρ€Π°Π·Π»ΠΈΡ‡ΠΈ Ρ‚ΠΎΠ»ΠΊΠΎΠ²Π°, Ρ‡Π΅ Ρ‰Π΅ Π΅ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠ²Ρ‚ΠΎΡ€Π½ΠΎ написванС Π½Π° ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠ΅Ρ‚ΠΎ), Π½Π΅ΡΡŠΠ²ΠΌΠ΅ΡΡ‚ΠΈΠΌΠΎΡΡ‚Ρ‚Π° Π½Π° P++ с настоящитС инструмСнти Π·Π° PHP ΠΈ нСобходимостта Π΄Π° сС ΡƒΠ±Π΅Π΄ΠΈ Π°Π²Ρ‚ΠΎΡ€ΠΈΡ‚Π΅ Π½Π° инструмСнтитС, систСмитС Π·Π° тСстванС ΠΈ IDE Π΄Π° осигурят ΠΏΠΎΠ΄Π΄Ρ€ΡŠΠΆΠΊΠ° Π½Π° Π½ΠΎΠ²Π°Ρ‚Π° рСдакция).

Π˜Π·Ρ‚ΠΎΡ‡Π½ΠΈΠΊ: opennet.ru

ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ πŸ”₯ ΠšΡƒΠΏΠ΅Ρ‚Π΅ Π½Π°Π΄Π΅ΠΆΠ΄Π΅Π½ хостинг Π·Π° сайтовС с Π·Π°Ρ‰ΠΈΡ‚Π° ΠΎΡ‚ DDoS, VPS VDS ΡΡŠΡ€Π²ΡŠΡ€ΠΈ | ProHoster