-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!newsfeed2.atman.pl!newsfeed.atman.pl!.P
OSTED!not-for-mail
From: Sebastian Biały <h...@p...onet.pl>
Newsgroups: pl.comp.programming
Subject: Re: Architektura aplikacji - powody wyłączania dll z exe
Date: Mon, 20 Nov 2017 22:53:27 +0100
Organization: ATMAN - ATM S.A.
Lines: 106
Message-ID: <ouviso$22u$1@node1.news.atman.pl>
References: <0...@g...com>
<oukn36$l7m$1@node2.news.atman.pl>
<4...@g...com>
<oun2nc$r4t$1@node2.news.atman.pl>
<8...@g...com>
NNTP-Posting-Host: 176.115.87.250
Mime-Version: 1.0
Content-Type: text/plain; charset=utf-8; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: node1.news.atman.pl 1511214809 2142 176.115.87.250 (20 Nov 2017 21:53:29
GMT)
X-Complaints-To: u...@a...pl
NNTP-Posting-Date: Mon, 20 Nov 2017 21:53:29 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101
Thunderbird/52.4.0
In-Reply-To: <8...@g...com>
Content-Language: en-US
Xref: news-archive.icm.edu.pl pl.comp.programming:211685
[ ukryj nagłówki ]On 11/20/2017 1:42 PM, Maciej Sobczak wrote:
>> Nie jesteś w stanie przeprowadzić doświadczenia, jest zbyt kosztowne.
>> Możesz liczyć jednak że exe będzie miał powiedzmy 2GB rozmiaru jesli
>> suma dllek jest rzedu 2.5GB.
> To ciekawa wartość. Bo np. o Linuksie (o jądrze, co niektórzy używają jako jakiś
znany punkt odniesienia w dyskusji o rozmiarach) mówi się, że ma ileś tam milionów
linii kodu i to jest warte ileś tam tysięcy lat pracy a po skompilowaniu jest tego
jakieś tam... megabajty.
Sprawdź to lepiej ile zajmuje jądro *plus* wszystkie moduły we
wszystkich konfiguracjach i jaki jest poziom trudności tego w porownaniu
z przeciętną aplikacją "normalną". Może się okazać że wydajnośc linikodu
na dobę jest znaczaco mniejsza niż w jakiejkolwiek innej aplikacji z
powodu specyfiki produktu.
> A tu mamy w dyskusji gigabajty. Z tego by wynikało, że tego programu
jest powiedzmy dwa rzędy wielkości więcej, niż Linuksa, czyli na oko
miliard linii kodu i milion lat pracy. Co z kolei każe poddać pod
wątpliwość, czy w ogóle taki program dało się na tej planecie napisać.
Innymi słowy przechodzisz do atakowania faktów aż wystraszone pochowają
się po norach. No więc to działa tylko w polityce. W technice można
najzwyczajniej sprawdzić rozmiar naciskając szary + w total commanderze.
> A jeśli uznamy, że się nie dało, to wniosek jest taki, że binarka jest rozdmuchana
i pewnie da się z niej coś zdjąć.
Wiadomo. Zawsze możesz sie zatrudnić w jednej z firm (a niektóre mają
oddziały w PL) i nawrzeszczeć na swojego kierownika że imbecyl i zaraz
mu pokażesz jak się pisze prawdziwy soft redukuja dllki do 5% rozmiaru
pierwotnego. To co, jesteś gotowy do pokazania światu jak sie pisze?
Zwróć jednak uwagę łaskawym okiem ze docelowy rozmiar dll nie jest
krytycznym parametrem decydującym o sprzedaży lub nie softu na rynku.
> Dla przykładu, ostatnia gigantyczna DLLka jaką widziałem
Nikt tu nie pisze o gigantycznych dllkach. Piszę natomiast o
gigantycznej liczbie dllek. Na codzien pracuje z projektem gdzie jest
ich koło setki i mają sumeryczny rozmiar 0.5GB co jest raczej
mikroskopijna wielkością w tej branży. Tak, to *jedna* aplikacja.
> , miała w sobie wpałowany jako resource jakiś odjechany jeden plik z danymi.
Ja zaś, rozumiesz, mialem taki przypadek że kiedys jak siadałem to pękło
ramię w fotelu na kółkach i przewróciłem kubek z herbata na klawiature.
Z tego wniosek że LG wszystkie klawiatury dziadowskie robi.
> Może to jest jakiś trop?
Nie. To tylko brednie.
> W każdym razie, ja nie umiałbym naklepać tyle kodu (nawet z kolegami), żeby mi się
zrobiło z tego parę GB
Więc zatrudnij się w jednej z większych firm programistycznych w okolicy
które nie trzepią gównianego outsorcingu i sam sprawdzisz w praktyce jak
doświadczenia hobbystyczne z hello world mają się nijak do praktyki.
> A jeśli mam jedną zmienną statyczną, która jest kontenerem rzeczy, które będą do
niego dodane później?
Znowu masz opcje: idziesz do kierownika projektu i nazywasz go
imbecylem, skoro nie wie że można miec jedną zmienną statyczna na całą
aplikację. Wiesz, niektóre porady są niezwykle cenne tylko w teorii.
Brakuje ci pokory przed ogromem zagadnień jakie znajdziesz w tego typu
aplikacjach. I wiele z nich nie ma związku z programowaniem ale ma na
programowanie wpływ.
>> Jeśli chcesz zobaczyć *naprawdę* duże aplikacje to zerknij na rynek EDA.
> Tak, wiem. Chyba w każdej dyskusji, jaką tu mieliśmy, miałem sobie tam zerkać. :-)
I nie zerkasz dzięki czemu zyjesz w bąblu nieświadomości że moga istnieć
aplikacje gdzie kod wynikowy ma gigabajty. Sprawdź a potem zrewiduj
swoje hobbystyczne poglądy na programowanie. Możesz zacząć od
sprawdzenia ile dllek jest w windowsie 10 po instalacji i jaki mają
rozmiar a nastepnie pomyśleć o liczbie stanów kwantowych wszechświata
potrzebnych do ich wygenerowania. Albo wrócić na ziemię.
>> Dla ilustracji: zakładając że masz 100MB kodu w dll i musisz szerować to
>> między dwa exe (bo taką masz architekturę).
> Jeśli w ogóle mam jakąś architekturę, to od razu zakładam, że jest rozproszona
Brednia. Nic nie zakaldasz bo nie ma takiego założenia. dll mają
pozwolic na współdzelenie kodu na jednej maszynie, jak coś sobie
rozpraszasz to masz do czynienia z *wyjątkiem* a nie regułą i jest to
poza ta dyskusją o przydatności dllek.
>> Dla ilustracji2: wyobraź sobie że masz aplikację edytora która tylko
>> wtedy kiedy trzeba laduje parser gramatyki Perla.
> To jest przypadek, który opisałem na samym początku dyskusji (o pluginach, które są
częścią kultury używania programu). Nie mam problemu z tym, że takie coś jest w DLL.
Natomiast nadal mam problem z tym, że takie coś może być użyte tylko raz w czasie
działania programu - i pytanie, czy program zadba o to, żeby takiego niepotrzebnego
DLLa odpiąć. Jak zadba, to fajnie.
Zakładasz że oprogramowanie pisza gimazjaliści na zlecenie? No wiec to
też prawda, ale nie dotyczy raczej aplikacji po kilka GB kodu.
> Nadal jest jeszcze opcja rozproszona, czyli parser w osobnym procesie (wtedy DLL i
tak nie jest potrzebny). Może to mieć sens, może nie mieć.
Nie rozpraszaj tak od razu wszystkiego bo ktoś może zapytać jak
kosztowna jest synchronizacja i IPC. W realnym świecie ludzie zadają
takie pytania.
> Niemniej, przykład binarki na kilka GB wzbudza u mniej więcej wątpliwości, niż mnie
przekonuje.
Wiadomo, głupie fakty znowu nie pasują do poważnych bredni.
> Obliczenia powyżej.
To nie sa obliczenia. To brednie. Istnieją aplikacje gdzie kod wynikowy
liczony jest w gigabajtach na *jedną* aplikację i machanie rękami nic
tutaj nie zmieni, to są fakty. Sugerowanie ze go źle robią jest żałosne.
Tak, nie robią go optymalnie, ale chwilowo nie znamy lepszych metod niż
ten kod jednak generować ponieważ to jest zawsze balans pomiedzy
jakoscia, szybkością, ceną itp nieistotnymi dla hobbysty parametrami...
Następne wpisy z tego wątku
- 20.11.17 23:57 fir
- 21.11.17 13:35 Maciej Sobczak
- 21.11.17 17:17 fir
- 21.11.17 22:21 Sebastian Biały
- 22.11.17 02:02 fir
- 22.11.17 07:52 M.M.
- 22.11.17 07:56 M.M.
- 22.11.17 08:05 M.M.
- 22.11.17 15:33 Maciej Sobczak
- 22.11.17 18:20 Sebastian Biały
- 22.11.17 18:45 s...@g...com
- 22.11.17 18:56 Sebastian Biały
- 22.11.17 21:09 Mateusz Bogusz
- 22.11.17 21:09 fir
- 23.11.17 11:55 Maciej Sobczak
Najnowsze wątki z tej grupy
- Popr. 14. Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- Arch. Prog. Nieuprzywilejowanych w pełnej wer. na nowej s. WWW energokod.pl
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
Najnowsze wątki
- 2025-01-19 Nowa ładowarka Moya a Twizy -)
- 2025-01-18 Power BANK z ładowaniem przelotowym robi PRZERWY
- 2025-01-18 Pomoc dla Filipa ;)
- 2025-01-18 znowu kradno i sie nie dzielo
- 2025-01-18 Zieloni oszuchiści
- 2025-01-18 Zielonka => Specjalista ds. public relations <=
- 2025-01-18 Warszawa => Frontend Developer (JS, React) <=
- 2025-01-18 Warszawa => Software .Net Developer <=
- 2025-01-18 Warszawa => Developer .NET (mid) <=
- 2025-01-18 Katowice => Administrator IT - Systemy Operacyjne i Wirtualizacja <=
- 2025-01-17 Zniknął list gończy za "Frogiem". Frog się nam odnalazł?
- 2025-01-17 Kto wytłumaczy "głupiemu" prezydentowi Dudzie wielką moc prawną "dekretu premiera" TUSKA? [(C)Korneluk (2025)]
- 2025-01-17 Warszawa => Inżynier oprogramowania .Net <=
- 2025-01-17 Natalia z Andrychowa
- 2025-01-17 Gliwice => Business Development Manager - Dział Sieci i Bezpieczeńst