Статьи

Как я настроил свою машину для разработки

У каждого разработчика есть набор инструментов, которые облегчают его жизнь, без чего его жизнь ощущается урезанной! За эти годы я разработал свой собственный набор, который я опишу в этом посте. Основной операционной системой для моих задач, связанных с разработкой, является Ubuntu, и я предполагаю, что у вас установлена ​​одна из последних версий Ubuntu (12.04+).

Когда я начинал разработку, я знал только базовый PHP. Настроить машину для разработки было так же просто, как установить PHP5, MySQL и изменить домашний каталог Apache2.

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

За исключением Google Chrome и Sublime Text, все остальное в списке можно установить с помощью команды apt-get Поэтому я написал простой скрипт bash, который устанавливает их последовательно. Обратите внимание, что некоторые (например, mysql-server

Вот то, что мне абсолютно необходимо в разработке машины.

Гугл Хром

Гугл Хром

Google Chrome , несомненно, является самым популярным браузером , и это вполне оправданно. Chrome обладает множеством функций, но одна маленькая вещь, которая ограничивает его в сравнении с любым другим браузером, — это мощная функция синхронизации. Мне действительно нравится тот факт, что, если я выполню поиск Google на своем рабочем столе и через несколько минут проверю свой смартфон, я смогу увидеть его среди своих поисков в Chrome.

Синхронизация Firefox уже налицо, но пока не совсем. Это первая вещь, которую я устанавливаю, потому что многие другие вещи в моем списке могут столкнуться с проблемами, которые обычно требуют обширного поиска в Google для исправления.

Расширения Chrome

Chrome поставляется с множеством функций, но он действительно неполон без используемых мной расширений. Наиболее важным расширением является AdBlock Plus , чтобы удалить рекламу из Интернета. При разработке вы должны иметь возможность видеть сайт так, как это делают ваши пользователи, чтобы правильно тестировать изменения, и, согласно некоторым отчетам, одна пятая часть пользователей устанавливает расширения для блокировки рекламы, поэтому удобно тестировать как с рекламой, так и без нее.

Следующий аддон, который я устанавливаю, это Pocket . Как разработчик, вы часто обнаруживаете, что есть замечательные статьи, но у вас не всегда есть время, чтобы их прочитать — вот где Pocket вступает в игру. Он сохраняет эти статьи и синхронизирует их с другими вашими устройствами, чтобы вы могли прочитать их в любое время позже.

YSlow — еще одно отличное расширение для Chrome, которое говорит вам, почему определенная страница работает медленно. Другим важным расширением является Захват экрана для ситуаций, когда нажатие кнопки экрана печати недостаточно. Наконец, я работаю с Todoist, чтобы управлять моей повседневной деятельностью.

Эти расширения синхронизируются после входа в Chrome, и мне не нужно их устанавливать каждый раз.

Может случиться так, что новая версия Ubuntu может быть несовместима с последней версией Chrome. В этом случае вы можете либо установить версию для разработчиков, если проблема там решена, либо установить Chromium , который предоставляет вам те же возможности синхронизации.

Текстовые редакторы

Установка многих других инструментов и служб в этом списке может включать редактирование текстовых файлов конфигурации. Как я могу сделать это без моих любимых текстовых редакторов?

Возвышенный текст

Я предпочитаю Sublime Text, когда я работаю на локальной машине. Однако при работе на удаленном сервере требуется текстовый редактор на основе интерфейса командной строки. Ubuntu поставляется с VI, но более способным является Vim (Vi Improved). После установки я настраиваю Vim, редактируя файл .vimrc Подобный параметр настраивается в Sublime Text путем изменения его файлов настроек (для уровней по умолчанию или для пользовательских уровней).

Для Sublime Text вы можете изменить множество настроек в файле настроек. Я предпочитаю использовать тему Soda Dark .

Затем вы должны попробовать диапазон плагинов, доступных для Sublime Text.

  • GitGutter показывает в области желоба, была ли линия добавлена, изменена или удалена, в соответствии с Git.

  • Pylinter проверяет файлы Python на наличие ошибок при их сохранении и показывает нарушения.

  • All Autocomplete — это плагин, который расширяет список слов автозаполнения для всех открытых файлов. T

Это лишь некоторые из них, и для описания плагинов Sublime Text потребуется отдельная статья. Я предлагаю вам взглянуть на специфичные для внешнего интерфейса, специфичные для PHP или специфичные для Python плагины для Sublime Text.

Программное обеспечение для контроля версий

Следующим шагом является установка программного обеспечения для контроля версий. Если вы вовлечены в разработку с открытым исходным кодом, достаточно установить Git , Mercurial и Bazaar , так как большинство проектов используют один из этих трех. Вы можете пропустить установку Subversion, потому что в наши дни проекты с открытым исходным кодом в основном перешли от Subversion.

Установить их довольно просто с помощью диспетчера пакетов Ubuntu. Если вам не нужны бета-версии, вы можете установить их с помощью apt-get install Если вам нужны нестабильные версии для разработки, вам, возможно, придется получить тарбол с их сайтов и собрать их в вашей системе.

Управление базами данных

Снимок базы данных

Источник: atutor.ca

Большинству веб-приложений нужна база данных для хранения данных. Перед установкой любого такого программного обеспечения желательно установить базу данных. Самая популярная система управления реляционными базами данных — MySQL , но вы можете захотеть продолжить с чем-то вроде MariaDB (который начался с форка MySQL после того, как Oracle остановил свою разработку) или PostgreSQL .

Если вы хотите использовать NoSQL, вы можете установить MongoDB или Cassandra .

PHP, Python, Ruby, Node.js

После настройки базы данных я получаю несколько языков и сред, на которых работают популярные веб-проекты. PHP , Python , Ruby и Node.js являются главными опциями. Я не устанавливаю Java SDK, если мне не нужно запустить что-то, что конкретно требует этого.

Большинство из них имеют разные пакеты для подключения к базам данных (например, php5-mysqlMySQL-Python Убедитесь, что вы устанавливаете необходимые пакеты.

Специфичные для Python пакеты

Поскольку я использую Python в качестве переходного языка, я устанавливаю несколько специфичных для Python пакетов. Во-первых, я устанавливаю pip easy_installpip Затем я продолжаю установку django Далее, я получаю пакет beautifulsoup Наконец, ipythonipdb

Изменить домашний каталог Apache2

В Ubuntu по умолчанию установлен веб-сервер в форме apache2. Однако одна небольшая проблема заключается в том, что домашним каталогом является /var/www/ Каталог /var/www/ Если вы работаете на компьютере разработчика, ставить префикс sudo

Простой способ исправить это — переместить домашний каталог в домашнюю папку ( /home/[username]/

Настройка пользовательских псевдонимов в терминале

Если вы часто работаете с терминалом, вы знаете, что вам необходимо вводить определенные монотонные команды. Например, чтобы запустить сервер Django с локальным файлом настроек, нам нужно набрать python manage.py runserver --settings=settinngs.local Чтобы не вводить это каждый раз, вы можете добавить псевдоним в ваш файл ~/.bashrc

Еще один полезный набор псевдонимов, который вы можете использовать: ..cd ../.....cd ../../../ Вот руководство по работе с .bashrc .

Разнообразный

Независимо от вашего уровня развития, вам, вероятно, нравится слушать музыку во время работы. Хотя некоторые люди предпочитают Spotify, Rdio, YouTube или GrooveShark для потоковой передачи музыки, вы можете установить VLC, если вы заботитесь о пропускной способности.

Последняя программа, которую я устанавливаю, это та, которая может или не может потребоваться в процессе разработки. GIMP — это программное обеспечение для обработки изображений, широко рассматриваемое как приемлемая альтернатива Photoshop. Иногда разработчику может потребоваться выполнить небольшие задачи по обработке изображений, такие как обрезка, что можно быстро выполнить с помощью GIMP.

На этом мы заканчиваем список программного обеспечения, которое я устанавливаю на машину для разработки.

Вы используете что-то классное, что я пропустил? Дайте нам знать в комментариях ниже.

Обновление: добавлен параграф, объясняющий необходимость использования AdBlock при тестировании.