|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Junior Member
Iscritto dal: Mar 2011
Messaggi: 1
|
Presentazione e domanda su linguaggio di programmazione
Premetto che mi sono appena iscritto al Forum e, non trovando una sezione di presentazione dove descrivere la mia autobiografia (come molti altri forum richiedono di fare) lo scrivo stesso in questo thread.
Mi chiamo Costantino, sono assistente informatico presso un azienda, iscritto alla facoltà di Ingegneria Informatico, super fuori corso (perchè non ho avuto più voglia e perchè poi mi son messo a lavorare Sono in questa azienda da poco tempo e come mio primo incarico mi è stato affidato quello di costruire un programma di gestione di un database di contatti (di persone e strutture). Come linguaggio di programmazione ho utilizzato Java, le sue Swing Gui e il bridge ODBC per collegarmi ad un database Access dove risiedono i contatti. Diciamo che il programma, visto da un utente esterno e inesperto del settore, è venuto benissimo, una bella interfaccia, veloce e semplice da utilizzare. Visto da un utente esperto di programmazione (che io non mi reputo affatto ) il programma è pesante di codice, strutturato male e, oltretutto, non sono riuscito nemmeno a farlo girare su un MAC in quanto mi dava errori di codice (mi ero meravigliato che era riuscito a fare il collegamento al database tramite un driver ODBC-Access per Mac, ma poi mi dava errori su righe di codice che su Windows non rilevava Comunque, siccome si è in procinto di affidarmi un nuovo programma da fare, di sicuro riprenderò di nuovo un libro in mano di Java per rispolverarmi almeno le nozioni principali che permettano una strutturazione di codice migliore. Ma prima di farlo vorrei chiedere a voi, che sicuramente siete 1000 volte meglio di me, alcuni consigli sul da farsi. Il nuovo incarico sarà costruire un programma che interagisca con un workspace (una cartella condivisa) in cui al suo interno ci saranno vari file, tutti di origine .doc, .docx, .pdf, e altri formati testo (credo). Il programma dovrà permettere all'utente di visionare l'elenco di tutti questi file, aprirne uno e visionare il contenuto, o effettuare una ricerca su questo elenco, sia sul titolo, sia sul contenuto, sia sulla data di creazione o di modifica, insomma vari criteri. Inoltre, molto probabile, questa cartella potrebbe essere una cartella condivisa da piu postazioni in una rete aziendale. Ora, la mia prima domanda è: quale linguaggio di programmazione usare? Qualsiasi sia, me lo metterò a studiare da 0 per sapere tutto ciò che c'è da sapere. Altra domanda: quali altre nozioni bisogna acquisire per costruire un programma del genere che sia perfetto sotto il profilo progettuale, strutturale, e di protezione? Sperando di non avervi troppo annoiato, aspetto con ansia una vostra risposta. Ciao! |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
In pratica è un programma che va a caccia di file, li elenca e volendo li visualizza?
Innanzitutto bisogna capire com'è che vuoi realizzare la visualizzazione. Basta per esempio richiamare il word processor installato e passargli il nome del file? O devi obbligatoriamente visualizzarlo all'interno del programma stesso? Poi mi sfugge il motivo per cui le directory condivise ti spaventano. Sono un problema del sistema operativo non del tuo programma. Java imho è la migliore scelta in un caso del genere e, no, java non è lento è solo lento a caricare la virtual machine, per il resto non ha niente da individuare ad altri linguaggi. Studiare un altro linguaggio quando conosci java può essere lento, tedioso e dispendioso. Inoltre proprio riguardo il tipo di problemi che stai affrontando java si dimostra estremamente efficace, avendo a disposizione millemila miliardi di librerie, codice 3rd party, ecc... |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: May 2001
Messaggi: 12896
|
Premesso che se l'efficienza estrema non è un requisito io andrei di Python, comunque le domande di pabloski sono legittime.
Java è ancora un ottimo linguaggio, specie se cerchi la portabilità, altrimenti se il tuo software deve girare solo in ambiente Windows potresti pensare a C# che ha librerie grafiche migliori rispetto a quanto offerto da Java con Swing (quantomeno sotto Windows). Non so comunque come Java gestisca i percorsi di rete, ovvero cosa succede se chiamo: Codice:
FileReader f = new FileReader("//computer1/file");
Comunque la strutturazione di un buon codice passa per l'analisi orientata agli oggetti, la creazione di un diagramma UML che ti faccia rendere conto di alcune problematiche e dopodiché nella corretta implementazione delle specifiche. La prima cosa da fare è stabilire con estrema precisione le specifiche che deve avere il software, e come si deve comportare nelle varie situazioni. Sicuramente qui molti concetti dell'ingegneria del software sono fondamentali, specie quando devi fornire alcune funzionalità magari per poter fare interfacciare altri programmi con il tuo. Comunque una buona conoscenza dei Design Pattern può aiutare a risolvere determinati problemi nella maniera corretta. Ultima modifica di WarDuck : 30-03-2011 alle 15:56. |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 16:04.










) il programma è pesante di codice, strutturato male e, oltretutto, non sono riuscito nemmeno a farlo girare su un MAC in quanto mi dava errori di codice (mi ero meravigliato che era riuscito a fare il collegamento al database tramite un driver ODBC-Access per Mac, ma poi mi dava errori su righe di codice che su Windows non rilevava 








