Pokaż wiadomości

Ta sekcja pozwala Ci zobaczyć wszystkie wiadomości wysłane przez tego użytkownika. Zwróć uwagę, że możesz widzieć tylko wiadomości wysłane w działach do których masz aktualnie dostęp.


Wiadomości - Krzysiek K.

Strony: 1 2 3 [4] 5 6 7 8 ... 865
46
Językoznawstwo / Odp: Języka dla początkującego
« dnia: Grudzień 21, 2015, 19:15:31 »
Cytuj
Z używaniem IDE jest podobnie. Ale to nie wszystko. Ten podlinkowany artykuł był naprawdę sensowny. Otóż chodzi o to, że masz w głowie pewną ,,przestrzeń mentalną'' takie ,,rejestry'' na których możesz operować. I to nie jest bynajmniej duża przestrzeń. A na dodatek maleje z wiekiem. Wiec jak jej nie wykorzystujesz (a IDE właśnie na to Ci pozwala -- na mentalne lenistwo) to się degraduje.
Wiem o czym mówisz. Myślę że zależy jeszcze co kodujesz, bo ja na ten limit przestrzeni mentalnej regularnie trafiam (chociaż najczęściej jak próbuję wymyślić idealne rozwiązanie zbyt dużego problemu na raz).

Cytuj
Druga sprawa jest taka, że ta przestrzeń jest skończona i mała. W związku z tym rozwiązania które tworzysz muszą się w niej mieścić -- są mniejsze, zgrabniejsze i lepiej przemyślane (to jest właśnie teza z artykułu). IDE sztucznie poszerza Ci przestrzeń w której pracujesz, co może prowadzić do zmutowanej kupy... kodu.
Wiesz, myślę że zależy to od stylu kodowania. Większość problemów jakie rzeczywiście mi tą przestrzeń mocno wykorzystują to rzeczy wysokiego poziomu: architektura, czy algorytmy. Nie mam problemu z pamiętaniem co gdzie i w którym miejscu kodu się znajduje i dla mnie IDE to raczej tylko ułatwienie niż coś bez czego nie dało by się żyć. Zwłaszcza że często IntelliSense potrafi zamulić/się wyłączyć i zdążę wpisać dany identyfikator przed jego zaproponowaniem, czy ręcznie przejść do szukanego miejsca.

Cytuj
Przykład, zachwycasz się debuggerem -- ja nie debuguję swojego kodu. Po co? Przecież napisałem ten kod. A skoro go napisałem to go znam (jest w moich ,,rejestrach'' lub jestem go w stanie ,,załadować''). Po opisie błędu, czasami stack-trace'ie lub logu wiem na czym polega błąd.
Piszemy w temacie "język dla początkującego" - a dla początkującego taki debugger to moim zdaniem świetna rzecz żeby podejrzeć jak rzeczywiście coś działa.

Co do "znam kod, więc nie debuguję" - właśnie napisałeś, że debugujesz. Dochodzenie do błędu po logach/stacku to też debugowanie. I też w ten sposób mogę powiedzieć że też rozleniwiasz swoją przestrzeń mentalną, bo niekiedy takie rzeczy to naprawdę luksus (tak, pracuję przy embedded i zdarzało mi się "debugować" mając jako wyjście kilka LEDów). :)

47
Językoznawstwo / Odp: Języka dla początkującego
« dnia: Grudzień 21, 2015, 16:24:06 »
Cytuj
W C++ też wiele błędów wykrywanych jest dopiero w momencie uruchomienia konkretnej funkcji - tak, nasze ulubione segfaulty.
Czyli co? Skoro nie jesteśmy w stanie przy kompilacji wykryć wszystkich błędów, to nie wykrywajmy żadnego?
Do poczytania: link ;)

Poza tym we w miarę nowoczesnym C++ przy vectorach i smart pointerach o segfaulta już relatywnie ciężko.
A na pewno dużo ciężej niż o zwykłą literówkę, którą Python wykryje dopiero jak już będzie za późno.

Cytuj
Nie zawsze odpala się program pod debuggerem, a w takiej sytuacji pełny stacktrace z liniami kodu ma miażdżącą przewagę nad lakonicznym "no wysypało się, pod tym adresem pamięci".
Ale jak już się wysypuje, to najczęściej dość łatwo to jest zreprodukować i pod debuggerem. Poza tym jak poważnie podchodzisz do tematu to możesz w reakcji na segfaulta zrobić dumpa i załadować go potem pod debuggerem.

Cytuj
Zapewne mówisz o Visualu - powinieneś explicite napisać, że proponujesz lock-in w produktach Micro$$oftu.
Ani trochę. Po prostu mają dobre IDE i o ile się da, osobiście wolę 99% developmentu i debugowania przeprowadzić na targecie windowsowym. Co nie znaczy że tego samego kodu nie mogę potem skompilować GCC na Androida, Blackberry, embedded czy do asm.js pod web.

