Domanda

Stavo chiedendo al mio team di eseguire il porting della nostra applicazione vc6 su vc2005, sono pronti a assegnare un giorno per fare lo stesso. Ora devono sapere qual è il vantaggio del porting.

Non credo che capiscano davvero cosa significhi aderire alla conformità standard.

Aiutami a elencare il vantaggio di eseguire il porting.

I problemi che sto affrontando sono

1) Nessun supporto di debug per contenitori standard

2) Impossibile utilizzare le librerie boost

3) Utilizziamo molta generazione di query ma utilizziamo la funzione di formato CString che non è di tipo sicuro

4) Molto tempo viene dedicato alla risoluzione dei problemi relativi a vc6 come avere > >

vector<vector<int>>

senza spazio tra > >

È stato utile?

Soluzione

Vantaggi:

  • Compilatore più conforme agli standard. Questa è una buona cosa perché renderà più facile il porting su un'altra piattaforma (se mai lo desideri). Significa anche che puoi cercare le cose nello standard piuttosto che nella documentazione di Microsoft. Alla fine dovrai aggiornare il tuo compilatore ad un certo punto della funzione. Prima lo fai, meno lavoro sarà.

  • Non supportato da MS. Il nuovo SDK non funziona. 64 bit non funziona. E non credo che stiano ancora risolvendo bug.

  • IDE migliore. Personalmente, preferisco davvero le schede a MDI. Penso anche che sia molto più facile configurare Visual Studio (creare collegamenti personalizzati, barre dei menu, ecc.). Certo che è soggettivo. Dai un'occhiata a un'edizione espressa e vedi se sei d'accordo.

  • Migliore supporto dei plug-in. Alcuni plug-in non sono disponibili per VC6.

Svantaggi:

  • Tempo impiegato per il port. Questo dipende molto dal tipo di codice che hai. Se il tuo codice utilizza pesantemente funzionalità VC6 non conformi agli standard, potrebbe richiedere del tempo. Come ha detto Andrew, se stai mantenendo un vecchio progetto legacy, potrebbe non valerne la pena.

  • Prestazioni peggiori. Se stai sviluppando su computer molto vecchi, Visual Studio potrebbe essere troppo lento.

  • Costo Ho appena dato una rapida occhiata e le licenze di Visual Studio sembrano essere un po 'più costose di quelle di VC6.

Altri suggerimenti

Perché VC2005? Se hai intenzione di investire il tempo (e i test!) Per eseguire l'aggiornamento da VC6, perché non scegliere come target VC2008?

Se stai mantenendo un progetto legacy, potrebbe non esserci alcun vantaggio nel porting. La semplice conversione di progetti e la risoluzione dei problemi del compilatore potrebbero richiedere settimane e introdurre instabilità.

Se stai sviluppando attivamente un prodotto, il vantaggio principale è che non utilizzerai più un prodotto che ha più di otto anni, il che è chiaramente una buona cosa.

  • Le versioni più recenti di Windows SDK non funzionano con VC6: se si desidera utilizzare le funzionalità di Windows più recenti, è necessario un compilatore più recente.
  • Si dice che i compilatori successivi siano più conformi agli standard. Mi dispiace, non posso essere più specifico. So che VC6 genera molti avvisi del compilatore solo per l'utilizzo di classi di template standard.
  • Se si utilizzano librerie esterne compilate con un compilatore successivo, è necessario utilizzare qualcosa di compatibile.

Preparati per una transizione difficile: gli IDE sono più diversi di quanto dovrebbero essere.

Per garantire la completa compatibilità dell'applicazione con diverse versioni della piattaforma di base. E per correggere eventuali errori rilevati in tal modo in modo da dare abbastanza libertà all'utente finale di utilizzare la propria versione della piattaforma di base.

Non sto dicendo che non dovresti convertirti, ma per prendere i tuoi punti specifici:

  

1) Nessun supporto di debug per standard   contenitori

Eseguo sempre il debug del codice usando contenitori standard con VC ++ 6. Qual è il tuo problema qui?

  

2) Impossibile utilizzare le librerie boost

È vero. Potresti scoprire di poter usare alcune delle cose più semplici.

  

3) Molto tempo è trascorso nei guai   risolvere problemi di vc6 come avere > >

     

[non riesco a far sì che SO smetta di rovinare tutto, nb]

     

senza spazio tra > >

Uhm, questo è un errore di sintassi (almeno nella versione di C ++ compresa da VC ++ 6) e verrà contrassegnato come tale. Se la tua squadra sta spendendo "molto tempo" su questo genere di cose, hai bisogno di un'altra squadra.

Modifica

  

3) Ma usiamo molta generazione di query   utilizzare la funzione di formato CString che è   non digitare sicuro

Sarà ugualmente insicuro in VS2005. Non vedo perché questo sia un motivo per il porting. Se si desidera digitare sicurezza, utilizzare i meccanismi I / O standard C ++.

Se il tuo team non riesce a vedere alcun vantaggio e non sei in grado di spiegare alcun vantaggio, perché stai chiedendo loro di farlo?

Sembra che tu stia eseguendo il porting solo per il gusto di farlo.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top