Oracle: Android pozbawił Javę przenośności i wieloplatformowości

23.09.2011 12:25, Autor: Anna Rymsza (Xyrcon), Kategoria: News
NewsImage

Straty, jakie poniósł Oracle przez wykorzystanie zmodyfikowanej Javy w systemie Android są znaczne, ale bynajmniej nie jest to największa strata. Oświadczenie obecnego właściciela Javy rzuca nieco światła na inny aspekt procesu.

Przede wszystkim firmie Oracle nie chodzi o uzyskanie honorariów, ale o powstrzymanie ekspansji, a najlepiej całkowite zablokowanie sprzedaży Androida. System został nazwany niekompatybilnym klonem Javy, a właściwą przyczyną pozwania Google były zmiany, jakich dokonał Google przy tworzeniu własnej maszyny uruchomieniowej dla Androida. Zdaniem oskarżycieli te zmiany obracają wniwecz wysiłki pracowników firmy Oracle i wielu innych programistów, którzy starali się utrzymać spójność platformy. Java była rozwijana z założeniem, że program napisany w tym języku będzie można uruchomić wszędzie (w myśl zasady „koduj raz, uruchom gdziekolwiek”), ale modyfikacje wprowadzone przez Google to uniemożliwiają. Innymi słowy Google sprawił, że Java przestała być wieloplatformowa i przenośna.

Wszelkie honoraria autorskie, jeśli Google otrzyma nakaz płacenia ich firmie Oracle, powinny być ustalone na podstawie osobnej analizy po zakończeniu procesu. Ze wstępnych analiz Oracle'a wynika, że Google jest już winien przynajmniej 176 milionów dolarów tytułem opłat licencyjnych wynikających z posiadanych przez Oracle patentów, i kolejne 102 miliony za złamanie praw autorskich w już sprzedanych urządzeniach. Ponadto firmie z Mountain View trudno będzie wymigać się od ustawowego potrojenia kary, wynikającego z podejrzenia celowego naruszenia praw autorskich i patentów. Te kwoty mogą tylko wzrosnąć, jeśli Oracle nadal będzie walczył o zablokowanie sprzedaży urządzeń z Androidem na rynku amerykańskim, na co Google na pewno się nie zgodzi.

Ponieważ u podstaw oskarżeń wniesionych przez firmę Oracle nie leżą pieniądze, a ideologia, firma te jest dużo bardziej niebezpieczna i jeszcze bardziej zagraża Androidowi. Właściciel Javy prawdopodobnie nie spocznie, dopóki na rynku krążą urządzenia z systemem firmy Google.

r   e   k   l   a   m   a

Komentarze (79)  

Avatar
autor__ (niezalogowany) | 23.09.2011 12:37#1

I dobrze sam lubię jave ale androida nie. Więcej tam bałaganu i chaosu niż składu. Java zdobyła taką popularność z kilku powodów: wieloplatformowość, szybkie powstawanie kodu, spójnośc i doskonała dokumentacja. A wujek google wpadł i pozamiatał wszystko

Avatar
Aby (niezalogowany) | 23.09.2011 12:45#2

Myślał by kto, że z Oracle taki rycerz walczący o wolność, to brzmi jak stek idiotyzmów. Niech lepiej poprawią swoje zabawki, SOA dziurawe jak sito, pełno błędów, bazy coraz gorsze a ceny licencji rosną.

Pozdrawiam

AvatarUżytkownik jest nieaktywny
jebuem | 23.09.2011 12:46#3

how sweet :f

AvatarUżytkownik jest nieaktywny
pioloon | 23.09.2011 12:47#4

Jak tylko komuś coś się uda open source'owego lub darmowego, to "zabijmy" go patentami. A później zróbmy to samo, ale za pieniądze. Oracle=Microsoft=Apple=...

AvatarUżytkownik jest nieaktywny
Mayron | 23.09.2011 12:50#5

Jak ukradli to teraz niech płacą

AvatarUżytkownik jest nieaktywny
Aldaris | 23.09.2011 12:51#6

"Ponieważ u podstaw oskarżeń wniesionych przez firmę Oracle nie leżą pieniądze, a ideologia, firma te jest dużo bardziej niebezpieczna i jeszcze bardziej zagraża Androidowi. Właściciel Javy prawdopodobnie nie spocznie, dopóki na rynku krążą urządzenia z systemem firmy Google."

Pies Ogrodnika?

Ciekawi mnie ile jeszcze dorobku SUNa rozwala/przepuszcza, wspaniala firma, ktora ma lepszych prawnikow od pracownikow :P.

Avatar
no brain (niezalogowany) | 23.09.2011 12:53#7

Oracle co przejmie to niszczy
szkoda ze Google nie kupiło SUNa

AvatarUżytkownik jest nieaktywny
pioloon | 23.09.2011 12:54#8

Kurcze :P, może Google kupi Oracle ?

AvatarUżytkownik jest nieaktywny
JoeMix | 23.09.2011 12:55#9

Jak by nie patrzeć, jeśli faktycznie w Androidzie Java jest niekompatybilna z reszta (i odwrotnie oczywiście), to wpadka na całego, a jeśli to działanie celowe to bardzo nie fair,,,

Avatar
Anonim (niezalogowany) | 23.09.2011 12:56#10

a później narzekania, że nie ma uniwersalności

Avatar
nick_usuniet (niezalogowany) | 23.09.2011 13:03#11

zawsze miałem żal że nie napisali Androida ot choćby w Pythonie (cudny język) a teraz jak widać Oracle też ma żal o to, tylko z innych pobudek :) (jakiekolwiek by nie były)

Avatar
MSK1 (niezalogowany) | 23.09.2011 13:03#12

Nie daj się Oracle!!!

AvatarUżytkownik jest nieaktywny
MoroS | 23.09.2011 13:14#13

Wszystko fajnie, tylko dlaczego niby twierdzą, że Java w Androidzie jest niekompatybilna, skoro takowej Java'y w Androidzie nie ma? Kod Java'y jest kompilowany na Dalvika, a nie na Java VM. Dalvik posiada własny bytecode (a co za tym idzie: zestaw instrukcji), więc nijak nie można powiedzieć, że jest to Java. Kod źródłowy owszem, pisany jest w Java'ie, ale wynikowa postać binarna jest już zupełnie inną rzeczą.

Avatar
Anonim (niezalogowany) | 23.09.2011 13:18#14

Nad Google zbierają się naprawdę ciemne chmury. Jeżeli Oracle stawia sprawę w taki sposób to Google ma bardzo małe szanse na obronę, gdyż ciężko mu będzie obronić się samymi patentami. Moim zdaniem dużym błędem było użycie Javy do stworzenia systemu operacyjnego. Jednym z wyjść mogłoby być kupno WebOS lub MeeGo i rozwijanie, któregoś z tych systemów do zastąpienia Androida i zachowania jako takiej kompatybliności z obecnymi aplikacjami. Innym wyjściem byłoby stworzenie nowego systemu w języku C/C++, co jednak jest czasochłonne i kosztowne ale na dłuższą metę najlepsze.

AvatarUżytkownik jest nieaktywny
O4i | 23.09.2011 13:27#15

Co za demagogia... Mało kto zdaje sobie sprawę, że Oracle to prawdopodobnie najbardziej bezwzględna korporacja branży IT. Java jest wykorzystana w Androidzie głównie z jednego powodu; aby umożliwić programistom pisanie aplikacji w znanym i elastycznym języku wysokiego poziomu. W całej sprawie chodzi tylko o język, nie o całą platformę z jej wielkim balastem.

Avatar
2+2*2 (niezalogowany) | 23.09.2011 13:38#16

