Мерзавец или подрывная деятельность?

Я использовал что-то вроде этого, чтобы преобразовать T в string & amp; String вернуться к T с помощью Gson. Не все, что вы ищете, но на всякий случай.

Объявление расширения

inline fun <reified T : Any> T.json(): String = Gson().toJson(this, T::class.java)
inline fun <reified T : Any> String.fromJson(): T = Gson().fromJson(this,T::class.java)

Использование

// Passing an object to new Fragment
companion object {    
        private const val ARG_SHOP = "arg-shop"

        @JvmStatic
        fun newInstance(shop: Shop) =
                ShopInfoFragment().apply {
                    arguments = Bundle().apply {
                        putString(ARG_SHOP, shop.json())
                    }
                }
    }

// Parsing the passed argument
private lateinit var shop: Shop

    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        arguments?.let {
            shop = it.getString(ARG_SHOP).fromJson() ?: return
        }
    }
19
задан Paul 20 February 2009 в 18:46
поделиться

12 ответов

Так как это для Вашего собственного персонального проигрывания вокруг, мой вопрос прост: Вы уже знаете Подверсию или Мерзавца?

  • , Если Вы знаете, SVN - используют Мерзавца.
  • , Если Вы знаете, Мерзавец - использует SVN.

, Если Вы не знаете, любой - использует SVN. Это - лучшее введение.

39
ответ дан 30 November 2019 в 01:54
поделиться

Если Вы планируете взять с собой свой проект на карте с интерфейсом USB, используйте Подверсию. Windows XP это действительно, действительно, действительно плохо при кэшировании большого количества маленьких файлов на карте с интерфейсом USB. Мерзавец пишет много маленьких файлов для операций фиксации, и это берет возрасты в Windows.

[РЕДАКТИРОВАНИЕ] проблема с Windows XP и файлами на карте с интерфейсом USB кэшируется (или отсутствие этого). Для предотвращения потери данных XP будет всегда писать файлы synchonously на карте с интерфейсом USB (таким образом, любая запись возвратится только после , FS сообщил, что все блоки были записаны в палку). Добавьте, что к тому, что карты с интерфейсом USB являются медленными при обработке маленьких файлов (у них есть большая служебная инициализация их управления уровнем износа), который приводит к очень низкой производительности для любого вида приложения, которое пишет много маленьких файлов.

[EDIT2] при помещении контроля SVN на карту с интерфейсом USB у Вас также будет много маленьких файлов (особенно в .svn каталогах). Таким образом, решение в этом случае состоит в том, чтобы поместить репозиторий Подверсии ("сервер") на Карте памяти. Репозиторий использует только набор больших файлов (при использовании параметра базы данных вместо базирующегося того файла: svnadmin create --fs-type bdb). Это избегает "многой небольшой проблемы файлов". Нет никакого способа достигнуть того же самого с текущими версиями Мерзавца.

-2
ответ дан 30 November 2019 в 01:54
поделиться

С SVN необходимо будет настроить сервер, создать репозиторий там, проверить (пустой) репозиторий, добавить файлы и затем фиксировать.

С Мерзавцем, все, в чем Вы нуждаетесь, git init в корневом каталоге Вашего проекта. Затем можно добавить и фиксировать файлы, как Вы считаете целесообразным.

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

0
ответ дан 30 November 2019 в 01:54
поделиться

Можно сделать собственное мнение после чтения этого: http://whygitisbetterthanx.com

1
ответ дан 30 November 2019 в 01:54
поделиться

Позвольте нам моя поездка - в по Вашему вопросу и спросите:

  1. Мерзавец работает над Windows?
  2. это имеет что-то, что это эквивалентно Черепахе? (иначе я не вижу, как это могло конкурировать с SVN с точки зрения простоты в употреблении)

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

1
ответ дан 30 November 2019 в 01:54
поделиться

Какой, который Вы решаете использовать, во многом зависит от того, что Ваши потребности теперь и продвижение. У мерзавца есть очень хорошее сообщество, создал раунд это с GitHub, который является большим для совместного использования кода и проектов. SVN довольно прост установить и начаться, но в многочисленных командах у Мерзавца есть побежденный без всяких усилий с, он переходит и объединяется. Это идеально в случаях, где у Вас есть несколько человек, работающих над тем же проектом, или в офисной установке или в смысле OSS, где команда распространена.

, Если все Вам нужно, что-то быстрое и простое для установки, и начаться так можно запустить проект, SVN должен быть прекрасным. SVN также интегрируется во многих редакторов и IDE, а также многие отслеживание ошибок и непрерывные системы интеграции.

, Если Вы планируете наличие команды или уже делаете, на Мерзавца стоит посмотреть для ее ветвления и слияния установки. У мерзавца однако, в основном благодаря тому, чтобы все еще быть довольно молодым, нет почти такой же поддержки доступной

3
ответ дан 30 November 2019 в 01:54
поделиться

Я пошел бы с Подвижный вместо этого. Это, как предполагается, подобно Мерзавцу (который я никогда не мог получать выполнение из-за проблемы Windows), и действительно легко установить в Windows & очень хороший для "персональных" систем управления версиями.

4
ответ дан 30 November 2019 в 01:54
поделиться

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

4
ответ дан 30 November 2019 в 01:54
поделиться

Если Вы работаете одни и хотите некоторое простое в использовании управление версиями, то используйте Подверсию. Это работает отлично в Windows, открытие репозитория является одним щелчком правой кнопкой в пустом с черепаха SVN . анк SVN предоставляет очень хорошей интеграции с Visual Studio - почти наравне с TFS, если Вы используете VS 2005 или более свежий.

, С другой стороны, Мерзавец является намного более многообещающим, чем SVN. Я проверю его в течение этого года, но сторонние инструменты еще не на одном уровне.

4
ответ дан 30 November 2019 в 01:54
поделиться

Подверсия намного более благоприятна для Windows, по моему опыту, и также более сразу полезна для сольного разработчика.

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

10
ответ дан 30 November 2019 в 01:54
поделиться

Я пошел бы с Мерзавцем. Дело не в этом плохо набирающий скорость на основах (существует теперь тонна хороших ресурсов, включая learn.github.com), и она окупится чрезвычайно. И я использовал его на Vista без probs.

12
ответ дан 30 November 2019 в 01:54
поделиться

Если Вы хотите интеграцию Visual Studio нет никакого вопроса. Только Подверсия имеет интеграцию Visual Studio ( AnkhSVN, VisualSVN и несколько сценариев, которые предоставляют доступ к TortoiseSVN).

Одна из самых важных причин, что Подверсия имеет такую большую сумму инструментов, записанных для него, - то, что она была разработана как стабильная библиотека для использования несколькими клиентами.

маловероятно, что Мерзавец получает тот же уровень интеграции в Visual Studio, прежде чем поддержка мерзавца будет доступна как некоторая допускающая повторное использование библиотека. (Существуют планы относительно libgit2, который мог сделать это реальностью).

2
ответ дан 30 November 2019 в 01:54
поделиться
Другие вопросы по тегам:

Похожие вопросы: