Aiuta i programmatori COBOL ad accedere facilmente a .Net.Quali sono i tuoi suggerimenti?

StackOverflow https://stackoverflow.com/questions/1452084

  •  12-09-2019
  •  | 
  •  

Domanda

Ho diversi programmatori COBOL che stanno passando a .NET.Ho riscontrato molte difficoltà nell'adottare/comprendere i principi della programmazione OO.Non ho alcuna esperienza COBOL, quindi la mia capacità di trovare le poche somiglianze esistenti è molto limitata.

Non c'è modo che io voglia dire "dimentica i tuoi vent'anni di esperienza".È tutto nuovo", ma non ho ancora le analogie e gli strumenti per fare meglio.

Quali sono i tuoi consigli per aiutarli a comprendere il mondo .NET?

È stato utile?

Soluzione

Il modo per procedere è pensare alle cose dal punto di vista del programmatore COBOL.Questa è una distanza enorme da attraversare per loro, quindi mettere degli sgabelli ove possibile per aiutarli a camminare è fondamentale.

La maggior parte dei programmatori COBOL avrà poca o nessuna esperienza desktop.Non avranno esperienza OOP.Probabilmente poca o nessuna rete.Eccetera.

Tuttavia, se hanno scritto codice COBOL strutturato, lo faranno Volere avere un'ottima idea di cosa sia una funzione.Anche se i paragrafi COBOL non sono esattamente la stessa cosa delle funzioni, la maggior parte dei bravi programmatori COBOL afferrerà rapidamente questa nozione.Basarsi sui concetti di programmazione strutturata che sono stati introdotti in essi per 20 anni.La struttura porta a funzioni che portano all'OOP.

La maggior parte delle persone COBOL con così tanta esperienza dovrebbe avere un'ottima conoscenza della logica aziendale.Usa quello.Allontanati dai falsi esempi di OOP "quadrati e triangoli sono forme" il prima possibile e falli concentrare su cose con cui potrebbero già sentirsi molto a loro agio, ad es.i risparmi e gli assegni sono conti e hanno queste cose in comune... ecc.

Capiranno sicuramente i programmi basati su file.Dimentica le cose fantasiose della GUI all'inizio.Fagli scrivere programmi che imitino ciò che stavano facendo in COBOL ma li faciliti nei concetti OOP.Capiscono i record.I record non sono molto diversi dalle strutture che non sono molto diverse dalle classi.E così via.

La maggior parte dei programmatori COBOL comprenderà l'elaborazione delle transazioni.Usa quello.Dovrebbe fornire molto materiale da utilizzare nell'insegnamento dell'OOP e molte API diverse di .Net (o qualsiasi altra tecnologia).

Assegna uno sviluppatore .Net esperto come mentore.Chiedigli di eseguire revisioni del codice, di essere disponibile per consigli, ecc.Non limitarti a lanciare un paio di libri e una serie di nuovi software MS alle persone COBOL aspettandoti che nuotino.Questa è una ricetta per il disastro.Avranno bisogno di una mano e di incoraggiamento.Ma potresti trovare un paio di persone solide di .Net in quel gruppo un po' più avanti E mantieni a bordo la tua conoscenza dei sistemi attuali.

Altri suggerimenti

Ho avuto questo problema prima perché ero un leader della squadra e ho avuto cinque sviluppatori COBOL; avevano 4 volte più esperienza nella programmazione generale, che ho avuto.

Come avrete notato si deve iniziare dai fondamentali di programmazione OO. Quindi, se è possibile, provare pair programming (uno NET dev + uno COBOL dev). Questo è quello che stavo facendo e ha funzionato molto bene.

Questo potrebbe essere utile così: Microsoft .NET per i programmatori COBOL

Inizia facendoli usare oggetti, invece di aspettare loro di venire con un grande design OO livello di sistema da soli.

Si può fare quello che il mio Introduzione al CS professore ha - progettare le classi e li stub per loro - solo lasciando le implementazioni di metodo per loro di capire. In questo modo, avranno la possibilità di abituarsi alla sintassi, utilizzando oggetti, entità, ecc, senza essere atteso per comprendere la complessità del buon design OO.

[dichiarazione - distacco da un fornitore COBOL]