@JoeMix
Język jest ten sam (jego składnia). Jednak kod pośredni nie jest zgodny (Java tworzy pliki w formacie jar, Dalvik w formacie dex - różnica polega na innej konstrukcji pliku (m.in. dex ma wspólny zbiór identyfikatorów stałych dla wszystkich klas, a jar osobne dla każdej klasy) oraz obsłudze innego kodu maszynowego (Dalvik ma inne rozkazy, niż Java)). Problemem jest to, że Dalvik nie spełnia wymogów specyfikacji żadnej z wersji Javy i używa innych bibliotek (choć duża część jest identyczna, jak w Javie).
Istnieją co prawda konwertery dex do jar i odwrotnie, ale nie o to chodzi.

Wypadałoby jednak powiedzieć dlaczego Google wprowadziło takie zmiany - chodzi o mniejszą zasobożerność, większą wydajność, pozbycie się nieużywanych i nieprzydatnych na urządzeniach mobilnych bibliotek, możliwość wydajnego uruchamiania wielu instancji Dalvika jednocześnie (w Androidzie każdy program to osobna instancja Dalvika), mniejszy rozmiar plików z kodem pośrednim i inne uprawnienia mające znaczenie dla urządzeń mobilnych.
Oracle ponoć zrobiło badania, w których wykazano, że JVM lepiej się nadaje do takich zadań niż Dalvik. ;)

Powoływanie się na zasadę „koduj raz, uruchom gdziekolwiek” jest totalną bzdurą. Każdy, kto tworzy oprogramowanie dla zwykłych telefonów komórkowych wie, że to fikcja, bo niby wszystkie obsługuję JavaME, a dla każdego modelu trzeba jakieś poprawki robić...

AvatarUżytkownik jest nieaktywny
MoroS | 23.09.2011 13:48#17

@O4i: o platformę też, bo Dalvik ma trochę wspólnego z JVM, głównie za sprawą wykorzystania kodu z Apache Harmony. ;)

AvatarUżytkownik jest nieaktywny
Pablo_Wawa | 23.09.2011 13:49#18

@MaroS - a określenie przenośność aplikacji w Javie to niby na czym miała polegać? Właśnie na zgodności kodu bajtowego (wynikowego), a nie źródłowego programu!

Avatar
pusiak (niezalogowany) | 23.09.2011 13:52#19

Pff przecież Java ME i Java SE tak właściwie to są przenośne tak samo jak Dalvik - nie uruchomię aplikacji z Java SE na maszynie Java ME i na odwrót... Nie mówiąc o tym, że J2ME w pierwszych implementacjach była tak okrojona, że o przenoszenie było bardzo mocno utrudnione. No tak ale jednemu wolno, a drugiemu już nie...
Zresztą zrozumiałbym Oracle gdyby Google chwaliło się, że Dalvik pozwala uruchamiać kod z Java SE (powiedzmy po drobnych modyfikacjach), lub o zgrozo uważali by, że Dalvik to przecież Java VM tylko lekko zmodyfikowana - ale tak przecież nie jest... Google użyło tylko i wyłącznie język programowania i standardowe biblioteki (z Apache Harmony).
Najdziwniejsze jest jeszcze to, że nagle wszyscy rzucili się na Google - ciekawe dlaczego nikt nie skarży Chińczyków którzy robią perfidne podróbki (chociaż dlaczego to akurat wiadomo - Chińczycy włożyli tyle kasy w ratowanie co niektórych firm z USA, że jakby teraz zażądali zwrotów to większość firm by padła).

Avatar
autor__ (niezalogowany) | 23.09.2011 13:52#20

@O4i twierdzisz że chodzi tylko o składnie twoim zdaniem to widać że nie masz pojęcia i o programowaniu i o samym androidzie. Całe klasy zostały skopiowane metodą copy/past a nie pisane od zera o czym ty w ogóle piszesz. A licencja open source javy mówiła wyraźnie każdy może sobie wziąć dopisać coś ale ma to UPUBLICZNIĆ dla każdego. Nie broń Google bo tutaj przegieli podobnie jak z kopiowaniem książek dla swojej biblioteki jeśli się nie sprzeciwiasz tzn. że nie masz nic przeciwko. Super podejscie godne google-a

AvatarUżytkownik jest nieaktywny
TheBlackMan | 23.09.2011 13:58#21

Oby wybuchła jądrowa wojna patentowa.

Syf patentowy sam się wyeleminuje i będzie spokój.

Patenty to czyste zło i muszą zostać zniszczone, tak samo jak pojęcie "własności intelektualnej".

Avatar
djXoom. (niezalogowany) | 23.09.2011 13:59#22

Jakby tak sprawdzić każdy linux to 99% tego OS dystrybucji ma skradzione pomysły od wszystkich... tak się kończy jak wszyscy to poprawiają-modyfikują jako open source i nie odpowiadają za konsekwencje kradzieży patentów...
Na finał gdy system jest gotowy i przekracza 1% udziału w rynku oraz kasę zarabia to okazuje się że ten sytstem i pomysły są skradzione od innych jak Apple,MS,IBM,Oracle...

Jak dla mnie to niech google płaci wszystkim za swoich open source informatyków jak nie sprawdził ile patentów-pomysłów innych zostało skradzionych i bezprawnie zastosowanych w linux android lub niech od poczatku kupią-napiszą nowy OS i bez pomocy magików open source.

AvatarUżytkownik jest nieaktywny
Galnospoke | 23.09.2011 14:03#23

To ma sens. Google nie od dzis wprowadza "otwarte standardy" ktorych wlascicielem sa w 100% dyktujac warunki.

AvatarUżytkownik jest nieaktywny
MoroS | 23.09.2011 14:09#24

@Pablo_Wawa: owszem, miała. Między konkretnymi JVMami, ale Dalvik nie jest JVM'em. To jest ogólnie VM, na dodatek nie oparty na stosie, tylko na rejestrach, więc działający zupełnie inaczej. Google nigdy nie chciało, żeby Dalvik był utożsamiany z JVM.
Można wręcz powiedzieć, że Java została tam użyta tylko dlatego, żeby można było pisać kod w łatwym, wysokopoziomowym języku (jak wspomniał O4i), ale nie po to, żeby uruchamiać go na JVMie.

AvatarUżytkownik jest nieaktywny
deimon | 23.09.2011 14:13#25

Szanowna Pani Anno Rymsza, jeszcze niedawno pisała Pani że Google przegrało sprawę z Oracle, teraz okazuje się że sprawa się jeszcze nie zakończyła. http://www.dobreprogramy.pl/Google-przegrywa-sprawe-o-Jave-z-Oraclem,Aktualnosc,...

Pani Anno, w czym tkwi Pani problem? Niechęć do Googla? Problem ze zrozumieniem informacji w obcym języku?

Proszę nie psuć opinii tego portalu jako rzetelnego źródła informacji.

AvatarUżytkownik jest nieaktywny
Xyrcon (redakcja) | 23.09.2011 14:23#26

@deimon nie przegrał, a przegrywa. Został podany werdykt, jeden z wielu (nie wiadomo jeszcze nic o odszkodowaniach, opłatach licencyjnych itp.).

Ponadto ten tekst mówi o opinii firmy Oracle o sprawie. Nie ma słowa o odwołaniach, kolejnych werdyktach, ani tym, czy proces jeszcze trwa. Polecam czytać z większą uwagą.

A tak na marginesie w sądzie nie jest tak, że sędzia stuknie młotkiem, poda kwotę i wszyscy mogą wyjść. Polecam prześledzenie sprawy RIAA przeciwko pani Thomas, powinno to dać dobry obraz tego, jak długo może toczyć się proces, i jaki wpływ mają na jego przebieg odwołania.

Avatar
WRT (niezalogowany) | 23.09.2011 14:29#27

No nieźle sobie Oracle pogrywa.

