Caballito napisał(a)
Czyli wynika z tego, że tak naprawdę w javie jest sens tworzyć tylko aplikacje, które docelowo mają być open source, bo jeśli ktoś będzie chciał koniecznie dorwać się do mojego kodu, to nawet się nie napracuje.
no nie do końca... Jeżeli ktoś będzie chciał się dorwać to się dorwie niezależnie czy to jest w Javie, C++ czy COBOLu. Zresztą najlepszym dowodem jest to, że obecnie nie ma zabezpieczeń nie do złamania. Po prostu obfuskator służy w dzisiejszych czasach do minimalizacji objętości kodu, jego niewielkiej optymalizacji oraz do odstraszania scripting kids...
Caballito napisał(a)
Dla mnie jest to dziwne w kontekście tego, że w miarę upływu czasu coraz bardziej kładzie sie nacisk na ukrycie rozwiązań i prawa autorskie, a tu proszę - wystarczy odrobina dobrej woli i kod stoi otworem.
Bo czym innym jest prawo, a czym innym jego przestrzeganie. W idealnym stallmanowskim świecie praw autorskich każda firma czy programista udostępniała by swój kod jednocześnie wskazując kto z imienia i nazwiska napisał który kawałek, który kawałek od kogo jest pożyczony, a całość była by okraszona treścią GPL.
Rzecz w tym, że ty dając swój program użytkownikowi zawierasz umowę w ramach, której on nie będzie wpatrywał się w kod i próbował go rozgryźć.
Trochę inna drogą jest tzw. "clean room", czyli metoda inżynierii wstecznej polegająca na napisaniu testów i probie odtworzenia rezultatów jakie daje oryginalny kod za pomocą całkowicie nowego, pisanego od zera, kodu.
Caballito napisał(a)
Gdybym zatem chciał maksymalnie utrudnić znalezienie kodu nawet specom, to co mam zrobić - skierować się do C++, gdzie jest pełna kompilacja kodu programu do kodu maszynowego?
Nie, to nic nie da, a tylko podnosi koszty po twojej stronie. Możesz co najwyżej próbować opatentować swoje rozwiązanie o ile jest rzeczywiście innowacyjne i dotychczas nikt inny nie stworzył czegoś podobnego. Policz co bardziej ci się opłaca.