0 added
0 removed
Original
2026-01-01
Modified
2026-02-26
1
<p><strong>В процессе изучения программирование иногда довольно сложно уверенно сказать "Я достаточно разобрался в этом". Ну, а как же все-таки понять, где граница этой достаточности?</strong></p>
1
<p><strong>В процессе изучения программирование иногда довольно сложно уверенно сказать "Я достаточно разобрался в этом". Ну, а как же все-таки понять, где граница этой достаточности?</strong></p>
2
<p>Сразу же возникает вопрос: нужно ли вообще останавливаться в обучении? Конечно же, нет. Я считаю, что нужно постоянно углубляться в целях повышения своей экспертности. Однако темп изучения можно снизить при достижении определенного порога. Например, чтобы переключиться на изучение другой технологии или языка программирования.</p>
2
<p>Сразу же возникает вопрос: нужно ли вообще останавливаться в обучении? Конечно же, нет. Я считаю, что нужно постоянно углубляться в целях повышения своей экспертности. Однако темп изучения можно снизить при достижении определенного порога. Например, чтобы переключиться на изучение другой технологии или языка программирования.</p>
3
<p>Задайте себе вопрос: "Какие недостатки имеет технология X?", - На такой вопрос сможет ответить только человек, который детально разобрался в данном вопросе. Конечно, если он не прочитал где-то об этом. О преимуществах и так можно узнать из официальных сайтов, блогов. А вот о минусах обычно не принято громко говорить. Но они есть в каждом языке программирования.</p>
3
<p>Задайте себе вопрос: "Какие недостатки имеет технология X?", - На такой вопрос сможет ответить только человек, который детально разобрался в данном вопросе. Конечно, если он не прочитал где-то об этом. О преимуществах и так можно узнать из официальных сайтов, блогов. А вот о минусах обычно не принято громко говорить. Но они есть в каждом языке программирования.</p>
4
<blockquote><h3>Также полезно:</h3>
4
<blockquote><h3>Также полезно:</h3>
5
<p><a>Компиляция и интерпретация кода</a>что это такое и в чем разница</p>
5
<p><a>Компиляция и интерпретация кода</a>что это такое и в чем разница</p>
6
</blockquote><p>Для примера возьмем PHP. Привожу некоторые тезисы из статей в интернете на тему "Почему PHP так плох и ужасен".</p>
6
</blockquote><p>Для примера возьмем PHP. Привожу некоторые тезисы из статей в интернете на тему "Почему PHP так плох и ужасен".</p>
7
<ul><li><strong>"Нельзя создать десктопное приложение"</strong>, - PHP не предназначен для этого. Это скриптовый язык для веба.</li>
7
<ul><li><strong>"Нельзя создать десктопное приложение"</strong>, - PHP не предназначен для этого. Это скриптовый язык для веба.</li>
8
<li><strong>"У программ на PHP более низкая защищенность"</strong>, - Спорно. Плохой код можно писать на любом языке.</li>
8
<li><strong>"У программ на PHP более низкая защищенность"</strong>, - Спорно. Плохой код можно писать на любом языке.</li>
9
<li><strong>"Нет статической типизации"</strong>, - Для любителей можно<a>установить declare(strict_types=1)</a>. Также использовать тайп-хинтинг. Я подозреваю? что в PHP намеренно не внедряли типизацию для понижения порога входа.</li>
9
<li><strong>"Нет статической типизации"</strong>, - Для любителей можно<a>установить declare(strict_types=1)</a>. Также использовать тайп-хинтинг. Я подозреваю? что в PHP намеренно не внедряли типизацию для понижения порога входа.</li>
10
<li><strong>"Глобальные переменные в проекте"</strong>, - Просто не пользуйтесь.</li>
10
<li><strong>"Глобальные переменные в проекте"</strong>, - Просто не пользуйтесь.</li>
11
<li><strong>"Требуется apache, nginx, php-fpm"</strong>, - Разве язык программирования должен включать в себя сервер? Например, для запуска Java-приложений требуется JVM, и это нормально.</li>
11
<li><strong>"Требуется apache, nginx, php-fpm"</strong>, - Разве язык программирования должен включать в себя сервер? Например, для запуска Java-приложений требуется JVM, и это нормально.</li>
12
<li><strong>"Нельзя компилировать"</strong>, - В большинстве случаев PHP-программисту не требуется компиляция кода. Для особых случаев есть HHVM.</li>
12
<li><strong>"Нельзя компилировать"</strong>, - В большинстве случаев PHP-программисту не требуется компиляция кода. Для особых случаев есть HHVM.</li>
13
</ul><p>На мой взгляд, авторы этих тезисов не сильно разбираются в PHP. Потому что доводы не состоятельны. А вот теперь держите несколько настоящих недостатков:</p>
13
</ul><p>На мой взгляд, авторы этих тезисов не сильно разбираются в PHP. Потому что доводы не состоятельны. А вот теперь держите несколько настоящих недостатков:</p>
14
<ol><li>В PHP осталось большое наследие в виде неоднозначных имен встроенных функций и порядков аргументов в них. В каких-то названиях есть символы нижнего подчеркивания, в каких-то нет.</li>
14
<ol><li>В PHP осталось большое наследие в виде неоднозначных имен встроенных функций и порядков аргументов в них. В каких-то названиях есть символы нижнего подчеркивания, в каких-то нет.</li>
15
<li>Нет коробочной поддержки юникода. Для работы с юникодом нужно использовать функции с префиксом mb. Не так критично, но сколько новичков наступали на эти грабли?</li>
15
<li>Нет коробочной поддержки юникода. Для работы с юникодом нужно использовать функции с префиксом mb. Не так критично, но сколько новичков наступали на эти грабли?</li>
16
</ol>
16
</ol>