Gradually porting PowerBuilder/C++ application to C#/WPF or Winforms -


i have chance start porting legacy application written in c++/powerbuilder c#. have feature sprint launches independent dialog , went through exercise of creating ccw dll managed implementation of feature, called c++. decided use wpf views in managed dll. far good, able inter operate managed dll, including launching wpf window sample mfc app.

there several reasons motivating strategy:

  1. i have bunch of re-usable manage dlls came being recent redesign of 10 year old legacy app.
  2. i experienced in c# compared c++ find myself battling language syntax , intellisense. fwiw, our company better in investing in tooling although not change dislike c++ syntax, header files , inconsistencies......of approach.
  3. for desktop apps atleast kind of applications develop, think c# way go. 4.there future plans re-write app, , not want repeat myself, hence temptation start designing things right, can, @ stage.
  4. i not have alot of c++ help.

however, have concerns , questions:

  1. is piecemeal approach way go?

  2. from performance perspective is, should interoperating winforms instead of wpf? application hosting gis performance key, although have developed wpf application host thinkgeo's mapsuite , performs quite well. main difference legacy app alot more gis intensive wpf cousin.

  3. with latest rumours fate of wpf/silverlight, should considering wpf? alternatives anyway desktop apps, if wpf/silverlight die?

3.what gotchas waiting me?

any thoughts and/or advice on great. consulting manager on wanted of thoughts , experiences first. tia.

klaus

edit:

sorry application 10 year old , not 25 year old stated. little mix there.

i don't see better approach piecemeal one. , can use c++/cli (aka managed c++) bridge difficult gaps.

i'm big fan of wpf/silverlight suggest above winforms, older looking technology. custom controls , data binding have made things lot easier long term development in wpf world.

the rumors of wpf dying off plain nonsense. yes, microsoft reduced size of wpf team -- because wpf has become mature , stable. want put more resources browser areas strategic reasons; not sure why equate them killing wpf.

i've had great success in using wpf wrapper or interface legacy code written in c++. main "gotcha" i've run when have layers of managed , unmanaged code, can bit tricky , hard debug. may want consider writing custom assembly loader callback can see more fails load , why, if have legacy app loading c++ dll ends running managed code.


Comments

Popular posts from this blog

c# - SharpSVN - How to get the previous revision? -

c++ - Is it possible to compile a VST on linux? -

url - Querystring manipulation of email Address in PHP -