Задать вопрос
  • Как лучше упаковать комплектующие?

    POS_troi
    @POS_troi
    СадоМазо Админ, флудер, троль.
    Вы-же вкурсе что к примеру SATA кабель тоже комплектующая и их можно вообще тупо скидать в пакеты и везти? :)

    Что за комплектующие, размер, способ монтажа деталей, наличие габаритных деталей, каким транспортом будет везтись (влажность и т.п.).

    Если у вас нет картонных коробок - купите картонные коробки, запаяйте в целлофан свою "комплектующую" и положите в коробочку.
    Ответ написан
    6 комментариев
  • Как сделать автозаливку файлов с сервера на сервер?

    plin2s
    @plin2s
    IT, инженер
    rsync?
    Ответ написан
    Комментировать
  • Как колебательный контур на приемнике распознает частоту и отправляет нужную на динамик?

    Ocelot
    @Ocelot
    Настоятельно рекомендуется к прочтению:
    a7c1fc81241a49cf8ec18a0da5e66c57.jpg
    Ответ написан
    Комментировать
  • Как узнать при запуске программы на какой операционной системе она запускается?

    @Free_ze
    Пишу комментарии в комментарии, а не в ответы
    System.getProperty("os.name");
    System.getProperty("os.version");
    Ответ написан
    Комментировать
  • Вернуть стили с определенного коммита?

    @fetis26
    Ну, за фронтенд!
    Чтобы вытащить файл из определеного коммита достаточно сделать
    git checkout <commit> <filename>
    Ответ написан
    3 комментария
  • Каким Code convention лучше следовать в JAVA?

    @di23
    Нет команды?
    Какому конкретно соглашению придерживаться нет разницы (выберите удобный для себя), главное придерживаться этого соглашения всегда. В этом суть.

    АПД: И не заморачивайтесь вы на этом долго.
    Ответ написан
    Комментировать
  • Разработка: что должно быть впереди фронтэнд или бекенд?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    В идеале второй вариант, если это возможно.

    Скажем я на своих проектах пытаюсь делать так насколько это возможно. Перед началом разработки какой-то фичи разработчики просто договариваются между собой как будет организовано взаимодействие с сервером (по сути пишется описание API на каком api blueprint, сейчас будем переходить на raml).

    После чего из этого описания разработчик серверной части может спокойно генерить себе тесты, json схемы респонсов и т.д. что бы быть уверенным что он делает так как договаривались, а мобильщики могут поднять себе из описания mock сервер.

    Таким образом какие-то проблемы с серверным взаимодействием можно отловить задолго до того как разработчики в принципе реализуют эту часть api. Хотя если разработчики не используют какие-то средства для валидации реализации на предмет соответствию описанию, то в итоге на интеграцию может уйти больше времени.

    p.s. этот подход я форсирую еще и потому, что при таком варианте можно легко наладить кодогенерацию как для клиента так и для бэкэнда. Скажем валидация запросов, маршрутизация, мэппинги и т.д. - все можно сгенерировать. RAML в этом плане дает из всех форматов максимальную гибкость, и поэтому я и планирую на него переходить. В очень простых случаях можно сгенерировать код хоть всего бэкэнда, но и так в целом скорость разработки неслабо увеличивается.
    Ответ написан
    6 комментариев
  • Как сделать такую же кнопку в своем дизайне?

    a13xsus
    @a13xsus
    Lazy developer
    Это Floating Action Button. Да, вы можете обернуть свой xml в CoordinatorLayout и вместе с ним использовать кнопку. Делается достаточно легко с помощью support library. Достаточно понятно описано здесь:
    stackoverflow.com/questions/24459352/how-can-i-add...

    Подробнее:

    1. Подключаем support library к проекту. Я разрабатываю в xamarin, но в андроид студии к gradle нужно добавить что-то вроде: compile 'com.android.support:design:23.1.1'

    2. Оборачиваем весь ваш xml таким образом:

    <?xml version="1.0" encoding="utf-8"?>
    <android.support.design.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent">
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#cccccc"
        android:id="@+id/rel_layout">
    
        <ImageView
            android:layout_width="match_parent"
            android:layout_height="300dp"
            android:scaleType="centerCrop"
    
            android:id="@+id/tv_movie_item_img360"
            android:transitionName="selectedMovie"/>
    
        <View
            android:layout_width="match_parent"
            android:layout_height="300dp"
            android:background="#000000"
            android:alpha="0.3" />
    
        <com.makeramen.roundedimageview.RoundedImageView
            android:layout_width="100dp"
            android:layout_height="130dp"
    
            android:scaleType="centerCrop"
            app:riv_border_width="2dip"
            app:riv_border_color="#ffffff"
            android:layout_marginStart="14dp"
            android:id="@+id/tv_movie_item_img"
            android:layout_alignParentTop="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="240dp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceLarge"
            android:text="The Revenant"
            android:id="@+id/tv_movie_item_nameRU"
            android:singleLine="true"
            android:layout_marginLeft="10dp"
            android:textSize="20sp"
            android:textColor="#ffffff"
            android:layout_alignBottom="@+id/tv_movie_item_img360"
            android:layout_toEndOf="@+id/tv_movie_item_img"
            android:layout_marginBottom="10dp" />
    
        <TextView
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:textAppearance="?android:attr/textAppearanceSmall"
            android:text="&quot;While exploring the uncharted wilderness in 1823, frontiersman Hugh Glass (Leonardo DiCaprio) sustains life-threatening injuries from a brutal bear attack."
            android:id="@+id/tv_movie_item_details"
            android:layout_marginLeft="10dp"
            android:paddingRight="10dp"
            android:textSize="12sp"
            android:layout_marginTop="5dp"
            android:layout_below="@+id/tv_movie_item_img360"
            android:layout_toEndOf="@+id/tv_movie_item_img" />
    
        <ExpandableListView
            android:id="@+id/exListView"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="true"
            android:layout_below="@+id/tv_movie_item_details"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true">
        </ExpandableListView>
    
    </RelativeLayout>
        <android.support.design.widget.FloatingActionButton
            android:id="@+id/fab"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_margin="16dp"
            android:clickable="true"
            android:src="@drawable/ic_forum"
            app:layout_anchor="@id/tv_movie_item_img360"
            app:layout_anchorGravity="bottom|right|end" />
    </android.support.design.widget.CoordinatorLayout>


    app:layout_anchor="@id/tv_movie_item_img360" -- здесь указываем view, к которому нужно пристыковаться кнопке (снизу)

    С вашим layout у меня получилось как-то так. Разумеется это без кода, в коде нужно будет добавить слушателя, чтобы обрабатывать клики:

    FloatingActionButton myFab = (FloatingActionButton) myView.findViewById(R.id.fab); 
    myFab.setOnClickListener(new View.OnClickListener() { 
        public void onClick(View v) { 
            doMyThing(); 
        } 
    });
    Ответ написан
    8 комментариев
  • Стоит ли обновлять feature-branch в git, если фича реализуется очень долго?

    Fesor
    @Fesor
    Full-stack developer (Symfony, Angular)
    стоит ли периодически вливать их в feature-ветку, дабы упростить слияние в будущем


    Да, стоит. И потом тестить на предмет регрессий функционала. Некоторые ребейзят свою ветку на мастер что бы она всегда казалась свежей и история была более линейной.

    Есть неплохое правило, что фичабрэнчи должны всегда фастфорвардиться в мастер.
    Ответ написан
    Комментировать
  • Как сообщить git, какой ssh-ключ использовать при авторизации?

    iDoka
    @iDoka
    HW Design Engineer
    $ cat ~/.ssh/config
    Host         my_github
    Hostname     github.com
    IdentityFile ~/.ssh/github.rsa


    для захода по ssh синтаксис примерно такой:
    ssh my_github

    думаю для гит указания хоста излишни
    Ответ написан
    1 комментарий
  • Какие особенности сборки морозоустойчивого робота?

    gbg
    @gbg
    Любые ответы на любые вопросы
    Ширпотребная электроника работает до +5 градусов. Помещайте в обогреваемый бокс.

    Моторчикам мороз не так страшен, как редукторам - смазка загустеет и привет.
    Ответ написан
    1 комментарий
  • Как запустить несколько веб-приложений (Spring) на одном сервере?

    через Nginx. каждое приложение запустить на отдельном порту (а не все на 8080) и в Nginx для каждого домена указать свой backend сервер
    Ответ написан
    3 комментария
  • Как передать данные через аудиоразъем?

    a_volkov1987
    @a_volkov1987
    Инженер-схемотехник
    Вам тут уже все разжевали: делаете на микроконтроллере ФСК модем, соединяете его с микрофонным входом у компьютера и слушаете сигнал, после чего декодируете его. Драйвер тут никаким боком не вперся, но ПО для декодирования сигнала на компе писать придется, естественно. "перепрограммировать" аудиоразъем тоже не надо, у вас и так микрофонный вход есть. Неважно, отдельный или комбинированный.
    Не хотите развлекаться с кодированием и декодированием данных - делайте соединение через COM-порт, это вообще easymode для новичков.
    Хотите через SD-карту, изучайте работу с ней по SPI и работу с файловой системой.
    Если у вас диплом горит а познания о микроконтроллерах в окрестности нуля, делайте обмен по COM-порту и не сношайте мозг заголовками, набранными капсом, это неприлично.
    Ответ написан
    Комментировать
  • Не вижу активити, пока процесс не закончится. Что изменить?

    a13xsus
    @a13xsus
    Lazy developer
    Чтобы был отклик от интерфейса, вам нужно код попиксельного анализа выполнять в отдельном потоке, в бекграунде. Например, через AsyncTask.
    Ответ написан
    Комментировать
  • Какие МК программируются на java?

    @guras256
    JAVA CARD
    смарт карты работают на джаве (симки, банковские карты, тд)
    Ответ написан
    Комментировать
  • Java: Как правильно обработать Json?

    sergey-gornostaev
    @sergey-gornostaev Куратор тега Java
    Седой и строгий
    Как я уже писал в комментарии, у вас циклическая зависимость между Pet и Client. Выхода два - или убрать зависимость, или определить владельца связи, чтобы Hibernate мог правильно определить правило десириализации. Сделать это можно либо описав в xml правило мапинга и определив параметр inverse:

    <hibernate-mapping>
        <class name="ru.misha.model.Client" table="clients" ...>
        ...
            <set name="pets" table="clients_pets" fetch="select" inverse="true">
                <key>
                    <column name="client_id" not-null="true" />
                </key>
                <one-to-many class="ru.misha.model.Pet" />
            </set>
        ...
        </class>
    ...
    </hibernate-mapping>


    либо определить направление связи анотациями

    @Entity
    @Table(name = "clients")
    public class Client extends Base {
        @OneToMany(mappedBy="client")
        @Column(name="clientId")
        private Set<Pet> pets;
    }


    Как-то так. Не копируйте бездумно, так как пишу по памяти и могу ошибаться в деталях. Почитайте документацию по Hibernate в заданом направлении.
    Ответ написан
    2 комментария
  • Android. Оправдано ли использование фрагментов в RecyclerView?

    artemgapchenko
    @artemgapchenko
    Не нужно объединять три View в один фрагмент, так как у RecyclerView уже есть следующие методы для создания и привязки ViewHolder'a:
    public abstract void onBindViewHolder(VH holder, int position);

    и
    public abstract VH onCreateViewHolder(ViewGroup parent, int viewType);

    Параметр viewType - это то, что вам нужно. Переопределяете метод

    public int getItemViewType(int position);

    так, чтобы для каждого элемента адаптера он возвращал нужный тип (видео/слайдер/изображение), в onCreateViewHolder() инфлейтите нужную вьюху в зависимости от типа вьюхи, и создаёте ViewHolder, а в onBindViewHolder() привязываете нужный элемент к вьюхолдеру, в зависимости от того, какой тип у элемента.
    Ответ написан
    6 комментариев
  • Что почитать по Gradle на русском языке?

    artemgapchenko
    @artemgapchenko
    Первое, что нам сказали на первой же паре в университете (названия предмета уже не помню, восемь лет назад дело было): "Самый важный для вас язык не C и не Python, а английский". Русская документация всегда будет в лучшем случае отставать от английской, а скорее всего просто будет переводиться мелкими клочками. Поэтому только оригинал, только хардкор.
    Вру. Никакой это не хардкор, освоить английский на уровне "Достаточно для чтения документации" можно очень быстро. Плюс это навык, который точно не устареет, в отличие от Gradle/Android/прочих технологий. Ну и если вы собираетесь переходить на Android, то английский вам точно нужен - подавляющее большинство свежих материалов выходят на английском, документация пишется на нём же, достойные учебники и большинство подкастов выходят на английском, даже известные русскоязычные разработчики, вроде того же Зинатуллина, пишут свои статьи не на русском. Изучайте.
    Ответ написан
    1 комментарий