Dalvik (to nie Java!) w przeciwieństwie do tego co wypuszcza Oracle działa na tabletach, smartfonach, TV , PC i wielu innych. W Javie od Oracle nie ma obecnie możliwości łatwego przeniesienia jar-a na inną platformę sprzętową by działał. Przenośność Javy w wydaniu Oracle od wielu lat jest już mitem.
Google oferuje spójną platformę programistyczną wykorzystującą Dalvika i języki: Java/C/C++. Moim zdaniem jest ona obecnie dużo bardziej zaawansowana od Javy Oracla.

Pies jest pogrzebany w tym, że Dalvik radzi sobie z bibliotekami pisanymi dla Oracla i to jest największy ból tej firmy.

Niech sobie Oracl wymyśla JavyFX, Javy ME i inne niezgodne ze sobą wynalazki, a programistom da pracować tak by nie musieli kompilować na 10 różnych platform.

Avatar
Anonim (niezalogowany) | 23.09.2011 14:32#28

@Xyrcon
Czyli jednak Google nie przegrał, a wcześniejszy artykuł był fałszywy.

AvatarUżytkownik jest nieaktywny
MoroS | 23.09.2011 14:36#29

@deimon, @Xyrcon: a to nie jest przypadkiem tak, że dopiero są na etapie mediacji, a jak te zawiodą (o ile już nie zawiodły), to dopiero rozpocznie się właściwa rozprawa sądowa?

AvatarUżytkownik jest nieaktywny
GL1zdA | 23.09.2011 14:48#30

@Galnospoke
"To ma sens. Google nie od dzis wprowadza "otwarte standardy"
Podobnie jest z AppEngine (Java, but not quite Java):
http://www.ibm.com/developerworks/java/library/j-paasshootout/

@WRT
"Dalvik (to nie Java!)"
A gdzie w newsie jest wspomniane o Dalviku? Dalvik może co najwyżej naruszać patenty. W całej sprawie chodzi o całe środowisko uruchomieniowe Java'y a nie o samą maszynę wirtualną.

"Oracle działa na tabletach, smartfonach, TV , PC i wielu innych."
Tak jak i Java. Która działa dodatkowo jeszcze np. w kartach inteligentnych czy odtwarzaczach blu-ray.

"Przenośność Javy w wydaniu Oracle od wielu lat jest już mitem. "
Tzn.? Bo ja problemów nie mam. I patrząc na programy w Javie dostępne na chociażby SourceForge problemów nie ma.

"a programistom da pracować tak by nie musieli kompilować na 10 różnych platform."
Wystarczy posłuchać developerów piszących pod Androida, gdzie są ciągle problemy z działaniem programów na różnych urządzeniach.

Avatar
Anonim (niezalogowany) | 23.09.2011 14:58#31

@GL1zdA
Nie będę tu się zagłębiać w temat bo to jest zbędne, ale skoro jesteś taki guru, to powiedz:

Jak napisać soft w Javie by działał z istniejącymi już bibliotekami (jar) tak samo na desktopie jak i na przypuśćmy... PocketPC. Lub inaczej jak napisać program okienkowy tak, aby działał tak samo na J2SE i J2ME: odpalam na windowsie i działa podobnie jak na urządzeniu.


"Wystarczy posłuchać developerów piszących pod Androida, gdzie są ciągle problemy z działaniem programów na różnych urządzeniach."
Nie mam żadnych problemów z softem na różnych urządzeniach. Siejesz FUD.

AvatarUżytkownik jest nieaktywny
MoroS | 23.09.2011 15:08#32

@GL1zdA: musisz tutaj trochę doprecyzować. Ogólnie rzecz biorąc kod Java'y uruchamiany jest na JVM, więc to JVM jest środowiskiem uruchomieniowym (tak samo jak Dalvik). Jeżeli zaś chodzi Ci o JRE, to ponoć jest to już otwarta technologia. ;) Chyba, że jest to taka otwartość na zasadzie "możecie pomóc nam to rozwijać, ale nie wolno Wam na bazie tego tworzyć własnych rozwiązań", czyli tak naprawdę żadna otwartość. ;)

AvatarUżytkownik jest nieaktywny
GL1zdA | 23.09.2011 15:40#33

@Anonim
"Siejesz FUD."
http://mobilegames.about.com/od/gamecompanies/a/intcarmack.htm
"hey don’t have a universal Open GL [graphics platform], standardized multitouch, and so on, so Doom Classic would need software rendering… different control schemes, different pricing for each version and, in the end, we’d probably make a lot less money. If Android takes off, it would be appealing to have a truly open platform, but we probably wouldn’t be able to utilize the different Android phones in the same way.

"Jak napisać soft w Javie by działał z istniejącymi już bibliotekami (jar) tak samo na desktopie jak i na przypuśćmy... PocketPC. Lub inaczej jak napisać program okienkowy tak, aby działał tak samo na J2SE i J2ME: odpalam na windowsie i działa podobnie jak na urządzeniu.
"
Bo nie przenosisz z SE na ME tylko z platformy znajdującej się niżej. Np. z SE działającego na Windows do SE działającego na Linuxie. Pokaż mi lepiej jak uruchomić aplikację z Androida na Windows, to wtedy będziesz mógł mowić o kompatybilności środowiska od Google.

@MoroS
"Jeżeli zaś chodzi Ci o JRE, to ponoć jest to już otwarta technologia."
Tu masz opisane dokładnie na czym polega problem Google:
http://tirania.org/blog/archive/2010/Aug-13.html


AvatarUżytkownik jest nieaktywny
O4i | 23.09.2011 15:52#34

@autor__
Tak, twierdzę, że chodzi tylko o składnię. Wydaje mi się, że oczywiste jest, że aby uzyskać możliwość używania składni (pisania w tym języku) trzeba go zaimplementować, i to Google właśnie zrobiło. Poco mieli wyważać otwarte drzwi skoro istnieją już otwarte implementacje Javy? Apache Harmony jest rozprowadzane na Licencji Apache 2.0 i gdybyś przynajmniej sprawdził poprawność tego co wypisujesz podczas "plucia" na ludzi, to wiedziałbyś, że licencja Apache nie nakłada obowiązku udostępniania kodu! Google natomiast udostępnia ten kod, choć nie musi tego robić (Dalvik jest otwartym komponentem androida)! Podsumowując, nie mogłeś się bardziej pomylić.

AvatarUżytkownik jest nieaktywny
Maks Baum | 23.09.2011 15:56#35

No to jak zarobią kasę na Googlu to może obniżą cenę SCJP do ceny jaką życzył sobie za niego SUN ;)

AvatarUżytkownik jest nieaktywny
MoroS | 23.09.2011 16:07#36

@GL1zdA: Z samego artykułu wychodzi na to, że chodzi o patenty, więc nie o ideologię czy przenośność. Ciekawe, czy samo GPL pozwala na takie "wielowymiarowe" licencjonowanie. "Tak, to jest na GPL... tak długo, jak spełniasz wymagania, w innym wypadku naruszasz nasze patenty". Ciekawa sytuacja. ;)

AvatarUżytkownik jest nieaktywny
Ziendal7 | 23.09.2011 16:41#37

Po co komu java ? Ni to wydajne, ni potrzebne, normalnie gorsza od flasha (zasobożerność).

AvatarUżytkownik jest nieaktywny
deimon | 23.09.2011 16:44#38

Ciekawe jakie patenty Google kupiło od IBM?
Może jakieś dotyczące baz danych? ;)
Edgar Frank Codd - twórca teorii relacyjnych baz danych pracował dla IBM.
http://pl.wikipedia.org/wiki/Edgar_Frank_Codd
http://pl.wikipedia.org/wiki/DB2

... eeeeech głupie Oracle.

AvatarUżytkownik jest nieaktywny
deimon | 23.09.2011 16:48#39

