• Есть ли какие-либо недостатки у статических методов?

    @D3lphi
    Значит так, берем толстую тетрадь, ручку и пишем фразу "Статические методы не имеют отношения к ООП" до тех пор, пока не запомним это на всю жизнь.
    Суть объектно ориентированного программирование, как понятно из названия, заключается в том, что должен существовать объект. Статика существует не в контексте объекта, а в контексте класса! Из этого вытекает то, что на протяжении всего жизненного цикла вашего кода будет существовать лишь одно глобальное состояние статических членов класса.

    Использовать статику нужно в случае, если то, что вы ей описываете принадлежит всей группе объектов, а не одному. Например, у класса Human может быть статический метод numberOfLegs(), который возвращает количество ног у людей. Количество ног - это общее свойство для всех людей (Речь идет о здоровых людях). В данном случае можно было использовать константу класса, но это не так важно, ведь, по сути, константа - это тоже статический контекст. А вот имя - это уже свойство каждого отдельного человека. И очень важно чтобы статические методы не изменяли состояние системы в целом, не содержали побочных эффектов.
    В статические методы можно выносить какую либо служебную логику. Например, метод перевода числа из арабской в римскую запись следует сделать статическим.

    Есть ли у статического варианта какие-то подводные камни

    Большое количество. При чем, не таких уж и подводных. Из-за того, что статика глобальна, она плохо поддается тестированию, ее нельзя замокать. Глобальное состояние плохо поддается отладке. Отсутствует возможность подменить реализацию, так как это позволяют сделать объекты.
    Ответ написан
    4 комментария
  • На каком моменте изучения java можно погружать в Android разработку?

    Скажу по своему опыту. Пол года "изучал" java, но именно изучал в ковычках, шла через силу. Попробовал и джаваРаш (не пошло, не интересно), читал книги, смотрел пару каналов-уроков на Ютубе. Но не шло, не видел применения и хотелось скорей андройд "пощупать". В итоге поставил андройд студио, придумал себе пару проектов. В По андройду тьма каналов и книжек, статей. В итоге изучение пошло гораздо бодрей и ничего не мешает изучать джаву в парелеле с андройдом, мне так вообще проще - так как сразу реализую 3 проекта. Почему 3? В каждом есть что-то ,чего нет в другом - так что практическое применение. Хотя сначала думал, поучу годик, сделаю что-то на джаве и уж потом уйду в андройд. вывод - надо было со старта ставить студио и изучать сходу в ней.
    Ответ написан
    Комментировать
  • На каком моменте изучения java можно погружать в Android разработку?

    sergey-gornostaev
    @sergey-gornostaev
    Седой и строгий
    Дочитаете Шилдта и напишите сетевой чат с оконным интерфейсом. Когда получится, можно комфортно переходить на мобильную разработку.
    Ответ написан
    Комментировать
  • На каком моменте изучения java можно погружать в Android разработку?

    @evgeniy_lm
    Изучаю java с дальнейшей целью попробовать себя в Android разработке,

    JAVA не стихотворение, а язык программирования, его учить не нужно, на нем нужно писать программы.

    на python и на данный момент прошёл основы языка:

    Если вы не измените свое отношение к обучению то, когда вы узнаете о существовании третьего ЯП, вы напишите что то типа "на java и на данный момент прошёл основы языка:"

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

    на этапе установки Android Studio
    Ответ написан
    Комментировать
  • На каком моменте изучения java можно погружать в Android разработку?

    samodum
    @samodum
    Какой вопрос - такой и ответ
    Переходить можно в любой момент.
    Ответ написан
    2 комментария
  • На каком моменте изучения java можно погружать в Android разработку?

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