Посоветуйте язык программирования
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-11 02:26 pm (UTC)Экзотов типа хаскела или го тоже не советую - там нет ничего ради чего бы стоило.
Фреймворки же под C++ Java C# есть под любые задачи и даже в большем количестве чем под остальные языки.
Однако для научных задач никто ничего лучше C++ не придумал.
no subject
Date: 2015-01-11 02:31 pm (UTC)любопытно, про в 2 раза вы откуда взяли?
no subject
Date: 2015-01-11 03:44 pm (UTC)no subject
Date: 2015-01-11 04:23 pm (UTC)no subject
Date: 2015-01-11 04:25 pm (UTC)no subject
Date: 2015-01-11 04:31 pm (UTC)http://i.mivi.fr/013092c429a64dd39a55850d8467bad0869e5b35.gif
no subject
Date: 2015-01-11 05:21 pm (UTC)no subject
Date: 2015-01-13 10:14 am (UTC)Тут от задач зависит. В ряде случаев java или C#, даже быстрее плюсов могут оказаться, ибо GC не только мусор подчищает, я бы даже сказал не столько, но и память оптимизирует, что в определенных случаях может дать выигрыш по сравнению с чистым unmanaged кодом. Но, чтобы так писать надо а) - очень глубоко знать архитектуру компа, причем желательно целевого на котором будет работать код, и б) - очень аккуратно и скурпулезно писать код, но при этом все достоинства java, а именно лаконичный, красивый и понятный код, исчезают бесследно и оказывается проще это написать на сях или плюсах.
no subject
Date: 2015-01-13 10:37 am (UTC)no subject
Date: 2015-01-11 03:23 pm (UTC)no subject
Date: 2015-01-11 03:57 pm (UTC)no subject
Date: 2015-01-11 04:05 pm (UTC)Program Source Code CPU secs Elapsed secs Memory KB Code B ≈ CPU Load
n-body
C# Mono 22.04 22.04 19,412 1305 0% 1% 1% 100%
Java 24.50 24.52 19,636 1424 1% 0% 1% 100%
fannkuch-redux
C# Mono 64.48 64.50 18,616 564 0% 1% 0% 100%
Java 67.48 67.50 21,448 1282 1% 1% 0% 100%
pidigits
C# Mono 3.98 3.98 19,636 1026 1% 1% 1% 100%
Java 4.14 4.14 21,844 938 1% 0% 1% 100%
mandelbrot
C# Mono 30.55 30.56 51,544 986 1% 0% 1% 100%
Java 26.96 26.98 59,240 796 1% 0% 0% 100%
fasta-redux
C# Mono 2.30 2.30 19,320 1438 1% 0% 1% 100%
Java 1.93 1.93 21,668 1443 3% 1% 1% 100%
binary-trees
C# Mono 20.10 20.13 114,172 654 0% 1% 1% 100%
Java 16.41 16.44 521,176 584 0% 1% 1% 100%
fasta
C# Mono 7.15 7.16 19,412 1180 1% 0% 1% 100%
Java 4.93 4.93 27,668 2457 0% 1% 0% 100%
reverse-complement
C# Mono 2.96 2.97 175,520 1099 1% 0% 1% 100%
Java 1.69 1.69 519,612 745 0% 1% 0% 100%
spectral-norm
C# Mono 29.47 29.48 19,476 459 0% 1% 0% 100%
Java 16.31 16.31 20,440 950 1% 1% 0% 100%
regex-dna
C# Mono 73.19 73.22 375,576 594 0% 1% 1% 100%
Java 22.12 22.13 564,952 1377 2% 1% 1% 100%
k-nucleotide
C# Mono 103.48 103.54 319,112 1404 1% 1% 1% 100%
Java 31.18 31.21 1,189,812 1844 1% 1% 0% 100%
no subject
Date: 2015-01-11 04:18 pm (UTC)no subject
Date: 2015-01-11 04:28 pm (UTC)no subject
Date: 2015-01-11 05:18 pm (UTC)no subject
Date: 2015-01-11 04:39 pm (UTC)no subject
Date: 2015-01-11 05:17 pm (UTC)no subject
Date: 2015-01-11 05:19 pm (UTC)