Jak ta cała zawierucha po wojnie patentowej opadnie to z grubszymi portfelami zostaną właściciele pola na którym ona się rozgrywała ... tak, tak - koncerny prawnicze. Z cieńszymi portfelami pozostaniemy my, klienci końcowi.

AvatarUżytkownik jest nieaktywny
TomaszP | 23.09.2011 17:12#40

Czy panowie znają znaczenie słowa 'bynajmniej'? Radzę przestudiować.

AvatarUżytkownik jest nieaktywny
TomaszP | 23.09.2011 17:13#41

Panie również ;)

AvatarUżytkownik jest nieaktywny
aptu | 23.09.2011 17:55#42

@Ziendal7
"Po co komu java ? Ni to wydajne, ni potrzebne, normalnie gorsza od flasha (zasobożerność)."

Lata 90te mamy już dawno za sobą, proponuję zapomnieć o appletach jako jedynym zastosowaniu Javy.

Wracając do tematu to na Androidzie jest Java, tylko ta Java jest kompatybilna tylko sama ze sobą. Gdyby Google stworzyło własny język, całe środowisko wokół języka, przyciągnęło programistów to nie ma sprawy, nikt by się ich nie czepiał. Ale oni wzięli Jave jako język, skopiowali połowę biblioteki standardowej, a żeby przyciągnąć programistów to wszędzie trąbili, że na programy na Androida pisze się w Javie.

@2+2*2
"Język jest ten sam (jego składnia). Jednak kod pośredni nie jest zgodny (Java tworzy pliki w formacie jar, Dalvik w formacie dex"

Czepiam się ale sprostowanie się należy. Pliki .dex to odpowiednik plików .class. Pliki .jar to archiwa (zwykły zip) w Androidzie odpowiednikiem są plik .apk. W SDK Androida nie ma nawet kompilatora javy, pliki .dex nie są tworzone bezpośrednio ze źródeł, ale przez konwersję plików .class skompilowanych kompilatorem javac z JDK.

Avatar
Anonim (niezalogowany) | 23.09.2011 18:05#43

"Pokaż mi lepiej jak uruchomić aplikację z Androida na Windows, to wtedy będziesz mógł mowić o kompatybilności środowiska od Google. "

Nie odpowiedziałeś na pytanie, odwróciłeś kota ogonem i żądasz odpowiedzi? Zadałem ci proste pytanie. Skoro Java jest tak przenośna jak się zapierałeś (i zarzuciłeś mi kłamstwo) to jak uruchomić J2ME na PC (niekoniecznie musi być windows - daję ci fory) i J2SE na PocketPC. Bez zmiany linijki kodu. Czekam.

Avatar
Anonim (niezalogowany) | 23.09.2011 18:09#44

@aptu "Ale oni wzięli Jave jako język, skopiowali połowę biblioteki standardowej, a żeby przyciągnąć programistów to wszędzie trąbili, że na programy na Androida pisze się w Javie. "

No bo pisze się w Javie, język nie jest opatentowany o ile mi wiadomo. Ty, żeby przyciągnąć programistów skorzystałbyś z COBOLa czy jakiegoś języka, który wszyscy znają, np. no nie wiem... Javy?

Avatar
Anonim (niezalogowany) | 23.09.2011 18:12#45

@GL1zdA
Poza tym podałeś link do jakiegoś wywiadu sprzed dwóch lat (2009) - wtedy Android SDK było w wersji 1.1.

Nie siej FUDu.

AvatarUżytkownik jest nieaktywny
GL1zdA | 23.09.2011 18:42#46

@Anonim
"Nie odpowiedziałeś na pytanie,"
Jeśli wywnioskowanie z mojej wypowiedzi, że się nie da przekraczało twoje możliwości, to proszę, oto odpowiedź "NIE DA SIĘ". Co nie zmienia faktu, że aplikacji napisane z użyciem JDK (niezależnie czy to będzie ME czy SE), są przenośne bardziej niż na Androidzie. Ciężko w ogóle nazwać przenośnym coś, co jest przenośne, pod warunkiem, że systemem operacyjnym jest Android.

"żądasz odpowiedzi?"
Moje pytanie było retoryczne.

"No bo pisze się w Javie, język nie jest opatentowany o ile mi wiadomo."
Oczywiście, że język nie jest opatentowany jednak gdybyś przeczytał ze zrozumieniem o co chodzi, wiedziałbyś, że Google nie zostało pozwane o użycie języka.

"Poza tym podałeś link do jakiegoś wywiadu sprzed dwóch lat (2009) - wtedy Android SDK było w wersji 1.1."
Od tego wywiadu Carmack nie stworzył nic na Androida, wręcz przeciwnie - dwa miesiące temu na QuakeCon powiedział, że osoba zatrudniona w id do pisania na Androida została wchłonięta przez team iOS, zakładam więc, że nic się nie zmieniło.

@Moros
"Z samego artykułu wychodzi na to, że chodzi o patenty, więc nie o ideologię czy przenośność. Ciekawe, czy samo GPL pozwala na takie "wielowymiarowe" licencjonowanie. "Tak, to jest na GPL... tak długo, jak spełniasz wymagania, w innym wypadku naruszasz nasze patenty". Ciekawa sytuacja. ;)"
Nie zrozumiałeś. Sun wypuścił JDK na GPL. Każdy może je rozwijać i korzystać z patentów Suna (teraz Oracle) do woli, ale musi udostępniać to dalej na GPL. Google wziął Harmony oparte o licencje Apache, co umożliwiało zamknięcie kodu. Nie otrzymał więc możliwości korzystania z patentów Oracle'a i przy tworzeniu swojego środowiska je naruszył. I o to jest teraz batalia. Tu nie ma żadnych ograniczeń GPLa.

AvatarUżytkownik jest nieaktywny
pain3hp | 23.09.2011 18:58#47

google może połknąć to całe ORACLE finansowo (czyt. kupić) GOOGLE to jest potęga i może wszystko, bez GOOGLE internet dla wielu traci sens. (niektórzy myślą że google to internet)

AvatarUżytkownik jest nieaktywny
DannyPL | 23.09.2011 19:59#48

@pain3hp
"google może połknąć to całe ORACLE finansowo (czyt. kupić)"

Bredzisz.

Avatar
nieśmiały (niezalogowany) | 23.09.2011 20:56#49

Wszyscy, którzy bronią Google i Androida patrzą tylko z jednej perespektywy- użytkownika. Warto spojrzeć z punktu producenta.
Czy wy produkując coś, patentując i mając do tego pełne prawo pozwolilibyście ukraść część swojego produktu obcej osobie i patrzeli jak na tym zarabia(Tak, Google zarabia na bezpłatnym systemie!! Promuje swoją markę i produkty)?? Wątpię, ze nie walczylibyście o swoje.

Avatar
pusiak (niezalogowany) | 23.09.2011 21:44#50

@GL1zdA
Jeśli to, że Carmack ma problemu z Androidem ma świadczyć o poziomie pisania aplikacji to ja dziękuję... Ciekawe, że takie firmy jak Gameloft czy EA (EA Mobile) nie mają żadnych problemów i ciągle tworzą gry które jakoś bez problemowo działają na różnych telefonach i nie potrzebują tysięcy wersji (akurat podział na wersje jest typowy dla Java ME).

Ogólnie nie wiadomo do końca o co chodzi Oracle - co chwila wyciągają jakieś nowości i to zupełnie odmienne od poprzednich oskarżeń - czyżby już sami się zgubili? Nie chcę bronić Google bo każda korporacja ma coś za skórą, ale akurat Oracle jest tutaj najmniej święte, i może najpierw niech ktoś przyjrzy się działaniom tej firmy zamiast kłócić się o jakieś durne patenty które prawdę mówiąc powinny wygasnąć ładnych parę lat temu.

