Wpis z mikrobloga

Elo #naukaprogramowania, jednak zawołam #java bo nikt się nie pucował :P
Postanowiłem pobawić się w dailychallange z reddita i napisałem kalkulator, który wszystkie działania musi wykonywać za pomocą dodawania. Zakaz używania innych znaków, czy też funkcji pokroju pow(), a działania do wykonania to dodawanie, odejmowanie, mnożenie, dzielenie i potęgowanie. Działania pobierane są z wejścia np '2 *3' ma zwrócić 6, a '2^3' 8 ( ͡º ͜ʖ͡º)
Dokładne szczegóły zadania po angielsku link do zadania
Prosiłbym o rewizję, czy też jak kto woli przejrzenie kodu i krytykę oczywiście konstruktywną, bo zdaje sobie sprawę, że zbyt pięknie toto nie wygląda. :P
Kod:
Link do kodu na pastebin
  • 13
@interface: Dobrze się zaczyna. Może być zabugowany, temu prosiłem o rewizję. Dzięki, że uwolniłeś mnie od brzemienia. A tak na poważnie miałem na myśli spojrzenie na mój kod/problem przez innego człowieka i poprawienie mojej wizji (czyli dokonanie rewizji), bo ta może być niezgodna z dobrymi praktykami i wychowaniem narzuconymi przez normy :P
@interface: No i o taką rewizję mi chodziło! Dzięki! :D W nocy ponaprawiam i jak się uda to dam znać.
PS. ale ten operator ~ jest magiczny, przyznam szczerze, że nie znałem go wcześniej :P i jak przyspieszy wykonywanie kodu. Chociaż z drugiej strony dozwolony jest tylko operator dodawania, a z trzeciej jeżeli tak to nie można używać operatora ! w if i tak można wyliczać. Dobra przyjmę, że ~ jest
@interface: No i fajnie.
-negateExact przyspieszyło wykonywanie działań z liczbami ujemnymi. Nie muszę już czekać pół dnia, aż się wykonają.
-Pozmieniałem trochę nazwy metod, może teraz będą czytelniejsze. Trzymałem się tylko tego, że jak metoda jest od danego działania to nazwa działania jest pierwszym wyrazem w nazwie. W Outline w Netbeansie wygląda to czytelnie.
-Zastosowałem ten myk z dwiema wartościami z jednej metody i flagą. Fajne rozwiązanie :P
-Dodałem do metod
@interface: Słuszność z tym final.
No jak to tak dodawanie bez metody. Może jeszcze w mainie mam wszystko w ciągu napisać? Chyba tak jest przejrzyście, skoro każde działanie ma swoją metodę, to czemu dodawanie ma być potraktowane inaczej :P
multiplySign, przeca to znak mnożenia, jak wół, ale już zmieniłem isMultiplyPositive :P
Link do wersji 0.03
@interface: No faktycznie, nie tylko final, już zedytowałem. To sugerujesz, że te prostsze działania jak dodawanie i odejmowanie wrzucić bezpośrednio do case i nie bawić się w proste metody?
Szczerze to nie wiedziałem o tej zasadzie z isCoRobi. Gdzieś to jest spisane? JAkiś dekalog czy coś w ten deseń, żeby ustrzec się w przyszłości takich błędów? :PP