• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

java - prosty problem konsolowy

0 głosów
70 wizyt
pytanie zadane 9 sierpnia w Java przez DedenN Początkujący (260 p.)

Witam wszystkich bardzo serdecznie. Jestem początkującym adeptem programowania i próbuję napisać prosty, konsolowy symulator schroniska dla zwierząt. cały program zamknąłem w pentlę do while i  niestety  po dodaniu zwierzęcia do tego schroniska nadal go tam nie ma (po sprawdzeniu stale jest 0 ) . Czy może ktoś mnie naprowadzić na trop co tutaj jest źle ?

import java.util.Scanner;

class funkcje{
    public int Quantiti_animals=0;

    public int Dodaj()
    {
        Quantiti_animals=Quantiti_animals+1;
        System.out.print(Quantiti_animals);
        return Quantiti_animals;
    }
    public int Usun()
    {
        Quantiti_animals=Quantiti_animals-1;
        return Quantiti_animals;
    }
    public void Show()
    {System.out.print(Quantiti_animals);}
}


public  class  drugi {

  public static void main (String[]args) {
      int lin;
      do{

          System.out.println("Witaj ");
          System.out.println("1.Dodaj zwierzaka");
          System.out.println("2.Usuń zwierzaka");
          System.out.println("3.Sprawdz ilosc zwierzaków w schronisku");
          System.out.println("4.wyjście");
          System.out.println("Co zrobić ?");

          Scanner wybor = new Scanner(System.in);
          lin = wybor.nextInt();
      
          funkcje kkk = new funkcje();
          if (lin == 1) {
              kkk.Dodaj();
          }
          if (lin == 2) {
              kkk.Usun();
          }
          if (lin == 3) {
              kkk.Show();
          } 
      } while (lin!=4);


  }

  }


 

1
komentarz 9 sierpnia przez Aisekai Nałogowiec (26,950 p.)
edycja 9 sierpnia przez Aisekai

O paaaanie, cóż to za nazwy zmiennych, klas, metod :O

Nazwy klas: nazwy klas podlegają konwencji PascalCase.np.NullPointerExcpetion

Nazwy metod: nazwy metod podlegają konwencji camelCase + powinny mówić co robią (czyli zaczynać się od czasownika) np. findAll();

Nazwy zmiennych: tutaj również stosujemy camelCase, '_' zostaw C++'owcom. 

Oprócz tego: wszystkie nazwy powinny mówić do czego coś służy, oraz bardzo dobrą praktyką jest nazewnictwo w języku angielskim. Klamry to już bardziej luźna sprawa, ale i tak jest preferowane coś takiego:

metoda(){

}

Zmienna kkk też nic nie mówi.

PS: "pentlę" jest niepoprawnie ortograficznie.

komentarz 9 sierpnia przez Wiciorny Maniak (60,940 p.)
Zamiast się bez-sensu czepiać:  to zrozum, że jest to program testowy- on się uczy, widać że raczkuje dopiero.
1
komentarz 9 sierpnia przez Aisekai Nałogowiec (26,950 p.)
Nie jest to bezsensowne czepianie. Zacznie pisać coś dzisiaj, jutro wieczorem już nie będzie wiedział na czym stoi bo klasę nazwał "jeden". Też na początku jak pisałem podstawowe programy, gubiłem się strasznie a to dlatego tylko, że potrafiłem mieć paręnaście zmiennych ponazywanych: a,b,c,d,e,f,g,h,i,j,k,l,m etc. Nie czepiam się o to, że nie zastosował polimorfizmu czy jakichś bardziej zaawansowanych technik. Czepiam się o coś, co powinno być w każdym kursie na samym początku powiedziane czyli: "Nazywać coś zgodnie z przeznaczeniem". A uważam, że jeżeli ktoś jest na etapie tworzenia własnych klas, to powinien już wdrażać powoli poprawne nazewnictwo.
komentarz 9 sierpnia przez Wiciorny Maniak (60,940 p.)
"Nazywać coś zgodnie z przeznaczeniem" - w myśl tego to programista nadaje znaczenie bytowi ;] więc może kkk- dla niego coś znaczy, jest to CLOSED project jego projekt...,