Cytuj
Poza tym, IDE mają tendencję do ogłupiania programisty.
Podobne tezy można wysnuć o każdej rzeczy coś ułatwiającej lub automatyzującej - chociażby kalkulatory ogłupiają w porównaniu z liczeniem w pamięci. Dla mnie liczy się efektywność, a ćwiczenia typu wklepywanie pełnych identyfikatorów z pamięci, czy trening wyobraźni przestrzennej z użyciem terminala GDB jakoś do mnie nie przemawiają. ;)

Cytuj
Powinny być narzędziem, które jest wymienialne, a nie czymś, z czym należałoby się trwale wiązać.
Podobnie jak dobry stolarz co chwilę zmienia narzędzie z młotka na śrubokręt, nawet jeśli cały dzień ma wbijać gwoździe? ;)
Do mnie to nie przemawia. Jak trafię na lepsze narzędzie do danego zadania to zmienię. Póki co, nawet do zwykłej edycji plaintextu, nie trafiłem.

Cytuj
Tekstowy debugger Pythona, PDB, jest na tyle przyjazny, że nie odczuwam, aby GUI-wrapper był potrzebny.
Tak samo jak mi przez bardzo długi czas w zupełności wystarczał DevC++ i debug przez printf. Dopóki nie odpaliłem Visuala i mnie wgniotło, że można zupełnie inaczej.

Nie powiesz chyba, że nawet w Pythonie taki tree-view do przeglądania struktur danych nie byłby przydatny?

Cytuj
Zresztą, w Pythonie czasy iteracji zmian kodu są krótsze, bo nie trzeba rekompilować.
No nie tak do końca. Iteracje w których w Pythonie trzasnąłeś literówkę są duużo dłuższe od C++'owych.

48
Projektowanie kodu / Odp: c++ skill desing
« dnia: Grudzień 21, 2015, 15:48:01 »
Cytuj
Tylko, że w zamian proponujesz obiekt, który będzie alfą i omegą.
Nie "god object", tylko encja. To dwie zupełnie różne rzeczy.

Cytuj
Powiedz szczerze, czy ten wzorzec potem nie przysparza innych problemów?
W Quake się sprawdził, mi się sprawdził - więc nie powiem, by przysparzał.

Cytuj
Wspominałeś o serializacji - jak serializujesz wskaźnik na metodę, o którym też wspomniałeś?
Wystarczy zrobić w tablicy listę wskaźników na te metody, wyszukać i zamienić na tekst. Generowanie takich tablic dość prosto oskryptować (np. w AWK).

49
Projektowanie kodu / Odp: c++ skill desing
« dnia: Grudzień 21, 2015, 02:15:32 »
Cytuj
To jest w ogóle punkt wyjścia w OOP :)
Tyle że w tym przypadku to właśnie OOP bym poprosił o wyjście. I zamknięcie za sobą drzwi. ;)

Jak dla mnie sensowne podejścia są dwa:
- w C++ robimy jedną klasę na całość i rozszerzamy o kolejne metody/atrybuty (atrybuty będące wskaźnikami na metody też się przydają),
- w C++ piszemy system, który pozwoli zrobić OOP sensownie i/lub używamy gotowego języka skryptowego,

Bez refleksji w C++ i przy relatywnie dużym czasie kompilacji można się zajechać robiąc logikę na C++'owych klasach.

50
Językoznawstwo / Odp: Języka dla początkującego
« dnia: Grudzień 21, 2015, 02:10:31 »
Definitywnie na początek nie bierz się za Pythona. To język skryptowy, przez co wiele błędów wykrywanych jest zbyt późno (dopiero w momencie uruchomienia konkretnej funkcji). Nie wiem też czy jest do Pythona IDE z możliwościami porównywalnymi do IDE C++'owych - z podpowiadaniem składni i przede wszystkim genialnym debuggerem (np. wystarczy najechać myszą na zmienną w kodzie, by zobaczyć jej wartość).

Jeśli jednak nie jesteś fanem pisania na dość niskim poziomie, to zamiast C++ możesz zainteresować się C# - co się przyda w szczególności jeśli chcesz pisać gry w Unity, gdyż tam C# jest jednym z dostępnych języków skryptowych.

51
Cytuj
Chciałbym żebyście wypowiedzieli się na temat tej produkcji, szczerze, krytycznie i pozytywnie, co myślicie i jak to według was wygląda. Zapewne wielu z was również marzy o własnej grze, czy próbowało promować  lub wydawać już takie projekty.
Od strony wizualnej momentami cieniowanie statku wygląda nieco dziwnie, zwłaszcza jak działa nie rzucają cienia i specular odbija się na pokładzie - kompletnie się nie czuje, że działa są rzeczywiście zamocowane na statku. Dziwnie wygląda też shader metalu (działa, pokład). Za to woda świetna. Nie wiem czy nie warto by też zrezygnować z postaci ludzi. Mają nienaturalnie stalowe nerwy. Tu wojna, samoloty, wybuchy, a oni nawet nie drgną, więc bardziej moim zdaniem zaburzają realizm, niż się do niego przyczyniają.

