Ответы пользователя по тегу ООП
  • Как вы проектируете классы в ООП и их взаимодействие?

    @McBernar
    Вместо бумажки — miro. Но суть та же — описать объекты, методы и компоненты, в которых эти объекты собраны. Рядом тут же методы api и структура БД. Но это такоэ. Тоже с удовольствием почитал бы про правильный процесс и софт для проектирования.
    Ответ написан
    Комментировать
  • Как сделать задачу телефонная книга на js с использованием ООП?

    @McBernar
    Класса getcontact быть не может. Класс — это описание объекта.

    Пробуйте просто мыслить объектами — объект человека, объект телефонной книги. Соответственно, у объекта телефонной книги будет как раз метод getcontact, который вернет объект (экземпляр класса) человека.

    Куда тут засунуть третий класс — я не знаю. Разве что только какой-нибудь search, который умеет искать и вызывать методы объекта книги для рендера найденного.
    Ответ написан
    Комментировать
  • Профессиональное использование ООП?

    @McBernar
    Метод, как и просто любая функция, должен делать одну простую вещь и делать ее хорошо.
    Это главный принцип.
    Ответ написан
    Комментировать
  • Не знаю, как инкапсулировать подключение к бд?

    @McBernar
    Инкапсуляция — это спрятать внутрь, а не вынести наружу.

    А что непонятного в синглтоне?
    Ответ написан
    4 комментария
  • Почему плохо добавлять методы в конструктор?

    @McBernar
    А зачем вам один и тот же метод переписывать n-раз, если можно один раз присвоить его прототипу? В этом же и есть смысл ООП. Один из.
    Ответ написан
    4 комментария
  • Что делать с повторяющимися методами?

    @McBernar
    Наследование или трейты.
    Отнаследоваться не всегда возможно, а вот трейты вам точно никто не мешает делать.
    Ответ написан
    Комментировать
  • Какие инструменты, среды, паттерны, фреймворки вы применяете для разработки веб-приложений на PHP?

    @McBernar
    Знаете, Вадим, я не понимаю этого.

    Я сейчас ни в коем случае не пытаюсь как-то обидеть вас, но я, например, не являясь и не называя себя разработчиком, увлекаюсь кодом, как мне показалось, больше, чем вы:

    1. У меня сразу же появился Sublime и следом PhpStorm. Никаких ноутпад-плюс-плюсов. IDE предоставляют отличные дополнительные возможности, которые очень сильно облегчают написание кода, беря на себя кучу рутины.

    2. Как только я немного освоился с синтаксисом языка — сразу пошел разбираться с ООП и MVC, по дороге познакомившись с другими клевыми паттернами типа Синглтона, ORM, Active Record и прочих. Чтобы не делать совсем уж полной ерунды в проектах.

    3. Прекрасно понимая, что бэк без фронта редко живет, а тем более сейчас, когда кругом Ajax и SPA — учу JS, освоился c JQuery, скоро доберусь до Vue. Исключительно в целях саморазвития и из любопытства, без какого-то практического применения, только по мелочам если. Вот недавно освежил знания в CSS — копнул во флексбоксы и это оказалось дико круто.

    4. Заинтересовался промышленным деплоем проектов. Ведь не может быть так, чтобы команда разработки открывает ftp и закачивает файлы с обновлениями? Конечно нет, все значительно интереснее и, главное, практичнее. Начиная от автоматического обновления файлов через PhpStorm и заканчивая специальными сборщиками, сценариями и миграциями БД.

    5. Разобрался с Гитом и Гитхабом в частности.

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

    7. Читаю книги по алгоритмам и по правильному программированию.

    Впереди еще много всего — фреймворки, цмс-ки, свои проекты. И все это в больше степени для фана, а не для работы — я вообще дизайнер. Мне просто стало интересно — а что же дальше за картинками и хтмл/цсс.

    Может, вы просто не ту область выбрали, если у вас нет острого желания узнать чуть больше о разработке?
    Ответ написан
    1 комментарий
  • Какая разница между PSR-0 и PSR-4 (для новичков)?

    @McBernar
    Раньше автозагрузка была через autoload, сейчас через SPL. Вот и вся разница.
    Ответ написан
    Комментировать