2009-02-28 3 views
5

Исходя из backgroup Microsoft development Я немного смущен относительно того, какие языки/среды разработки доступны на Mac. Существуют ли какие-либо языки на языке C# для разработки на Mac, отличном от Java, которые я также должен учитывать? Что предпочитают конвертеры MS-OSX и почему? Я после стратегии программирования бизнес-уровня, а не игр или графики, поэтому производительность приложения не является общим драйвером для моего выбора платформы.Разработка на Apple (новая платформа)

ответ

3

Посмотрите на проект Mono

Цитата из wikipedia

Mono является проект под руководством Novell (ранее по Ximian) для создания стандарта Ecma совместимый, .NET-совместимый набор инструментов , включая, среди прочего, C# компилятор и Common Language Runtime. Моно может работать в ОС Linux, BSD, UNIX, Mac OS X, Solaris и Windows.

Но я действительно рекомендую идти по пути какао и получить Аарон Hillegass книгу «Какао Программирование для Mac OS X»

12

Objective-C с API Cocoa является путь. После того, как у вас есть это, есть также мосты между Ruby и Python API Cocoa. Тем не менее, я настоятельно рекомендую сначала изучить API Cocoa с Objective-C.

0

На соответствующую записку,

Silverlight является веб-«флэш-как» технология поддерживается на Windows, и Mac, и вы можете закодировать в большинстве языков .NET.

2

Objective-C, C, C++, Java, Ruby, Python, Php, ... Существует множество вариантов использования языков/среды разработки, в том числе C# через Mono, как говорит @epatel. Я бы сказал, что выбор языка зависит в большей степени от того, что вы разрабатываете, чем от того, на какой платформе вы идете.

0

C# доступен для OS X, если вы хотите использовать Mono. Для не-UI и веб-материалов это должно работать нормально.

Для разработки настольных приложений я использую REALbasic. Синтаксис и объектная модель очень похожи на Visual Basic.

Для программирования на бизнес-уровне я не уверен, что Cocoa/Objective-C станет самой продуктивной для начала; это совсем не так, как .NET и/или Java.

5

Я также только что купил Mac и пришел из фона разработки .NET. Я попробовал кучу разных языков и сред. Если вы собираетесь писать настольное программное обеспечение OS X, вам понадобится использовать Cocoa и Interface Builder. У IB нет аналога Windows, потому что он так сильно связан с Cocoa. Это означает, что вам нужно будет одновременно изучить Cocoa, и это нелегко сделать, если посмотреть на код.

Objective-C - это родной язык Mac, и он не так утончен, как C#. Требуется некоторое время, прежде чем вы сможете свободно читать его, потому что функции вызова выглядят иначе. Использование Python или Ruby вместо Objective-C добавляет уровень сложности до тех пор, пока вы не изучите Cocoa, но после этого кажется вполне жизнеспособным. C# через Mono отлично работает, но я не думаю, что весь мост Cocoa # реализован. Инструменты C# намного ниже, чем Visual Studio, а MonoDevelop чрезвычайно уродлива на Mac. Я решил, что, если я хочу пойти по этому маршруту, мне нужно изучить Objective-C, но пошла иначе.

Если вы пишете веб-сайт, тогда у вас есть гораздо больше гибкости.Доступны все культуры Python и Ruby, хотя есть некоторые икоты с установкой некоторых библиотек Python. Это маршрут, который я взял, потому что у меня был базовый опыт Python, и навыки почти на 100% совместимы с Linux. iTerm - лучший клиент, чем терминал. Мне не нравились большинство редакторов кода, которые я пробовал, и начал с Smultron, который не намного больше, чем очень грамотный текстовый редактор с подсветкой синтаксиса. Есть определенно множество вариантов.

Независимо от того, как вы к нему подходите, вы потратите много времени на обучение. Я постоянно натыкался на синтаксис Python, но я, наконец, хорошо разбираюсь в этом. Документы SQLAlchemy (Python ORM) почти всегда имеют открытое окно браузера. Я также укусил пулю и начал использовать Vim (MacVim специально), что на самом деле интересно изучать, потому что всегда есть другая команда, которая делает именно то, что вы хотите. (Например, я устал идти в линию, нажимая $, чтобы идти до конца, ударяя, чтобы добавить, а затем нажмите Enter, чтобы начать новую линию, чтобы я попал в Google и обнаружил, что могу просто нажать o.)

1

Цель-C и какао - это путь к уверенности. Довольно часто разработчики делают неправильное представление о том, что Objective-c не «детализирован», а «точно настроен». Но я могу заверить вас, что это главный дом за некоторыми из лучших приложений в бизнесе. Существует заметная кривая обучения.

0

Я бы забыл моно, он работает не очень хорошо. Медленные, багги и system.drawing/forms не работают должным образом при распространении.

С C# Я бы пошел с мономакой. Вы получаете доступ ко всем mac apis, но в C#. Это похоже на половину дома. Вместо форм вы используете NSWindow, а вместо элементов управления вы используете NSView. Вместо рисования вы используете графический контекст. Недостатком является то, что документация немного тонкая, и она стоит.