Giudizi e Consigli

di il
3 risposte

Giudizi e Consigli

Buonasera a tutti!!

Sono un programmatore di PLC e ho iniziato a studiare il linguaggio Java (Object Based).

Ho provato a fare un progetto banale con una Classe CC ( contocorrente ).

L'esercizio richiedeva di implementare la class e i metodi per Versare, Prelevare e Stampare il saldo se disponibile.
Posto il codice.
Potreste indirizzarmi sul giusto approccio?

Grazie mille.
Marco.

class main {

	public static void main (String[] args){
		CC xC=new CC();
		xC.Versamento(10.5);
		xC.Saldo();
		xC.Prelievo(11.0);
		xC.Saldo();
	}
}

class CC {

	private double Tot,V;
	public void Versamento(double X){
	V=X;
	Tot=Tot+V;
	}

	public void Prelievo(double Y){
		if (Tot>Y){
		Tot=Tot-Y;
		} 
		else{
		System.out.println("Saldo non Sufficiente. Max Prelievo:"+Tot);
		}
	}

	public void Saldo(){
	System.out.println(Tot);
	}
}

3 Risposte

  • Re: Giudizi e Consigli

    Il ""giusto"" approccio e' NON iniziare con un linguaggio di programmazione ad oggetti

    MA

    STUDIARE i concetti fondamentali della programmazione ad oggetti su QUALUNQUE testo che tratti l'argomento e che trovi su Amazon.

    Ad esempio



    Secondo: quando si scrive usando un linguaggio di programmazione SI USA LE CONVENSIONI predefinite per quel linguaggio

    https://www.oracle.com/java/technologies/javase/codeconventions-contents.html
    https://en.wikibooks.org/wiki/Java_Programming/Coding_conventions
  • Re: Giudizi e Consigli

    MarcoRayRaimondi ha scritto:


    Potreste indirizzarmi sul giusto approccio?
    Nel tuo esempio vedo principalmente questi problemi:
    • Non è stato adottato uno standard di codifica: alcuni metodi iniziano con la lettera maiuscola, altri col minuscolo (es. main) mentre hai usato il maiuscolo per i campi privati; dovresti studiare le convenzioni del linguaggio Java e rispettarle, per maggiore chiarezza, sia per te che per gli altri che eventualmente si trovano a leggere e manutenere il codice.
    • Darei un nome più significativo alle classi; ad esempio, "CC" è abbastanza insignificante.
    • Non capisco a cosa serve il campo V: puoi sempre dichiarare variabili locali quando devi memorizzare un valore, mentre i campi sono limitati a contenere quei dati che rappresentano lo stato attuale dell'oggetto che stai implementando (quindi "Tot" con il totale sarebbe corretto).
    Per il resto, per una persona che passa da PLC a un linguaggio di programmazione OOP, direi che sei partito bene, confidando che tu non abbia copiato l'esempio da qualche parte senza rifletterci sopra.

    Ciao!
  • Re: Giudizi e Consigli

    Non è stato adottato uno standard di codifica: alcuni metodi iniziano con la lettera maiuscola, altri col minuscolo (es. main) mentre hai usato il maiuscolo per i campi privati; dovresti studiare le convenzioni del linguaggio Java e rispettarle, per maggiore chiarezza, sia per te che per gli altri che eventualmente si trovano a leggere e manutenere il codice.
    Grazie Mille Davvero, sono cose importantissime ( Vado subito a studiarlo). Problemi che purtoppo riscontro giorno dopo giorno leggendo e modificando Codici scritti da altre persone, casi devastanti soprattutto quando scritti in AWL.
    Darei un nome più significativo alle classi; ad esempio, "CC" è abbastanza insignificante.
    Hai ragione, preso "Dall'attacco D'Arte" mi sono fatto prendere la mano.
    Non capisco a cosa serve il campo V: puoi sempre dichiarare variabili locali quando devi memorizzare un valore, mentre i campi sono limitati a contenere quei dati che rappresentano lo stato attuale dell'oggetto che stai implementando (quindi "Tot" con il totale sarebbe corretto).
    Ho pensato che, volendo prevedere un ampliamento del programma, tipo reiterare le richieste come fosse relamente un Bancomat, avrei dovuto appoggiarmi ad una variabile "Temp" per poter incrementare il valore del Saldo.
    Dici che sia sbagliato cmq?
    Quale sarebbe il giusto modo?
    Per il resto, per una persona che passa da PLC a un linguaggio di programmazione OOP, direi che sei partito bene, confidando che tu non abbia copiato l'esempio da qualche parte senza rifletterci sopra.
    Assolutamento no...ho trovato degli esercizi e ho pensato al codice. Ovviamente ho affrontato diversi errori di compilazione ( senza i quali credo sia improbabile imparare )

    Grazie mille davvero!
    Anzi se hai altri consigli/accorgimenti di strutture e forma sarei contentissimo di poterli ascoltare!

    Ciao,
    Marco
Devi accedere o registrarti per scrivere nel forum
3 risposte