пятница, 22 января 2016 г.

Как не нужно задавать вопросы

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

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

Третья часть считает меня экстрасенсом. Приходит такое письмо: "Я всё делал по описанию на вашем сайте, а у меня ничего не работает. Почему?" К сожалению, после окончания Хогвартса с отличием, я дал обязательство не использовать полученные знания на территории России и не могу использовать свои волшебные способности для ответа на ваш вопрос. Теперь я буду удалять подобные вопросы с форума, а письма удалять с почтового сервера.

В общем, моё состояние после получения подобных вопросов похоже на одного кота-мема. Обычно, этот мем сопровождается текстом, который начинается со слов: "Честно сказать я ...". Продолжать не буду, гугл вам в помощь.

10 комментариев:

  1. Здравстуйте, Александр!
    Я только начинаю андроид разработку, хотя под windows разрабатываю давно.
    Есть устаревшее свойство SingleLine у EditText. Полноценную замену не нашел. Ни в гугле, ни в документациях, ни в книгах. Вы знаете чем его заменить? Этот вопрос правильный?

    ОтветитьУдалить
  2. Как-то странно вы искали. У меня сразу же вывело десяток ссылок с ответами. Этот вопрос неправильный.

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

    ОтветитьУдалить
  4. Я посмотрю на вас, когда вы через полгода посмотрите на свой код с однобуквенными идентификаторами. И злорадно посмеюсь. Сразу видно вопрос новичка.

    ОтветитьУдалить
  5. Так я и не скрываю. Да я новичек, и Java мой первый ЯП. Пробежавшись по вашим подпискам в YouTube, я понял причину - вы учите английский. А многобуквенные_идентификаторы, это применение ваших знаний на практике. В общем то, это и была первая мысль при виде вашего стиля оформления. Только, вы не учли, что новичку (а ваш обучающий сайт рассчитан, как раз, на них) за такой вот многобуквенностью, бывает трудно разглядеть суть кода.

    ОтветитьУдалить
  6. Если вы новичок, то может есть смысл придерживаться стиля более опытных программистов? Это ведь не на пустом месте появилось. Потом спасибо скажете. Мои подписки к этому отношения совсем не имеют (я и подписался на английский месяц-два назад по другим причинам). Данный подход применяется практически во всех языках программирования. Как раз подобная многобуквенность позволяет понимать чужой код. У вас это с непривычки, с опытом вы поймёте прелесть этого подхода.

    ОтветитьУдалить
  7. Вот... Не прошло и полгода... В общем, это, по поводу идентификаторов я погорячился. Беру свои слова назад. Но, все же, вас иногда заносит (в будущее). В теме "Класс File", в конце вы приводите два интерфейса FilenameFilter и FileFilter для методов list() и listFiles(). А, ведь, до интерфейсов еще ой как далеко. И так вы делаете довольно часто. Спрашивается - зачем ?

    ОтветитьУдалить
  8. Я там вам в FB написал по поводу кусков кода без вывода в консоль в кач-ве проверки. Между прочим, поставил 5* не кривя душой, т.к., пишите классно (с многобуквенностью идентификаторов мы уже смирились)). Но, огрызки кода без возможности проверки и набития руки...

    Вот, например:

    Box box1 = new Box(100, 200, 100);
    Box cloneBox = new Box(box1);

    int vol = cloneBox.getVolume();
    mInfoTextView.setText("Объём коробки: " + vol);

    Это из передачи объектов в кач-ве параметров.
    Как мне, вот это вот, в консоль вывести ???

    Не успеваю за полетом вашей Гениальной Мысли, Александр.
    С ув.

    ОтветитьУдалить
  9. Мои примеры даны для Android. В самом первом уроке об этом говорится, мы создали тестовое приложение на Android и изучаем Java в нем. Соответственно, mInfoTextView.setText() можно рассматривать как аналог консоли.

    ОтветитьУдалить