До 30 ноября

Скидки до 81 000 руб и вторая профессия в подарок!

Главная | Все статьи | Дневник студента

Как понять, что достаточно разобрался в технологии? Разбираем особенности PHP

Время чтения статьи ~2 минуты
Статья написана студентом Хекслета. Мнение автора может не совпадать с позицией редакции
Как понять, что достаточно разобрался в технологии? Разбираем особенности PHP главное изображение

В процессе изучения программирование иногда довольно сложно уверенно сказать «Я достаточно разобрался в этом». Ну, а как же все-таки понять, где граница этой достаточности?

Сразу же возникает вопрос: нужно ли вообще останавливаться в обучении? Конечно же, нет. Я считаю, что нужно постоянно углубляться в целях повышения своей экспертности. Однако темп изучения можно снизить при достижении определенного порога. Например, чтобы переключиться на изучение другой технологии или языка программирования.

Задайте себе вопрос: «Какие недостатки имеет технология X?», — На такой вопрос сможет ответить только человек, который детально разобрался в данном вопросе. Конечно, если он не прочитал где-то об этом. О преимуществах и так можно узнать из официальных сайтов, блогов. А вот о минусах обычно не принято громко говорить. Но они есть в каждом языке программирования.

Также полезно: Компиляция и интерпретация кода что это такое и в чем разница

Для примера возьмем PHP. Привожу некоторые тезисы из статей в интернете на тему «Почему PHP так плох и ужасен».

  • «Нельзя создать десктопное приложение», — PHP не предназначен для этого. Это скриптовый язык для веба.
  • «У программ на PHP более низкая защищенность», — Спорно. Плохой код можно писать на любом языке.
  • «Нет статической типизации», — Для любителей можно установить declare(strict_types=1). Также использовать тайп-хинтинг. Я подозреваю? что в PHP намеренно не внедряли типизацию для понижения порога входа.
  • «Глобальные переменные в проекте», — Просто не пользуйтесь.
  • «Требуется apache, nginx, php-fpm», — Разве язык программирования должен включать в себя сервер? Например, для запуска Java-приложений требуется JVM, и это нормально.
  • «Нельзя компилировать», — В большинстве случаев PHP-программисту не требуется компиляция кода. Для особых случаев есть HHVM.

На мой взгляд, авторы этих тезисов не сильно разбираются в PHP. Потому что доводы не состоятельны. А вот теперь держите несколько настоящих недостатков:

  1. В PHP осталось большое наследие в виде неоднозначных имен встроенных функций и порядков аргументов в них. В каких-то названиях есть символы нижнего подчеркивания, в каких-то нет.
  2. Нет коробочной поддержки юникода. Для работы с юникодом нужно использовать функции с префиксом mb. Не так критично, но сколько новичков наступали на эти грабли?
Аватар пользователя Mr. Robot
Mr. Robot 17 октября 2022
0
Рекомендуемые программы
профессия
Осваивайте разработку веб-страниц, оживляйте дизайн макетов, публикуйте сайты и приложения. Отслеживайте ошибки в интерфейсе и устраняйте их
10 месяцев
с нуля
Старт 28 ноября
профессия
Обучитесь разработке бэкенда сайтов и веб-приложений — серверной части, которая отвечает за логику и базы данных
10 месяцев
с нуля
Старт 28 ноября
профессия
Выполняйте ручное тестирование веб-приложений, находите ошибки в продукте. Узнайте все о тест-дизайне.
4 месяца
с нуля
Старт 28 ноября
профессия
Научитесь разработке веб-приложений, сайтов и программного обеспечения на языке Java, программируйте и используйте структуры данных
10 месяцев
с нуля
Старт 28 ноября
профессия
новый
Собирайте, анализируйте и интерпретируйте данные, улучшайте бизнес-процессы и продукт компании. Обучитесь работе с библиотеками Python
9 месяцев
с нуля
Старт 28 ноября
профессия
Занимайтесь созданием сайтов, веб-приложений, сервисов и их интеграцией с внутренними бизнес-системами на бекенд-языке PHP
10 месяцев
с нуля
Старт 28 ноября
профессия
Создание веб-приложений со скоростью света
5 месяцев
c опытом
Старт 28 ноября
профессия
Обучитесь разработке визуальной части сайта — фронтенда, а также реализации серверной — бэкенда. Освойте HTML, CSS, JavaScript
16 месяцев
с нуля
Старт 28 ноября
профессия
Разработка бэкенд-компонентов для веб-приложений
10 месяцев
с нуля
Старт 28 ноября
профессия
новый
Организовывайте процесс автоматизации тестирования на проекте, обучитесь языку программирования JavaScript, начните управлять процессом тестирования
8 месяцев
c опытом
Старт 28 ноября