Заниматься кодированием в Linux через виртуальную машину в Windows VS - PullRequest
2 голосов
/ 29 марта 2010

У меня уже есть опыт настройки виртуальных машин, их запуска и других мелких задач. Я геймер, так что я не избавлюсь от Windows (пока, по крайней мере ...), но я хочу быть хорошим программистом и участвовать в сообществе Open-Source.

Хотелось бы узнать, будет ли хорошей идеей заниматься программированием в linux через виртуальную машину, а не разделять ее на разделы жесткого диска. Хотелось бы узнать о плюсах и минусах производительности и функциональности. Все отзывы приветствуются, спасибо заранее.

Тип программирования, в который я собираюсь погрузиться: Android Dev, Web Dev, Desktop Dev ... Больше Android и Интернета прямо сейчас.

Итак, я смотрю на C #, C, C ++, Java, PHP, HTML, MySQL ... С вершины купола.

Я также занимаюсь веб-дизайном, поэтому Dreamweaver добавлен как «необходимый». Но я уверен, что смогу создавать файлы Dreamweaver и загружать их на сервер после программирования в Linux ... Верно?

И любая информация об IDE в Linux для вышеупомянутого приветствуется, но я бы предпочел пойти по пути кодирования и понять суть того, что происходит «под прикрытием»

Спасибо всем за чтение, я ценю это. Надеюсь, это не смущает: S

Ответы [ 7 ]

2 голосов
/ 29 марта 2010

Пара вещей:

  • Если вы используете IDE, нет смысла кодировать в Linux. Linux хорош для программирования, потому что инструменты командной строки потрясающие. Netbeans и Eclipse отлично работают в Windows. Все, что вам не хватает, это make-файлы (которые IDE не используют в любом случае).

  • Использование виртуальной машины было бы раздражающим (работа с окном и прочим) и медленным. Попробуйте AndLinux , если вы хотите, чтобы Linux работала в Windows. Он настраивает X и Pulseaudio для вас, поэтому все ваши программы будут выглядеть как нативные. По сути, это способ запуска Ubuntu в качестве службы Windows (все пакеты Ubuntu для вашей архитектуры устанавливаются).

  • Если вы просто хотите получить удовольствие от программ командной строки Linux без доступа ко всем Ubuntu, cygwin меньше и может быть быстрее.

  • Если под «файлами Dreamweaver» вы подразумеваете HTML / PHP / CSS, то да, вы можете просто загрузить их на сервер. Насколько я знаю, единственным сервером, совместимым с ASP или ASP.net, является сервер Microsoft, но зачем все равно его использовать?

РЕДАКТИРОВАТЬ: ТАК не дал мне достаточно места в комментариях, чтобы ответить на ваш вопрос ..

AndLinux и Cygwin - это просто лучшие способы реализовать идею о «виртуальной машине».

Cygwin добавляет слой posix для Windows (в основном все, что вам нужно для компиляции программ Unix / Linux / BSD). Это означает, что вы можете взять программу для Linux и просто скомпилировать ее в Windows и заставить ее работать. У них также есть репозитории, но, по моему опыту, установщик cygwin работает медленно и сложен в использовании.

AndLinux запускает ядро ​​Linux как службу Windows, что дает вам возможность работать с ним в VirtualBox / других программах виртуализации. Однако он также настраивает X (графический слой для Linux) и PulseAudio (звуковую систему, которая позволяет вам воспроизводить звук по сети), чтобы при запуске программ для Linux они действовали и звучали как собственные программы. Мне также больше нравится AndLinux, потому что у вас есть доступ ко всем программам Ubuntu, и apt-get проще в использовании, чем установщик cygwin. Кроме того, если вы используете AndLinux и более поздние версии для того, чтобы перейти на 100% Linux, вы в основном уже используете его таким образом.

Что я получаю: если вы хотите запустить Linux на виртуальной машине, не надо. Просто установите AndLinux. Это будет быстрее, и с ним будет намного легче работать (поскольку все просто обычное окно).

Вот пример разницы:

Снимок экрана AndLinux : Программа в правом нижнем углу работает в AndLinux. Заметьте, как это выглядит как плохо тематическая программа для Windows? Сравните это с чем-то вроде это , где у вас есть другой рабочий стол в окне.

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

