• Правильно ли я решаю задачу?

    Это же задачка на логику(арифметику), а не на программирование.
    Если посадили 2 амебы - то это то же самое, что и одна амёба через секунду.
    Т.е. вы сэкономили одну секунду, ответ 59.
    А не сходится у вас видмо потому что i должен с 1 начинаться а не с 0.
    Ответ написан
    8 комментариев
  • Как правильно использовать операторные скобки?

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

    Когда нужно будет дописать второе условие, скобки обязательно понадобятся. Это раз.
    Второе - читабельность лучше.
    Третье - исключается возможность ошибок.

    Наличие скобок ни на что не влияет, минусов - нет. Только плюсы.
    Ответ написан
    Комментировать
  • Как правильно вносить изменения в GIT (BitBucket + Source Tree)?

    27cm
    @27cm
    TODO: Написать статус
    Пересмотрел ряд видетуториалов...

    Вот главная ошибка. Чтобы действительно хорошо понимать, что вы делаете и зачем, нужно читать:
    1. Git Book / Git для профессионального программиста
    2. Документацию к BitBucket

    1) Нужно ли было мне в начале вообще создавать этот Fork? И для чего он вообще нужен?

    Если у вас есть права вносить изменения в оригинальный репозиторий, то fork не обязателен.

    2) Как мне отправить правки именно главному участнику?

    Pull Request

    3) Если я хочу периодически вносить такие правки, мне надо постоянно заново качать репозиторий? Или раз скачал и он хранится и как-то обновляется (или надо его обновлять?). Что бы не пропустить новые правки от другого человека, и не залить свои поверх его.

    Using the Bitbucket to sync your fork to the origi...
    Ответ написан
    1 комментарий
  • Как создать песок в unity3d?

    Deerenaros
    @Deerenaros
    Программист, математик, задрот и даже чуть инженер
    Ну чувак, ты в конструкторы переиграл видимо, раз уже не интересно подобным заниматься. Чего ты хочешь? Создать игру и заработать мильён? Создать игру и заработать почёт? Или создать игру и выразить свои мысли? Не бойся, неправильных ответов нет, но стоит определится с ответом, так как он действительно важен.

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

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

    Сейчас очень популярны контентовые игры, то есть такие, в которых много наполнения, много исследования. Стратегии с вылизанным балансом и рогалики со случайными монстрами, вещами и способностями отходят на второй план. Инди упрощает себе рандомизацией, но никак не заменяет.

    В общем, удачи в начинаниях.
    Ответ написан
    Комментировать
  • Как создать песок в unity3d?

    @Romeo98
    Жаль тебя расстраивать, но подробных уроков тебе не дадут. Там все работает не на одном скрипте. Там очень много разных визуальных деталей, которые в совокупности дают атмосферы песчаной пустыни. Единственный ответ, который я могу тебе дать (тот, который ты просил не писать) - я бы сказал, что большая часть в Journey сделана шейдерами, еще очень часто используют партикли.
    Ответ написан
    Комментировать
  • Как узнать, что юзер получил push-уведомление в android?

    @Tsimur_S
    Технически можно узнать что push уведомления блокированы с использованием: https://developer.android.com/reference/android/su...
    Подробности: stackoverflow.com/questions/11649151/android-4-1-h...
    Ответ написан
    Комментировать
  • Как сделать прозрачность иконки приложения?

    gadfi
    @gadfi
    https://gamega.org
    С прозрачным фоном.
    Ваш кэп.
    Ответ написан
    Комментировать
  • Как вызвать метод в активити из фрагмента?

    @SofroN
    Вы создаете новый фрагмент в активности вместо поиска старого фрагмента.
    1. добавьте тег фрагменту в методе FragmentTransaction.add
    2. используйте соответствующий метод для поиска фрагмента
    findFragmentByTag
    findFragmentById
    Ответ написан
    Комментировать
  • Как получить исходный код из апк?

    @aol-nnov
    apk:
    1. smali -> java opcodes -> java decompiler == некоторый профит
    2. native -> assembler == тупик
    3. ресурсы


    но если вопрос уже на этапе "как это распаковать", то всё тлен и тупик.
    Ответ написан
    5 комментариев
  • На каком из этих языков можно работать с определенной строкой файла, не загружая его в оперативную память?

    @nirvimel
    На любом из перечисленных языков.
    Ответ написан
    Комментировать
  • Зачем нужен Dependency Injection в Android разработке?

    artemgapchenko
    @artemgapchenko
    Начать неплохо бы с понимания того, что такое DI. Обратимся к википедии:

    Внедрение зависимости (англ. Dependency injection, DI) — процесс предоставления внешней зависимости программному компоненту.

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

    public class Api {
    	....
    	private final HttpClient client = new OkClient();
    }

    А, например, так:

    public class Api {
    	....
    	private final HttpClient client;
    
    	public Api(@NonNull HttpClient client) {
    		this.client = client;
    	}
    }


    И что нам это даёт?

    Ну, очевидно, нам теперь проще менять зависимости. Нужна вам другая реализация абстрактного класса HttpClient - взяли, и передали её через конструктор, или через метод-setter. В случае с первым куском кода, вам пришлось бы ещё и класс Api переписывать, что в случаях, отличных от тривиальных, может привести к ошибкам. Получается, что ваш класс теперь закрыт от изменений (смотрим Open/Closed Principle).

    Окей, а на практике-то какие бенефиты?

    Во-первых, вы теперь можете написать инициализацию вашей программы через конфигурационные файлы. Скажем, на старте будет читаться простенький текстовый файл, который определяет, какой httpclient использовать, какие настройки доступа к бд применять и так далее, и, исходя из этого, будут определяться зависимости.
    Во-вторых, вам теперь существенно проще писать тесты. Написали вы, скажем, какой-нибудь парсер, который принимает InputStream, содержащий в себе данные json-объекта, как-то хитро его парсит, и выдаёт вам объект вашей бизнес-модели. В приложении этот парсер будет принимать на вход реализацию InputStream'а, которая берёт данные из сети, а в тестах - реализацию, которая просто читает файл с диска (потому что тесты должны выполняться часто и быстро, и ваша задача в тесте - протестировать ваш парсер, а не скорость сетевого соединения).

    Вот, в общем-то, и всё. А Dagger - это просто библиотека, которая автоматизирует ручное внедрение зависимостей, равно как и другие DI-библиотеки.

    P.S. В некоторых случаях чрезмерное увлечение DI может привести к нежелательным эффектам, вроде чрезмерного усложнения кода, поэтому внедряйте аккуратно. Понимание приходит с опытом.
    Ответ написан
    Комментировать
  • Как лучше (проще и красивее) реализовать произведение комплексных и действительных чисел?

    Нужно понимать, что не существует операций между комплексными и действительными числами в математике. Действительные числа неявно приводятся к комплексным, и операции уже выполняются над комплексными числами.
    C++ позволяет вам так делать, достаточно определить конструктор с 1 параметром.

    Complex(double _r): Complex(_r, 0){}

    Теперь любые числовые литералы и типы, которые могут быть неявно приведены к double, так же могут быть неявно приведены к Complex. Теперь можно писать следующее:
    Complex(1,2) + 1;

    Остаётся другая проблема. Операторы объявлены как функции-члены, что позволяет их использовать лишь тогда, когда левый операнд - комплексное число. Такое выражение не скомпилируется:
    1 + Complex(1,2)

    Что бы обойти эту проблему, нужно заменить функцию-член на дружественную функцию:

    #include <iostream>
    using namespace std;
    
    class Complex {
    	public:
    		Complex(double _r, double _i): r(_r), i(_i){}
    		Complex(double _r): Complex(_r, 0){}
    		
    		friend Complex operator + (const Complex &left, const Complex &right);
    
    	private:
    		double r,i;
    };
    
    Complex operator + (const Complex &left, const Complex &right) { //Friend function
    	return Complex(left.r + right.r, left.i + right.i);
    }
    
    int main() {
    	Complex a = 4;
    	Complex b(1,2);
    	int c = 5;
    	a+b;       // OK
    	3+b;       // OK
    	a+123.0f;  // OK
    	c+a;       // OK
    	return 0;
    }
    Ответ написан
    5 комментариев
  • Почему дженерик класса влияет на собственный дженерик метода?

    Vestail
    @Vestail
    Software Engineer
    Если вы используете сырую ссылку, вы теряете возможность использовать обобщения для любых нестатических челенов класса черех эту ссылку. JLS(4.8)
    Combining Raw Types and Generic Methods
    Ответ написан
    1 комментарий
  • Стоит ли продолжать изучать Android develop?

    artemgapchenko
    @artemgapchenko
    Здравствуйте, как многие знают, Google готовит замену Android

    Откуда вы всё это берёте? Есть проект на Гитхабе с таким вот README:

    Pink + Purple == Fuchsia (a new Operating System)

    Всё. Ни про замену Android, ни про предназначение проекта ничего не сказано. К проекту подключено 3 (три) человека, развивается он без году неделя, никаких официальных анонсов не было.
    Прекращайте читать советские газеты перед обедом и вместо первоисточников и не занимайтесь домыслами того, чего нет. Изучайте Android и выбросите Фуксию из головы на ближайшие года два, пока не станет понятно, что это такое и кому это нужно.
    Ответ написан
    Комментировать
  • Как запустить исходники apk файла в Android Studio?

    xmoonlight
    @xmoonlight
    https://sitecoder.blogspot.com
    Что я делаю не так?
    Занимаетесь реверс-инженерингом, что в разы трудозатратнее написания подобного ПО прямым методом.
    Ответ написан
    2 комментария
  • Насколько это "кошерно" сохранять объекты в базу с помощью ORM вместо реализации интерфейса Parcelable?

    artemgapchenko
    @artemgapchenko
    Собственно цель лишь в том, чтобы оградить код от лишней грязи

    Конкретизируйте, где возникает "лишняя грязь".

    от неприятных ошибок, которые могут возникнуть при использовании Parcelable

    Вроде того, что новое поле добавили, а в writeToParcel() и createFromParcel() указать его забыли? Ну так это, AutoValue + AutoParcel, и нет больше такой проблемы.

    Пользуетесь ли вы ORM для того, чтобы сохранять объекты?

    Чтобы сохранять - да. Чтобы передавать объект из одной Activity в другую - нет. Но могу себе представить варианты, когда какая-нибудь отличная от Parcelable сериализация будет необходима. Например, объект вашего класса содержит Bitmap, или же просто byte array. При попытке положить этот объект в Bundle как Parcelableу вас упадёт исключение (могу соврать, но у меня вроде на Bitmap-ах весом около 1.5-2 мегабайта падало). Возможный выход - сохранить этот Bitmap на карточку как файл, и пробросить путь к файлу в следующую Activity.
    Ответ написан
    7 комментариев
  • Как полностью удалять строчку из БД SQLite android?

    gadfi
    @gadfi
    https://gamega.org
    это не баг так и должно быть, но если вам очень хочется (для начала убедитесь что вам это действительно нужно) то при создании таблицы просто не пишите _id INTEGER PRIMARY KEY AUTOINCREMENT
    а просто _id INTEGER PRIMARY KEY
    Ответ написан
  • Растет ли стек, если рекурсивный вызов функции - последняя операция?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    В Java нет оптимизации хвостовой рекурсии.
    Ответ написан
    Комментировать
  • SCP-579 - [ДАННЫЕ УДАЛЕНЫ]?

    riot26
    @riot26
    <:З )~~
    Любой школьник, умеющий на пхп связать 2 строчки знает, что промо-коды надо генерировать не по какому-то алгоритму, а рандомно и держать их в БД. А в Яндексе далеко не школьники сидят.
    Ответ написан
    3 комментария
  • Ошибка при старте приложения, в чем проблема?

    @onepavel
    Консультация и разработка мобильных приложений
    Тебе сказали в чем проблема и показали где проблема
    java.lang.NullPointerException: Attempt to invoke interface method 'java.lang.Object[] java.util.Collection.toArray()' on a null object reference
    at java.util.ArrayList.addAll(ArrayList.java:188)
    at com.ekchang.jsouper.sample.MoviesAdapter.loadData(MoviesAdapter.java:47)
    Ответ написан
    Комментировать