Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi
Mate X7 rinnova la sfida nel segmento dei pieghevoli premium puntando su un design ancora più sottile e resistente, unito al ritorno dei processori proprietari della serie Kirin. L'assenza dei servizi Google e del 5G pesa ancora sull'esperienza utente, ma il comparto fotografico e la qualità costruttiva cercano di compensare queste mancanze strutturali con soluzioni ingegneristiche di altissimo livello
Nioh 3: souls-like punitivo e Action RPG
Nioh 3: souls-like punitivo e Action RPG
Nioh 3 aggiorna la formula Team NINJA con aree esplorabili più grandi, due stili di combattimento intercambiabili al volo (Samurai e Ninja) e un sistema di progressione pieno di attività, basi nemiche e sfide legate al Crogiolo. La recensione entra nel dettaglio su combattimento, build, progressione e requisiti PC
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti
La facilità di installazione e la completa automazione di tutte le fasi di utilizzo, rendono questo prodotto l'ideale per molti clienti. Ecco com'è andata la nostra prova in anteprima
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 30-03-2011, 10:24   #1
puma86
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, riassumendo, mi son rifatto a ciò che ricordavo da un esame fatto in Università, più sprazzi di codice visionati su internet e interpellati in modo veloce, e questo è il risultato che si è avuto: l'azienda ha avuto quello che voleva in poco tempo, ma io non sono soddisfatto del mio lavoro, è come aver scolpito una statua ma incavata al suo interno, e piena di mondezza!
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!
puma86 è offline   Rispondi citando il messaggio o parte di esso
Old 30-03-2011, 15:30   #2
pabloski
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...
pabloski è offline   Rispondi citando il messaggio o parte di esso
Old 30-03-2011, 15:53   #3
WarDuck
Senior Member
 
L'Avatar di WarDuck
 
Iscritto dal: May 2001
Messaggi: 12939
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.
WarDuck è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione HUAWEI Mate X7: un foldable ottimo, ma restano i soliti problemi Recensione HUAWEI Mate X7: un foldable ottimo, m...
Nioh 3: souls-like punitivo e Action RPG Nioh 3: souls-like punitivo e Action RPG
Test in super anteprima di Navimow i220 LiDAR: il robot tagliaerba per tutti Test in super anteprima di Navimow i220 LiDAR: i...
Dark Perk Ergo e Sym provati tra wireless, software via browser e peso ridotto Dark Perk Ergo e Sym provati tra wireless, softw...
DJI RS 5: stabilizzazione e tracking intelligente per ogni videomaker DJI RS 5: stabilizzazione e tracking intelligent...
MindsEye, il CEO accusa: 'Speso un milio...
TV LG NanoCell da 65 pollici a 499€: tan...
ho. Mobile, nuova offerta low-cost: 100 ...
Arrow Lake Refresh: cancellato il Core U...
AI.com venduto per 70 milioni di dollari...
RNLT Milano si veste di rosso per Cliora...
Amazon Haul rilancia: compri 2 articoli ...
Nuovi fondi pubblici per la banda ultra ...
Tutte le offerte Amazon di oggi: 5 novit...
Cyber-spionaggio globale: 37 governi nel...
Stellantis e Mercedes, è ufficial...
NVIDIA integra l'AI in tutto il ciclo di...
About the Song: la novità di Spotify per...
Robot aspirapolvere in offerta su Amazon...
Intel dice basta alle CPU con caratteris...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 10:37.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v