Nimeämiskäytänteet Ohjelmointi 2 -kurssilla

1. Javan käytänteet

  • luokkien nimet alkavat isolla kirjaimella, esim Jasen

  • muuttujien ja aliohjelmien (myös metodien) nimet alkavat pienellä kirjaimella, esim jasenenNimi

  • vakioiden nimet kokonaan isoilla kirjaimilla, esim: VIIKOSSAPAIVIA

  • aloittava aaltosulku rivin lopussa, lopettava aloittavan sanan kohdalla, eli tyyliin:

      if ( a > 10 ) {
          ...
      }

2. JavaFX tiedostojen nimeäminen

Nimetään JavaFX:llä tehtävät tiedostot seuraavasti:

  • pääohjelma: Aiheen nimi + Main.java
  • .fxml tiedostot: Aihe + View.fxml
  • kontrolleri-luokat: Aihe + Controller.java
  • tyylitiedosto: aihe + .css

Esimerkiksi:

KerhoMain.java
KerhoView.fxml
KerhoController.java
kerho.css

tai

KerhoMain.java
KerhoGUIView.fxml
KerhoGUIController.java
kerho.css

Entä .css?

3. Tapahtumankäsittelijöiden nimeäminen

Nimetään tapahtumankäsittelijät aloittamalla sanalla handle ja sitten itse toimintoa kuvaavalla sanalla. Esimerkiksi:

/**
 * Käsitellään uuden jäsenen lisääminen
 */
@FXML void handleLopeta() {
    tallenna();
    Platform.exit();
}

4. Käytetään kuvaavia (ja riittävän pitkiä) muuttujien nimiä

Eclipse osaa automaattisesti ehdottaa muuttujien nimiä, jotka ovat näkyvissä sillä hetkellä. Nykyään ei myöskään kannata murehtia koodin viemästä tilasta sillä:

  • Koodin koko suhteessa kaikkeen muuhun on minimaalista
  • Lopullinen koodi, jota ajetaan ei edes näytä samanlaiselta, koska konekieliessä versiossa ei välttämättä ole enää mitään tietoa alkuperäisistä nimistä

Näistä syistä on paljon parempi käyttää pitkiä ja kuvaavia nimiä lyhyiden sijasta:

public void etsi(String etsittavanNimi, int etsittavanId){
    ...
}

ei näin:

public void ali(string x, int i){  // EI EI EI!!!
    ...
}

Kirjoitushetkellä saattaa vielä muistaa, mikä noiden merkitys on, mutta on paljon helpompi lukea koodia, jossa muuttujien nimet ovat kuvaavia.

These are the current permissions for this document; please modify if needed. You can always modify these permissions from the manage page.