Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on May 9th, 2012  |  syntax: None  |  size: 11.71 KB  |  hits: 19  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. Arturo;Dawid;: (12:58)
  2. [Arturo] nauczylem sie tez troche o javie czytajac ja
  3. [Arturo] m.in. ze jest jezykiem dla wygodnych idiotow
  4. [Arturo] koles se tworzy gdzie mu sie podoba obiekty
  5. [Arturo] i w dupie ma co z nimi bedzie
  6. (12:59)
  7. [Arturo] bo GC za niego mysli
  8. kill3rreaper: (13:05)
  9. Nie uważam tak ;]
  10. Uważam za to, że M$ bez sensu wymyslił C# ;]
  11. Arturo;Dawid;: (13:05)
  12. [Arturo] bo Ci wspzpzpzpzp wypral mózg ;]
  13. kill3rreaper: (13:06)
  14. Nie wyprał - po prostu zobaczyłem (po części) jaką robotę odwalili programiści co projektowali Javę.
  15. Bo np C++ daje dupy z operatorem new ;/
  16. (13:07)
  17. O tym nie wiedziałem. On jest cholernie wolny, dlatego Java szybciej alokuje pamięć...
  18. new = malloc
  19. (13:08)
  20. I program taki np jak Firefox... ma własny operator new, który jest lepszy od "wbudowanego" w C/C++.
  21. A właściwie to lepszy od malloca, bo to tylko inna nazwa dla tego samego :/
  22. (13:09)
  23. I co ciekawe, Grzanek coraz bardziej krytyczne uwagi na temat Javy wyciąga, chociaż na początku jej bronił .
  24. No ale musieliśmy troszkę się dowiedzieć o tej technologii.
  25. (13:10)
  26. Np małe aplikacje będą działać lepiej w PHP niż w JEE.
  27. Ale dużych aplikacji nikt nie pisze w PHP.
  28. Bo Java jest "bezpieczniejsza". I nie mówię teraz o technologii :D
  29. Arturo;Dawid;: (13:11)
  30. [Arturo] Nie no tylko facebook jest w PHP ale tak to nie ma duzych aplikacji w PHP
  31. kill3rreaper: (13:11)
  32. Tylko o tym, czym się kierują project managerowie którzy są odpowiedzialni za projekty...
  33. On jest chyba kompilowany.
  34. (13:12)
  35. I dzięki temu działa znośnie.
  36. W każdym razie jak project ma się źle, to project manager który wybrał Javę nie będzie miał z tego powodu przesrane.
  37. Gdyby wybrał PHP, to na nic były by jego tłumaczenia, że PHP lepiej sią nadawało.
  38. Business is business -_-"
  39. (13:13)
  40. A te wszystkie testy porównujące wydajność Javy i C++ to o kant dupy potłuc.
  41. Tam gdzie wszędzie wygrywa Java, to są tendencyjne testy ;/
  42. (13:14)
  43. Wystarczy wiedzieć co robić dobrze w Javie i czego nie robić w żadnym wypadku w C++ i już masz zajebiste wykresy wydajności Javy....
  44. Np Java praktycznie nie tworzy zmiennych na stosie.
  45. A on jest zajebiście szybki.
  46. (13:15)
  47. A C++ potrafi i masz nad tym kontrolę.
  48. Więc jeśli byś zrobił:
  49. (13:16)
  50. [C++]
  51. for(int i=0; i<100000; ++i)
  52. JakisObiekt jo;
  53. // jesli się stos nie przepełni!!
  54.  
  55. i
  56.  
  57. [Java]
  58. for(int i=0; i<100000; ++i)
  59. JakisObiekt jo = new JakisObiekt();
  60. (13:17)
  61. To powinien być znacznie szybszy C++.
  62. I nawet pomimo szybkiego operatora new Javy.
  63. A wystarczy w C++ użyć new i już chuj bombki strzelił.
  64. Arturo;Dawid;: (13:18)
  65. [Arturo] https://hg.mozilla.org/mozilla-central/file/1df37b7c3247/memory/mozalloc/mozalloc.cpp
  66. (13:19)
  67. [Arturo] 94 void*
  68.     95 moz_malloc(size_t size)
  69.     96 {
  70.     97     return malloc(size);
  71.     98 }
  72. kill3rreaper: (13:20)
  73. Ale to chyba nie w tej wersji najnowszej.
  74. Jak Dawid będzie to może on będzie pamiętał.
  75. Bo kojarzysz może
  76. Arturo;Dawid;: (13:20)
  77. [Arturo] to jest najnowsze zrodlo
  78. kill3rreaper: (13:20)
  79. że kiedyś Fx w chuj RAMu zajmował jak na tamte czasy?
  80. Arturo;Dawid;: (13:22)
  81. [Arturo] jak mozna w ogole ianczej niz malloc alokowac pamiec?
  82. (13:23)
  83. [Arturo] http://stackoverflow.com/questions/5771868/how-to-allocate-memory-space-without-using-malloc-or-new-operator
  84. (13:25)
  85. [Arturo] zawsze mozna tak: http://stackoverflow.com/questions/6326907/c-allocating-memory-using-array ;]
  86. kill3rreaper: (13:25)
  87. No ja napisałem, że nie w najnowszej wersji.
  88. Arturo;Dawid;: (13:26)
  89. [Arturo] ja sie tak naprawde nigdy nie przejmowalem tymi rzeczami
  90. [Arturo] nawet nie pamietam ktore to ejst stos a sterta
  91. [Arturo] ja po prostu lubie pisac programy
  92. (13:32)
  93. [Arturo] czytam ze GC mial byc czescia C++0x ale odpadl przed ostatecznym wydanie standardu bo byly jakies problemy
  94. (13:33)
  95. [Arturo] btw
  96. [Arturo] Qt ma wskazniki ktore same sie usuwaja jak nie ma juz nikogo kto na nie wskazuje http://doc.qt.nokia.com/4.7-snapshot/qsharedpointer.html#details
  97. kill3rreaper: (13:36)
  98. Good to know.
  99. Miałem klienta.
  100. Wracając do Fx to on zajmował na starcie w chuj RAMu, bo od razu alokował sobie ze 100MB pamięci i sam nią zarządzał - na styl wirtualnej maszyny.
  101. Arturo;Dawid;: (13:37)
  102. [Arturo] no to jak ten koles napisal
  103. kill3rreaper: (13:37)
  104. W każdym razie krótko mówiąc - używać operatora new w koniecznych rzeczach tylko.
  105. W C++. Jak się da na stosie (Obiekt o) to tak robić.
  106. (13:38)
  107. Stos to te małe szybkie. Sterta to reszta RAMu.
  108. A wiesz czemu malloc jest wolny?
  109. Arturo;Dawid;: (13:38)
  110. [Arturo] i tak zapomne ;]
  111. kill3rreaper: (13:39)
  112. Bo on nakazuje systemowi dać wskaźnik na wolną przestrzeń.
  113. A system leci po kolei po całym RAMie i szuka wolnego miejsca.
  114. Arturo;Dawid;: (13:39)
  115. [Arturo] no ale jak to zrobic nie uzywajac new ani malloc
  116. kill3rreaper: (13:39)
  117. I np jeśli alokujesz ze 100MB, to będzie szukał aż znajdzie 100MB dziurę.
  118. (13:40)
  119. No tworząc własną funkcję do tego ;P
  120. W sensie:
  121. użyć malloc x)
  122. Zaalokować z 200MB
  123. I operować tylko na tym 200MB przestrzeni
  124. samemu układając obiekty
  125. i "defragmentując ją".
  126. (13:41)
  127. Ale tak jak mówię: jak Dawid przyjdzie, to się wypowie bo nie chcę Ci herezji opowiadać ;]
  128. Bo chodzi o to, żeby za wszelką cenę unikać tego, żeby system musiał sam szukać w całym RAMie, między aplikacjami wolnej pamięci, bo to zajmuje kilkadziesiąt taktów zegara.
  129. Arturo;Dawid;: (13:42)
  130. [Arturo] od razu mi sie przypomina koles co robimy projekt w rulu
  131. [Arturo] ja nie wiem
  132. [Arturo] czy on jest taki
  133. [Arturo] czy c# jest taki chujowy
  134. [Arturo] ale w naszym projekcie
  135. kill3rreaper: (13:42)
  136. Niby mało, ale jak się tego zbierze sporo - np milion razy "new" + weźmiemy pod uwagę, że program dostaje czas procesora co kilka ns (nie wiem ile, przykład daję).
  137. Arturo;Dawid;: (13:42)
  138. [Arturo] z klas c# to uzywamy tylko String i Int
  139. kill3rreaper: (13:43)
  140. to się uzbiera..
  141. Arturo;Dawid;: (13:43)
  142. [Arturo] bo on napisal z 30 klas wlasnych od zera dow szystkiego
  143. [Arturo] wlasny garbage collector
  144. [Arturo] bo ten w c# costam costam
  145. kill3rreaper: (13:43)
  146. Hehehehhe
  147. Arturo;Dawid;: (13:43)
  148. [Arturo] wlasną klasę map
  149. kill3rreaper: (13:43)
  150. No właśnie ;P
  151. Arturo;Dawid;: (13:43)
  152. [Arturo] bo Collections.Dictionary costam costam
  153. kill3rreaper: (13:43)
  154. Dlatego napisałem na początku, że nie wiem czemu C# wyszedł ;P
  155. Jest wolniejszy od Javy xD
  156. Arturo;Dawid;: (13:44)
  157. [Arturo] w c# mi sie bardzo podoba system properites
  158. [Arturo] bo mnie emczy ciagle dawanie get i set w cpp
  159. kill3rreaper: (13:44)
  160. Zgadazam się - to naprawdę ułatwia programowanie zapewne.
  161. Ale wiesz, np jak piszesz (o zgrozo :D) w Eclipse, to Eclipse robi to za Ciebie w ułamek sekundy (no, taki dużysz ułamek, b to Java przecież .])
  162. Arturo;Dawid;: (13:45)
  163. [Arturo] wkurza mnie tez ze VS na sile formatuje moj kod
  164. [Arturo] potem sie przyzwyczajam i w QtC czekam az mi sformatuje a tu nic
  165. [Arturo] i ciagle sie lapie na tym
  166. [Arturo] ze jak mi podkresli blad
  167. [Arturo] to jak naprawie to natychmiast zniknie jak w QtC
  168. (13:46)
  169. [Arturo] ale nie, trzeba przebudowac zeby odkreslilo
  170. [Arturo] no i kuwa
  171. [Arturo] zawsze
  172. [Arturo] zawsze
  173. [Arturo] zawsze
  174. [Arturo] jak mam napisac out
  175. [Arturo] to zapomne
  176. kill3rreaper: (13:46)
  177. Hahahahha xD
  178. Arturo;Dawid;: (13:46)
  179. [Arturo] funkcja(Int a, out Int b)
  180. kill3rreaper: (13:48)
  181. No i właśnie - C# i Java praktycznie wymuszają używanie typów obiektowych zamiast tych
  182. no
  183. wbudowanych?
  184. PROSTYCH.
  185. O właśnie.
  186. Arturo;Dawid;: (13:48)
  187. [Arturo] heh
  188. [Arturo] ale VS ssie
  189. [Arturo] bo robie tak
  190. (13:49)
  191. [Arturo] interface A{
  192. public Int32 a;
  193. }
  194. [Arturo] robie zrob mi klase z tego
  195. kill3rreaper: (13:49)
  196. Bo np jak chcesz zamulić Javę czy C# to operuj w pętlach np na Integer :D
  197. zamiast na int
  198. Arturo;Dawid;: (13:49)
  199. [Arturo] to on robi
  200. public int a;
  201. [Arturo] i zawsze
  202. [Arturo] z String zrobi string
  203. [Arturo] z Int64 zrobi long
  204. [Arturo] co za chuj
  205. kill3rreaper: (13:49)
  206. O
  207. to chyba dobrze, nie? :)
  208. Arturo;Dawid;: (13:49)
  209. [Arturo] wlasnie nie
  210. kill3rreaper: (13:49)
  211. To bardzo optymalizuje kod.
  212. Arturo;Dawid;: (13:49)
  213. [Arturo] bo Piotrek, ten spec od C#
  214. kill3rreaper: (13:50)
  215. // Jeśli dobrze zrozumiałem co napisałeś.
  216. Arturo;Dawid;: (13:50)
  217. [Arturo] mowi ze mamy uzywac System.Int32 itp bo int costam costam
  218. [Arturo] a ja sie slucham bo sie nie znam i nie chce mi sie klocic
  219. [Arturo] koncze ten miesiac i spierdalam stamtad
  220. kill3rreaper: (13:54)
  221. :D
  222. Czemu?
  223. Arturo;Dawid;: (13:55)
  224. [Arturo] bo slaby ze mnie programista i nie podoba mi sie programowanie takich wielkich systemow rozproszonych
  225. kill3rreaper: (13:55)
  226. A myślisz, że mi się podoba programowanie w JEE? ;/
  227. (13:57)
  228. Grzanek napierdala takimi terminami, przechodzi kurwa do rzeczy o których generalnie jest mało w polskich książkach, no mamy czego słuchać na zajęciach i sporo roboty w domu...
  229. Tzn, ja mam - bo ja jestem ciężko kapujący.
  230. Dawid znacznie łatwiej się w tym łapie.
  231. (13:58)
  232. Zapewne zajrzył o co chodzi z Java Beans, ja niezbytnio.
  233. Arturo;Dawid;: (13:58)
  234. [Arturo] a co Wy robicie w ogole?
  235. kill3rreaper: (13:58)
  236. Caucho Resin
  237. Arturo;Dawid;: (13:59)
  238. [Arturo] z/w
  239. kill3rreaper: (13:59)
  240. Generalnie Java Enterprise Edition.
  241. (14:01)
  242. Albo co mnie wkurwia w Javie - nie wiem jak się zachowa ;/
  243. W C++ było to oczywiste, bo masz pełną kontrolę nad wskaźnikami, referencjami i zwykłymi zmiennymi i obiektami.
  244. (14:02)
  245. A tu? Przekazujesz przez parametr coś do metody i kurwa nie wiesz, no kurwa nie wiesz czy jeśli nie użyjesz operatora przypisania w środku na tym obiekcie przekazanym przez parametr czy coś się nie spierdoli.
  246. (14:03)
  247. Albo takie zagrania chamskie Javy:
  248. String s = "Chuj";
  249. To jest "boxowanie"
  250. kompilator Javy robi z tego:
  251. String s = new String("Chuj");
  252. Arturo;Dawid;: (14:52)
  253. [Arturo] btw
  254. [Arturo] woltas tez ma ochote wziac udzial w tworzeniu jakiejs gry
  255. [Arturo] wiec moglby zrobic grafe
  256. (14:53)
  257. [Arturo] a jak on rysuje kazdy wie
  258. kill3rreaper: (15:04)
  259. Dawid nie wie - nie używa fb x]
  260. (15:05)
  261. To co, MineCraft 2? ;P
  262. Arturo;Dawid;: (15:15)
  263. [Arturo] minecraft w cpp to juz mam bo przepisalem minicrafta ;]
  264. [Arturo] ale ja bym nie chcial na podstawie tego pisac
  265. [Arturo] teraz mam juz wiedze ze potgrafilbym sam prosty silniczek napisac
  266. kill3rreaper: (15:16)
  267. ;>
  268. Arturo;Dawid;: (15:16)
  269. [Arturo] takiego minecrafta 2d bym chyba dal rade napisac ;]
  270. (15:17)
  271. [Arturo] ale by trzeba samemu bo koles w javie nie dbal o wskazniki jak juz mowilem
  272. kill3rreaper: (15:17)
  273. No a jak wygląda taki silnik?
  274. Arturo;Dawid;: (15:17)
  275. [Arturo] wiec trzeba by to troche ianczej zaprojektowac ;]
  276. kill3rreaper: (15:17)
  277. Nie chcę kodu źródłowego
  278. tylko jak byś ogólny zarys miał opisać?
  279. Arturo;Dawid;: (15:18)
  280. [Arturo] tzn ? :>
  281. kill3rreaper: (15:18)
  282. No bo ja nie wiem w ogóle jak by się do tego zabrać.
  283. Jak zrobić animacje itp.
  284. (15:19)
  285. Just don't know.
  286. Arturo;Dawid;: (15:19)
  287. [Arturo] koles zrobil petle while(running) gdzie obliczal ile czasu minelo w ns od ostatniego przejscia
  288. [Arturo] na tej podstawie znal predkosc
  289. [Arturo] ograniczal ja do 100fps
  290. (15:20)
  291. [Arturo] jak puscilem bez limitu to qt mi dawal 360fs
  292. [Arturo] fps
  293. [Arturo] i teraz kazdy element mial funkcje render i tick
  294. [Arturo] i w tick byla logika
  295. [Arturo] np przesuniecie animacji o 1 krok
  296. [Arturo] a render malowal zaleznie od kroku animacji
  297. [Arturo] dlatego wlasnie myslalem nad rpg makerem
  298. (15:21)
  299. [Arturo] bo zamiast gry wolalbym zrobic silniczek
  300. [Arturo] i mozliwosc modyfikacji go za pomoca programu
  301. (15:22)
  302. [Arturo] ale dzisiaj sciagnalem sobie serious sama 3 i mam zamiar sie wyzyc ;]
  303. [Arturo] mam nadzieje ze mnie wciagnie jak poprzednie czesci
  304. (16:34)
  305. [Arturo] i back
  306. (16:51)
  307. [Arturo] wyszedl Qtc 2.5
  308. [Arturo] http://get.qt.nokia.com/qtcreator/qt-creator-win-opensource-2.5.0.exe