|
Corel FORUM
Forum użytkowników programów firmy Corel. Grafika wektorowa, rastrowa i obróbka zdjęć cyfrowych
|
Makro RGB na CMYK, 100%K, overprint |
Autor |
Wiadomość |
chezare
Pomógł: 402 razy Dołączył: 24 Gru 2010 Posty: 4551 Skąd: Grodzisk Mazowiecki
|
Wysłany: 19 Sierpień 2013, 18:42
|
|
|
Bidonik, jak taki program składa się z dziesięciu wierszy, to nie ma żadnego problemu, jak ma 10 tys. linii, to bez zachowania porządku nie da się takiego projektu opanować |
|
|
|
|
maroQ
Doradca
Pomógł: 16 razy Wiek: 40 Dołączył: 08 Lut 2011 Posty: 117 Skąd: Kalisz
|
Wysłany: 19 Sierpień 2013, 21:00 Nie do rymu, nie do taktu, wsadź szamana do kontaktu.
|
|
|
chezare napisał/a: | jak ma 10 tys. linii, to bez zachowania porządku nie da się takiego projektu opanować | Dokładnie
Poza tym stosuje się jeszcze specjalną składnię opisu funkcji i klas do generowania dokumentacji technicznej. Jak przy projekcie pracuje więcej niż jeden programista to to się przydaje. Dokumentacja jest generowana prawie automatycznie na bazie kodu źródłowego (np. javadoc) lub plików xml zapisywanych przez środowisko (np. Visual Studio), które później przy użyciu np. Doxygen można zamienić na bardzo ładną dokumentację.
Tak przykładowo mam własnie otwartą jedną z klas pewnego wielkiego makra dla Corel i tu razem z komentarzami jest 2046 linijek (takich klas jest sporo w programie). Bez komentarzy przy dziedziczeniu i rozbiciu projektu na wiele bibliotek dll trudno jest się połapać co jest do czego. Zresztą nawet posiadając komentarze ciężko jest czasem przeszukiwać kod w poszukiwaniu błędów lub zmian. W VB.NET dodano dodatkowe dyrektywny tj.:
Kod: | #Region "Opis czegoś"
'miejsce na metody i funkcje
#End Region |
Dzięki niej da się zwijać kod tzw. "plusikiem". Taka opcja zaczyna się opłacać powyżej 300 linii kodu (licząc bez komentarzy i pustych linii) w klasie.
No ale wracając do wcięć to np. w Programmers Notepad, Notepad++, Eclipse, NetBeans itp. da się ukrywać inne zbliżone rzeczy. Przykładowo w PN stosowane są linie pomocnicze które pokazują wcięcia co pozwala wizualnie ogarnąć kod. Czasem można nawet zwijać tekst wewnątrz if, for itp.
Jako ciekawostkę powiem, że istnieją konkursy w pisaniu kodu w jak najmniej czytelny sposób. Niektórzy nawet potrafią tworzyć obrazki z kodu, ale to tylko w C bo tam za pomocą odpowiednich deklaracji specjalnych typów da się robić cuda. Kiedyś zrobiłem numer na zajęciach i napisałem sobie zestaw instrukcji w pliku nagłówkowym tak by wyglądało na to, że w C działają instrukcje języka PHP. Doktorek nie rozumiał co się dzieje kiedy pokazałem mu że da się to skompilować w zwykłym przestarzałym DevC++.
Dobra. Obiecuję więcej nie pisać takich litani szczególnie, że to się ma nijak do tematu ani do VBA. |
|
|
|
|
bidon184 [Usunięty]
|
Wysłany: 19 Sierpień 2013, 21:57
|
|
|
hym,ja napisałem post ale go skasowałem,jednak,musze jeszcze raz napisać,o jakie wcięcia wam chodzi i jakie odnośniki nie będe wklejał tutaj AS bo za dużo miejsca zajmuje,ale weżcie mi powiedzcie o czym rozmawiacie,bo nie moge zatrybić,daje przykład kodu ,pierwszy jest DemonicHawk,drugi zaczynający się od wiersza Und schalten Sie den jest wykładnią moją i kolegi Kulesiak2,na tym przykładzie prosze mi wyjaśnić co to są te wcięcia daje link http://www.mylgcookie.com...ic,19926.0.html |
|
|
|
|
chezare
Pomógł: 402 razy Dołączył: 24 Gru 2010 Posty: 4551 Skąd: Grodzisk Mazowiecki
|
Wysłany: 20 Sierpień 2013, 00:23
|
|
|
Bidon, każdy program, w jakim by języku nie był napisany, to zwykły tekst, mniej lub bardziej niezrozumiały dla kogoś kto nie wie o co chodzi. Wcięcie w takim tekście jest dokładnie takim samym wcięciem jak np. na początku akapitu w książce.
W specjalizowanych edytorach to zresztą nie jedyny sposób na rozróżnianie pewnych fragmentów kodu, mogą służyć temu np. różne kolory, albo różna czcionka.
Generalnie chodzi o to, żeby lepiej było widać co jest z czym związane.
Jak masz np. jedną pętlę od do, to wcięcia oprócz wartości estetycznych nie mają ani znaczenia, ani większego sensu, ale jak tych pętli jest kilka jedna w drugiej a w każdej są jakieś instrukcje które coś robią, to fajnie jest wiedzieć co do którego fragmentu należy.
Służą do tego celu różnej głębokości wcięcia.
Chodzi o to żeby było łatwiej zrozumieć konstrukcję procedury. Oczywiście da się to zrozumieć i bez wcięć, ale będzie trudniej. To tak jak marnie złożona książka, przeczytać się da, ale czytanie zmęczy czytającego.
Oprócz tych nieszczęsnych wcięć istotnych jest wiele innych rzeczy jak np. nazwy zmiennych, stałych czy choćby nazwy funkcji czy procedur. Jak się nie przemyśli tego na początku, nie będzie konsekwentnym w przestrzeganiu założeń, to połapanie się w tym co się samemu napisało po tygodniu będzie bardzo trudne, a po roku nie będziesz wiedział zupełnie o co chodzi.
Jak procedurę nazwałeś np. Oblicz_Pole, a nie OP, to po roku będziesz wiedział do czego służy. Mało tego, powinieneś mieć to zapisane w dokumentacji, bo nie da się do końca uniknąć nazewnictwa, którego znaczenie nie uleci nam po jakimś czasie z pamięci.
Te zabawy tutaj z VBA czy choćby ten skrypt do którego link podałeś, to są naprawdę drobiazgi, w których i bez zachowania porządku da się połapać, ale poważne aplikacje to są tysiące linii kodu, dziesiątki różnych bibliotek i innych pomocniczych plików, pisanych często przez kilkunastu czy kilkudziesięciu ludzi, bez precyzyjnego planu i dyscypliny nie da się takiego projektu złożyć do, za przeproszeniem, kupy. |
|
|
|
|
|
Nie możesz pisać nowych tematów Nie możesz odpowiadać w tematach Nie możesz zmieniać swoich postów Nie możesz usuwać swoich postów Nie możesz głosować w ankietach Nie możesz załączać plików na tym forum Możesz ściągać załączniki na tym forum
|
Dodaj temat do Ulubionych Wersja do druku
|
|
|
|
|
|
Nowe zasady dotyczące cookies. Wykorzystujemy pliki cookies, aby nasz serwis lepiej spełniał Państwa oczekiwania. Można zablokować zapisywanie cookies, zmieniając ustawienia przeglądarki.
| Strona wygenerowana w 0.1 sekundy. Zapytań do SQL: 12 |
|
|