Co do licencji - z tego co pamiętam Java była wydana na jakimś dziwnym tworze (chyba SCSL - Sun coś tam...) i dlatego powstały wolne implementację w tym Apache Harmony. Wszystko zależy teraz od punktu widzenia - z jednej strony nikt nie skarżył twórców Apache Harmony tym samym możemy przyjąć, że Google jest OK, z drugiej strony oryginał jest na SCSL więc sprawa nie jest tak do końca jasna.

Podsumowując wszystkie wojny patentowe są po prostu durne - a najśmieszniejsze, że najbardziej krzyczą Ci którzy sami święci nie są...

AvatarUżytkownik jest nieaktywny
chrome_9 | 23.09.2011 23:00#51

Sytuacja jest prosta.

W 2000r Microsoft zrobił dokładnie to samo co Google. Zrobili sobie własną wersję Javy uzależnioną od systemu Windows (aplikacje skompilowane na tej maszynie działały tylko pod tym jednym systemem). SUN wygrał sprawę. Microsoft musiał zaprzestać rozwoju własnej maszyny wirtualnej dla plików źródłowych Javy oraz zapłacić 1.1 miliarda dolarów. Microsoft stworzył własny język C#

W 2011r sprawa się powtórzyła. Tym razem język Java próbuje sobie zawłaszczyć Google i uzależnić go od systemu Android. Google wie że przegra sprawę w sądzie ponieważ Oracle (SUN) powoła się na wyrok z 2000r. Ponieważ sprawę rozstrzygał sad najwyższy to nie ma też możliwości odwołania. Dlatego Google próbowało uniknąć sali sądowej. Najpierw próbując unieważnić proces a teraz ustalić rozwiązanie polubowne.

Google zapłaci i wszyscy będą żyli długo i szczęśliwie. Jeżeli nie zapłaci to sąd może zakazać używania Javy i sprawa się skomplikuje (wyrok identyczny jak SUN-MS). W takim przypadku Google będzie zmuszone zrobić własny język podobny do Javy na czym wszyscy stracą.

Avatar
Adam11122 (niezalogowany) | 23.09.2011 23:55#52

Oracle to teraz przede wszystkim duża firma prawnicza pozywająca firmy o swoje patenty. Engineering już dawno został przeniesiony do Indii oraz firm podwykonawczych (też głównie z Indii).

Jakość produktów leci na łeb na szyję, WebLogic przejęty wraz z firmą BEA, pod Oraclem, z wersji na wersję sprawia coraz więcej kłopotów. Bugi zwykle naprawiane są dopiero kiedy zgłosi je duża korporacja (czyt. płacąca duże kwoty za licencje). Spytajcie byłych pracowników firmy KPIT z Wrocławia - zajmowali się supportem WebLogic-a, ale po przejęciu przez Oracle'a robotę przejęli hindusi.

Jeśli Oracle będzie kontynuował taką politykę względem Java'y, to w niedługim terminie uśmierci ten język. Sun robił wszystko, aby Java była jak najszerzej stosowana, Oracle chce przede wszystkim zarabiać. Już teraz język ten rozwija się w tempie ślimaczym, "nowości" wprowadzone w wersji 7, po tylu latach czekania to przecież śmiech na sali.

Obecnie wystarczy, aby parę dużych firm (choćby Google + IBM) stworzyło własny język, lub prościej, wzięli się na poważnie za rozwój jakiegoś z istniejących (Scala, Groovy, Python, Ruby). Możliwościami wyprzedzają one o lata świetlne Java'e, mimo że rozwija je zazwyczaj garstka ludzi. To zatrzymałoby na dobre hegemonię Oracle'a, który kupując SUNa przejął spory kawał rynku, a teraz pluje nam jawnie w twarz kosząc jeszcze za to wielkie pieniądze.

Avatar
Anonim (niezalogowany) | 23.09.2011 23:57#53

@GL1zdA
I znowu błąd. Android to nie goła maszyna wirtualna jak to masz w Javie a cały system. W Androidzie mam dostęp do sprzętu i interfejsu systemu o łatwości jakiej się twojej Javie nie śniło. Kilka linijek i korzystam z GPS, kompasu, Bluetooth, kamery, mikrofonu itp. Platforma Javy to potrafi? Odpowiedź: Nie. I dlatego została zepchnięta do roli kalkulatora słupków z formularzy html.

AvatarUżytkownik jest nieaktywny
fffatman | 24.09.2011 4:25#54

Oracle podnosi zarzuty moralne... liczą się z przegraną?

AvatarUżytkownik jest nieaktywny
RaveStar | 24.09.2011 10:17#55

@chrome9
Nie zrobił to samo. Na maszynie MS dało się uruchamiać jar-y SUNa. Na Androidzie się nie da, nigdy się nie dało i nigdy nie będzie.

AvatarUżytkownik jest nieaktywny
RaveStar | 24.09.2011 10:19#56

"W takim przypadku Google będzie zmuszone zrobić własny język podobny do Javy na czym wszyscy stracą."

Nikt na niczym nie straci bo Java jako język nie jest objęta żadnymi patentami i Oracle może sobie nagwizdać.

AvatarUżytkownik jest nieaktywny
aptu | 24.09.2011 12:15#57

@fffatman
"Oracle podnosi zarzuty moralne... liczą się z przegraną?"

Z dotychczasowego przebiegu wydarzeń można raczej wywnioskować coś odwrotnego. Oracle już tą sprawę niemal wygrał, teraz pytaniem jest, jak daleko pójdą. Może się skończyć kilkoma miliardami $ odszkodowania i kosztów licencji, albo najpierw zażądają aby Java Google była zgodna z normalną Javą i dopiero wtedy sprzedadzą im odpowiednie licencje. Drugi przypadek jest znacznie gorszy dla Androida.
Dla Androida i użytkowników oczywiście najlepiej by było gdyby Google od początku nie leciało w ..uja i nie wykoślawili podstawowego założenia Javy czyli przenośności. Mógł by się spełnić piękny scenariusz, gdy ten sam program można uruchomić i na Androidzie i na Windowsie i na Linuksie. Szkoda, że Google wybrało inną drogę.

Avatar
stecenator (niezalogowany) | 24.09.2011 13:55#58

Nie będę żałował jak google przegra. Są na tyle silni, że zapłacą i wprowadzą nowy język. A Oracle zostanie z bezużytecną Javą. Użyją np Limbo, albo co chyba by było najlepsze jakiegoś GPLowego rozwiązania.
Java jest wolna a jej przenośność to mit. Spróbujcie odpalić moduł zarządzający do switchy Brocade na 64bitowej javie 1.6 pod linuxem. Soft jest napisany pod Javę 1.5, a działa tylko z 32 bitową VM.
Mam do czynienia bardzo dużo z oprogramowaniem napisanym w Javie i widzę jedno. Jak chcesz przenieś program w Javie to przynieś sobie maszynę wirtualną, która go odpali. Prowadzi to di kuriozalnych sytuacji, gdzie na jednej maszynie jest zainstalowane po kilka środowisk JRE.
Śmierć Javie. Niech żyją otwarte języki, a ludzi niech uczą się programować w C!
Ciekawe co się dzieje z Qtopią? Tam się pisało w zmodyfikowanym na potrzeby Qt C++?

Avatar
vi4mm (niezalogowany) | 24.09.2011 14:15#59

Ludzie! Java przenośna już była! Były to tzw midlety javy.
Wielki burdel z wersjami, nie dość że trzeba było szukać ich po internecie, albo przez smsy, to były
1) brzydkie (nie było wspólnej bazy widgetów)
2) niezgodne ze sobą - trzeba było szukać wersji pod _konkretny model telefonu! Czy już zapomnieliście niezgodne ze sobą wersje midleta na :
- Siemensa,
- Ericsona,
- Nokię
i to oddzielne wersje na różne rozdzielczości?

