Посоветуйте язык программирования
Jan. 11th, 2015 02:41 pm![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Я всю жизнь программировал только на бейсике, на разных его версиях. Так получилось. Когда писал кандидатскую, набралось очень много таблиц с данными (это были морфологические признаки морских ежей), и я задолбался обсчитывать их на калькуляторе. Поэтому быстренько освоил бейсик (тогда персональные компьютеры IBM только начали появляться, и к ним прилагался язык GW-Basic). Освоил - и сразу почувствовал себя человеком. С тех пор не переучивался, сейчас пишу все свои программки на VBA в MS Access. То есть в программировании я дилетант, но опытный. Программированием пользуюсь сейчас для имитационного моделирования эволюционных процессов в популяциях. Подумываю об одной новой модели, но понимаю, что на VBA она будет работать невыносимо медленно. Насколько я понимаю, программа, написанная почти на любом другом языке, компилируемом, будет работать в разы быстрее. Вопрос такой: какой из этих языков мне будет быстрее и проще всего освоить? Времени, сил и желания преодолевать трудности и вникать в программистские проблемы - не имеется. Мне бы этот язык просто скачать (можно купить, если не слишком дорого), освоить за пару-тройку дней - и вперед. Т.е. главное, чтобы он был максимально простым в освоении для того, кто знает бейсик, без всяких интеллектуальных "понтов", но работал хотя бы раз в 10 быстрее.
no subject
Date: 2015-01-15 07:28 pm (UTC)2) Про Питон как новый Бейсик учёных - удваиваю. Дополнения - разгонять узкие места надо не на C/C++ а на https://en.wikipedia.org/wiki/Cython , если есть библиотеки на компилируемых языках которые ещё не привязаны к Питону - привязывать через http://www.swig.org/ . Работа с исходниками возможна без глубокого понимания, это уровень продвинутого сисадмина UNIX а не первоначального автора библиотек.
3) Функциональные языки включая F# (.NET) и Хаскелл - это не троллинг. Наличие в языке чистых функций - путь к возможности для авторов языка распараллелить на видеокарты и кластеры без усилий программиста. Кстати, в новом фортране появился вид функций PURE - к чему бы это ? Даже если не будете делать основную ставку - изучайте краем глаза, гуглите.
4) VB.NET из преимуществ имеет только переиспользование навыков, но может отрезать Вас и от библиотек (Питон) и от суперкомпьютеров и видеокарт ( C/C++, функциональщина).
5) Хранение данных. Смотрите SQLite (самое большое покрытие тестами и база установок - все Андроиды, Файрфоксы как минимум ), PostgreSQL (академичность в противовес "грязной" практичности MySQL, избран 1С как альтернатива коммерческим). Если на много машин - то Apache Cassandra (простое системное администрирование, нет разделения машин по ролям).
6) Рассмотрите возможность переложить часть работы на движок SQL - производите расчёты при вставке в таблицы результатов при выборке из таблиц сырых данных ( SELECT ... INSERT ... ), о компиляции и распараллеливании на ядра процессора позаботились программисты БД.