Пользователь пока ничего не рассказал о себе

Достижения

Все достижения (6)

Наибольший вклад в теги

Все теги (27)

Лучшие ответы пользователя

Все ответы (51)
  • Как изучаем Python?

    @newpy
    web-dev
    "A Byte of Python" ("Укус Питона") by Swaroop (перевод В. Смоляр)
    wombat.org.ua/AByteOfPython
    Ответ написан
    1 комментарий
  • PHP vs. all. Имеет ли смысл учить (параллельно) что-то еще?

    @newpy
    web-dev
    все языки хороши, каждый предназначен для своих целей...у всех свои минусы

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

    Если коротко и по-делу в сотый раз процитирую сотню-пять хороших советов: "...что нравится, то и изучайте...". Что касается всего остального, то у вас не получится изучать что-то одно. Хотите заниматься backend-ом, нет проблем, но у вас не получится стоять в стороне от современных технологий, и есть такое понятие как "стек" этих самых технологий. Не получится использовать что-то одно, один фреймворк, одну технологию.

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

    Про Python и Django - я знаком и с тем и другим (PHP), могу писать на том и другом. Но лично мое субъективное ощущение что на Python мне писать приятнее. И нравится больше. И тут работает главный совет из начала, "на чем нравится на том и пишите", если это позволяет задача, и есть возможность выбирать. Просто если поступил заказ использовать PHP, то что вы откажетесь от денег и заказа и будете сидеть пока не прилетит волшебник с заказом на python+Django?

    Про скорость работы языка: я думаю, вам рановато думать о скорости работы того или иного языка. Если вы только прям сейчас не пишете свой фейсбук, например. К слову, например Instagram написан на Python и вроде не испытывает недостатка в нагрузке, и вполне работает. Все остальное вполне справляется со своими задачами.

    Про скорость работы (просто скорость работы): Django даже позиционируется как фреймворк "для перфекционистов с дедлайнами", что гласит даже заглавная страница фреймворка, т.е. позволяет вести разработку быстро. К слову тоже самое можно делать и с помощью того же Laravel. Если хочется "по-взрослому": то чаще всего это Symfony. Но в большинстве случаев нет смысла писать небольшие сайты на Симфони. Не потому что Симфони там плох, а потому что это можно сделать быстрее. А в коммерческой разработке, бытует мнение, что главный критерий для клиента сейчас -это скорость разработки.
    Если проект крупный, то там сроки тоже поставлены, но они довольно большие, и там чаще всего и используют Симфони.
    Опять же Django при этом подходит как для небольших проектов, так и для очень больших.
    Если вам нужно разработать API, то там чаще всего используют другие инструменты, которых много как со стороны PHP, так и со стороны Python. Различные микрофреймворки в качестве backend-а.

    Подводя итог, вы можете заметить, пару ключевых тезисов:
    1. Зависит от конкретной задачи, которая перед вами стоит, или требование клиента(руководства компании)
    2. Если есть возможность выбирать, если это позволит вам получить конечный результат, то выбирайте то, что вам по душе. Кому-то Python "не лезет", кому-то PHP.

    Хотелось закончить на веселой ноте =), поэтому скажу так: при всем вышесказанном, чаще всего, всех этих людей объединяет одно: "так или иначе все они используют JavaScript"
    :D
    Ответ написан
    7 комментариев
  • Как изучить компьютерные науки?

    @newpy
    web-dev
    1. CS50
    2. SICP
    Классика зарубежного образования в сфере компьютерных наук. Первый - это азы. Второй это посложнее. Скорей всего в любой из прочитанных статей так или иначе будут упоминаться этих два курса, либо они зачастую за рубежом адаптированы под конкретный университет.
    • Если вбить эти две аббревиатуры в гугл, вам откроются тайны аббревиатур
    • Если прочитать и изучить эти две аббревиатуры, то из вас точно получится что-то толковое.

    По первому есть даже переведенные видео-лекции от Javarush,
    По второму есть книга на русском языке. Лично я такую храню у себя в рабочей библиотеке в бумажном виде.
    Ответ написан
    2 комментария
  • Как разобратся с MVC?

    @newpy
    web-dev
    В представлении AR
    Model = Таблица
    экземпляр Model = запись из таблицы,
    что мешает получать записи по одной в цикле из нужной таблицы и записывать в массив. На выходе получается массив или коллекция. Собственно современные ORM это и делают.

    Например получение всех записей из таблицы категорий (модель Categories) в большинстве современных фреймворков выглядит примерно так:

    $categories = Categories::all()

    На выходе в переменной $categories получаем коллекцию (по сути массив каждый элемент которого является объектом модели Categories):

    Collection {#168 ▼
      #items: array:5 [▼
        0 => Categories {#169 ▶}
        1 => Categories {#170 ▶}
        2 => Categories {#171 ▶}
        3 => Categories {#172 ▶}
        4 => Categories {#173 ▶}
      ]
    }


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

    Утрированно:

    Controller - управляет.

    Если это Посты, то ими надо управлять, действовать. Методы (actions, действия) работы с Постами, например create, delete, update, edit. Логично было бы предположить что для управления Постами нужен PostsController.

    Комментарии - свой набор действий (action) логично предположить что для них следовало бы сделать отдельный контроллер CommentsController, который содержал бы логику управления только Комментариями, а не всем на свете(например Пользователями). Вы всегда будете знать что Комментариями управляет CommentsController, Постами - PostsController. Более того, если кто-то другой откроет ваш код, то он сделает логичное предположение, что за Посты у вас отвечает PostsController и начнет работать/ломать оттуда.

    Не зацикливайтесь сильно на теории. Пишите код, и чаще выводите var_dump()-ом промежуточные результаты, вы будете видеть как устроено данные, и начнете понимать как к ним подобраться.

    Создайте объект класса (Модели), сделайте запрос, выведите дампом и посмотрите как устроены данные. Вы наглядно увидите объект это или массив, или ни то, ни другое, ни третье )).
    Ответ написан
    Комментировать

Лучшие вопросы пользователя

Все вопросы (1)