Nechci mluvit za autora programu, ale není to situace typu Java nebo nic? Pod každou Java aplikací se vždy najde alespoň jeden komentář typu "sice je to fajn, ale je to Java" - je ale lepší mít něco v Javě nebo to nemít vůbec?
Samozrejme, ze je lepsi mit neco v jave nez vubec.
Chtel jsem ti jen vyjadrit vlastni osobni antipatie k velkym SW v jave. (obvykle z duvodu nenazranosti a lennosti)
Program jsem zkousel a vypada velice nadejne
Vetsina Asterope je napsana ve Scale, bezi to sice na JVM ale neni to uplne totez.
Puvodne trvalo vykresleni mapy zhruba minutu. Diky profileru a debugovani jsem to stahl zhruba na 3 sekundy. V Jave nahodim JProfiler a behem 10 sekund vidim problemove misto. Cecko nema tak dobry tooling, takze by se mi to pravdepodobne nepodarilo tolik zoptimalizovat.
Zrovna tak multithreading by byl problematicky. Spousta Cckaru na nej proste rezignovala. Pocital jsem to a diky Scale delam fork/join nebo neco podobneho zhruba na kazdem 20tem radku.
JVM / Java ma par nedostatku (dlouhy start diky classloadingu, vyssi naroky na pamet), ale vetsina veci o jejim vykonu neni pravda.
Protoze Skymap dela veci daleko jednoduseji. Asterope taha data z SQL databaze, mapu kresli pomoci scenegraphu v nekolika vrstvach, je tam heuristika na umisteni textu v mape...
24.2.2010 10:03
Jalien
RozbalitRozbalit vše
Re: Astronomické planetarium Asterope
No je otázka o jaké kategorii astronomických programů je řeč. Předpokládam že o windowsích aplikacích ala planetárium. Velká většina profesionálních programů pro nejen vykreslení ale i analýzu hvězdných katalogů je však buď ve FORTRANu popř v C volajícím Fortranské knihovny (to jsou tzv. legacy aplikace typu IRAF, MIDAS, Starlink) nebo naprosto drtivě v Javě (všechno co souvisí s Virtuální observatoří = jako Aladin, VOplot, TOPCAT apod ...)
A dá se říci, že většina z nich je velmi efektivní. BTW Healpix byl primárně vymyšlen právě pro účely VO.
Jinak se dá obecně říci, že současný SW vývoj v astronomii je vlastně mnohem více vpředu před komerčním světem protože řeší otázky práce s největším množstvím dat jaké na zemi můžete potkat, která navíc rostou rychleji než káže Moorův zákon. Proto se vymýšlejí finty jako inteligentní agenti posílané na servery, protokoly pro přenos workflows, agregátory dotazů do distribuovaných databází (např. Skyserver.org) apod. Ve vývoji je také speciální astronomický dotazovací jazyk (ADQL) a spousta protokolů pro práci s datovými hyperkostkami. Astronomové také vymysleli mnohem efektivnější protokol pro komunikaci mezi distribuovanými aplikacemi než je CORBA (hledejte PLASTIC a SAMP)
Má-li někdo dobrou znalost Javy a chce dělat avantgardní vývoj jedinečných databázových aplikací je pro něj astroinformatika a vše kolem Virtuální observatoře pravý ráj. A v neposlední řadě je třeba říci, že se od nás učí jak Google (GoogleSky) tak Microsoft (WWT)
No je to hezký počin, ale myslím, že na profesionální scéně se s tím moc nechytnete.
Tam jednoznačně kraluje Aladin http://aladin.u-strasbg.fr/ a TOPCAT http://www.star.bris.ac.uk/~mbt/topcat/index.html a je také otázka zda má smysl cpát databázi hvězd přímo na PC - klienta. Největší množstí astronomických katalogů je dnes používáno přes interface a protokoly Virtuální observatoře a tedy se načítají on-line např z CDS ve Strasbourgu (systém Vizierhttp://vizier.u-strasbg.fr/cgi-bin/VizieR) či NASA (NED http://nedwww.ipac.caltech.edu/). Jednak to umožňuje mít tam aktuální informace (např. supernovy, pozice výbuchů gamma apod. jednak se dají dotahovat vámi zmíněné atributy jako barvy, magnitudy apod z odlišných katalogů a agregovat to.
Píšete, že vymýšlíte vlastní datový model pro tu databázi. Nechtěl byste se raději podílet na vývoji Virtuální observatoře a jejích datových modelů a aplikací ? - takhle Váš program bude jedním z mnoha planetárií - jako hračka pro amatéry. Ale v rámci VO máte šanci přispět k pokroku lidstva a zapojit se do procesu nového způsobu dělání vědy, který dnes začíná nejen v astronomii ale i geofyzice či meteorologii - najděte si hesla jako e-Science, semantic web, ontologies.
Obecně pokud by měl někdo zájem dělat nějaký SW vývoj s astronomickou tématikou, nechť si najde něco o Virtuální observatoři a jejich standardech (např. http://ivoa.net/Documents ) , popř. mě kontaktuje.