-
Path: news-archive.icm.edu.pl!news.icm.edu.pl!news.task.gda.pl!not-for-mail
From: zażółcony <r...@c...pl>
Newsgroups: pl.comp.programming
Subject: Re: 'abstrakcje' a zwartosc
Date: Wed, 09 May 2012 17:30:48 +0200
Organization: CI TASK http://www.task.gda.pl/
Lines: 84
Message-ID: <joe2j1$62b$1@news.task.gda.pl>
References: <jod34n$a2q$1@inews.gazeta.pl> <jod8u2$5ht$1@news.task.gda.pl>
<jodi47$f6t$1@inews.gazeta.pl> <jodmp0$99n$1@news.task.gda.pl>
<jodtte$fhj$1@inews.gazeta.pl>
NNTP-Posting-Host: efp194.internetdsl.tpnet.pl
Mime-Version: 1.0
Content-Type: text/plain; charset=ISO-8859-2; format=flowed
Content-Transfer-Encoding: 8bit
X-Trace: news.task.gda.pl 1336577441 6219 83.14.249.194 (9 May 2012 15:30:41 GMT)
X-Complaints-To: a...@n...task.gda.pl
NNTP-Posting-Date: Wed, 9 May 2012 15:30:41 +0000 (UTC)
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20120428
Thunderbird/12.0.1
In-Reply-To: <jodtte$fhj$1@inews.gazeta.pl>
Xref: news-archive.icm.edu.pl pl.comp.programming:197154
[ ukryj nagłówki ]W dniu 2012-05-09 16:10, f...@g...pl pisze:
> zażółcony<r...@c...pl> napisał(a):
>
>> W dniu 2012-05-09 12:49, f...@g...pl pisze:
>>> zażółcony<r...@c...pl> napisał(a):
>>>
>>>> W dniu 2012-05-09 08:33, prof fir pisze:
>>>>> czy ktos moze podac jakies przyklady abstrakcji ktore
>>>>> poprawiają zwiezlosc kodu w ten sposob ze przy uzyciu
>>>>> tych abstrakcji kod bylby znacznie mniejszy i czytelniejszy
>>>>> niz normalny (przyzwoity, ale bez tych wypracowanych abstrakcji)?
>>>>
>>>> Przykąłd masz w innym watku: "what up, programowanie aspektowe"
>>>>
>>> tam jest przyklad na podzial kodu (istotnie dosyc ciekawy,
>>> np na pion glowny i pion do logow plus pion do jeszcze czegostam)
>>> nie na osiaganie zwartosci przez jakies wysokopoziomowe techniki
>>>
>>> pewna techniką mogloby byc zwykle definiowanie operatorow np
>>> dla mnozen na wektorach i macierzach - ale to zastosowanie
>>> jest ograniczone, bo w praktyce nie ma tego duzo
>>>
>>> powinny byc byc moze jakies inne techniki nadawania kodu
>>> zwiezlosci przy pomocy abstrakcji ale nic mi jakos nie
>>> przychodzi do glowy
>>
>> Ale tworzenie abstrakcji wiąże się z podziałem/refactoringiem
>> kodu, tu nie ma sprzeczności.
>>
>> Tworzenie abstrakcji to identyfikacja jakiegoś powtarzalnego
>> zjawiska/konstrukcji/rozwiązania, jego nazwanie
>> i 'wyabstrahowanie' do takiej postaci, by np. jeden problem
>> rozwiązywać w jednym miejscu, a nie w tysiącu
>> (na zasadzie copy-paste lub ...). Albo by np. jedno wymaganie
>> użytkownika implementować w jednym miejscu (żeby przeciwdziałać
>> zjawisku rozpraszania implementacji wymagań, bo potem jest kłopot, kiedy
>> wymaganie się zmienia i trzeba poprawiać w wielu miejscach
>> kodu).
>>
>
> no tak z tym ze 'wydzielenie czegos do jednej funkcji i nie
> powtarzanie tego copy'n'pastem tylko wywolywanie ' vel
> 'wydzielenie czegos do jednej funkcji i zapodanie tego
> drugiej przez wskaznik' to są normalne raczej niskopoziomowe
> techniki - mi chodzi o jakies inne, wyzejpoziomowe ktore
> nie wystepuja przynajmniej w jakiejs w miare ladnej postaci
> w nizejpoziomowej wersji - slowem chodzi mi o techniki
> wysokopoziomowe (hll) ktore owocuja znacznie krotszymi kodami
> i najlepiej czytelniejszymi kodami (w hll w stosunku do c)
Imo to nie tak ...
Tworzenie abstrakcji to nie żadne czary-mary, które sprawiają,
że w jednej linijce kodu implementujesz wiele wymagań użytkownika.
Jest wiele wymagań - będzie dużo kodu. Chyba że ...
Chyba że są to wymagania 'powszechne' a nie specyficzne, zwiazane
n. z modą na to, by okienka wyglądały tak samo. Wtedy ktoś Ci
to zrobi i powie, jak masz to użyć.
Tworzenie abstrakcji to zwykłe, programistyczno-projektowe
rzemiosło. Ja sie do C nie odnoszę, bo ostatnio programowałem
w c na poważnie jakieś 11 lat temu. Ale w Javie to masz to co
podałem. Dodatkowo można dodać tyle, że np. dzięki narzędziom takim
jak Spring + całe zestawy bibliotek współpracujących
wiele spraw sprowadza się do odpowiedniego pozapinania aspektów
technicznych 'na górze', ale nic nie zwalnia z tego, że
musisz usiąść i trzaskać te metody w klasach, które robią
biznes. Możesz liczyć na "coś więcej", jak wchodzisz w jakiś
wyspecjalizowany obszar, np. jak wchodzisz w temat integracji
systemów informatycznych (budowa interfejsów międzysystemowych)
to dostajesz w ręce oparty na Javie server Mule, tzw.
szynę danych, która dostarcza od razu abstrakcje ułatwiajace
implementację typowych w takich zadaniach wzorców projektowych
- i jak wiesz o co biega, to wiele ze spraw, zamiast projektować -
możesz sobie wyklikać na diagramach. Jak jesteś bardziej
po stronie implementacji wymagań biznesowych, to być może BPEL
jest tym, o co pytasz, może drools. Pod spodem jednak
zawsze siedzi ta Java (ew. .NET). Wykorzystanie abstrakcji
polega tu na ty, że ktoś zaplanował za Ciebie szablon, w którym
z góry określił, gdzie się zaczynają i kończą transakcje biznesowe i/lub
dostarczył plik konfiguracyjny, w którym np. wymieniasz nazwy
klas/funkcji/interfejsów, które maję się odpalać transakcyjnie.
Ale ideowo jest to dokładnie to samo, co Ci pokazałem.
Musisz sam zbudować funkcje/obiekty i je powiązać zależnościami :)
Np. zależnością: "jedna wywołuje drugą".
Inaczej się nie da :)
Następne wpisy z tego wątku
- 09.05.12 19:03
- 09.05.12 19:25 Piotr Chamera
- 09.05.12 19:47
- 09.05.12 21:07 R.e.m.e.K
- 09.05.12 21:30
- 09.05.12 22:21 M.M.
- 09.05.12 22:26 t.o.
- 10.05.12 00:38 R.e.m.e.K
- 10.05.12 02:13 Andrzej Jarzabek
- 10.05.12 07:40
- 10.05.12 07:51 M.M.
- 10.05.12 10:56 zażółcony
- 10.05.12 14:57 zażółcony
- 10.05.12 15:53 AK
- 10.05.12 16:04 AK
Najnowsze wątki z tej grupy
- Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- Błąd w Sofcie Powodem Wymiany 3 Duńskich Fregat Typu Iver Huitfeldt
- Grok zaczął nadużywać wulgaryzmów i wprost obrażać niektóre znane osoby
- Can you activate BMW 48V 10Ah Li-Ion battery, connecting to CAN-USB laptop interface ?
- We Wrocławiu ruszyła Odra 5, pierwszy w Polsce komputer kwantowy z nadprzewodzącymi kubitami
- Ada-Europe - AEiC 2025 early registration deadline imminent
- John Carmack twierdzi, że gdyby gry były optymalizowane, to wystarczyły by stare kompy
- Ada-Europe Int.Conf. Reliable Software Technologies, AEiC 2025
- Linuks od wer. 6.15 przestanie wspierać procesory 486 i będzie wymagać min. Pentium
- ,,Polski przemysł jest w stanie agonalnym" - podkreślił dobitnie, wskazując na brak zamówień.
- Rewolucja w debugowaniu!!! SI analizuje zrzuty pamięci systemu M$ Windows!!!
- Brednie w wiki - hasło Dehomag
- Perfidne ataki krakerów z KRLD na skrypciarzy JS i Pajton
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
- Instytut IDEAS może zacząć działać: "Ma to być unikalny w europejskiej skali ośrodek badań nad sztuczną inteligencją."
Najnowsze wątki
- 2025-08-06 Gdynia => Konsultant wdrożeniowy (systemy controlingowe) <=
- 2025-08-06 Białystok => Inżynier oprogramowania .Net <=
- 2025-08-06 "[...] sejmowe wystąpienie posłanki Klaudii Jachiry, która zakończyła je słowami ,,Sława Ukrainie"."
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Panuje się 181 159,42 zł./mies. na posła w 2026r.
- 2025-08-05 "Chiny przekraczają w wydobyciu 4 mld ton węgla, Indie i USA ponad 1 mld, a Rosja 500 mln ton [...]"
- 2025-08-05 Czy cos fi przechodzi przez trafo separujące?
- 2025-08-05 kajaki i promile
- 2025-08-05 Re: Tesla jest bezpieczna, wczoraj spaliła się doszczętnie na Ursynowie i nikomu się nic nie stało
- 2025-08-05 Gdynia => Przedstawiciel handlowy / KAM (branża TSL) <=
- 2025-08-05 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-05 B2B i książka przychodów i rozchodów
- 2025-08-04 Re: Atak na lekarza w Oławie. Policja zatrzymała sprawcę na lotnisku Polska Agencja Prasowa 4 sierpnia 2025, 12:16 FACEBOOK X E-MAIL KOPIUJ LINK W szpitalu w Oławie 37-letni pacjent zaatakował lekarza, po tym, jak ten odmówił mu wypisania długoterminowego
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML
- 2025-08-04 Na grupie comp.os.linux.advocacy CrudeSausage twierdzi, że Micro$lop używa SI do szyfrowania formatu dok. XML