Edytujesz „Programowanie”
Z Nonsensopedii, polskiej encyklopedii humoru
Uwaga: Nie jesteś zalogowany. Jeśli wykonasz jakąkolwiek zmianę, Twój adres IP będzie widoczny publicznie. Jeśli zalogujesz się lub utworzysz konto, Twoje zmiany zostaną przypisane do konta, wraz z innymi korzyściami.
Ta edycja może zostać anulowana. Porównaj ukazane poniżej różnice między wersjami, a następnie zapisz zmiany.
Aktualna wersja | Twój tekst | ||
Linia 1: | Linia 1: | ||
⚫ | |||
[[Plik:Extreme programming in action.jpg|thumb|250px|Rasowy programista w akcji – odpowiednia odzież chroni przed rozbiciem sobie czoła o blat stołu]] |
|||
⚫ | |||
⚫ | |||
Programowanie jest sztuką. Powstający [[program]] (jaki by nie był) jest produktem ubocznym tej sztuki, więc należy się cieszyć, że w ogóle powstał. |
|||
⚫ | |||
⚫ | |||
* Zebranie wymagań klienta. |
|||
⚫ | |||
* Analiza |
|||
⚫ | |||
* Projekt |
|||
** Projektanci próbują przełożyć stworzony przez analityków [[strumień świadomości]] na język zrozumiały dla programistów. Zafascynowani teorią [[Bazy danych|baz danych]] przerabiają wstępny projekt, tak by wykorzystywał on bazy [[SQL]]owe. |
|||
* Implementacja |
|||
⚫ | ** Programiści wklepują w swoim ulubionym języku programowania kod wymyślony przez projektantów, ucząc się w międzyczasie SQLa. Empiryczne badania dowodzą, że w projekcie średniego ryzyka o średniej złożoności opóźnienie związane z dochodzeniem gdzie wskazuje który [[wskaźnik]] zajmuje średnio ''6'' tygodni. |
||
⚫ | |||
⚫ | |||
⚫ | |||
* '''Projekt''' – projektanci próbują przełożyć stworzony przez analityków [[strumień świadomości]] na język zrozumiały dla programistów. Zafascynowani technologiami [[big data]], [[uczenie maszynowe|uczenia maszynowego]] i przetwarzania chmurowego, przerabiają aplikację zarządzającą biblioteką szkolną w rozproszony system przetwarzania strumieniowego rekordów bibliotecznych o wielkiej przepustowości, sterowany centralnie przez [[sztuczna inteligencja|sztuczną inteligencję]]. |
|||
⚫ | * |
||
* '''Testowanie''' – tester przygląda się pracy ww. osób i udowadnia im dlaczego są debilami, którzy zmarnowali czas i pieniądze firmy na realizację swoich kretyńskich pomysłów. |
|||
== Zasady programowania == |
== Zasady programowania == |
||
* Pisz dużo programów, nie zwracaj uwagi na to, że one nic nie robią. |
* Pisz dużo programów, nie zwracaj uwagi na to, że one nic nie robią. |
||
* Nie liczy się funkcjonalność napisanego programu – liczy się ile linii kodu zawiera. |
* Nie liczy się funkcjonalność napisanego programu – liczy się ile linii kodu zawiera. |
||
* Jeśli nie rozumiesz kodu napisanego przez siebie, nie martw się |
* Jeśli nie rozumiesz kodu napisanego przez siebie, nie martw się inni swoich też nie rozumieją. |
||
* Normy wytwarzania oprogramowania są elementem świata wyidealizowanego. |
* Normy wytwarzania oprogramowania są elementem świata wyidealizowanego. |
||
* [[Programowanie ekstremalne]] jest podstawą świata rzeczywistego. |
* [[Programowanie ekstremalne]] jest podstawą świata rzeczywistego. |
||
* Jeżeli przeczytałeś jakieś książki [[David Parnas|Parnasa]] i nie zamierzasz pisać pracy magisterskiej z [[Inżynieria oprogramowania|inżynierii oprogramowania]] – zapomnij o nich. |
* Jeżeli przeczytałeś jakieś książki [[David Parnas|Parnasa]] i nie zamierzasz pisać już pracy magisterskiej z [[Inżynieria oprogramowania|inżynierii oprogramowania]] – zapomnij o nich. |
||
* [[Model kaskadowy wytwarzania oprogramowania]] jest mrzonką a wszelkie próby jej realizacji kończą się nieograniczonym |
* [[Model kaskadowy wytwarzania oprogramowania]] jest mrzonką a wszelkie próby jej realizacji kończą się nieograniczonym wydatkiem kosztów. |
||
* Kiedy programu napisanego przez ciebie zacznie ktoś używać, to znaczy, że gdzieś popełniłeś błąd. |
* Kiedy programu napisanego przez ciebie zacznie ktoś używać, to znaczy, że gdzieś popełniłeś błąd. |
||
* Pisz kod jak najbardziej nieczytelny – jeżeli ktoś zacznie w nim grzebać, nie doszuka się źródła błędu i nie nazwie cię głupkiem. |
* Pisz kod jak najbardziej nieczytelny – jeżeli ktoś zacznie w nim grzebać, nie doszuka się źródła błędu i nie nazwie cię głupkiem. |
||
* |
* nadawaj zmiennym dziwne nazwy typu ''XFGRRTEF___DGFF'', ''R2D2' czy ''Michal_Wisnewski''. |
||
* Jeśli twój [[język programowania]] pozwala na identyfikatory [[Unicode]], to dobrym pomysłem będzie ''gżegżółka'', zerknij też w tablice znaków dla gruzińskiego i chińskiego tradycyjnego. |
|||
* Jeśli dane są w jakiś sposób ze sobą związane, to zamiast tworzenia tablic, zastosuj zmienne o podobnych nazwach: aaaa, aaab, aaac... |
|||
* Używając makrodefinicji, zmiennych tekstowych i szablonów emuluj różne języki programowania. |
* Używając makrodefinicji, zmiennych tekstowych i szablonów emuluj różne języki programowania. |
||
* Operacje matematyczne wyrażaj w [[Odwrotna notacja polska|odwrotnej notacji polskiej]]. |
|||
* Logikę osadzaj w wyjątkach. |
|||
* Nie używaj iteracji. Rekurencja uczyni twój program bardziej zagmatwanym. |
|||
* Osadzaj język w języku. |
|||
* Korzystaj z Basha. Większość ludzi go nie rozumie, lub wydaje im się, że go rozumieją. |
|||
* Stosuj paradygmat funkcyjny i na potęgę używaj domknięć. |
|||
* Jeżeli program nie działa, zmień nazwy wszystkich zmiennych na inne, najlepiej zgodne z modną w przypadku danego języka konwencją. |
* Jeżeli program nie działa, zmień nazwy wszystkich zmiennych na inne, najlepiej zgodne z modną w przypadku danego języka konwencją. |
||
* Jeżeli dalej nie działa – skasuj wszystkie komentarze i wpisz je na nowo w innych miejscach. |
* Jeżeli dalej nie działa – skasuj wszystkie komentarze i wpisz je na nowo w innych miejscach. |
||
* Jeżeli to nie pomoże, wyłącz i włącz ponownie kompilator. |
* Jeżeli to nie pomoże, wyłącz i włącz ponownie kompilator. |
||
* Jeżeli przed rozpoczęciem kodowania sporządziłeś jakieś plany – wyrzuć je. |
* Jeżeli przed rozpoczęciem kodowania sporządziłeś jakieś plany – wyrzuć je. |
||
* |
* Jeżeli po godzinach spędzonych na analizie kodu i powtarzaniu ''przecież to jest dobrze i powinno działać!'' zastanów się i sprawdź, czy plik instalacyjny twojego kompilatora nie jest uszkodzony. Być może twój komputer stoi za blisko innego urządzenia elektrycznego, i pole magnetyczne zakłóca działanie procesora komputera, przez co twój program się zawiesza. |
||
* W ostateczności skonsultuj się z [[astrologia|astrologiem]]. |
|||
== |
==Prawdy o programach== |
||
* Pisanie kodu jest rozkoszą. Kompilacja kodu jest jak zimny prysznic. Pielęgnacja kodu jest piekłem. |
* Pisanie kodu jest rozkoszą. Kompilacja kodu jest jak zimny prysznic. Pielęgnacja kodu jest piekłem. |
||
* Pełną, spójną i poprawną dokumentację mają tylko programy bezużyteczne. |
* Pełną, spójną i poprawną dokumentację mają tylko programy bezużyteczne. |
||
* Złożoność programu rośnie do momentu przekroczenia zdolności programisty ten program konserwującego. |
* Złożoność programu rośnie do momentu przekroczenia zdolności programisty ten program konserwującego. |
||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
== Jak zacząć? == |
== Jak zacząć? == |
||
Najlepiej nie zaczynać, ponieważ grozi to zjednoczeniem się ze swoją [[komputer osobisty|maszyną]]. Zaczniesz ją kochać, pisać dla niej programy - stworzysz swój własny świat, odizolujesz się od społeczeństwa. |
|||
Najlepiej nie zaczynać. |
|||
== Zastosowania == |
== Zastosowania == |
||
Prawdziwi programiści piszą programy nie posiadające wartości użytkowej, a jedynie roztrząsające pewne problemy teoretyczne, których rozwiązanie niczemu nie służy. Interesuje ich głównie problematyka: |
|||
* Co by się stało, gdyby czterech twoich kolegów zakaziło się grypą: czy cała populacja może wyginąć? |
|||
* Rozwiązywania układów różniczkowych wysokich rzędów. |
|||
* Czy za pomocą dwóch stosów talerzy da się symulować kolejkę sklepową? |
|||
Źli programiści używają programowania aby: |
Źli programiści używają programowania aby: |
||
* Zaspamować [[YouTube]]. |
* Zaspamować [[YouTube]]. |
||
* Zaspamować twoją skrzynkę pocztową. |
* Zaspamować twoją skrzynkę pocztową. |
||
* Zaspamować twoje ulubione forum. |
|||
* Zaspamować cały Internet. |
* Zaspamować cały Internet. |
||
* Zainstalować ci programy, które robią złe rzeczy, w sposób widoczny jedynie dla [[informatyk]]a albo i niewidoczny w ogóle. |
* Zainstalować ci programy, które robią złe rzeczy, w sposób widoczny jedynie dla [[informatyk]]a albo i niewidoczny w ogóle. |
||
Linia 65: | Linia 52: | ||
Dobrzy programiści, walczący ze złymi, używają programowania aby: |
Dobrzy programiści, walczący ze złymi, używają programowania aby: |
||
* Napisać |
* Napisać program antywirusowy, który zajmie całą pamięć twojego komputera. |
||
* Napisać firewall, który zablokuje ci dostęp do internetu. |
* Napisać firewall, który zablokuje ci dostęp do internetu. |
||
⚫ | |||
== Zobacz też == |
|||
* [[język programowania]] |
|||
* [[programista]] |
|||
* [[inżynieria oprogramowania]] |
|||
* [[program]] |
|||
* [[programowanie na kartce]] |
|||
{{stopka}} |
|||
⚫ |