Кроссплатформенный C#. Пишем программы на Mono

Прогресс в айти идет семимильными шагами. Повсеместно внедряются новые технологии и даже такие консервативные учреждения как вузы уже учат программировать своих студентов не на страшно обожаемом ими Паскале (хотя к диалекту ничего плохого не имею, сам время от времени балуюсь на Делфи и Лазаре), а уже на флагмане дотнета C#. C# прочно основался в мире разработки программ. Кроме того, Windows 8 окончательно убедила, по крайней мере, лично меня, что нативный код скоро можно будет встретить разве что в драйверах. Будущее разработки за кроссплатформенностью. Хотя, честно говоря, чисто кросплатформенных языков и сред я не знаю. Может быть, просто их не встречал. Мне долгое время пришлось программировать на Java и я точно могу сказать, что она не совсем кроссплатформенная в том смысле, как мне бы этого хотелось. Free Pascal? Что ж, неплохая попытка, но не то. C++ в связке с QT? Удобная штука и весьма местами интересная, но как то тоже не то. Так получилось, что после программирования на java  я не мог найти ни работу, ни заказы на нее (это было в разгар кризиса, когда индусы писали код за еду). Тот момент был особенно тягостен для меня – Delphi ругали все кому не лень, программисты на C++… хм, не хочу обижать их толковый ребят, но з/п у них сильно просели как в кризис, так и сейчас не очень хорошо отскочили. Скриптовые языки я не беру во внимание, потому что при должном усердии сносно вы начнете писать на них буквально через пару месяцев. Так получилось, что мне пришлось на время устроиться сисадмином. Не знаю, известно ли вам, что такое сисадмин в небольшой компании. Это и эникейщик, это и сисадмин, это и  «тот тип, что может сделать отчет в Excell», и доработчик конфигураций 1С Предприятие. Естественно, что времени все это отнимает кучу. Чтобы хоть как-то освободиться, пришлось писать различные программки и утилиты. Вполне закономерно, что для этого нужна среда разработки. Скряжистый начальник не хотел тратится на Делфи, пиратку ставить я не хотел из принципа. К счастью, Майкрософт предоставляла всем желающим VC# Express. Для жабиста C# почти что своя среда обитания, это общеизвестный факт. Схожесть языков просто поразительная, хотя и изрядно приправленная отличительными чертами. Тем не менее, принцип «Написано для одной платформы, работает на другой» в дотнете неплохо работал. Правда, только с семейством Windows. Безусловно, глупо было лишать разработчиков такого неплохо инструмента как C# только потому, что  .Net реализована  и лицензирована была только для Windows. Шарповские программы на порядок быстрее работают тех же джавашных, приэтом обладая переносимостью. А это, в свою очередь, открывает перспективные для разработчика мобильные платформы. Итогом стало создание GNU проекта под названием Mono. По факту, это реализация дотнета для nix подобных систем. Теперь  приложения с присущей для дотнет простотой можно было писать почти на всех популярных платформах. Мне лично довелось как-то автоматизировать небольшую сеть ростовских аптек, на которых стоял Linux. Mono мне сильно упростила задачу с кроссплатформенностью. Я не хочу писать хвалебные или обзорные оды Mono. В сети вы найдете массу информации. Вместо этого давайте лучше рассмотрим разработку. Итак, как несложно догадаться, Mono копировалось с творения майкрософтоских парней. Разработчик не должен быть ущемлен тем обстоятельством, что для полноценной работы у него нет среды разработки. В итоге на свет появился такой инструмент, как MonoDevelop. Среда довольно-таки любопытная. Пользуясь ей на своем макбуке, невольно проводишь аналогии с NetBeans, Eclipse, SharpDeveloper и VC#. Monodevelop позволяет писать программы не только на C#, но и на C++. VB.Net – в общем,  разработчики отталкивались от MS VS. Удалось им сделать это в полной  мере? На этот вопрос можете ответить только вы сами. Однако на мой взгляд программировать в этой среде весьма удобно. Вообще, мне все больше нравится акцент на кроссплатформенность. Современные пользователи компьютеров и устройств боле подвержены духу исследования. Доступное по цене железо, способное спокойно эмулировать через виртуальные машины бессметное число операционных систем, значительно упрощает все эти эксперименты. Бизнес тоже давно уже понял преимущество использование Linux  и активно создает решения на базе различных дистрибутивов. И тогда встает вопрос о ПО для обеспечения информационных нужд компании. В этом случае платформа Mono действительно кажется некой панацеей. В любом случае, если вы устали ругать Майкрософт и задумываетесь поставить себе на десктоп какой-нибудь Убунту или еще какого-нибудь пингвина, но в тоже время хотите продолжить писать неплохие программы на C#, то вам непременно стоит попробовать проект Mono  и установить себе среду MonoDevelop.

Яндекс.Метрика