Niedorobioną przenośną POWOLNĄ Javę już mieliśmy. Pamiętacie jak długo uruchamiały się takie midlety? Zamulały telefon na 30 sekund!
Google zrobił wreszcie krok naprzód - dał aplikacjom to co dał Windows - wydajność,wspólny system operacyjny który nie ogranicza aplikacji, i integrację ze sprzętem. Na dodatek stworzył bez bazy patentowej.

Mam nadzieję, że Google zapłaci te kilka milardów dolarów, i tak to się zwróci, gdy Google Android będzie wielki jak Microsoft Windows. Bardziej prawdopodobne jest jednak, że wielki brat IBM wkroczy do gry i porozsadza niegrzeczne dzieci po kątach :-)

Jedno jest pewne - ta historyczna wojna patentowa 2010-2011 wpłynie na to na czym pracować będą nasze dzieci (historia rodem z lat 80'tych XX wieku IBM OS/2, MS Windows, i garstka innych systemów).

AvatarUżytkownik jest nieaktywny
RaveStar | 24.09.2011 16:59#60

@aptu:
"Dla Androida i użytkowników oczywiście najlepiej..."

Oracle nie planowało budowy systemu operacyjnego wokół swojej maszyny. Google zrobił swoją, umożliwił pisanie w Javie i mamy soft na tabletach, smartfonach, TV i innych (niedługo oficjalnie PC), więc gdyby nie Google bylibyśmy w 4 literach.

"Mógł by się spełnić piękny scenariusz, gdy ten sam program można uruchomić i na Androidzie i na Windowsie i na Linuksie. Szkoda, że Google wybrało inną drogę. "

... ale nie można uruchomić na Linuksie czy Windowsie, więc żale, że się nie da kieruj do Oracle.

Pewnie wydaje ci się, że Google wykorzystałby JVM, narobił się jak głupi, a potem Oracl wyskoczyłby z opłatami za "patenty". Nie tędy droga. Dlatego powstał Dalvik.

AvatarUżytkownik jest nieaktywny
aptu | 24.09.2011 19:56#61

@RaveStar
"Pewnie wydaje ci się, że Google wykorzystałby JVM, narobił się jak głupi, a potem Oracl wyskoczyłby z opłatami za "patenty". Nie tędy droga. Dlatego powstał Dalvik."

Jak ci się wydaje jak ten spór się skończy? Oracle i tak wskoczy ze swoimi patentami. Google skopiowało Javę i nie zmieni tego Dalvik nie potrafiący uruchamiać bezpośrednio bytecodu Javy.

Najważniejsze, to to, że Google doskonale zdawało sobie sprawę, że implementując Javę na swoim systemie muszą wykupić licencje. Nikt ich nie zmuszał do użycia Javy, mogli użyć czego dusza zapragnie, C++/Python/cokolwiek. Java była jednak zbyt kusząca, najpopularniejszy język na świecie, z ogromną bazą bibliotek do wszystkiego. Któż by się oparł, na pewno nie Google, szkoda, ale zamiast zrobić to kulturalnie, to mało, że nie zapłacili to jeszcze biedną Javę zgwałcili.

AvatarUżytkownik jest nieaktywny
RaveStar | 24.09.2011 21:38#62

@aptu
Nie znam szczegółów tej sprawy i pewnie nikt do końca procesu nie pozna.
W najgorszym wypadku Google zapłaci za "cośtam" i skończy się taj jak w przypadku MS. Android jest nadal bezpieczny, paltforma Javy w wydaniu Oracle posysa, więc wątpię by programiści odstąpili od niego.

Kod o ile był skopiowany (tego nie wiadomo) można przepisać. Oracle właśnie opiera całe swoje zarzuty o niego opiera. Nic więcej nie mają, bo Dalvik działa zupełnie inaczej od JVM i nikt w Google Dalvika nie nazywa Javą bo nią nie jest.

AvatarUżytkownik jest nieaktywny
RaveStar | 24.09.2011 21:43#63

Jeszcze jedno. Oracle Java po tym procesie straci kolejnych zwolenników tak jak to było po procesie z Microsoftem.

Dodam jeszcze, że Google szykuje język programowania Dart(Dash), który pozwoli zapomnieć o HTML i javascript - także o Javie , bo będzie działął w oparciu o własną maszynę wirtualną. Być może to będzie drugi .NET.

AvatarUżytkownik jest nieaktywny
RaveStar | 24.09.2011 21:46#64

W zdaniu. "Oracle właśnie opiera całe swoje zarzuty o niego opiera." jest za dużo "opiera", ale wybaczycie mi ten mały błąd. Ten portal nie dorobił się jeszcze opcji edycji/poprawy wpisów. ;)

Avatar
nocny_arek (niezalogowany) | 25.09.2011 0:04#65

Patrząc po indeksie Tiobe dla Javy, to dalej ma ona trend spadkowy, jeżeli chodzi o popularność. Cała ta sprawa nie zwiększa popularności Javy i myślę, że za 3-4 lata już mogą być inne języki bardziej popularne. Jak dla mnie to właściciel Javy sam sobie wbija gwodździe do trumny z Javą, jako najbardziej popularnego języka. Poza tym to pełna przenośność Javy to już raczej mit (życzenia twórców) niż rzeczywistość. Przykład języka C# wskazuje na to, że każda taka rozprawa spowoduje, że Java będzie szybciej niszowym serwerowym rozwiązaniem.

AvatarUżytkownik jest nieaktywny
aptu | 25.09.2011 2:50#66

@RaveStar
"Nic więcej nie mają, bo Dalvik działa zupełnie inaczej od JVM i nikt w Google Dalvika nie nazywa Javą bo nią nie jest."

Dalvik to tylko maszyna wirtualna, może sobie działać jak chce. Ważne jest to, że wszystko co na niej uruchomisz jest napisane w Javie, w tej starej posysającej Javie od Oracle. Cała niekompatybilność pochodzi od bibliotek, których albo nie ma na Androidzie, albo są tylko na Androidzie. Dalvik to mały pikuś, równie dobrze konwersja do dex mogła by następować automatycznie przy pierwszym uruchomieniu jara i nawet byś nie zauważył, że Dalvik nie wykonuje standardowego bytecodu Javy.

"Oracle Java po tym procesie straci kolejnych zwolenników tak jak to było po procesie z Microsoftem."

Serio? W rzeczywistości efekt był taki, że pomogło to Javie, bo potwierdziło zaangażowanie Suna w obronę jednolitości i przenośności Javy.

"Kod o ile był skopiowany (tego nie wiadomo) można przepisać. Oracle właśnie opiera całe swoje zarzuty o niego opiera."

Nie zapominaj o patentach, kopiowanie kodu to jedno, a łamanie patentów to co innego.

Oracle to dobry opiekun Javy, znacznie lepszy niż Sun w końcowym okresie swojego życia i osobiście nie martwię się o przyszłość Javy.

"Dodam jeszcze, że Google szykuje język programowania Dart(Dash), który pozwoli zapomnieć o HTML i javascript - także o Javie , bo będzie działął w oparciu o własną maszynę wirtualną. Być może to będzie drugi .NET."

Błagam, bez takich okrutnych żartów. Kolejny język jakich powstają setki i to jeszcze od Google który jest powszechnie znany ze zwyczaju porzucania swoich projektów. Dokument w którym zapowiadają Dasha pochodzi z października 2010, ujawniono go w sierpniu 2011. Do dzisiaj jest to jedyny znak, że coś takiego ma powstać, poza tym nic, zero, null.

AvatarUżytkownik jest nieaktywny
RaveStar | 25.09.2011 10:37#67

@aptu
"Ważne jest to, że wszystko co na niej uruchomisz jest napisane w Javie,"
Na .Net też można pisać w javie.


