Задать вопрос
  • Для чего класть подключение файла в буфер?

    @Nc_Soft
    Это чтобы выдать контент не сразу во время вызова, а собрать его в переменную.
    Ответ написан
    Комментировать
  • Насколько полное изучение Java c работой над реальными проектам поможет php программисту в его работе?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Несмотря на то что в вопросе немного каша, а в ответах - ад, ответ на вопрос, в общем-то, очевидный.

    В первую очередь с точки зрения простой житейской логики. Есть возможность? Надо воспользоваться. Вылезти из-под своей коряги посмотреть на неё со стороны всегда полезно, в любом деле.
    Возможность узнать что-то новое - всегда полезна. Может быть ты и вправду, как тут вещают некоторые ораторы, проникнешься омерзением к пхп и пойдешь писать на яве.

    Но помимо общих соображений есть и вполне практические.
    Надо понимать, что ООП везде один и тот же. Пхпшники учат ООП по книжкам, где все примеры на яве. То есть в предположении что никакой пользы потому что синтаксис разный ты неправ. Уровень синтаксиса в какой-то момент перестает иметь значение, когда ты начинаешь думать не синтаксисом, а паттернами.
    При том что учить ООП работая с по сути процедурным языком, и с исходно ОО-языком - две большие разницы.
    То есть, ты абсолютно прав том посыле, что изучение явы придаст мощное ускорение твоему пониманию ООП в пыхе.

    Хайлоад же проекты - это из немного другой области. Тут идет откат скорее в обратном направлении. Это как с денормализацией - БД должна быть нормализована, но из соображений производительности иногда приходится денормализовывать. ПОСЛЕ того как нормализовал.
    SOLID помогает делать большие проекты управляемыми. Но когда большой проект сталкивается с высокими нагрузками, иногда приходится жертвовать принципами ради производительности. Но тут главное, опять же, не путать направление: СНАЧАЛА делаем правильный дизайн, и только потом в критических точках снижаем накал абстракции, переходим на более низкий уровень. Самый наглядный пример - ORM, когда критические запросы переписываются на чистый SQL.

    Ну и пройти "полный курс" не имеет ничего общего с "полным изучением". С полного курса изучение всегда только начинается.
    Ответ написан
    Комментировать
  • Выбор операционки для слабого ноутбука?

    Adamos
    @Adamos
    Проблема не в ОС, а в дефиците памяти.
    Линукс может ее есть немножко поменьше, но браузер будет жрать столько же, и всякие зумы - тоже.
    Так что мечты о том, что поставишь Линь - и все залетает, можешь оставить сразу.
    На х32 оборачиваться поздно, сейчас оно сэкономит понюшку памяти, но окажется, что программ нет, особенно современных - они под Линь будут только х64.
    Для учебы я бы посоветовал все-таки Линукс, проблем с ним может быть больше, но их решение - это тоже учеба ;)

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

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    На самом деле надо качать Лару а ещё лучше - Симфони.
    Только не тупо зазубривать, а пытаться понять, почему там так сделано. Это и будет теми самыми примерами.
    И да - не Лару точно. Потому что там очень много магии которая полезна тем кто понимает как она работает и очень вредна для тех кто учится.

    И вот изучая нормальный фреймворк ты как раз и будешь учиться примерам хорошего кода.
    Начать можно с этой хрестоматийной статьи https://symfony.ru/doc/current/introduction/from_f...
    А потом переключаться на https://github.com/symfony/demo

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

    И кстати я совсем забыл. У нас же есть гений в своем отечестве, Дмитрий Елисеев. На фоне бесчисленных неграмотных выскочек типа хаудихи или, прости господи, руселлера, это реально человек который знает, о чем говорит.
    И - что гораздо реже случается - умеет донести эти знания до аудитории.
    И насколько я понимаю, твой уровень уже должен позволять в принипе понимать, о чем он говорит.
    В общем начать можно отсюда, https://elisdn.ru/blog/113/psr7-framework-http
    и дальше остальные материалы.
    Ответ написан
    8 комментариев
  • Как после удаления записей сделать id с 1?

    Adamos
    @Adamos
    TRUNCATE же, если вам надо тупо очистить таблицу. Инкремент при этом сбрасывается.
    Ответ написан
    Комментировать
  • Кто из нас прав про Инкапсуляцию в ООП?

    @WaterSmith
    Android-разработчик. Java, Kotlin
    Ваш друг описывает смысл инкапсуляции, а вы - средства для её реализации. На мой взгляд, ваш друг трактует в более общем смысле, более полно.
    Ответ написан
    Комментировать
  • Что создать для практики Php?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Начни пользоваться своими "блогом" и "соц-сетью". Сразу поймешь что пользоваться ими невозможно.
    И начинай допиливать потихоньку.

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

    Zoominger
    @Zoominger
    System Integrator
    Если устраиваетесь официально, то не оформят.
    Ни в Москве, ни в Николаевке, ни программиста, ни уборщицу.

    Остаётся только неофициальный вариант.
    Ответ написан
    7 комментариев
  • Как записать в базу ссылку?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Любая ошибка синтаксиса, вызванная передаваемыми в запрос данными говорит о том, что запрос в принципе пишется неверно. А по-старинке, путем запихивания всех переменных прямо в строку запроса.

    Так давно уже никто не делает (под "никто" я имею в виду программистов, а не самоучек, которые сами от горшка два вершка, а уже учат других как писать программы, и которых, к сожалению, развелось немыслимое количество, что на тостере, что - самое печальное - на ютубе, так что встретить нормальный код на просторах интернета - это реальная проблема).

    чтобы избежать любых проблем с данными, и сделать код читабельнее и короче, данныев базу данных следует отправлять отдельно от запроса.

    $sql = "INSERT INTO t (text, author_id) VALUES(?,?)"; // заменим переменные на специальные маркеры
    $stmt = $mysqli->prepare($sql); // подготовим запрос к выполнению.
    $stmt->bind_param("ss", $text, $author); // привяжем к нему переменные
    $stmt->execute(); // и выполним его

    три простых шага, а код становится гораздо чище, безопаснее и короче.
    причем это в mysqli три, а в PDO вообще два:
    $sql = "INSERT INTO t (text, author_id) VALUES(?,?)"; // заменим переменные на специальные маркеры
    $stmt = $pdo->prepare($sql); // подготовим запрос к выполнению.
    $stmt->execute([$text, $author]); // сразу и привяжем и выполним
    Ответ написан
    1 комментарий
  • Как вставить переменные строкой в bind_param?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    массивом
    $sql->bind_param($char, ...[$adin, $dwa, $tree]);

    Хороший вопрос, который, к сожалению, редко задают
    Ответ написан
    Комментировать
  • Как настроить X11-forwarding на линуксе?

    @AVKor
    Поставьте X2Go.
    Ответ написан
    Комментировать
  • Важен ли статус университета в глазах работодателей (для выпускников IT-специальностей)?

    opium
    @opium
    Просто люблю качественно работать
    ну тут есть особенности
    лига плюща явно ценится лучше чем все остальное гавно
    не русские универы явно выигрывают у русских
    личные пристрастия, например я учился в нгту и мне нравятся работники из нгту , хотя толку с этого.
    местный отстой, то есть у нас в нск три универа более менее готовят людей, остальные совсем для галочки, понятное дело я буду отбирать людей с нгту, нгу и сибгути.

    В целом это касается первой работы , то есть когда я беру человека без опыта, и если пришел чувак кототорый , что то может и без универа я возьму его сразу же.
    95 процентов случаев я нанимаю людей с каким то опытом , хотя бы несколько месяцев, тут я вообще даже резюме не читаю и не знаю с каких они универов , так как несколько месяцев опыта явно универ уже перевесили.
    Ответ написан
  • Как правильно интегрировать api в паттерн MVC?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    Так же
    Ответ написан
    Комментировать
  • Как сделать пермутацию массива по часовой стрелке?

    @MaLuTkA_UA
    $data  = [1,2,3,4,5,6,7];
    $last = array_pop($data);
    array_unshift($data, $last);
    echo implode(', ', $data);
    
    P.s.: читайте доку php.net
    Ответ написан
    Комментировать
  • Как выполнить задачу через 10 минут?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    ничего не надо выполнять
    надо понять наконец, как работает база данных.

    Записывать надо только время бронирования.
    Если разница междутекущим временем и временем бронирования меньше 10 минут, то статус забронирована. иначе - новая.
    Ответ написан
    2 комментария
  • Как определить что сервер именно локальный?

    @qid00000000
    Мало что знаю, но информацию найду в гугле
    Наверное, самый простой способ - через переменную окружения.

    Например, если установлена ENV_DEV_LOCAL, то ты на локалке :).
    Ответ написан
    Комментировать
  • Как справиться с синдромом самозванца на новом месте?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Очень сильно помогает от синдрома самозванца возможность заглянуть в код чрезвычайно уверенного в себе разработчика, получающего 300k в секунду, и обнаружить там лапшу с детскими ошибками.
    Ответ написан
    Комментировать
  • Как создать таблицу с двумя колонками обязательно разного значения?

    @immelnikoff
    Изучаю БД
    Начиная с версии MySQL 8.0.16 (ссылка):
    CREATE TABLE t1
    (
      column_id  INT,
      other_column_id INT,
      CONSTRAINT qwe CHECK (column_id <> other_column_id)
    );
    Ответ написан
    1 комментарий
  • В чем разница между dependency injection и методом, который возвращает тип класса?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    В чем разница между поехать в отпуск и футболом?
    И в том и в другом случае мы будем носить обувь.
    Вот пример: в холодильник можно поставить пиво, а по карточке можно снять деньги в банкомате.

    Ты, во-первых, не понимаешь что такое dependency injection, а во-вторых - что делает твой код.

    Если отбросить все умные и красивые слова которые ты тут наскреб по сусекам, то оба твоих примера - про type hinting. Только в первом кусочеке кода мы просим интерпретатор проверять входящий параметр, а во втором - возвращаемое значение.
    Type hinting двольно размытый термин, мне больше нравится "контроль типов", который используется в документации. Поскльку в данном случае это не "подсказка", а строгий контроль: скрипт упадёт с ошибкой если в первом примере в метод придет что-то отличное от класса реализующего интерфейс Foo, а во втором - если метод вернет что-то отличное от такого класса.

    Контроль типов надо использовать, чтобы твой код был чище и работал предсказуемее.

    При этом dependency injection вообще не имеет никакого отношения ни к твоим примерам, ни к контролю типов. Внедрение зависимости относится к классам, а не методам. И означает, что если твой класс использует в работе какие-то инструменты, то он берет их не из воздуха - из всяких жлобал, синглетонов, контейнеров, или клепает прямо на месте - а явно получает при создании в виде параметров конструктора.
    Внедрение зависимостей следует использовать, чтобы твой код было легче изменять и поддерживать.
    Ответ написан
    6 комментариев
  • Как лучше продемонстрировать проекты потенциальному работодателю?

    Zoominger
    @Zoominger
    System Integrator
    тоит ли заморочиться и по каждому проекту снять видосик с демонстрацией основных функ.возможностей ( ~2 минуты )

    Никто это смотреть не будет.

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

    This.
    Или не жадничать и купить хостинг за 200 рублей в месяц, где и развернуть свои поделия.
    Ответ написан
    1 комментарий