2 голосов
/ 30 марта 2010

Есть более простое решение ..

Мне все еще нужно использовать Windows для программирования на Symbian, поэтому я использую Wubi и Ubuntu для обеспечения моего двойного боя в Linux ... вы развертываете Wubi, используя большой файл, и, таким образом, не нужно беспокоиться или возиться с созданием раздела ...

Я использовал его в течение 18 месяцев без потери данных и без забот ..

Существует также еще один инструмент под названием andlinux: http://www.andlinux.org/

Он использует Colinux для запуска Linux как программы внутри Windows.

1 голос
/ 29 марта 2010

Одна вещь, на которую вы можете обратить внимание, - это запустить Linux на виртуальной машине, а затем настроить Samba , чтобы позволить хосту подключать к сети части файловой системы Linux, чтобы вы могли работать с помощью инструментов Windows и Linux работает серверные процессы (например, httpd). В качестве альтернативы, я уверен, что в Проводнике есть расширения оболочки для использования серверов FTP, NFS или SSH / SFTP, но я давно их не просматривал.

Если вам понадобится использовать графические инструменты Linux, тогда вы можете использовать для этого X-сервер, найденный в cygwin.

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

1 голос
/ 29 марта 2010

У меня не было проблем с запуском Ubuntu через VMWare. Вы можете легко переключиться в полноэкранный режим в любое время. Настоятельно рекомендуется. Одним из недостатков является то, что Linux не будет полностью задействован потенциал вашего оборудования. Compbiz Fusion не работает в результате.

Учитывая, что вы геймер, я думаю, что ваша машина должна быть достаточно быстрой, чтобы запускать Linux на виртуальной машине. Лучше всего попробовать виртуальную машину перед тем, как связываться с разделами диска.

1 голос
/ 29 марта 2010

Моя установка как бы противоположна: я использую Linux в качестве основной ОС, как на работе, так и дома, и у меня Windows на виртуальной машине. На современном компьютере с достаточным объемом памяти производительность средств разработки не является проблемой. Я работаю с Visual Studio на виртуальной машине, и я видел несколько проблем с производительностью. (Но учтите, что это на быстром компьютере, и вам может потребоваться больше памяти, чем в противном случае, поскольку вы используете одновременно две ОС: es. На старом компьютере с меньшим объемом памяти это может стать невыносимым.)

Двойная загрузка, когда вам приходится перезагружать компьютер для переключения ОС, мне не подходит. Переключение занимает слишком много времени, и действительно нужно переключаться назад и вперед. Наличие Windows в окне работает для меня намного лучше, и вы можете максимизировать это «окно Windows», так что похоже, что вы просто используете Windows.

1 голос
/ 29 марта 2010

Если вы заинтересованы в разработке под Android и хотите использовать Linux, я бы порекомендовал вам заняться разработкой в ​​Eclipse. Eclipse доступен для Linux, и если вы получаете Ubuntu, то Eclipse удивительно прост в установке. Я использовал VirtualBox + Ubuntu + Eclipse для нескольких проектов, над которыми я работал. Если вы решите, что Linux не для вас, а ваш проект был в Eclipse, у вас не будет проблем с переключением обратно на Windows, поскольку Eclipse доступен для обеих операционных систем.

ЕДИНСТВЕННАЯ проблема, с которой я столкнулся, была размером экрана на виртуальной машине ... если у вас большой экран и вы используете виртуальную машину, вы можете ограничиться частью вашего фактического разрешения экрана. Установить Linux на второй раздел очень просто, поэтому я бы порекомендовал вам использовать второй раздел, если вы хотите полностью использовать размер монитора.

0 голосов
/ 29 марта 2010

Я использую физически отдельные машины для запуска Linux и Windows (и MacOS X). Это означает, что мне не нужно перезагружаться, чтобы сделать что-то другое, и каждая система получает полную мощность оборудования.

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

Помните, что виртуальные машины повсеместно не дают вам полного графического ускорения. Это может быть не проблема (многие программы должны справиться с Intel GMA в любом случае) или демонстрация. Ваш выбор.

...