Современная реализация .net очень хороша. Конечно нет предела красоте узора. Но .net действиетельно мощная и крутая платформа, плюс для нее очень много всего реализованно как самим Майкософтом так и 3-rd part сторонами. И мэйнстримовый для .net язык C# очень радует. Сделан действительно хорошо. Будучи так же знакомым с Java, Python и С я бы сказал, что C# наиболее зрелый и развитый инструмент для создания целых семейств бизнес решений. Однако есть свои "но". Для меня, например, очень важно что .net не реализован для unix.
Про моно я конечно знаю, мне очень нравится, и тем не менее это не .net. А следовательно, хоть на C# писать под юникс можно, но осторожно. И вопрос, снова же, зрелости mono. Ведь ни один банк и не одна медицинская компания не согласится на разработку основного решения на базе mono. И правлиьно.
Так же меня смущает то, что вне всяких сомнений для Java, Python, C/C++ есть отличная open-source база кода для научного применения, artificial intelligence, machine learning. Microsoft .net framework, clr, dlr, более чем готовы к тому чтобы на них выполнять такого рода код. Я бы сказал больше, что эффективность подхода решения научных задач на .net или research дейстельности была бы навеное колосальна. Потому как С# код легко читаем, Visual Studio отличная IDE, я бы сказал, лучшая с чем я имел дело. И все бы хорошо... Но комьюнити не очень склонно использовать C# для этих целей.
Например если нужно использовать машинное обучение или обработку натуральных языков или нужна будет действительно серьезно реализованная математическая библиотека вдруг окажется что открытых и при этом зрелых решений не хватает. Люди конечно занимаются, что то существует, но до реального сравнения с тем что есть на unix не доходит... Даже закрытых и платных то мало. Самостоятельно, конечно, можно многое реализовать. Но это уже вопрос совсем другой. В общем science and research community живут в основном на unix, и используют С/C++, Java, Python, lisp etc.. А замечательным C#, F# в этом списке пока рано заявлять о серьезных позициях.
Было бы хорошо найти единомышленников и стартовать opensource проект в духе scipy, scikit-learn, nltk. Или присоединиться к чему то... Но это пока мечты.
Так же стоит обратить внимание на то что выдает гугл на поисковый запрос Computer science in C# в моем случае первые две ссылки http://channel9.msdn.com/Forums/Coffeehouse/532873-Why-No-Computer-Sciencey-Books-in-C и эта - обе в данный момент ведут на странички c обсуждениями "а почему си шарп не очень прижился в компьютерной науке?".
Вывод такой. Я люблю C#. Все портят стереотипы и уже существующая кодовая база. А всего то дело в том, что С# молод. В результате выводы не утешитиельные - мне не обойтись одним C# изучая и делая наработки в computer science, machine learning, AI и NLP. Это не означает, что я его игнорировать буду. Но придется иметь дело и с другими языками, иногда в большей степени чем с С#.
Про моно я конечно знаю, мне очень нравится, и тем не менее это не .net. А следовательно, хоть на C# писать под юникс можно, но осторожно. И вопрос, снова же, зрелости mono. Ведь ни один банк и не одна медицинская компания не согласится на разработку основного решения на базе mono. И правлиьно.
Так же меня смущает то, что вне всяких сомнений для Java, Python, C/C++ есть отличная open-source база кода для научного применения, artificial intelligence, machine learning. Microsoft .net framework, clr, dlr, более чем готовы к тому чтобы на них выполнять такого рода код. Я бы сказал больше, что эффективность подхода решения научных задач на .net или research дейстельности была бы навеное колосальна. Потому как С# код легко читаем, Visual Studio отличная IDE, я бы сказал, лучшая с чем я имел дело. И все бы хорошо... Но комьюнити не очень склонно использовать C# для этих целей.
Например если нужно использовать машинное обучение или обработку натуральных языков или нужна будет действительно серьезно реализованная математическая библиотека вдруг окажется что открытых и при этом зрелых решений не хватает. Люди конечно занимаются, что то существует, но до реального сравнения с тем что есть на unix не доходит... Даже закрытых и платных то мало. Самостоятельно, конечно, можно многое реализовать. Но это уже вопрос совсем другой. В общем science and research community живут в основном на unix, и используют С/C++, Java, Python, lisp etc.. А замечательным C#, F# в этом списке пока рано заявлять о серьезных позициях.
Было бы хорошо найти единомышленников и стартовать opensource проект в духе scipy, scikit-learn, nltk. Или присоединиться к чему то... Но это пока мечты.
Так же стоит обратить внимание на то что выдает гугл на поисковый запрос Computer science in C# в моем случае первые две ссылки http://channel9.msdn.com/Forums/Coffeehouse/532873-Why-No-Computer-Sciencey-Books-in-C и эта - обе в данный момент ведут на странички c обсуждениями "а почему си шарп не очень прижился в компьютерной науке?".
Вывод такой. Я люблю C#. Все портят стереотипы и уже существующая кодовая база. А всего то дело в том, что С# молод. В результате выводы не утешитиельные - мне не обойтись одним C# изучая и делая наработки в computer science, machine learning, AI и NLP. Это не означает, что я его игнорировать буду. Но придется иметь дело и с другими языками, иногда в большей степени чем с С#.
Комментариев нет:
Отправить комментарий