"Serio? W rzeczywistości efekt był taki, że pomogło to Javie, bo potwierdziło zaangażowanie Suna w obronę jednolitości i przenośności Javy.
W rzeczywistości ludzie, którzy wtedy tworzyli na Javę teraz tworzą na .NET. Tak więc Java straciła i to sporo.

"Nie zapominaj o patentach, kopiowanie kodu to jedno, a łamanie patentów to co innego.
"
Java jako język nie podlega prawu patentowemu, a Dalvik to nie jest klon JVM, więc nie widzę tu żadnego problemu.

"Oracle to dobry opiekun Javy, znacznie lepszy niż Sun w końcowym okresie swojego życia i osobiście nie martwię się o przyszłość Javy.
"

Oj chyba nie. Za czasów Oracle JVM zostało zepchnięte na serwery na backend dla webu. Na desktopie nie istnieje, na handheldach też nie widzę, może TV? Też nie. Java w wydaniu Oracle to trup.

"Kolejny język jakich powstają setki i to jeszcze od Google który jest powszechnie znany ze zwyczaju porzucania swoich projektów."
Google zamyka projekty tylko wtedy, kiedy jest brak zainteresowania ze strony ludzi, nie jak MS, że pomimo technologie są w użyciu (i mimo protestów) ucina im łeb - patrz: Silverlight.

AvatarUżytkownik jest nieaktywny
aptu | 25.09.2011 20:51#68

@RaveStar
"W rzeczywistości ludzie, którzy wtedy tworzyli na Javę teraz tworzą na .NET. Tak więc Java straciła i to sporo."

Wygranie procesu pomogło Javie. Stworzenie .NET trochę zaszkodziło. Wbrew pozorom nie jest to to samo. Poza tym trochę tych ludzi musiało jednak zostać przy Javie. Bo jak można wytłumaczyć, że to Java od co najmniej 10 lat jest najpopularniejszym językiem programowania obok C i C++.

"Java jako język nie podlega prawu patentowemu, a Dalvik to nie jest klon JVM, więc nie widzę tu żadnego problemu."

Sąd chyba nie podziela twojego zdania, a coś mi się zdaje, że sędzia prowadzący tę sprawę zna się na prawie lepiej od ciebie. Coś mi się też zdaje, że to czy Dalvik jest klonem JVM czy nie, nie ma tutaj nic do rzeczy.

"Oj chyba nie. Za czasów Oracle JVM zostało zepchnięte na serwery na backend dla webu. Na desktopie nie istnieje, na handheldach też nie widzę, może TV? Też nie. Java w wydaniu Oracle to trup."

Oj chyba się mylisz. Oracle dosyć szybko po przejęciu Suna wydał Jave 7. Java 8 z bardzo wieloma bardzo oczekiwanymi usprawnieniami ma być wydana w 2012 roku. Na moje, radzą sobie, a Java jak na trupa całkiem żwawo kopie.
Oracle nigdzie nie zepchnął Javy, domeną Javy na długo przed przejęciem Suna były serwery. Oracle nawet próbuje walczyć o desktop tworzą JavaFX 2, która ma naprawić wszystko co złe było w JavaFX 1. Głównie to, że JavaFX 1 nie miała wiele wspólnego z Javą (językiem i platformą) poza tym, że była uruchamiana na JVM.
Porażką to jest .NET na desktopie. Środowisko tworzone tylko pod Windowsa nie było w stanie na Windowsie pobić wieloplatformowej Javy. Na szczęście MS już dostrzegł swoją pomyłkę i po cichu wycofuje się z .NET na desktopie.

"Google zamyka projekty tylko wtedy, kiedy jest brak zainteresowania ze strony ludzi, nie jak MS, że pomimo technologie są w użyciu (i mimo protestów) ucina im łeb - patrz: Silverlight."

Gdyby tylko Google walczyło o projekt przed jego zamknięcie, to by było dobrze. Języka Go! od początku swojego istnienia czyli ok. 2 lat nie można użyć na Windowsie. Później jest zdziwienie, że projekt nie zdobył popularności.

AvatarUżytkownik jest nieaktywny
nitro192007 | 25.09.2011 21:08#69

Ta rzeczywiście Java to wypaśny język. Jest tak spasiony że go nie używam. Raz do projektu mieliśmy stworzyć na studiach aplikację mobilną z geolokalizacją. Owszem aplikacja została napisanaw Java ME, na 10 komórek działa na 2. a nawet jedną tak zawiesiła że trzeba było robić twardy reset. Spróbowałem Androida i w ciągu kilka godzin potrafiłem stworzyć prostą aplikację, fakt że napisaną w Javie, ale jednak działała normalnie i prędzej się nauczę Androida niż Javy. Dopiero Oracle się obudził. Szkoda że Google nie przejęło Suna bo co Oracle przejmie to umiera.

Avatar
madman85 (niezalogowany) | 25.09.2011 21:40#70

Java niby jest przenośna ale z tym tak naprawdę bywa różnie
Ja mam komórkę z androidem i jestem zadowolony, a instalacja aplikacji jest dziecinnie prosta i wszystkie działają! czepiają się gogola bo odniusł sukces...

AvatarUżytkownik jest nieaktywny
aptu | 26.09.2011 0:03#71

@nitro192007
W Javie ME masz język Java w wersji 1.3, czyli nici z generics, annotations, enums. Z biblioteki standardowej masz jakieś strzępy. Jeżeli swoją opinię na temat Javy opierasz na doświadczeniu z Javą ME to współczuję.
Java z Androida ma bez porównania więcej wspólnego z normalną współczesną Javą, niż Java ME z normalną Javą.

AvatarUżytkownik jest nieaktywny
nitro192007 | 26.09.2011 0:28#72

Nie mam doświadczenia z Javą bo tego się nie tykam. Ktoś z zewnątrz pisał aplikację, więc nie określałem wersji Javy.

AvatarUżytkownik jest nieaktywny
aptu | 26.09.2011 1:35#73

@nitro192007
Trzeba było od razu napisać, że nie nie masz pojęcia o Javie ale jej nie lubisz. Nie tracił bym czasu na odpisywanie.

Avatar
Piotr111 (niezalogowany) | 26.09.2011 9:07#74

Ta cała przenośność Javy to jedna wielka bujda. Nie wyobrażam sobie maszyny wirtualnej, na której będzie można odpalać jakieś programiki na komórkach i aplikacje biznesowe uruchamiane na klastrach serwerów. Z jednej strony programik, który zajmuje kilka megabajtów pamięci działający na jednym rdzeniu przez kilkanaście minut, z drugiej, aplikacja uruchomiona na wielordzeniowym procesorze, zajmująca kilka gigabajtów danych w pamięci i do tego musi działać 100% wydajnie i niezawodnie przez kilka tygodni/miesięcy bez restartu. Już sam Garbage Collector musi być zupełnie inny. Oracle o tym doskonale wie. Rozumiem, że tu chodzi o kasę. Szkoda mi tylko, że kupując telefon z Androidem muszę płacić nie twórcom, ale trollom patentowym.

AvatarUżytkownik jest nieaktywny
RaveStar | 26.09.2011 9:20#75

@aptu
To, że nitro192007 pisze, że się nie zna nie oznacza, że pisze nieprawdę. Coś z twoją logiką nie tak.

Moje wrażenia po "Write once, run everywhere” są podobne jak jego. Java ani nie jest przenośna ani wieloplatformowa. Wszystko bardziej skomplikowane od "Hello World" wymaga testów i poprawek na dany system. Ba, jakby użyć "Witaj świecie" zamiast helloworlda to jest bardzo duża szansa, że wyświetli krzaki w zależności czy to będzie XP czy Win7.

Android jest tym, czym miała być J2ME - pewnym i pełnowartościowym środowiskiem na urządzenia przenośne, a nie jakimś pokręconym kulfonem w którym nawet listy nie działają. Już nie mówiąc o takich rzeczach jak formatowanie daty.