Come qualcuno che è stato recentemente cercando di fare i conti con COBOL e .NET me stesso (in particolare come programmatore lungo tempo trascorso !, ho trovato la parte più difficile è stata la comprensione del framework .NET. Le "parole" per richiamare un metodo sono piuttosto semplici, ciò che è difficile è trovare il metodo che si desidera utilizzare! Intellisense in VS è grande, ma è comunque necessario sapere da dove cominciare!

Vorrei anche puntare a questo sito dove c'è una tabella di grande confronto per COBOL vs C # e VB: http://www.codeproject.com/KB/net-languages/COBOLvsVBvsCSharp.aspx

Micro Focus stanno facendo alcune cose davvero interessanti per rendere COBOL molto più NET gentile ma meglio che non andare troppo nel dettaglio qui. Date un'occhiata al sito web di Micro Focus per avere maggiori informazioni.

A seconda di ciò che si vuole che facciano. potrebbe essere una curva di apprendimento ripida.

è necessario ridurre al minimo la curva di apprendimento.

Se non ricordo male COBAL è un Wordie Sintassi (non come C, che utilizza simboli per contenere la sua struttura) in modo VB.Net può essere la lingua la tua squadra in grado di raccogliere il più veloce.

poi dare un'occhiata alla http://www.learnvisualStudio.net

la serie principale che si sarebbe interessato a sono

Visual Basic 101

Visual Basic 201 - Object Oriented Programming e Design Patterns

questo vi farà conoscere la sintassi e un po 'in oggetto Oreinted programmazione.

poi esaminare gli altri video per DataAccess (ADO) progredire lentamente il livello di abilità. Non willl essere una cosa durante la notte

HTH

dave

ho lavorato una volta su un progetto di Net con uno sviluppatore COBOL esperienza e la cosa che ho notato di volta in volta è stato il presupposto che i tipi di dati non devono essere controllati (che è comprensibile quando hai avuto esperienza in COBOL , dove tutto è in realtà una stringa di caratteri legati a qualche formato):. le altre cose sono stati raccolti abbastanza rapidamente, ma che l'abitudine ha impiegato molto tempo per morire

Questa non è una vera risposta, solo un link che ho trovato utile. La maggior parte del materiale didattico Object Oriented utilizza gli stessi vecchi concetti per l'insegnamento sugli oggetti e le classi - la gerarchia degli animali ecc ... Trovo questo articolo rinfrescante nel senso che è sorta di inizia con il vero succo: come scomporre un sistema in è iniziale classi e oggetti: http://archive.eiffel.com/ doc / manuali / tecnologia / oosc / trovare / page.html

La cosa più importante è ricordare che .NET non è un linguaggio di programmazione. COBOL è un linguaggio di programmazione.

Se si desidera ottenere i programmatori COBOL in modo produttivo la produzione di applicazioni .NET, poi chiedere loro di rivedere e valutare VB.NET e IronPython dalla prototipazione alcune piccole applicazioni in queste lingue. Una volta che hanno provato VB.NET e IronPython, far loro scegliere la lingua da utilizzare per il futuro e organizzare qualche allenamento nella lingua scelta.

Qualunque cosa tu faccia, non lasciare che li usa C # fino a quando non hanno dimostrato di poter gestire VB.NET o IronPython. Se si dispone di uno spettro di linguaggi di programmazione con C ++, Java e C # presso il complesso, techy, la punteggiatura segna estremità dello spettro, poi COBOL è all'altra estremità essendo semplice, business-oriented, e testo semplice. Sia VB.NET e IronPython sono più vicini alla fine COBOL dello spettro.

Se stavo correndo il negozio, vorrei saltare l'eval e iniziare la loro vendita sull'utilizzo IronPython, perché penso che sia una scelta migliore nel lungo periodo, e le competenze Python possono essere sfruttati su progetti Linux / UNIX o progetti Java , così come in .NET.

La cosa importante è quello di ottenere questi ragazzi la scrittura e il debug del codice effettivo che viene eseguito su .NET in modo da ottenere la sensazione di esso, e può capire alcuni modi ragionevoli per gestire le cose che hanno familiarità con il simile SPOSTA corrispondente e 88s livello.

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