Задать вопрос
  • Attempt to invoke virtual method 'void android.widget.Button.setVisibility(int)' on a null object reference?

    @evgez
    Ошибка возникает из-за того, что вы пытаетесь получить доступ к элементам интерфейса через findViewById() до установки макета активности с помощью setContentView(). В результате переменные driverRegBtn, quest и другие остаются null, и попытка вызвать методы на этих объектах приводит к крашу.

    Исправьте порядок вызовов в onCreate():
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // 1. Сначала устанавливаем макет
        setContentView(R.layout.activity_driver_reg_login);
        
        // 2. Теперь инициализируем элементы интерфейса
        driverRegBtn = findViewById(R.id.driverReg);
        quest = findViewById(R.id.quest);
        driverEmail = findViewById(R.id.driverEmail);
        driverPassword = findViewById(R.id.driverPassword);
        signInBtn = findViewById(R.id.signIn);
        statusDriver = findViewById(R.id.statusDriver);
        
        // 3. Теперь можем работать с элементами
        driverRegBtn.setVisibility(View.INVISIBLE);
        
        // Остальной код (EdgeToEdge и т.д.)
        EdgeToEdge.enable(this);
        ViewCompat.setOnApplyWindowInsetsListener(findViewById(R.id.main), (v, insets) -> {
            Insets systemBars = insets.getInsets(WindowInsetsCompat.Type.systemBars());
            v.setPadding(systemBars.left, systemBars.top, systemBars.right, systemBars.bottom);
            return insets;
        });
    }


    Убедитесь, что в вашем XML есть все указанные элементы с правильными android:id.

    Для элементов, которые могут быть скрыты/показаны, проверьте начальное состояние видимости в XML (например, android:visibility).

    Используйте аннотацию @Nullable или @NonNull для переменных представлений, чтобы получить подсказки от Android Studio.
    Ответ написан
    Комментировать
  • Необходимо ли наличие диплома магистратуры, аспирантуры для пути с разработки в высший менеджмент?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    В банке просто так тебе занять должность C-grade не дадут :) Даже с дипломом академика. В конторах пониже - не обязательно. Вообще магистерский диплом и далее - он не роялит в бизнесе совершенно, только в науке. В бизнесе ценится умение добиваться поставленных задач.
    Вот ты приходишь, тебе дают отдел - десяток балбесов-программистов, каждый со своими уникальными заморочками. И тебе нужно пасти этих котов, чтобы от них был результат. Есть результат - ты хороший руководитель, вот тебе премия и все такое. Нет результата - ты хреновый руководитель. Чем тебе тут диплом аспиранта поможет?
    Ответ написан
    Комментировать
  • Необходимо ли наличие диплома магистратуры, аспирантуры для пути с разработки в высший менеджмент?

    Mike_Ro
    @Mike_Ro
    Python, JS, WordPress, SEO, Bots, Adversting
    Не обязательно, но будет дополнительным плюсом.
    Ответ написан
    Комментировать
  • Как создать свою библиотеку для Go?

    fenrir1121
    @fenrir1121
    Начни с документации
    Прочитать в документации.
    Ответ написан
    Комментировать
  • Как найти работу в сфере IT во время учебы?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    У нас есть целый человек, который занимается поиском талантливых чуваков на стажировку на лето. Зачастую потом после защиты они у нас остаются (бывает правда что не надолго).
    А вообще - вот historydev дал хороший совет :)

    UPD: Первое рабочее место запросто найти в муниципалке. Школы-больницы-библиотеки - им тоже время от времени нужны работники, но платить они готовы только те копейки, которые у них в бюджете, поэтому у них всегда проблемы - можно попытаться поискать здесь...
    Ответ написан
    Комментировать
  • Принципиальное отличие POST, PATCH и их реализация?

    1. В PATCH технически можно передавать больше 1 значения на изменение. Правильно ли это?

    См Json patch
    https://en.wikipedia.org/wiki/JSON_Patch
    Вообще RFC не обязывает тебя использовать именно json patch, а потому и нельзя сказать, можно ли передать больше одного значения. Это всё на усмотрение разработчика.

    2. Фактическое отличие между всеми тремя методами лишь в том

    Различие только в том что они предназначены для разного и "разное" лучше черпать из спецификации HTTP.
    https://www.ietf.org/rfc/rfc9110.html
    POST: https://www.ietf.org/rfc/rfc9110.html#name-post
    кратко - можно использовать для всего что не GET.
    В теле передаётся что угодно, в зависимости от назначения.

    PUT: https://www.ietf.org/rfc/rfc9110.html#name-put
    кратко - полная перезапись ресурса (из-за этого этот метод идемпотентен)
    В теле передаётся весь ресурс целиком.

    PATCH: про него отдельный rfc https://www.ietf.org/rfc/rfc5789.html
    кратко - для частичной модификации ресурса (как конкретно будет производиться модификация - это уже детали реализации. Можно использовать уже упомянутый json patch, можно что попроще или просто другое, но из-за такой гибкости он является неидемпотентным).
    В теле передаётся описание того, как нужно модифицировать ресурс.

    PathVariable тут вообще никаким боком не стоит. Если у твоей сущности есть какой-то id и для её чтения ты пишешь что-то типа GET /documents/42, то тогда и изменение тоже должно быть через PUT(PATCH) /documents/42
    А создание документа будет, скорее всего, через
    POST /documents

    Но это только если ты пытаешься следовать REST или подобным штукам.
    Если у тебя тупо RPC, то тогда лучше использовать только POST
    Ответ написан
    Комментировать
  • Почему callback-функция не повторяется второй раз?

    Vindicar
    @Vindicar
    RTFM!
    Есть маааааленькая проблемка. Ты забыл/не знал, как работают файлы. А именно, у них есть такая штука как "текущая позиция", по которой выполняется чтение-запись. В итоге:
    1. Ты открываешь файл в начале кода. Его текущая позиция - в начале файла.
    2. Ты делаешь отправку файла. Бот читает содержимое файла до конца для отправки. Теперь текущая позиция - в конце файла.
    3. Ты снова пытаешься отправить тот же файл. Бот не может прочитать содержимое файла, потому что текущая позиция - в конце, читать в конце уже нечего. А в начало бот сам не "перематывает", он же без понятия, что у тебя за файл.

    Просто открывай файл каждый раз при отправке (и не забудь закрыть, оператор with в помощь), а не один раз в начале скрипта.
    Либо, если прямо очень-очень хочется держать файл открытым, каждый раз перед отправкой "перемотай" файл на начало методом seek().
    Ответ написан
    Комментировать
  • Что прочитать, чтобы разобраться в современной архитектуре компьютеров?

    Lord_of_Rings
    @Lord_of_Rings
    Дунадан - северный странник. Злой, но очень добрый
    только про современные системы
    А разве Таненбаум не про современные системы пишет? Последнее русское издание в прошлом году вышло
    Ответ написан
    Комментировать
  • Можно ли добавить условие при регистрации аккаунта на сайте?

    Lord_of_Rings
    @Lord_of_Rings
    Дунадан - северный странник. Злой, но очень добрый
    Это вообще реально сделать?
    Реально
    Ответ написан
    8 комментариев
  • Какую скачать СУБД для БД SQlite?

    @alexalexes
    Никакую. SQLite - это файловая СУБД. Ваша среда разработки должна просто уметь монтировать файл базы с помощью определенного расширения и библиотеки.
    Возможно, вы ищите клиентскую оболочку для работы с СУБД - берите, какая нравится больше.
    Ответ написан
    3 комментария
  • C:\Users\Привет>pip list при запуске почему возникает ошибка?

    @Everything_is_bad
    pip list вызывается в командной строке системы, а не в консоли интерпретатора python
    Ответ написан
    1 комментарий
  • Возникнут ли проблемы с трудоустройством в сфере ИБ при наличии учета в ПНД?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Могут ли возникнуть проблемы при трудоустройстве на должность, прямо связанной с информационной безопасностью?

    Могут. И в ИБ, и в ИТ. Честно говоря, я вообще не знаю, что бы доверил делать с таким диагнозом...
    Ответ написан
  • Почему может быть утечка памяти?

    @falconandy
    Используете GoLand? Он подсказывает:
    Possible resource leak, 'defer' is called in the 'for' loop.

    A "defer" statement invokes a function whose execution is deferred to the moment the surrounding function returns, either because the surrounding function executed a return statement , reached the end of its function body , or because the corresponding goroutine is panicking .

    Предупреждение говорит о том, что defer код будет выполнен только при завершении функции, а не итерации цикла. В вашем случае это предупреждение неактуально, но проще немного переписать код, чтобы не было "ругани":

    func (app App) Shutdown() {
    	for _, shutdown := range app.onShutdown {
    		if err := shutdown(); err != nil {
    			log.Println(err)
    		}
    	}
    }
    ...
    defer app.Shutdown()
    Ответ написан
    Комментировать
  • Кто нибудь объясните мне про индексы в БД, я не вижу в них никакого смысла?

    GavriKos
    @GavriKos
    если ты все равно при разработке проекта не можешь знать, какие данные будут самыми запрашиваемые для редактирования или для запросов.

    Почему это не знаешь? Это вполне себе анализируется на этапе бизнес-требований. Конечно потом индексы можно и нужно пересматривать, но и в начале вполне это может быть понятно исходя из ТЗ.

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

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

    xez
    @xez
    TL Junior Roo
    Вот вам христоматийная задача - у вас есть телефонный справочник города вида ФИО - номер телефона.
    В справочнике 1М+ записей.
    Вам нужно найти номер телефона по имени.
    Сколько вам потребуется времени на поиск по несортированному, неиндексированному списку в худшем случае?

    Надеюсь, вопросов насчет необходимости индексов БД у вас не осталось.
    Ответ написан
    11 комментариев
  • Поможете исправить ошибку в Python коде?

    Rsa97
    @Rsa97
    Для правильного вопроса надо знать половину ответа
    1 комментарий
  • Как проводится нагрузочное тестирование на проекте?

    @Araya
    Однозначного ответа нет, на каждом проекте могут проводить по-разному, например:
    - После каждого релиза
    - После определенного релиза (например добавили новую ручку/сервис и тд)
    - С некой периодичностью (например каждую пятницу)
    - Просто потому что...
    Ответ написан
    3 комментария
  • Что стоит делать в 16 лет, если планирую стать специалистом в системном программировании?

    CityCat4
    @CityCat4
    //COPY01 EXEC PGM=IEBGENER
    Меня же не возьмут даже на стажировку в таком возрасте и непонятно где опыта набираться.

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

    Поэтому лучше всего бухать и щупать девок за интересные места писать пет-проекты и изучать асм и С - системное программирование предполагает глубокое знание той оси, под которую собираешься писать, а работа на асме кроме этого предполагает знание общей архитектуры компьютера, архитектуры процессора, особенности его работы etc.
    Ответ написан
    Комментировать
  • Что стоит делать в 16 лет, если планирую стать специалистом в системном программировании?

    mayton2019
    @mayton2019
    Bigdata Engineer
    Вот допустим изучу я ассемблер и C, как будто это самое легкое из всего.

    Это - вершина айсберга.

    Если ты начнешь изучать например ассемблер для x86, то это целая история изменений. 16/32/64 регистры
    и наборы команд для векторизации. Я-бы сказал что это все очень затягивает и это автоматически
    вовлекает новые области знаний такие как - железо, микро-контроллеры, сети.

    Далее может быть направления - системотехника и безопасность. Далее - оптимизация (параллелизм
    и конкуренция).

    Тоесть на самом деле нельзя сказать что я вот "изучу С" и положу книгу на полку. Это - как и зучить
    современную физику. У тебя всегда будут открытые вопросы. И их число будет только расти.

    Вобщем удачи.
    Ответ написан
    Комментировать