Переход от инструментов CodeGear/Borland в основном устраняет любое решение на основе Delphi .NET и полную переписку вашего приложения.
Надеюсь, мой ответ ниже поможет с вашими решениями.
Из опыта (переписав приложение Delphi с командой людей) он сводится к любому из двух вариантов ниже.
Но сначала предупреждение: вы возьмете, по крайней мере, общее усилие развития, которое потребовалось, чтобы написать текущее приложение Delphi.
В нашем случае это было оправдано, поскольку старое приложение Delphi (которое на самом деле было Kylix) имело конец жизни по разным причинам. Наш переписчик состоял из двух частей: переписывать с ограниченной дополнительной функциональностью, за которым следует множество дополнительных функций (дизайн первой части уже учитывал вторую часть).
Вернуться к ваш выбор:
1- всего переписывают в C# или VB.NET в Visual Studio
2- частичное повторное использование существующего кода бизнес-уровня Delphi с помощью Oxygene из RemObjecs (а Плагин Visual Studio с синтаксисом, который очень похож на синтаксис Delphi). CodeGear скоро предложит Prism (вероятно, до конца 2008 года), который также будет интегрирован в Visual Studio.
Поскольку доступ к данным .NET и интерфейс пользователя полностью отличаются от Delphi, вам придется делать это с нуля (как для сценариев 1, так и для 2). Visual Studio 2008 предлагает множество преимуществ здесь, в Visual Studio 2005.
Нельзя делать эту миграцию постепенно, так как здесь вы полностью изменяете платформу, это все или ничего не подходит.
В обоих сценариях потребуется значительное количество времени (даже если у вас есть опыт Delphi, привыкание в мире .NET займет некоторое время).
Visual Studio может взаимодействовать с Crystal Reports и хорошо сочетается с SQL Server.
Поскольку Visual Studio 2008 предлагает множество преимуществ (а не только для .NET 3.5, но и для повышения производительности), вам лучше пойти на это. На стороне пользовательского интерфейса вам необходимо сделать сбалансированный выбор между WinForms (aka Windows Forms) и Windows Presentation Foundation (иначе WPF).
Если это переписывание 1 к 1, вы можете захотеть придерживаться WinForms, поскольку он знаком с тем, что у вас есть. Вероятно, вам нужно использовать некоторые сторонние компоненты, чтобы настроить свой интерфейс. DevExpress - хороший выбор здесь, поскольку у них есть аналогичные компоненты в Delphi и Visual Studio.
Но если вы хотите пойти на будущие глазные конфеты, тогда вы можете рассмотреть WPF. Будьте готовы к более крутой кривой обучения здесь, чем WinForms, поскольку она сильно отличается от того, к чему вы привыкли.
Если вы решили остаться с Delphi, вы можете захотеть ознакомиться с VCL для Интернета (aka IntraWeb) и в Delphi 2009 (много изменилось в мире Delphi, так как Delphi 7 было анонсировано 6 лет назад).
Удачи вам в выборе!
--jeroen
Подход RAD, то есть смешивание пользовательского интерфейса и логики, а также использование хранимых процедур делает миграцию сложной. Вы должны идентифицировать «швы», то есть часть кода, которую можно перенести и протестировать, и делать это постепенно. Взгляните на [Эффективно работающий с устаревшим кодом] (http://www.amazon.com/Working-Effectively-Legacy-Michael-Feathers/dp/0131177052). Стоит прочитать эту замечательную книгу. И переключитесь на SOA-подход, чтобы перенести свою бизнес-логику с пользовательского интерфейса и сохранить procs на серверы. – 2013-11-03 12:46:58