macroevolution (
macroevolution) wrote2015-01-11 02:41 pm
![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
Посоветуйте язык программирования
Я всю жизнь программировал только на бейсике, на разных его версиях. Так получилось. Когда писал кандидатскую, набралось очень много таблиц с данными (это были морфологические признаки морских ежей), и я задолбался обсчитывать их на калькуляторе. Поэтому быстренько освоил бейсик (тогда персональные компьютеры IBM только начали появляться, и к ним прилагался язык GW-Basic). Освоил - и сразу почувствовал себя человеком. С тех пор не переучивался, сейчас пишу все свои программки на VBA в MS Access. То есть в программировании я дилетант, но опытный. Программированием пользуюсь сейчас для имитационного моделирования эволюционных процессов в популяциях. Подумываю об одной новой модели, но понимаю, что на VBA она будет работать невыносимо медленно. Насколько я понимаю, программа, написанная почти на любом другом языке, компилируемом, будет работать в разы быстрее. Вопрос такой: какой из этих языков мне будет быстрее и проще всего освоить? Времени, сил и желания преодолевать трудности и вникать в программистские проблемы - не имеется. Мне бы этот язык просто скачать (можно купить, если не слишком дорого), освоить за пару-тройку дней - и вперед. Т.е. главное, чтобы он был максимально простым в освоении для того, кто знает бейсик, без всяких интеллектуальных "понтов", но работал хотя бы раз в 10 быстрее.
no subject
У вас есть хорошие познания в VB (а именно - VBA в Access) и мало времени и сил на переобучение.
Поэтому берите "полноценный" Visual Basic .NET - скачивайте и устанавливайте. Он бесплатен.
Между VBA и VB.net несколько изменился синтаксис языка, но путём проб и ошибок вы быстро склеите из кусков нагугленных примеров что-то работающее. Это решит вашу текущую задачу.
На будущее глядите в сторону связки Python и SciPy (для них множество примеров именно научных расчётов, библиотек) или "R" (который, скорее, замена SPSS)
no subject
Если хочется что-то более серьезного, то Visual Studio Expess, и сможете переиспользовать навыки... Но там нет богатсва выбора научных инструментов.
Python - как бы то ни было - это отличный вариант, особенно с тем, что есть много дополнительных библиотек для математических задач, при том быстрых. Тут зависит от того, из какой математической области Вам надо решить задачу. Некторые библиотеки сами написаны на компиллируемых языках, и работают очень быстро.
Модуль IPython - позволяет проводить расчеты в интерактивой форме.
Отличные средства визуализации, и что немаловажно - доступна, одна из лучших на мой взгляд, среда разработки PyCharm.
Единственная, но серьезная проблема с Python - несовместимые версии 2 и 3. Вторая не развивается, в ней только исправляются ошибки, но на ней много чего сделано, для третьей есть не все библиотеки, но ситуация исправляется. Надо смотреть по обстоятельствам.
no subject
В данном случае это не проблема вообще.
no subject
"несколько" ? http://en.wikipedia.org/wiki/Visual_Basic_.NET#Comparison_with_the_classic_Visual_Basic
Он скорее на C# похож, чем на VBA
no subject
А уж потом можно выдохнуть и повыбирать, какой бы язык из современных поизучать на досуге.
P.S. Вдруг сообразил, что никто не предложил старый "полноценный" Visual Basic 6.0 - http://rutracker.org/forum/viewtopic.php?t=2514447 Синтаксис идентичен синтаксису VBA - т.е. переучиваться не надо, работать будет однозначно быстрее. Чем не вариант?
no subject
Варез. Может не пойти по лицензионным соображениям.
no subject
2) либо невозможна, либо дико геморно распараллеливание вычислений, что скорее всего крайне необходимо в предметной области
3) в целом продукт мёртв. Инвестирование времени на переход в него и наращивание кодовой базы скорее всего останутся убыточными, т.к. в будущем всё равно придётся соскакивать с него на что-то более адекватное.
Не надо, это тупик.
no subject