Задать вопрос
  • Почему при объявлении переменной, в любом языке программирования, резервируется весь размер памяти отведённый под тип данных?

    Вопрос из разряда "Почему в байте 8 бит?".

    Объявление переменной как раз является запросом на выделение памяти. Если вам необходимо выделить меньше памяти - можно использовать тип с меньшим размером - байт, бит. А примером динамически растущих структур памяти может быть какой-нибудь вектор из C++. В чем недостаток - накладные расходы. В случае недоступности непрерывного участка памяти при расширении классического массива, нужно будет скопировать всю структуру в другую область памяти. Гораздо быстрее и экономичнее с точки зрения скорости работы выделить сразу больший шмат памяти, благо её нынче не дефицит на ПК.
    Ответ написан
  • Почему при объявлении переменной, в любом языке программирования, резервируется весь размер памяти отведённый под тип данных?

    Stalker_RED
    @Stalker_RED
    Пример с SSD некорректный, все равно что требовать от камаза, например, выпустить грузовик с грузоподъемностью 20кг. Производителю нужен рынок сбыта.
    Тем не менее, небольшие чипы памяти существуют, только никто на них не пишет, что это "SSD".

    Выделение памяти - операция не бесплатная, и кто-то решил, что так будет выгоднее.
    https://randomascii.wordpress.com/2014/12/10/hidde...
    https://habr.com/ru/post/270009/

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

    Alex_Wells
    @Alex_Wells
    PHP/Kotlin
    Laravel. Открываете документацию (каждый), читаете от самого начала и до самого конца. Покупаете аккаунт на laracasts.com, заставляете всех смотреть все рекомендованные курсы от начала и до конца. За две-три недельки появится базовое понимание что да как тут работает, сможете писать хоть что-то. Рефакторить прийдется много, но если реально прочтете документацию и реально посмотрите ларакастс - на большинство проблем в начале у вас уже будут простые и логичные ответы.
    Ответ написан
    Комментировать
  • Не работает Model::where когда равно, почему?

    JhaoDa
    @JhaoDa
    LaravelRUS Team
    Кому-то надо пойти почитать про тип float и проблемы, с ним возникающие, а то, не дай Ктулху, он ещё и деньги в нём хранить будет...
    Ответ написан
    5 комментариев
  • Как правильно попросить HR о отсрочке по выходу на работу?

    @Alexey_Kutepov
    Разработчик программного обеспечения
    Просто скажите что нужно время на принятие решения и всё. Это рынок, все всё понимают. Правда и они в этом случае продолжат искать кандидата, так как вакансию нужно закрывать и есть риск что Вы откажете, но тут риски обоюдные)
    Ответ написан
    Комментировать
  • Как сконвертировать HTML в изображение при помощи PHP?

    @Barmunk
    wkhtmltopdf и wkhtmltoimage - замечательные консольные либы написанные на Си, работают значительно быстрее чем другие аналоги

    How do I use it?
        Download a precompiled binary or build from source
        Create your HTML document that you want to turn into a PDF (or image)
    
        Run your HTML document through the tool.
        For example, if I really like the treatment Google has done to their logo today and want to capture it forever as a PDF:
    
        wkhtmltopdf http://google.com google.pdf


    https://wkhtmltopdf.org/usage/wkhtmltopdf.txt
    Ответ написан
    Комментировать
  • Какие есть годные практики для работы с большим количеством записей в таблице (1M+)?

    ThunderCat
    @ThunderCat Куратор тега MySQL
    {PHP, MySql, HTML, JS, CSS} developer
    Crash,
    У каждой заявки множество специфичных конкретно для нее параметров.
    значит вся "специфика" должна быть вынесена в отдельную таблицу. А херачить на каждый чих колонку - решение такое себе, по многим соображениям.

    1. Индексы, выборочно для полей, по которым чаще всего осуществляется поиск.
    скорее для групп полей, по которым осуществляется поиск, выборка, объединение и сортировка. Кроме того - explain, slow log.

    2. Объединение нескольких колонок в одну, для однотипных данных. Они будут храниться в формате JSON.
    только если по ним не идет поиск, иначе это нифига не оптимизация, а скорее наоборот.

    В остальном мысли о разделении на грячий/холодный стек верные. Можно задуматься еще о переносе части горячих строчек в какой-то мемори сторэйж типа редиса.
    Ответ написан
    Комментировать
  • Какие есть годные практики для работы с большим количеством записей в таблице (1M+)?

    Melkij
    @Melkij
    DBA Team для вашего PostgreSQL?
    Объединение нескольких колонок в одну, для однотипных данных. Они будут храниться в формате JSON.

    JSON объёмнее плоской таблицы хотя бы из-за необходимости в хранении ключей.
    И, насколько знаю, mysql пока умеет только btree. Что подходит для произвольного поиска от слова никак. Только для заранее известного критерия.

    3. Партиционирование.

    планирую создать новую, "горячую" таблицу с идентичной структурой.

    Слово неплохое упомянуто. Осталось понять зачем всё остальное. Партицировать таблицы умеет штатно даже такая удивительная штука как mysql и очень давно.

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

    Типичная ошибка - пытаетесь строить аггрегаты и прочие count(*) поверх миллионов строк налету.
    Ответ написан
    Комментировать
  • По фэншую ли синтаксис?

    Wolfnsex
    @Wolfnsex Куратор тега PHP
    Если не хочешь быть первым - не вставай в очередь!
    Так писать по фэншую код или есть запись объектов в массив ровнее?
    У Вас тут не столько запись чего-то в массив, сколько предварительное присвоение значения переменной, с уже последующем добавлением оной в массив. Оно работать конечно будет, но выглядит несколько странно, на мой взгляд. Подобные принципы обычно используются в условных операторах или циклах (if/while), для последующей обработки переменной (результата).

    Если Вам нужно просто собрать массив, обычно пишут так:
    $arr = [
        new Quadrate(6),
        new Cube(5),
        new Rectangle (2),
        ... ,
    ];


    P.S. Так же этот код можно написать в строчку, если он не выходит за границу (80 или 120 символов, в IDE и редакторах эта линия почти всегда есть по умолчанию) или если просто если Вам очень хочется написать этот код в одну строку.
    Ответ написан
    6 комментариев
  • Как внести изменения в чужой pull request?

    yarkov
    @yarkov
    Помог ответ? Отметь решением.
    Переключиться на нужную ветку, внести изменения, коммит, пуш.
    Ответ написан
    Комментировать
  • Как сохранить теги?

    SagePtr
    @SagePtr
    Еда - это святое
    Зачем их удалять? При выводе - прогонять через htmlspecialchars, многие шаблонизаторы так по дефолту делают (если не задавать туда модификаторы "raw" и подобные по смыслу)
    Ответ написан
    2 комментария
  • Найти хорошую работу с нуля на PHP: правда или вымысел?

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

    если вы действительно более-менее знаете и понимаете, что написали, а не тупо перепечатывали с какого-то курса, то у вас есть все шансы зацепиться. остальное зависит только от вас.
    Ответ написан
    9 комментариев
  • В какие страны легче всего эмигрировать из России после ВУЗа?

    Jump
    @Jump
    Системный администратор со стажем.
    Украина, Литва, Пакистан, и.т.д.
    Ответ написан
    Комментировать
  • Поступление: уклон в программирование или в математику?

    @NubasLol
    Если тебе нравится математика, и тем более, если у тебя есть желание решать сложные задачи, а не делать формочки на сайтах, то выбор очевиден.

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

    Язык программирования выучишь за пол года потом) И нужный тебе, под твои задаи
    Ответ написан
    Комментировать
  • Лучший способ авторизации через php?

    FanatPHP
    @FanatPHP
    Чебуратор тега РНР
    "Не читайте до обеда советских газет".

    86% статей в интернете написаны чудовищными дителантами, которые сами едва десяток операторов освоили.
    Иногда к прочим данным также добавляют IP или UserAgent которые также проверяются и обновляются при взаимодействии со скриптом авторизации. Иногда таблица в БД разносится на несколько.

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

    Без контекста сложно понять, что имеется в виду.

    Общее правило - не доверять голословным утверждениям. Если автор понимает, о чем пишет, то сможет и объяснить ту или иную рекомендацию или оценку.

    Из перечисленного выше я бы только добавил защиту от подбора пароля.
    Ответ написан
    1 комментарий
  • Какой ЯП посоветуете?

    Zoominger
    @Zoominger
    System Integrator
    неплохо ориентируюсь в рынке.

    Будь это так, то не задавали бы таких вопросов.

    Что посоветуете?

    Ява сложна для новичка, тем более для экс-веба.
    Учите C#.

    Поддаться рынку или личным желаниям?

    Личные желания вас не накормят, но для фана можете попозже и любимый язык поучить.
    Ответ написан
    4 комментария
  • PHP функциональный язык или объектно-ориентированный?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    Я могу дать вам лишь мой вариант ответа собеседующему:

    Никаким. Отличительная черта PHP в том, что он не задумывался как язык программирования. Это даже в названии отражено - PHP (recursive acronym for PHP: Hypertext Preprocessor).

    На этапе PHP3 это был уже полноценный процедурный язык программирования, где писать логику можно было уже не на Си.

    В PHP4 в язык были введены "классы" чтобы дать механизм изоляции состояния. Это еще нельзя было называть ООП просто потому, что... это не объекты а классы. Нет ни инкапсуляции, есть только ad-hoc полиморфизм (который есть у всех языков с динамической системой типов) и ограниченный полиморфизм подтипов. Ну а наследование классов и так признано ненужной штукой в контексте ООП.

    В PHP5 наконец-то были введены интерфейсы, и теперь можно было делать нормальный полиморфизм. Были введены модификаторы доступа и т.д. но язык все еще остается процедурным по большому счету (и это нормально, поскольку все существующие ОО языки являются процедурными).

    В PHP5.3 были введены анонимные функции. но без лексический скоупов, без функций высшего порядка делать "чистую функциональщину" просто не выйдет. Во всяком случае это будет неудобно.

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