Посоветуйте язык программирования
Jan. 11th, 2015 02:41 pmЯ всю жизнь программировал только на бейсике, на разных его версиях. Так получилось. Когда писал кандидатскую, набралось очень много таблиц с данными (это были морфологические признаки морских ежей), и я задолбался обсчитывать их на калькуляторе. Поэтому быстренько освоил бейсик (тогда персональные компьютеры IBM только начали появляться, и к ним прилагался язык GW-Basic). Освоил - и сразу почувствовал себя человеком. С тех пор не переучивался, сейчас пишу все свои программки на VBA в MS Access. То есть в программировании я дилетант, но опытный. Программированием пользуюсь сейчас для имитационного моделирования эволюционных процессов в популяциях. Подумываю об одной новой модели, но понимаю, что на VBA она будет работать невыносимо медленно. Насколько я понимаю, программа, написанная почти на любом другом языке, компилируемом, будет работать в разы быстрее. Вопрос такой: какой из этих языков мне будет быстрее и проще всего освоить? Времени, сил и желания преодолевать трудности и вникать в программистские проблемы - не имеется. Мне бы этот язык просто скачать (можно купить, если не слишком дорого), освоить за пару-тройку дней - и вперед. Т.е. главное, чтобы он был максимально простым в освоении для того, кто знает бейсик, без всяких интеллектуальных "понтов", но работал хотя бы раз в 10 быстрее.
no subject
Date: 2015-01-11 10:45 am (UTC)Дополнительный плюс - великолепная библиотека для графиков и диаграмм matplotlib, и надстройки над ней вроде seaborn.
Ну, и я не знаю, как устроены Ваши модели, но scipy может пригодиться с кучей научных функций.
no subject
Date: 2015-01-11 10:47 am (UTC)Как вариант - VB под тем же Access, но не использовать все эти медленные sql-запросы, а занести все данные в массивы и самому с ними работать. Мне кажется, так будет быстрее.
no subject
Date: 2015-01-11 10:50 am (UTC)no subject
Date: 2015-01-11 10:50 am (UTC)Но, возможно, именно R и есть как раз подходящий вариант.
Но, боюсь, что ни R, ни, тем более, Python не подходят под определение "освоить за 2-3 дня".
no subject
Date: 2015-01-11 10:52 am (UTC)Легко начать, отличная бесплатная IDE и считать будет быстро.
Я на нем программный пакет для кандидатской писал.
no subject
Date: 2015-01-11 10:52 am (UTC)no subject
Date: 2015-01-11 10:52 am (UTC)Думаю, тут стоит пойти таким простым путем: язык программирования взять любой, например, вспоминая свои первые опыты с языками, по возрастанию сложности я бы их расставила так: php, pascal/Delphi, java, C/C++, python. php исключаем из-за его специфической ориентированности, из остальных можно выбирать. Второй шаг для простого пути - найти человека, который на пальцах объяснил основы и применение именно в ваших задачах.
Я бы остановила выбор именно на Pascal/Delphi из-за удобного визуального интерфейса среды и отличной системы помощи и всплывающих подсказок.
Если немного уточните, какого рода задачи вы решаете, смогу более предметно описать.
no subject
Date: 2015-01-11 10:53 am (UTC)Посоветовать ничего не могу, но у меня наивный вопрос - а разве сейчас нет именно компиляторов Бейсика?
В свое время я пользовался Бейсиком на примитивном советском БК-0010-01 - так там был как раз компилятор Бейсика, причем очень скоростной.
no subject
Date: 2015-01-11 10:54 am (UTC)no subject
Date: 2015-01-11 10:54 am (UTC)На мой личный вкус Python освоить проще (с ним я справился, а R несколько раз начинал мучить, и так и не могу сказать, что освоил...). R очень хорош чисто для статистики, без программирования. Но если надо делать что-то более сложное, то питон становится резко удобнее, на мой взгляд.
Ну, освоить по-настоящему за 2-3 дня никакой язык нельзя, но на питоне можно писать уже после 1 дня (может, костыльно, но можно).
no subject
Date: 2015-01-11 10:55 am (UTC)no subject
Date: 2015-01-11 10:56 am (UTC)поскольку вы - человек умнейший, то справитесь с любым языком, и я бы рекомендовал потратить чуть больше времени, освоив C, C++ или C#, зато потом не иметь проблем.
среда разработки - официально бесплатная Microsoft Visual Studio Express 2013
освоить за 2-3 дня - вполне реально для вас и для тех задач, которые вы назвали: массивы, таблицы - это третья-четвертая лабораторная у студентов, изучающих Си. если с выводом графиков - уже сложнее, но не сильно, если возьмете уже готовый пример такой программы и замените в ней только непосредственно математическую/алгоритм рисования
no subject
Date: 2015-01-11 10:57 am (UTC)И уж точно не дешевый ;))
Хотя из всех специфических языков я матлаб больше всего люблю, он наиболее адекватный :)
no subject
Date: 2015-01-11 10:59 am (UTC)no subject
Date: 2015-01-11 10:59 am (UTC)no subject
Date: 2015-01-11 11:01 am (UTC)no subject
Date: 2015-01-11 11:02 am (UTC)http://r-statistics.livejournal.com/
http://www.bioconductor.org/
no subject
Date: 2015-01-11 11:08 am (UTC)no subject
Date: 2015-01-11 11:09 am (UTC)no subject
Date: 2015-01-11 11:09 am (UTC)бесплатная версия вроде бы здесь http://www.visualstudio.com/ru-ru/products/visual-studio-express-vs.aspx , под именем "Express 2013 для Windows Desktop"
Но,возможно,у Вас тормозит не бейсик, а доступ к данным в таблицах Access. тогда такой переход не поможет, надо будет программу малость переделывать.
no subject
Date: 2015-01-11 11:10 am (UTC)то наверное как тут и предлагали попробовать Визуал Бэйсик но уже не встроеный, а тот что отдельный -- Визуал Студия качается бесплатно.
возможно с раширением в сторону С# -- модель можно скомилировать на нем отдельной сборкой, а потом встраивать и использовать из ВБ
no subject
Date: 2015-01-11 11:10 am (UTC)Если его не будет хватать, тогда наверное смотреть на питон (там больше возможностей для ускорения на спец.библиотеках).
Вообще, хорошо бы описать, какие проблемы надо решать... а уж от этого и плясать...
no subject
Date: 2015-01-11 11:11 am (UTC)Вопрос тут другой: можно ли свести задачу к вызовам фунций из библиотек с минимумом программирования. Для многих задач это так. Морфологические признаки ежей - явно подходят.
В данном случае - не знаю, мне трудно судить.
no subject
Date: 2015-01-11 11:13 am (UTC)no subject
Date: 2015-01-11 11:14 am (UTC)