Как найти нужный мне метод java\android?

207
09 июля 2018, 03:40

Как найти нужный мне метод. Дело в том ,что прочитав многие туториалы , так и не сложилось понимание , как же правильно применять те или иные методы. Примеры используемые в туториалах(а это всегда простые примеры)довольна просты и понятны, но стоит отойти от примера и начать делать свое, сразу появляется куча вопрос.а как это? а откуда это? ааааа...? серьезно?

Приведу пример кода:

mMessagesDatabaseReference = mFirebaseDatabase.getReference().child("messages");

И во многих случаях (не только на примере класса FirebaseDatabase и тд).как понять ,что именно этот метод тут должен быть ? Ведь у классов их много и глаза разбегаются.

.getReference()

Но даже если по описанию я могу понять(из документации) ,что делает этот метод,что делать дальше я не понимаю.

Как вы изучаете новый класс и какие методы нужны в данный момент ,как среди многих методов понимать, какой нужен и какой правильный?

Отмечу еще пару примеров:

messageTextView.setVisibility(View.GONE);
            photoImageView**.setVisibility**(View.VISIBLE);
            Glide**.with**(photoImageView.getContext())
                    **.load**(message.getPhotoUrl())
                    **.into**(photoImageView);

Спасибо за ответы.

Answer 1

Наверное просто нужно уметь программировать, это приходит с опытом и базой знаний по предмету.

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

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

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

PS: Если вы не понимаете, что происходит, не стоит хвататься за сложные структуры (как БД) и метод-чейнинг (что такое метод-чейнинг). Начните с простого, что вы можете понять или близки к этому. Так же не стоит читать "многие туториалы" от этого только каша из за разрозненности информации. Читайте книги, они дадут вам целостный подход к обучению. И сначала по основам ООП вообще, потом по чистой Java и потом только по Android. Знания нужно накапливать постепенно и последовательно, а не хватать сразу сложное, читать какие то левые статейки с примерами в инете и хоп! такой - супер-программист за неделю - так не будет.

READ ALSO
Как расположить Div по центру при помощи margin?

Как расположить Div по центру при помощи margin?

Всем привет! Хочу сделать окошко по центру (очень заезжанная тема), но при помощи margin'а не получается(Я гуглил, ничего путного не нагуглил

191
Как плавно изменить размер картинки в блоке?

Как плавно изменить размер картинки в блоке?

Продолжаю учиться верстке и хочу сделать такую штуку:

216
Почему не срабатывает событие onfullscreenchange при нажатии F11?

Почему не срабатывает событие onfullscreenchange при нажатии F11?

Такой код реагирует на requestFullscreen и cancelFullScreen, но если нажимать F11 консоль остается пустой

166
Как раскрывать сайдбар на нужной мне странице

Как раскрывать сайдбар на нужной мне странице

Есть некий каталог товаров с подкатегориямКаталог раскрываются при клике

219