masło maślane stary :)
2
komentarz 9 sierpnia przez Aisekai Nałogowiec (26,950 p.)

Nie. W myśl tego, jak ktoś wymyślił pojazd dzięki któremu człowiek może się poruszać bez konieczności chodzenia to nie nazwał to "wiertarka" tylko "samochód". Tak samo, nie było sytuacji gdy człowiek wymyślił słowo i znaczenie słowa "samochód" a potem starał się go stworzyć.

W myśl tego, programista mając koncepcję do napisania klasy która przechowuje Listę stron, nie nazwie klasy "różowy_Jednorożec" tylko np "Książka".

Pleonazm - wyrażenie, w którym jedna część wypowiedzi zawiera te same treści, które występują w drugiej części (treści nadmiarowe). Jest to jeden z błędów logiczno-językowych

Gdzie w "Nazywać coś zgodnie z przeznaczeniem" masz treści nadmiarowe? 

Im szybciej zacznie wdrażać poprawne praktyki, tym lepiej, zwłaszcza w sytuacji gdy stosowanie ich nie wymaga znaczącego refactoringu (zmiana nazwy klasy z "różowy_jednorożec" na "Książka" nie wymaga aż tyle, co utworzenie interfejsu/klasy abstrakcyjnej "DataSource" i implementacji/rozszerzenia jej np dla "MySqlDataSource" i wykorzystanie polimorfizmu).

I tak, jestem pewien, że nazwa "kkk" jak i "drugi" nie oznacza dla autora nic.

Pozdrawiam.

komentarz 10 sierpnia przez DedenN Początkujący (260 p.)
Dzięki wszystkim za info:D Następnym razem będę pamiętał o camelCase.
komentarz 10 sierpnia przez Wiciorny Maniak (60,940 p.)

@DedenN luz bluz :D  kolega wyżej po prostu, przerost formy nad treścią ma :) ... i mu się zwyczajnie nudzi.

Pozdro

1 odpowiedź

+1 głos
odpowiedź 9 sierpnia przez Mateusz51 Pasjonat (23,860 p.)
wybrane 9 sierpnia przez DedenN
 
Najlepsza
38 linijka, za każdym razem tworzysz nowy obiekt klasy funckje i masz wyzerowany licznik
komentarz 9 sierpnia przez DedenN Początkujący (260 p.)
faktycznie wyłączyłem  obiekt przed do  i wynik zaczął się sumować . WIELKIE DZIĘKI :D
komentarz 9 sierpnia przez Mateusz51 Pasjonat (23,860 p.)
Nie ma sprawy. Miłej nauki
komentarz 9 sierpnia przez Wiciorny Maniak (60,940 p.)

@DedenN, nie chodzi o sam wyzerowany licznik, tworząc nowy obiekt- tworzysz nową instance ->  za każdym razem więc wartości z racji nie bycia statycznych się zerują :D 

Podobne pytania

0 głosów
3 odpowiedzi 129 wizyt
pytanie zadane 22 kwietnia 2016 w C i C++ przez marcin8352 Nowicjusz (190 p.)
+1 głos
1 odpowiedź 202 wizyt
0 głosów
4 odpowiedzi 413 wizyt
pytanie zadane 31 października 2015 w C i C++ przez Dywan Nowicjusz (170 p.)
Porady nie od parady
Komentarze do pytań nie służą do odpowiadania, od tego jest wydzielona sekcja odpowiedzi. Funkcją komentarzy jest natomiast możliwość uzyskania dodatkowych informacji na temat samego posta.Komentarze

54,403 zapytań

98,272 odpowiedzi

202,121 komentarzy

26,716 pasjonatów

Przeglądających: 321
Pasjonatów: 33 Gości: 288

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...