Две недавние статьи на SitePoint рассказывают о том, как люди настраивают свои среды разработки. Зак Уоллес рассказал о настройке среды разработки Windows, а Шаумик Дайтари рассказал о своем опыте работы с Ubuntu Linux.
В этой статье я хочу поговорить о том, как настроить среду разработки на Mac OS X. Но сначала немного об истории.
Я независимый разработчик программного обеспечения и технический писатель. Учитывая это, мне регулярно нужны разнообразные инструменты, будь то инструменты для разработки программного обеспечения, исследований, написания или экспериментов.
Это определенно требует охвата всего: от управления кодом, доступа к удаленным серверам и управления базами данных до написания и просмотра контента. Тем не менее, отличительной особенностью Mac является то, что для него доступно так много инструментов.
Основные инструменты
Новые Mac поставляются с пакетом iWork, Safari, Preview и The Unarchiver, а также рядом других инструментов с графическим интерфейсом. В командной строке они поставляются с различными инструментами с открытым исходным кодом, такими как SSH, Wget и cURL. Однако одного этого недостаточно. Для правильной веб-разработки и технического написания нам нужен ряд других. В частности, я регулярно использую следующие комбинации:
- Dropbox и Google Диск
- Firefox , Google Chrome и Chromium
- Pixelmator и Skitch
- Коллоквиум , скайп и слабина
- Evernote и Wunderlist .
Эти инструменты в значительной степени незаменимы в повседневной жизни.
Dropbox и Google Drive позволяют мне обмениваться файлами с клиентами. Я мог бы использовать версии в браузере, но установка приложений делает синхронизацию еще проще.
И ни одна среда веб-разработки не будет полной без всех современных браузеров. Поскольку Internet Explorer не поддерживается на Mac, как и Zack, я использую ряд инструментов, таких как BrowserStack, для тестирования сайтов в IE.
Pixelmator и Skitch упрощают редактирование и комментирование изображений. Pixelmator не бесплатен, но и не так уж дорог. Вместо этого вы можете использовать GIMP , но я считаю, что его интерфейс оставляет желать лучшего.
Для создания и хранения заметок я использую Evernote. Это определенно получил это пространство прибитым. И все, что мне нужно для управления проектами — это Wunderlist. Благодаря этому я могу быть в курсе всей работы, которую я должен выполнять для каждого клиента, а также вести записи о разговорах, которые у нас были, и о том, что мне еще предстоит сделать.
Редакция
Но теперь давайте перейдем к более серьезным вещам: редактированию. Я делаю два типа редактирования — контент и код — поэтому мое обсуждение редакторов будет отражать это. Независимо от того, что вы делаете, есть несколько очень хороших редакторов для Mac.
Когда я пишу, я пишу в формате Markdown . Он позволяет вам писать структурированный контент в любом текстовом редакторе без необходимости в специальном программном обеспечении (таком как Microsoft Word), которое может оставить вас по указанию того или иного поставщика. Используя такие инструменты, как Pandoc , вы можете экспортировать ваш контент практически в любой другой формат файла.
Написание приложений
Для написания в Markdown доступно несколько отличных нативных приложений, в том числе MacDown , iA Writer и Writer Pro и Mou . Черт возьми, вы даже можете использовать TextEdit, хотя он не очень подходит для этой задачи. Кроме того, существуют различные онлайн-редакторы Markdown, в том числе Gingko , Draft и любимый Бруно Шкворц, StackEdit .
Я пытался и могу поручиться за все это, хотя я не использую их на регулярной основе. Для меня лучшим инструментом для использования является Vim, в идеале MacVim . Это займет немного больше времени, чтобы установить и настроить. Но когда это сделано, это удивительно. Более того — это бесплатно . Если вы заинтересованы или испытываете затруднения, загляните в мой репозиторий конфигурации Vim на GitHub.
Приложения для кодирования
Далее есть код. Для Mac доступно несколько редакторов кода, независимо от того, являетесь ли вы разработчиком PHP, Python, Ruby, Go, Haskell или C ++.
Есть всегда превосходный качественный Sublime Text 3 , который я часто и с удовольствием подтверждаю. Также есть TextMate 3 , легкий, простой и расширяемый. Но для меня мой любимый редактор — PhpStorm . Основанный на IntelliJ , он просто делает так много; и что он не делает изначально, есть плагин для. Сказав это, это не бесплатно. Но цена на самом деле не так уж и велика, особенно если учесть преимущества.
Контроль версий
Далее давайте посмотрим на контроль версий. Пишу ли я или пишу код, я всегда использую контроль версий. И моя система контроля версий — Git . Для меня это не просто. Тем не менее, вам может быть одинаково удобно использовать Mercurial . Если вы используете Subversion, хорошо. Но я не могу честно поддержать CVS.
Используя Git в качестве моей системы отсчета, есть несколько хороших инструментов для Mac на выбор. Во-первых, есть более упрощенный GitX . Открытый исходный код и бесплатный, а также клон Mac из GitK Линуса Торвольда, он предоставляет ключевые функции, необходимые для управления Git-репозиторием, и предоставляет хороший встроенный просмотрщик различий.
Тогда есть электростанция SourceTree . Если вы ищете одно приложение, которое делает все это, которое активно разрабатывается крупной корпорацией, ориентированной на инструменты для разработчиков, Atlassian, тогда не переходите на SourceTree. Я использовал его целую вечность (до того, как перешел на Git из командной строки), и это отлично.
Я также сделаю почетное упоминание о SmartGit .
Из этих трех я больше всего использовал и очень рекомендую — SourceTree. Однако, поскольку MacVim является моим текстовым редактором, я управляю своими репозиториями Git из командной строки. (Я не собираюсь предлагать вам также использовать командную строку. Но я скажу, что стоит потратить время на то, чтобы научиться его использовать, поскольку это поможет вам стать намного более продуктивным. если вы не человек командной строки, SourceTree — лучший способ!)
Сервер
Для серверов я беру один из двух вариантов. Я либо использую встроенные серверы, например, с Ruby и PHP, и работаю без дополнительных дополнительных программ, либо запускаю виртуальную машину. Для этого я использовал VirtualBox и Ubuntu Linux, но все чаще я создаю свои собственные, используя Ansible и Vagrant .
Существует целый ряд инструментов, к которым вы можете обратиться, и по умолчанию существует множество языковых библиотек и расширений, которые не поставляются с установленными двоичными файлами на Mac, и даже установленные версии могут быть недостаточно новыми. Чтобы обойти это, я использую Homebrew , один из двух превосходных менеджеров пакетов для Mac.
Homebrew работает аналогично APT и yum в Linux, так как вы можете искать в хранилище пакетов, устанавливать, обновлять и настраивать пакеты, используя его. Для хорошего понимания того, как он работает и что он предлагает, посмотрите онлайн-документацию Homebrew .
База данных
Для работы с базами данных я в основном использую MySQL . Я думаю, вы могли бы отнести это к моему наследию PHP. Но я также регулярно работаю как с PostgreSQL, так и с SQLite . Чтобы установить любую из этих баз данных, вы можете скачать их у соответствующих поставщиков по ссылкам.
Хотя я хотел бы думать о себе как о жестком гуру командной строки, я не отношусь к базам данных. Для этого я использую Navicat Lite уже несколько лет. Это отличный инструмент, который обеспечивает равномерный доступ к широкому количеству баз данных.
Navicat поддерживает не только MySQL, PostreSQL и SQLite, но также Oracle и SQLServer. Он позволяет безболезненно создавать любые элементы схемы, создавать и выполнять запросы вручную, искать, создавать и обновлять записи — все, что вы ожидаете от инструмента управления базами данных.
Внешний доступ
Для внешнего доступа я регулярно использую библиотеку инструментов SSH , будь то SSH-подключение к удаленному серверу или копирование файлов в мою среду разработки или из нее. Кроме того, я также регулярно использую cURL и Wget для захвата файлов и выполнения запросов к API и взаимодействия с веб-сайтом.
Но если вы не склонны к командной строке, есть несколько действительно хороших инструментов с графическим интерфейсом. Это почтенный FileZilla , а также более привлекательный Cyberduck и Transmit . Каждый из этих трех инструментов позволит вам управлять файлами удаленно с помощью мыши.
Завершение
И вот как я настраиваю свою среду со всеми необходимыми инструментами. Я признаю, что я использую инструменты командной строки и типа командной строки довольно интенсивно. Но я также рассмотрел ряд инструментов с графическим интерфейсом, которые вы можете использовать вместо них, если вы предпочитаете этот стиль.
Несмотря на насмешливые комментарии, которые люди часто высказывают о Mac, не сомневайтесь — для него доступно множество программ . А благодаря своему наследию BSD у него есть доступ к инструментам с открытым исходным кодом и к Posix-совместимым инструментам. Таким образом, независимо от того, каким путем вы идете, у вас есть широкий спектр инструментов для работы и разработки на Mac.
Итак, как мои настройки сравниваются с вашими?