A ogólnie to fajny projekt (chociaż akurat nie moje klimaty), więc życzę powodzenia! :)

52
Produkcja / Odp: Pisanie/generowanie dokumentu "Terms of Service"
« dnia: Grudzień 20, 2015, 18:04:42 »
Fajnie byłoby mieć generyczny generator takich dokumentów. Można powiedzieć: kompilator z języka ludzkiego na wykonywalny 'prawniczy' :)
W tym konkretnym przykładzie akurat wystarczyła by kupa checkboxów, z których każdy generuje jakiś fragment ToS.

53
Produkcja / Odp: Pisanie/generowanie dokumentu "Terms of Service"
« dnia: Grudzień 20, 2015, 11:15:50 »
Cytuj
Próbowałeś może napisać własne najkrócej jak się da, normalnym językiem?
I tak chyba będzie trzeba zrobić.

Cytuj
Jakoś nie widzę tutaj opcji z jakimś "generatorem ToS".
Skąd ten pomysł? Widziałeś takie generatory w akcji?
Przykładowo taki jest na termsfeed.com, niestety do aplikacji mobilnych z IAP itp robi się płatny.
Za to Privacy Policy u siebie mam wygenerowane już darmowo - takich generatorów jest więcej. Klikasz tylko jak bardzo chcesz sobie poczynać z użytkownikami i masz gotowe.

54
Projektowanie kodu / Odp: c++ skill desing
« dnia: Grudzień 20, 2015, 11:12:13 »
Cytuj
Więc w C++ nadal trzeba pisać serializację z palca?

Introspekcja/dostęp do metadanych w runtime/refleksja w C++ kiedy?
Też bym chciał wiedzieć. Niestety decydenci od C++ chyba już znudzili się językami imperatywnymi i zamiast robić rzeczy potrzebne robią Lispa z szablonów.

55
Produkcja / Odp: Pisanie/generowanie dokumentu "Terms of Service"
« dnia: Grudzień 20, 2015, 02:18:14 »
Pewnie już to przerabiałeś, ale nie napisałeś więc pozwolę sobie dodać 3 grosze.
Mianowicie czy sprawdzałeś jak wyglądają te dokumenty dla innych aplikacji w tym sklepie ?
Tak. Długaśne EULA napisane prawniczym językiem.

56
Projektowanie kodu / Odp: c++ skill desing
« dnia: Grudzień 20, 2015, 02:16:58 »
Cytuj
Jedna klasa na wszystkie skille to dobra opcja na start, ale jeśli będziesz miał tego dużo, to nie zaszkodzi porozbijać.
Zaszkodzi. Przy jednej klasie nie musisz się przejmować, która akurat ma być tą właściwą, łatwiej zrobić serializację (aka save game), oskryptować to później, itp. :)

57
Produkcja / Pisanie/generowanie dokumentu "Terms of Service"
« dnia: Grudzień 19, 2015, 00:23:29 »
Cóż, właśnie stoję przed zadaniem jak w temacie, gdyż formalnie potrzebuję odpowiedniego dokumentu do swojej mobilnej appki (dokument wymagany przez sklep).

Spotkaliście się z tym problemem? Macie to już za sobą? Jeśli tak, to czy macie jakieś rady jak to napisać?
Szukałem generatorów/szablonów, ale dla appek mobilnych to generalnie z tym jest słabo.

Idealne by było coś, co jednocześnie by działało jako odpowiedni ToS dla strony web, aplikacji mobilnych (z IAP) oraz w przyszłości klasycznych aplikacji i web.


Wszelkie sugestie jak podejść do tematu będą mile widziane.

58
OpenGL / Odp: deffered shading i env probes
« dnia: Grudzień 18, 2015, 20:04:23 »
Najprościej trzymać w cubemapie, albo jak nie liczysz speculara - jako współczynniki Spherical Harmonics.

59
Projekty rozpoczęte / Odp: Rozbudowanie bota do ruletki
« dnia: Grudzień 18, 2015, 20:01:25 »
O to właśnie chodzi z szejkiem - zakładam że koirat miał tu na myśli osobę o zasobach o kilka-kilkanaście rzędów większych niż kapitał kasyna.
To by musiało być naprawdę bankrutujące kasyno, albo szejk by musiał mieć kilkadziesiąt miliardów na koncie.

60
Projekty rozpoczęte / Odp: Rozbudowanie bota do ruletki
« dnia: Grudzień 18, 2015, 18:15:48 »
Cytuj
Rozumiem że nie zgadzasz się z tezą że w przypadku nie limitowanej wysokości zakładu i nieograniczonych zasobach da się wygrać dowolnie dużo ?
Przy nielimitowanych zasobach i nielimitowanych zakładach DA się wygrać dowolnie dużo. Tyle że zasoby muszą być o kilka-kilkanaście rzędów wielkości większe niż wygrana.

Strony: 1 2 3 [4] 5 6 7 8 ... 865