Ребята, я решил эту проблему со следующими правками:
private void cbxProject_SelectedIndexChanged(object sender, EventArgs e)
{
int row = cbxProject.SelectedIndex;
txtTitle.Text = comboDataSet.Tables["tblProjects"].Rows[row]["PTITLE"].ToString();
}
Скорость обычно является основным ответом. Хотя это становится меньшим количеством проблемы в эти дни.
Знакомство и готовность программистов работать с языком.
Ваш динамический язык является, вероятно, моим статическим языком.
В значительной степени язык программирования является выбором стиля. Используйте язык, который Вы хотите использовать, и Вы будете максимально продуктивны и счастливы. Если по некоторым причинам это не будет возможно, то, надо надеяться, Ваше окончательное решение будет основано на чем-то значимом, как платформа, которую необходимо выполнить против или реальные, эмпирические показатели производительности, а не чужой произвольный выбор стиля.
Системная разработка уровня является ключевой группой программного обеспечения, которое обычно не должно быть на динамических языках. (драйверы, материал уровня ядра, и т.д.).
В основном что-либо, что должно иметь каждую унцию производительности или низкоуровневого аппаратного доступа, должно быть на более низком языке уровня.
Другой индикатор - то, если это - очень перемалывание чисел, как перемалывание чисел научных данных. Таким образом, если это должно работать быстро и сделать перемалывание чисел.
Я думаю, что общей темой является процессор интенсивные проблемы..., в этом случае Вы будете легко видеть различия в производительности, и Вы найдете, что динамический язык просто не может дать Вам питание использовать аппаратные средства эффективно.
Тем не менее, если Вы делаете процессор интенсивная работа, и Вы не возражаете против хита в производительности, затем Вы могли все еще потенциально использовать динамический язык.
Обновление:
Обратите внимание, что для перемалывания чисел, я имею в виду действительно длительное перемалывание чисел на научной арене, куда процесс работает в течение многих часов или дней... в этом случае 2x, увеличение производительности является GINORMOUS..., если это находится в намного меньшем масштабе, затем динамические языки могли бы все еще быть полезными.
когда скорость крайне важна. Динамические языки становятся быстрее, но все еще близко к производительности того, каков скомпилированный язык.
Interop абсолютно возможен с динамическими языками. (помните классический Visual Basic, который имеет "ленивую привязку"?) Это требует, чтобы COM-компонент был скомпилирован с некоторыми отдельно оплачиваемыми предметами хотя для помощи их вызывающим сторонам к вызову по имени.
Я не думаю, что перемалывание чисел должно быть статически скомпилировано, чаще всего это - вопрос того, как Вы решаете. Matlab является хорошим примером, сделанным для перемалывания чисел, и он имеет нескомпилированный язык. Matlab, однако, имеет очень определенное время выполнения для чисел и матриц.
Я полагаю, что необходимо всегда выбирать статически типизированный язык, если это возможно. Я не говорю, что C# или Java имеют хорошие статические системы, но C# рядом. Хороший вывод типа является ключом, потому что он принесет Вам пользу, замеченную на динамических языках, все еще давая Вам безопасность и функции со статическим контролем типов. Решенная проблема - больше никакого flamewars.
Системный уровень кодирует для встроенных систем. Возможная проблема состоит в том, что динамические языки иногда скрывают последствия производительности единственного легко выглядящего оператора.
Как говорят этот оператор Perl:
@contents = <FILE>;
Если ФАЙЛ является несколькими мегабайтами, то это - один использующий ресурс оператор - Вы могли бы исчерпать свою "кучу", или вызвать сторожевой тайм-аут или обычно замедлять ответ встроенной системы.
Если Вы хотите "программировать ближе к металлу", Вы, вероятно, хотите использовать язык и "среднего уровня" со статическим контролем типов.
Как насчет interop? Действительно ли возможно назвать COM-компонент от Ruby или Python?