Задать вопрос
  • Как эффективно выучить PHP?

    @0x131315
    ИМХО ключевое в php, когда имеешь базу - это не сам язык, а понимание того, какую роль он выполняет, и какое место в архитектуре эта роль занимает.
    Что касается php, то это в первую очередь скриптовый язык, созданный специально для связи Фронта с Беком, т.е. основная его функция - предоставление доступа к БД сервиса для html и js-кода, работающих на фронте.

    На сегодняшний день php решает следующие задачи:
    -доступ к БД
    -вспомогательные вычисления
    -шаблонизация
    -связь с внешними сервисами
    -предварительное кеширование

    Нужно в первую очередь понять как работает Веб, что такое фронт и бек, как они взаимодействуют, что такое хит, что такое ajax, как происходит идентификация посетителя (в частности как работают сессии и куки). Это основные моменты.

    ООП стоит учить и использовать сразу, благо основные идеи ООП просты и доступны каждому. А вот всякие паттерны и хитрости лучше отложить - постигнешь их по мере надобности.
    Все, что тебя отделяет от ООП - это автозагрузка, освой composer, и написание кода станет лёгким и приятным занятием.

    Очень важно иметь хоть какую-то базу по алгоритмам и структурам данных. Если её нет - её следует подтянуть. Без этого будешь строить велосипеды на ровном месте, и запугаешь народ своим кодом.

    Очень важно изучить php.net
    Не обязательно штудировать всё, но стоит как минимум взглянуть что там вообще есть.
    Этот сайт - нечто вроде документации по STDLIB языка, в ходе практики ты к нему будешь возвращаться ещё тысячи раз.
    Многие задачи, которые ты планируешь решить велосипедом, уже решены за тебя, и входят в язык - нужно просто знать про то, что язык умеет из коробки, а что нет.

    Очень важно поработать с фреймворками и репозиторием composer: большинство из задач, которые встанут перед тобой, уже кем-то решены, и существует либо готовая библиотека, либо как минимум публичный интерфейс, который ты можешь реализовать, чтобы не натворить архитектурных ошибок.
    Посмотри на symfony, почитай стандарты PSR.
    Большинство задач решается декомпозицией алгоритма, и сборкой приложения из готовых библиотек или PSR-интерфейсов. Остаётся только это всё сконфигурировать, и дописать немного кода для склейки всего этого в единое приложение.

    Т.к. php - это прокладка между html и БД, обязательно нужны основы html, SQL, и практика по развертыванию, проектированию, и управлению какой-либо СУБД.
    Наиболее популярная и простая СУБД - MySQL, на ней и сконцентрируйся. Намного позже, когда будет опыт, обязательно попробуй postgres - это намного более совершенная СУБД, но она сложнее MySQL, и новичкам с неё начинать не стоит.
    Особо углубляться в sql не стоит, т.к. в чистом виде с ним будешь работать мало, по большей части взаимодействие с БД сведётся к установке ORM-библиотеки, например doctrine2. Вот ORM стоит изучить плотнее, они предоставят тебе простой и приятный доступ к данным в БД, и обеспечат лёгкие миграции состояния БД.

    Что касается курсов - они очень ценные, особенно для новичка. Быстро вводят в строй.
    Но на практике все это выливается в год-два кодинга ради кодинга, что не особо эффективно.
    Обязательно нужна практика, желательно боевая.
    Советую либо посетить фриланс-биржу, и начать выполнять чьи-то хотелки, либо попробовать устроится, можно на удаленку, в какое-нибудь агентство, которое клепает сайты, и начать выполнять самые простые боевые задачи.
    Такая практика прокачает тебя намного быстрее, и не позволит забыть то, что выучил. Но без курсов она будет однонаправленна: в реальной работе разработчики используют лишь малую часть из того, что может php, но знать нужно все - это сделает тебя профессионалом.
    Поэтому нужно комбинировать практику с курсами.

    Очень сильно поможет хороший редактор кода, например phpstorm - он будет подсвечивать твои ошибки, предоставит интерактивные подсказки по коду, и позволит быстро инспектировать код большого проекта, параллельно работая с ФС сервера, БД и docker-контейнерами. Серьезно ускоряет и упрощает работу.
    Ответ написан
    4 комментария
  • Как объединить диски на Linux?

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

    @res2001
    Developer, ex-admin
    Зайдите в управление дисками и удалите все разделы с флэшки, потом создайте новый раздел и отформатируйте его. Никаких проблем с работой не будет, только данные с флэшки, естественно, потеряются.
    Ответ написан
    Комментировать
  • Можно-ли проверить соответствует-ли бинарик исходному коду?

    saboteur_kiev
    @saboteur_kiev Куратор тега Программирование
    software engineer
    В зависимости от версии компилятора, от флагов оптимизации и используемых библиотек, конечный бинарник может получаться разным, поэтому вы можете сравнить только воспроизведя оригинальную среду, в которой создавался бинарник.
    Частным случаем проверки можно считать цифровую подпись, как доказательство того, что текущий бинарник компилировался именно автором (компанией), а не кем-то, кто взял исходники и скомпилировал у себя, добавив что-то лишнее.

    А если взять например java, там в .jar файл еще куча timestamp добавляется при сборке, поэтому КАЖДЫЙ раз будет разный хеш у бинарника.
    Ответ написан
    Комментировать
  • Площадь треугольника. Разные результаты, данные одни. Почему?

    alsopub
    @alsopub
    Ну пусть будет:

    Треугольник однозначно задается либо тремя сторонами, либо двумя сторонами и углом.
    Вы свой треугольник задали тремя сторонами и углом одновременно?
    Ответ написан
    9 комментариев
  • Вытаскивание файлов с поврежденного диска?

    @vilgeforce
    Раздолбай и программист
    Если информация ценная - тащите к профессионалам.
    Ответ написан
    4 комментария
  • Как разместить базу 1С на удаленной машине?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    1. Ставить серверную 1С c SQL базой. Тогда оно не будет по инету качать всю базу, а выполнять запросы на сервере, и по инету будут только запросы и ответы.

    2. Организовать удаленный рабочий стол - на сервер2 поставить серверный виндовс, с клиент1 ходить туда по встроенному RDP.
    Ответ написан
    3 комментария
  • Как связать два маршрутизатора TP-LINK WR941ND?

    Jump
    @Jump Куратор тега Системное администрирование
    Системный администратор со стажем.
    Как Вам идея?
    Никак.

    Четыре этажа это четыре WiFi точки доступа соединенные кабелем, по точке на этаж.
    Без вариантов.
    Ответ написан
  • Как в текстовом редакторе vim выделять текст?

    sashkets
    @sashkets
    Прекратил отвечать после 24.02.2022
    Нужно тупо ман почитать, как минимум в интернете
    Ответ написан
    6 комментариев
  • Как получить доступ извне через двойной NAT к домашней linux машине?

    martin74ua
    @martin74ua Куратор тега Linux
    Linux administrator
    поднять впн на какойнить сервер в мире, получить от него реальный адрес
    Ответ написан
    3 комментария
  • Какой антивирус будет лучше?

    Taraflex
    @Taraflex
    Ищу работу. Контакты в профиле.
    Никакой.
    habrahabr.ru/post/101971
    Ответ написан
    Комментировать
  • Установка Debian с hdd?

    @AVKor
    А документацию лень прочитать?

    Всё описано: 1, 2.
    Ответ написан
    Комментировать
  • Почему роутер DIR-300NRU не видит сетевой кабель?

    eapeap
    @eapeap
    Сисадмин, Беларусь
    0) Переобожмите (замените) разъем на проводе. Не помогло?
    1. Для контроля тыкаете провод провайдера в дырки LAN своего роутера.
    а) Лампочки загораются? Проблема в роутере, пробуйте менять по гарантии.
    б) Не загораются? Вызывайте монтажника от провайдера, пусть разбираются.
    2. Гарантии нет? найдите/купите свитч, как и было - будет выполнять функции усилителя. Или купите другой роутер.
    Ответ написан
    1 комментарий
  • Как лан-тестер определяет метр, на котором обрыв?

    @throughtheether
    human after all
    Как он это узнает?
    Импульсная рефлектометрия (ссылка1,ссылка2).
    Ответ написан
    Комментировать