Z tym JavaFX to Oracle rychło się obudził. Widać wyraźny trend w kierunku pozbycia się wtyczek z przeglądarek, a Oracle nie zdążył jeszcze wydać jednej działającej. Jak znam życie szybciej będzie z palca w HTML UI tworzyć niż w JFX.

To, że MSFT chce się pozbyć .NET to się nie dziwię. Ani to stabilne ani zgodne wstecz - jeden wielki bałagan z tysiącem bibliotek na odkręcanie otwartego słoika. Poza tym jak już pewnie zauważyłeś, powstał brzydki konkurent .NET czyli Mono. Im szybciej MSFT przejdzie na WinRT, tym mniej programistów będzie tworzyć na Mono. Mono oczywiście zginie zapomniane w czeluściach internetu.

"że to Java od co najmniej 10 lat jest najpopularniejszym językiem programowania obok C i C++. "
To nie żaden argument. Poza tym Java sztucznie poszła w górę dzięki Androidowi. Gdyby nie Android to z tego co widzę po wykresach na Tiobe C już w 2010 definitywnie przegoniłby Javę.

C, o ile IBM czy AMD nie wprowadzi nowych (szybszych) procesorów ,znów nabierze popularności. Jezyk prosty, posiada kilka typów danych i kod o wiele bardziej przenośny od jakiegokolwiek istniejącego dziś języka programowania. Kompilator to tylko kilkaset kilobajtów. Mogę się założyć, że już na początku 2012 pobije Javę w popularności.
Dzisiaj moc procesorów nie rośnie w tempie takim jak 10 lat temu. Dziś liczy się już zysk wydajności na poziomie kilku - kilkunastu procent. Pozwala to wybić się przed konkurencję i pozostawić ją daleko w tyle. Dlaczego? Bo czasy boomu informatycznego się skończyły, a zaczęły się czasy optymalizacji.

Przy?ład:
Jądro Linuksa można przenieść na nowe platformy bez żadnych problemów bo jest napisane w C.

PS. Nie mylcie C z C++. Ten drugi to dziwoląg i na dłuższą metę się nie sprawdza. Widać to po tym jak długo MSFT portował Windowsa na ARM. C++ to taki crap, że nawet komitet standaryzacyjny nie może się w nim połapać. Omijać z daleka jeżeli nie zostałeś zmuszony do jego użycia.

AvatarUżytkownik jest nieaktywny
aptu | 26.09.2011 12:41#76

@Piotr111
"Ta cała przenośność Javy to jedna wielka bujda. Nie wyobrażam sobie maszyny wirtualnej, na której będzie można odpalać jakieś programiki na komórkach i aplikacje biznesowe uruchamiane na klastrach serwerów."

To chyba logiczne, nie widzę tutaj problemu Javy, taki sam problem będziesz miał z C/C++/czymkolwiek.

"Moje wrażenia po "Write once, run everywhere” są podobne jak jego. Java ani nie jest przenośna ani wieloplatformowa. Wszystko bardziej skomplikowane od "Hello World" wymaga testów i poprawek na dany system. Ba, jakby użyć "Witaj świecie" zamiast helloworlda to jest bardzo duża szansa, że wyświetli krzaki w zależności czy to będzie XP czy Win7."

To juz jest problem słabych programistów, że nawet w Javie potrafią napisać nieprzenośny program. Jakiś czas temu był na dp.pl news, że jakiś program został przeniesiony na Linuksa. Przyjrzałem mu się i trochę się zdziwiłem bo program ten był napisany w Javie. Zdziwienie mi przeszło gdy zobaczyłem ile tam było natywnego kodu wywoływanego przez JNI. Gdy tak się pisze, to nic dziwnego, że później taki potworek jest nieprzenośny.
Normalny program w Swingu, można od kopa przenieść na linuksa i odpalić i wszystko będzie działało jak należy. Problem może być jedynie ze stroną wizualną programu gdy użyjemy jakiegoś niestandardowego look and feel które było tworzone z myślą o jednym środowisku graficznym.

"Android jest tym, czym miała być J2ME"

Android to system operacyjny od jednego dostawcy, a J2ME to środowisko na wiele systemów od wielu dostawców. Musieli iść na kompromisy, żeby w ogóle jakoś to działało. I sorry, jak można porównywac Androida który do działania potrzebuje coraz częściej dwurdzeniowego 1GHz procesora i akceleratora graficznego, do J2ME które działało na 20MHz procesorkach. Ale nie będę się kłócił o J2ME bo mi ten standard też się bardzo nie podoba.

"C, o ile IBM czy AMD nie wprowadzi nowych (szybszych) procesorów ,znów nabierze popularności. Jezyk prosty, posiada kilka typów danych i kod o wiele bardziej przenośny od jakiegokolwiek istniejącego dziś języka programowania."

Kod w C jest bardzo przenośny, szczególne gdy wywołuje funkcje systemowe, albo próbuje odczytac /proc/cpuinfo :)

Obecnie taktowanie procesorów nie rośnie, rośnie za to liczba rdzeni. Przez długi czas standardem był jeden rdzeń, potem dwa, teraz są cztery. W C programowanie wielowątkowe to nadal nie jest to co można robić bez utraty zmysłów.
Java i .NET bardzo stawiają na wykorzystanie wielowątkowości, nawet C++ standaryzuje ten aspekt, tylko C pozostaje w tyle.

"Nie mylcie C z C++. Ten drugi to dziwoląg i na dłuższą metę się nie sprawdza. Widać to po tym jak długo MSFT portował Windowsa na ARM. C++ to taki crap, że nawet komitet standaryzacyjny nie może się w nim połapać. Omijać z daleka jeżeli nie zostałeś zmuszony do jego użycia."

MS tak długo portował Windowsa na ARM bo system ten był pisany stricte pod x86, nikt w czasie jego pisania nie zawracał sobie głowy innymi architekturami. Gdyby Windows był napisany w C to był by tak samo nieprzenośny. Linuks to odwrotność, jest pisany maksymalnie przenośnie bo ma być odpalany na wszystkim co ma procesor, od mainframe do budzika na nocnym stoliku.

Avatar
dav_ubuntu (niezalogowany) | 26.09.2011 20:34#77

Mam nadzieje że Oracle polegnie kiedyś od własnej broni, tak samo jak Apple, ktore teraz musi bronic sie przez Samsungiem , a sami zaczęli wojnę... Precz z trollami patentowymi: Apple, Micro$oftem i Oracle !

Avatar
Anonim (niezalogowany) | 28.09.2011 15:12#78

"Oracle: Android pozbawił Javę przenośności i wieloplatformowości "

LOL. To jakby mieć pretensje, że BMW pozbawiło Malucha szybkości i elegancji. Hehehe. Oracle Java nigdy nie była przenośna ani wieloplatformowa. ;)

Avatar
pnti (niezalogowany) | 28.09.2011 21:45#79

Pecunia non olet.

Najbardziej bawi mnie w tym wszystkim reklama, którą Oracle wyświetla w instalatorach JRE pod Windowsem - "3 bilion devices run Java". Oczywiście te devices to w dużej mierze telefony z Androidem Google'a.

Dla mnie jako konsumenta takie procesowanie się jest sygnałem, że Oracle kiepsko przędzie, że zwyczajnie są słabi. I procesy są jedynym polem na którym są równorzędnym partnerem dla Google'a.

Dodaj komentarz

Zasady publikowania komentarzy
Autor
Treść
 
Polecamy
Huawei E583C

Test przenośnego routera 3G
Spotkajmy się na HotZlocie!

13-15 07 2012, Zamek na Skale
Testujemy GALAXY NOTE

Czy to tablet z telefonem?
Top programy
  •  
Top programy ostatnie 7 dni
  •  
Top programy ostatnie 30 dni
  •  
Skanery antywirusowe
skaner av