UNIX to nie tylko system operacyjny, to także społeczność i kultura.
• Obszerne omówienie niezliczonych problemów związanych z programowaniem w systemie Unix • Niekonwencjonalne przedstawienie kulturotwórczych aspektów programowania • Wszechstronny opis sprawdzonych reguł i wzorców projektowych • Wnioski wypływające z historii Uniksa i jego porównanie z innymi systemami operacyjnymi • Liczne "studia przypadków" (case studies) przedstawiające komponenty systemu Unix w kontekście programistycznym • Omówienie problematyki przenośności i wieloplatformowości oprogramowania
Unix to nie tylko system operacyjny; to także kultura i tradycja. Grzechem wielu programistów są programy spełniające wprawdzie swe funkcje, lecz zaprojektowane w pośpiechu, niedbale, a przez to trudne w utrzymaniu i rozwoju, oporne przy przenoszeniu na inną platformę i (z biegiem czasu) nieczytelne nawet dla swych autorów. Na temat dobrego programowania napisano już bardzo wiele; z tej książki dowiesz się nie tylko tego, jakie rozwiązania programistyczne warto poznać i naśladować, lecz także -- dlaczego warto to robić.
Ta książka zawiera sporą dawkę wiedzy, lecz jej treść koncentruje się przede wszystkim na doświadczeniu programistycznym. Programowanie przestaje być tylko dyscypliną techniczną, a staje się zagadnieniem o charakterze kulturotwórczym. Doceniając należycie ten fakt, autor nie ogranicza się do technicznego wykładu. Prezentuje poszczególne aspekty profesjonalnego projektowania i implementacji programów w kontekście filozofii i historii Uniksa z jednej strony, a społecznymi uwarunkowaniami kultury uniksowej z drugiej.
Warto przeczytać tę książkę także z tej przyczyny, że mało który podręcznik dla programistów dostarcza tyle historii, folkloru i dygresji -- elementów co prawda niekoniecznych z punktu widzenia meritum (choć i nad tą kwestią można by długo dyskutować), lecz znakomicie uprzyjemniających lekturę i być może ułatwiających zrozumienie tego, co w "suchym", technicznym tekście może nieraz wydawać się zagadkowe.
Jeżeli więc jesteś programistą (niekoniecznie w systemie Unix) albo tylko interesują Cię zagadnienia związane z programowaniem, niniejsza książka z pewnością będzie stanowić interesującą lekturę, a być może również skłoni Cię do spojrzenia w inny sposób na swą codzienną pracę.
• Koncepcja oprogramowania open source • Zagadnienia przenośności i wieloplatformowości programów • Podstawy filozofii uniksowej • Geneza oraz historia Uniksa, Linuksa i oprogramowania open source • Zalety modularności i przezroczystości projektu • Metody optymalizacji programów • Narzędzia programistyczne: edytory, makrogeneratory, debuggery, systemy kontroli wersji, programy dokumentujące itp. • Zagadnienia związane z licencjonowaniem programów • Podstawowe cechy Uniksa w kontekście innych popularnych systemów operacyjnych • Możliwości Uniksa i stojące przed nim zagrożenia
Spis treści:
Część I Kontekst (19) Rozdział 1. Filozofia: filozofia ma znaczenie (21) Rozdział 2. Historia: opowieść o dwóch kulturach (45) Rozdział 3. Kontrasty: porównanie filozofii uniksowej z innymi (67)
Część II Projekt (93) Rozdział 4. Modularność: czystość i prostota (95) Rozdział 5. Tekstowość: dobre protokoły to dobra praktyka (115) Rozdział 6. Przezroczystość: niech stanie się światłość (141) Rozdział 7. Wieloprogramowość: wyodrębnianie procesów w celu oddzielenia funkcji (163) Rozdział 8. Minijęzyki: jak znaleźć notację, która śpiewa (189) Rozdział 9. Generacja: podwyższanie poziomu specyfikacji (217) Rozdział 10. Konfiguracja: jak zacząć od właściwej nogi (231) Rozdział 11. Interfejsy: wzorce projektowe interfejsu użytkownika w środowisku uniksowym (253) Rozdział 12. Optymalizacja (287) Rozdział 13. Złożoność: tak prosto, jak tylko można, ale nie prościej (295)
Część III Implementacja (317) Rozdział 14. Języki: w C albo nie w C? (319) Rozdział 15. Narzędzia: taktyki rozwoju (347) Rozdział 16. Ponowne wykorzystanie: nie wyważajmy otwartych drzwi (373) Rozdział 17. Przenośność: przenośność oprogramowania i utrzymywanie standardów (393) Rozdział 18. Dokumentacja: objaśnianie kodu w świecie WWW (417) Rozdział 19. Otwarte źródła: programowanie w nowej społeczności Uniksa (437) Rozdział 20. Przyszłość: zagrożenia i możliwości (461)
Dodatki (479) Dodatek A Słownik skrótów (481) Dodatek B Bibliografia (485) Dodatek C Współpracownicy (495) Dodatek D Korzeń bez korzenia: uniksowe koany Mistrza Foo (497)
UNIX. Sztuka programowania
|