• Как объяснять кадровикам быстрые смены работы?

    php666
    @php666
    PHP-макака
    Российское айти - это дно. За свои 10+ лет в айти я работал лишь в двух компаниях, где цивилизованные условия труда. В остальном - это рабство, идиоты начальники (в айти очень много идиотов), переработки, несоблюдение ТК и пр. прелести.

    Приходите и говорите, почему вы уходили - прямо и открыто.

    И еще. Надо научиться правильно выбирать работу - ВЫ ЭТО НЕ УМЕЕТЕ. Почитайте мою статью, там очень много написано как надо делать: Выбор правильного места работы или как работая про... - ваша проблема в том, что вы ТЕРПИЛА по жизни, как и все айтишники, соглашаетесь работать в каких-то шаражках и при этом еще перерабатываете. А действительно адекватных работадателей ОЧЕНЬ мало - никто не оценит ваши труды. Им всем класть на вас, для них для всех вы пушечное мясо, расходный материал, солдатики.
    Ответ написан
    5 комментариев
  • Какие интернет-профессии посоветуете?

    php666
    @php666
    PHP-макака
    Какие профессии вы можете посоветовать дома?
    Нет таких.
    Выбрось из головы мысль "работать дома". Работа из дома - это миф, созданный школьниками для школьников вроде тебя.

    И вот я думаю верстку сайтов оставить как хобби, которым я буду заниматься и развиваться и дальше
    не нужна тебе эта деятельность и уж тем более это хобби. Тут полно людей, индустрия переполнена айтишниками, которые в нашей стране никому не нужны, вакансии только в городах-миллионниках, за МКАДом зарплаты в IT как у подсобного рабочего в Москве.

    Было бы мне 17 лет в 2019 - я бы в автодело пошел. Научиться ремонтировать иномарки и потом открыть свое предприятие. Всяко лучше, чем всю эту хрень учить. Сейчас машина у каждого второго, без работы не останешься + полезные навыки. А сайты мало кому сейчас нужны, они скоро в целом исчезнут, останутся только монополисты. Да и ты сам увидел, что конкуренция дикая - был бы ты автомеханник частный - у тебя бы было ну 5-6 конкурентов на районе, а в условиях интернета у тебя их может быть до бесконечности.
    Ответ написан
    2 комментария
  • В чем отличие возвращаемого массива от объектов?

    php666
    @php666
    PHP-макака
    Для чего, в данном случае, возвращать объекты?
    Твой вопрос говорит о том, что ты не понимаешь разницу между объектом и массивом.

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

    Прочти хот-бы пол книги "Гради Буч - Объектно-ориентированный анализ и проектирование". И ты перестанешь задавать эти детские вопросы.

    Чем мне это поможет на конкретном примере?
    ОК. Пример. Давай допустим, что твой объект Product не просто содержит свойства, а каждое свойство..... да - тоже является объеком. Итак, перепишем конструктор, добавим несколько свойств новых, для примера:

    public function __construct(int $id, string $name, int $price, $decription, $discount_date){
        $this->id = $id;
        $this->name = new EntityText($name);
        $this->price = new Price($price);
        $this->decription = new EntityText($decription);
        $this->discount_date = new MyDate($discount_date); // MyDate extends \Datetime
      }


    Требование к одной из страниц магазина, показывающего продукт: нужно отображать цену в RUB и в USD. Текст описания не должен быть более 200 символов. Показать дату окончания скидки в человеческом формате.

    <html>
     <div id="product<?=$obj->getId()?>">
      <h1><?=$obj->getName()->getTextValue()?></h1>
      <p>Цена: <?=$obj->getPrice()->getUSD()->asText()?></p> <!-- например, выведет "101 доллар США" (c правильной формой слова "доллар/доллара/долларов") -->
      <p><?=$obj->getDescription()->getTextValue(200)?></p>
      <p>Скидка действут <?=$obj->getDiscountDate()->formatAsHuman()?></p> <!-- выведет "еще 2 дня" -->
     </div>
    </html>


    Теперь вопрос: как это будет выглядеть на массивах? Разницу видишь?

    и начинай читать отсюда- https://dom-knig.com/read_210105-3
    Ответ написан
  • Как создавать объект с большим количеством свойств?

    php666
    @php666
    PHP-макака
    $product = new Product();
    $product->setData($data); // $data - массив со значениями. 
    // Берем ключи каждого элемента $data, приводим к camelCase, пытаемся найти такой set-метод 
    // в объекте product и вызвать его с относящимся к ключу значением
    print_r($product->getModelErrors()); // проверяем, насколько корректно заполнен продукт

    как работает getModelErrors: у класса product есть некая карта допустимых свойств модели. Обязательное ли свойство или нет. Если нет, то какое дефолтное значение. Можно навесить валидацию на каждое из описанных свойств. Т.е. создать систему валидаторов и к каждому свойству применять от 0 до бесконечного множества различных валидаторов. У меня в фреймворке это сделано так.
    Ответ написан
    Комментировать
  • Как найти единомышленников для проекта, или влиться в стартап?

    php666
    @php666
    PHP-макака
    хочу делать что-то свое, начинать что-то новое, без привязки к офису
    Можно таксовать (вчера ехал с таксистом, который взял ипотеку - значит, хорошо платят). Можно на рынке место найти и торговать чем-либо.

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

    где бы найти единомышленников
    дураков нет. Кто хотел свой проект - давно его запилили, вне зависимости от того, оказался он провальный или нет.

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

    php666
    @php666
    PHP-макака
    Подскажите, где ещё можно клиентов поискать, куда они ушли? :)
    они никуда не ушли, просто в стране нет денег, мелкий бизнес трещит по швам - говорю как человек, у которого родители занимались последние 20 лет бизнесом. Я лично сдавал битком набитую машину товара в металлолом, за несколько сот кг того, что раньше отлично продавалось получал по 2000 рублей))

    Мелкие ИМ скоро уйдут в прошлое, как ушли в прошлое т.н. "домашние страницы", будущее за SAAS. Выгоднее в сто раз купить аккаунт на tiu.ru, чем платить сотни тысяч рублей за разработку и поддержку своего сайта. И только очень крупные игроки могут позволить себе вкладываться в свои ИМ.
    Ответ написан
    2 комментария
  • Почему в PHP строки и массивы не являются объектами?

    php666
    @php666
    PHP-макака
    Теоретически это легко сделать - создать такие обертки. Практически - по факту тебе придется поддерживать язык в языке. А так да - очень жаль, что этого нет. Вся ООПшность языка опрокидывается в парадокс..
    Ответ написан
    Комментировать
  • Деактивация мозга?

    php666
    @php666
    PHP-макака
    боишься где-то ходить по улицам - не дай бог, что дыхнёшь запах курящих людей, который может навредить мозгу, может что съел не так и от того, что в привычные для нас продукты ложат всякую дрянь
    Всю жизнь пью, курю и работаю программистом.

    может я кажусь ненормальным человеком, но я хочу знать ПОЧЕМУ ТАК?!
    ложные ориентиры в жизни - какой-то оголтелый карьеризм и крайне извращенная форма задротства, в совокупности с фобиями и страхами.
    Ответ написан
    Комментировать
  • Хорошо ли написан класс БД?

    php666
    @php666
    PHP-макака
    1. Мое личное мнение - использовать PDO как движок для своей обертки - очень плохая идея. PDO универсален, тем самым он ограничивает многие возможности. По сути, это весьма усложненная и неторопливая махина.

    2. Метод query до неприличия простой. Я не вижу тут никаких плюшек, нет ни одного преимущества обертки над самим PDO. Я писал много времени обертку над MySql, можешь посмотреть, что обычно добавляется к возможностям.

    3. У обертки не должно быть методов типа getRows, getColumn и тп. отсебятины. Её функция - обрабатывать запросы, отдавать ответы и какие-то вспомогательные функции, типа lastInsertId и отдавать ошибки. Все остальное должно реализовываться в вышестоящем слое, неважно как ты его назовешь.

    4.
    всё началось с фразы "никакой работы с БД не должно быть в модели".
    это правильно и это ты правильно понял, абстрагировав слой БД от слоя модели. Советую почитать книгу Фаулера "Архитектуру корп. пр. приложений" и особенно главу "Источники данных". Без этой концепции ты дальше своей подделки не уедешь в знаниях.
    Ответ написан
    7 комментариев
  • Есть ли способ привести строку явно к типу php?

    php666
    @php666
    PHP-макака
    Опиши задачу. Сейчас все ответы - гадание на кофейной гуще. Что тебе нужно?
    Ответ написан
    3 комментария
  • Как перегружать методы в php?

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

    Вопрос не имеет смысла, ибо автор не до конца рассказал о своей проблеме, зачем ему это надо.

    Примеры кода - это вообще бред чистой воды. Нет никакого смысла делать кучу методов с НЕЯВНЫМ названием или перегружать их, что бы программист и редактор вставали в ступор при виде этого кошмара.
    Тут достаточно создать методы

    findByEmail(string $email);
    findByID($id);

    и все станет на свои места.

    и еще.
    методы типа findByparams(), findOne() и тп - это ORM.
    Это прослойка между низкоуровневым механизмом получения данных из СУБД и слоем высокого уровня
    Так вот слой высокого уровня НЕ должен быть максимально гибок, не надо там иметь чудо-методы, которые сеют и жнут. Там должны быть методы findByEmail, findByName, getListByAge и т.п.

    Абстрактно можно так представить данную архитектуру слоеного пирога:
    User class // объект для "тупых" пользователей, что бы в ноги не выстреливали
    ORM // трансляция в объекты 
    mysqli/pdo user cover // возможно, какая-то более удобная обертка над драйверами mysqli/pdo
    mysqli/pdo // родные библиотеки PHP для СУБД
    СУБД // база данных 
    файловая система и прочий АД
    Ответ написан
    5 комментариев
  • Как создать папку на китайском языке на локальном сервере?

    php666
    @php666
    PHP-макака
    вы не должны этого хотеть (с)
    Ответ написан
  • Как задать свойства нескольким объектам разных классов через 1 метод?

    php666
    @php666
    PHP-макака
    Пусть объекты, требующие языка, сами лезут за языком (реализовать в виде трейта).
    Ответ написан
    Комментировать
  • Делаю первый интернет-магазин. Как лучше реализовать?

    php666
    @php666
    PHP-макака
    и писать все самой
    вы не напишите. никогда. не каждый опытный программист сможет написать ИМ, тк временные трудозатраты колоссальные, а смысла - нет, от слова совсем. Конечно надо "начать с CMS" - они пишутся сообществами разработчиков на протяжении многих лет.

    Почему многие ругают php
    потому, что идиоты.

    Берите любой бесплатный движок интернет-магазина, какой понравится и все.
    Ответ написан
  • Какой движок использовать для сайта фрилансеров?

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

    php666
    @php666
    PHP-макака
    в 21 год пора заканчивать быть инфантильным мальчиком.

    Я преследую цель делать свои игры
    мы рады за тебя. только в итоге ты будешь винтик в чужом бизнесе, не более.
    Ответ написан
  • Как увязываются между собой PHP, JS и CSS?

    php666
    @php666
    PHP-макака
    Ответ написан
    Комментировать
  • Какое направление выбрать для входа в разработку и есть ли этот самый выбор?

    php666
    @php666
    PHP-макака
    Ты меня конечно не послушаешь, но мой совет - не лезь в айти. Тебе поздно - до 30 осталось 2 года, за 2 года ты еле дотянешь до какого-нибудь джуна, тебя будут ссаными тряпками гонять мальчики, которые моложе тебя.

    Рынок перенасыщен программистами, в РФ они мало кому нужны, только если в Москве, но там и нужны мидлы и выше и тебе до них как до Китая раком со своим нулевым опытом. В остальных городах РФ по 3-7 вакансий от силы с хреновой для программиста зп.
    Ответ написан
    Комментировать