Projektowanie i ewolucja C + +

09 Jan 11:37 am


Original: http://www.stroustrup.com/dne.html
Copyright: Bjarne Stroustrup

Addison-Wesley, ISBN 0-201-54330-3.

 

Oto

  •     niektóre errata do 1. i 2. wydruków.

Pytano mnie, czy D & E wymaga aktualizacji. Odpowiedź nie jest jeszcze. Z punktu widzenia konstrukcji języka, trudno cokolwiek stało się z C + + od czasu opublikowania D i E. Główne koncepcje standard (takie jak przestrzenie nazw, wyjątki, szablony, dynamiczny cast) były na miejscu, gdy pisałem D & E. D & E skupia się na kwestiach językowych, tak więc znaczny postęp w technikach bibliotecznych nie wpływa to – zwłaszcza, że ​​podstawowe decyzje projektowe językowe, które uczyniły tych zaliczek możliwe są opisane w D i E. Na przykład, byłem świadomy STL w czasie i niektóre z kluczowych technik STL projektowych przedstawiono (z punktu widzenia projektowania języka) w D i E.

Oto rozszerzony przedmowy do japońskiego przekładu “Projektowanie i ewolucja C + +” od stycznia 2005: C + + w 2005 roku.

Gdy aktualna wersja normy ustabilizowała się, może to być czas na drugą edycję, ale to będzie natomiast jeszcze. Zagadnienia projektowe językowe, podstawowe decyzje projektowe i historii nie zmieniają się zbyt często, więc D & E są bardziej up-to-date niż dniem autorskiego może wskazywać.

Back Cover tekst:

Wpisany przez Bjarne Stroustrup, twórca C + +, ta książka przedstawia ostatecznego poufnych w instrukcji do projektowania i rozwoju języka programowania C + +. Nie pomijając krytyczne szczegóły coraz ugrzęznąć w szczegóły techniczne, Stroustrup prezentuje swoje unikalne spojrzenie na decyzjach, które w kształcie C + +. Każdy programista C + + będzie korzystać z wyjaśnień Stroustrup’S “Czemu” za język.

Projektowanie i ewolucja C + + jest napisany w dobrze zorganizowanej, łatwe do odczytania stylu, który często jest pouczająca i czasami zabawny. Główne spostrzeżenia oferują początkujących logiczne “haki” na których wiszą zrozumienia szczegółów języka. Książka ta zawiera również informacje oraz szczegółowe dyskusje dotyczące kluczowych decyzji projektowych, które przyczyni się do biegłego rozumienia. Cechy:

  •     Zapewnia wgląd w cele, zasady i rzeczywistych ograniczeń, które w kształcie C + +,
  •     Opisuje decyzje projektowe dla poszczególnych funkcji językowych,
  •     Pokazuje relacje między C + +, funkcje języka i technik projektowania i programowania obsługiwanych przez C + +,
  •     Omawia projekt najnowszych funkcji językowych: szablony, wyjątki, run-time, informacje typu i przestrzenie nazw.

W tej książce, Stroustrup rozcina na decyzje podejmowane w rozwoju języka przedstawić studium przypadku w “prawdziwym obiektowego rozwoju języka” dla programisty roboczego. W ten sposób, przedstawia swoje poglądy na temat programowania i projektowania w konkretny i użyteczny sposób, który sprawia, że ​​książka ta lektura obowiązkowa dla każdego programista C + +.
Tłumaczeń, zobacz moją listę publikacji i mojej galerii okładki.
Skomentuj
Oto kilka pkt z przeglądu, D i E przez Al Stevens napisanym dla dr Dobb s Journal, sierpień 1994 (oczywiście, wybrałem z moich ulubionych kawałków tego przeglądu, ale nie mam wypaczone poczucie przeglądu pominąć wszelkie krytyki potępiający, lub w jakikolwiek sposób edytowane pkt cytuję):

Jest to ważna książka, ważny dodatek do kultury, nie tylko dla jego historycznej perspektywy, ale na spostrzeżeniu, że świadczy on w proces definiowania, rozwoju i języka specyfikacji.

Można się dowiedzieć wiele o C + +, choć nie jest to głównym celem Stroustrup jest. Wyjaśniając, dlaczego on przyjąć lub odrzucić proponowane funkcje, Stroustrup oferuje przykłady rozwiązań, które ujawniają lepsze sposoby wykorzystania C + + – sposoby możliwe dzięki podstawowej zachowania języka, sposoby, że programiści odkryli niż zaprojektowane. Często wyraża swoje własne zdziwienie ich odkrycia, co dodaje wgląd do zawiłości języka. Nawet jego twórca musi odkryć (lub mówiąc o) idiom, który stosuje się języka w podstawowych zachowań do ekspresji konkretnego rozwiązania.

Projektowanie i ewolucja C + + jest badanie struktury języka i stylistyki, ujawniając zdecydowanych filozofię Stroustrup jest o tym, jak język programowania powinien działać i co kompromisy są konieczne, aby zapewnić jego sukces. Większość krytyka C + + można podzielić na dwie kategorie, starszych konstruktów językowych, które wywodzi się z C, i statycznej (compile-time) kontrolę typu system, który puryści wyświetlić jako mniej niż obiektowy. Stroustrup Linki z obu. Po pierwsze, mógł zbudowany lepszy język zamiast lepszego C. Mógł przypisana mniejszą wagę do zgodności z C. “W C + +, jest znacznie mniejszy i czystszy język próbując wydostać się”, który mówi “będzie … były nieistotne język kult”. Po drugie, jest zobowiązana do pojęcia statyczne (w przeciwieństwie do dynamicznego) sprawdzanie typu jako bezpieczniejsze i niezbędne do utrzymania wydajności C. Bez tej gwarancji, programiści używane do wydajności z C, nie przejdą do nowego języka, niezależnie od tego, co obiecuje, że posiada.

My programiści czasami uwierzyć, że języki programowania pochodzić z jednego z dwóch miejsc: duże paradygmatu zanieczyszczających biurokracje odbijania się molochów takich jak COBOL i Ada lub niezależnych wolnych duchów, którzy w jednym jasnym świetle inspiracji, usiądź i Cobble lakoniczny, elegancki, język jak C lub C + +, aby przetrwać przez pokolenia. Ta książka opowiada inną historię, a ty się z wkładów wniesionych przez wielu współpracowników zarówno w AT & T, a później w Komitecie. Stroustrup daje kredyt gdzie jest należne i nazwy nazwy. Czy lubisz funkcję lub opłakuje absense jednego, zazwyczaj można znaleźć czyim pomysłem było, czytając tę ​​książkę. C + + jest produktem świadomości wielu uczestników przez długi okres czasu z Stroustrup jako punkt odniesienia.

Projektowanie i ewolucja C + + rozszerza zrozumienia C + +, wyjaśniając jak i dlaczego ewoluowała. Będziesz bardziej tolerancyjny niektórych jej kaprysami Po zrozumieć alternatywy. Będzie obejmować nowe funkcje po nauczyłem ich motywacje. Będziesz niecierpliwie czekać na swojego ulubionego sprzedawcę kompilatora wydać wersje, które wdrażają nowe funkcje, tak aby można je wypróbować. Jeśli piszesz kodu C + +, trzeba tę książkę.

– Al Stevens

 

Comments are closed