دسترسی نامحدود
برای کاربرانی که ثبت نام کرده اند
برای ارتباط با ما می توانید از طریق شماره موبایل زیر از طریق تماس و پیامک با ما در ارتباط باشید
در صورت عدم پاسخ گویی از طریق پیامک با پشتیبان در ارتباط باشید
برای کاربرانی که ثبت نام کرده اند
درصورت عدم همخوانی توضیحات با کتاب
از ساعت 7 صبح تا 10 شب
ویرایش: 2
نویسندگان: Steve McConnell
سری:
ISBN (شابک) : 9788324655717
ناشر: Helion
سال نشر: 2010
تعداد صفحات: 948
زبان: Polish
فرمت فایل : PDF (درصورت درخواست کاربر به PDF، EPUB یا AZW3 تبدیل می شود)
حجم فایل: 9 مگابایت
در صورت تبدیل فایل کتاب Kod doskonały. Jak tworzyć oprogramowanie pozbawione błędów به فرمت های PDF، EPUB، AZW3، MOBI و یا DJVU می توانید به پشتیبان اطلاع دهید تا فایل مورد نظر را تبدیل نمایند.
توجه داشته باشید کتاب کد کامل نحوه ایجاد نرم افزار بدون اشکال نسخه زبان اصلی می باشد و کتاب ترجمه شده به فارسی نمی باشد. وبسایت اینترنشنال لایبرری ارائه دهنده کتاب های زبان اصلی می باشد و هیچ گونه کتاب ترجمه شده یا نوشته شده به فارسی را ارائه نمی دهد.
Nietypowe struktury sterowania......Page 3
Spis treści......Page 7
Dla kogo jest ta książka?......Page 15
Gdzie można znaleźć podobne informacje?......Page 17
Główne zalety tego podręcznika......Page 18
Dlaczego napisałem tę książkę......Page 19
Od autora......Page 21
Podziękowania......Page 23
Listy kontrolne......Page 25
Tabele......Page 27
Rysunki......Page 29
Część I. Proces budowy oprogramowania......Page 35
1.1. Czym jest budowa oprogramowania......Page 37
1.2. Znaczenie procesu budowy oprogramowania......Page 40
Podsumowanie......Page 41
2.1. Znaczenie metafor......Page 43
2.2. Jak korzystać z metafor w programowaniu......Page 46
2.3. Popularne metafory programowania......Page 47
Więcej informacji......Page 54
Podsumowanie......Page 55
Rozdział 3. Przed programowaniem — przygotowania......Page 57
3.1. Przygotowania i ich znaczenie......Page 58
3.2. Określanie rodzaju budowanego oprogramowania......Page 65
3.3. Definicja problemu......Page 70
3.4. Określenie wymagań......Page 72
3.5. Architektura......Page 77
3.6. Ilość czasu poświęcanego na przygotowania......Page 89
Więcej informacji......Page 90
Podsumowanie......Page 93
4.1. Wybór języka programowania......Page 95
4.2. Konwencje programowania......Page 100
4.3. Twoje położenie na fali technologii......Page 101
4.4. Wybór podstawowych praktyk programowania......Page 103
Podsumowanie......Page 105
Część II. Pisanie dobrego kodu......Page 107
Rozdział 5. Projektowanie......Page 109
5.1. Podstawowe problemy projektowania......Page 110
5.2. Podstawowe pojęcia projektowania......Page 113
5.3. Heurystyki — narzędzia projektanta......Page 122
5.4. Techniki projektowania......Page 146
Więcej informacji......Page 155
Podsumowanie......Page 159
Rozdział 6. Klasy z klasą......Page 161
6.1. Abstrakcyjne typy danych......Page 162
6.2. Dobry interfejs klasy......Page 169
6.3. Problemy projektowania i implementacji......Page 179
6.4. Przesłanki dla utworzenia klasy......Page 188
6.6. Pakiety klas......Page 192
Więcej informacji......Page 194
Podsumowanie......Page 195
Rozdział 7. Procedury wysokiej jakości......Page 197
7.1. Przesłanki utworzenia procedury......Page 200
7.2. Projektowanie na poziomie procedur......Page 204
7.3. Dobra nazwa procedury......Page 207
7.4. Jak długa może być procedura?......Page 209
7.5. Jak używać parametrów procedur......Page 211
7.6. Używanie funkcji......Page 217
7.7. Makra i procedury inline......Page 218
Podsumowanie......Page 222
Rozdział 8. Programowanie defensywne......Page 223
8.1. Zabezpieczanie programu przed niewłaściwymi danymi wejściowymi......Page 224
8.2. Asercje......Page 225
8.3. Mechanizmy obsługi błędów......Page 230
8.4. Wyjątki......Page 234
8.5. Ograniczanie zasięgu szkód powodowanych przez błędy......Page 239
8.6. Kod wspomagający debugowanie......Page 241
8.7. Ilość kodu defensywnego w wersji finalnej......Page 245
8.8. Defensywne podejście do programowania defensywnego......Page 246
Więcej informacji......Page 248
Podsumowanie......Page 249
9.1. Budowanie klas i procedur krok po kroku......Page 251
9.2. Pseudokod dla zaawansowanych......Page 253
9.3. Budowanie procedur metodą PPP......Page 256
9.4. Alternatywy dla pseudokodu......Page 269
Podsumowanie......Page 270
Część III. Zmienne......Page 273
Rozdział 10. Zmienne w programie......Page 275
10.1. Podstawowa wiedza o danych......Page 276
10.2. Deklarowanie zmiennych......Page 277
10.3. Inicjalizowanie zmiennych......Page 278
10.4. Zakres......Page 282
10.5. Trwałość......Page 289
10.6. Czas wiązania......Page 290
10.7. Związek między typami danych i strukturami sterowania......Page 292
10.8. Jedno przeznaczenie każdej zmiennej......Page 293
Podsumowanie......Page 295
11.1. Wybieranie dobrej nazwy......Page 297
11.2. Nazwy a rodzaje danych......Page 303
11.3. Potęga konwencji nazw......Page 308
11.4. Nieformalne konwencje nazw......Page 310
11.5. Standardowe prefiksy......Page 317
11.6. Nazwy krótkie a czytelne......Page 319
11.7. Nazwy, których należy unikać......Page 322
Podsumowanie......Page 326
12.1. Liczby......Page 327
12.2. Liczby całkowite......Page 329
12.3. Liczby zmiennoprzecinkowe......Page 331
12.4. Znaki i ciągi znakowe......Page 333
12.5. Zmienne logiczne......Page 336
12.6. Typy wyliczeniowe......Page 338
12.7. Stałe nazwane......Page 343
12.8. Tablice......Page 345
12.9. Tworzenie własnych typów (aliasy)......Page 346
Podsumowanie......Page 353
13.1. Struktury......Page 355
13.2. Wskaźniki......Page 359
13.3. Dane globalne......Page 371
Więcej informacji......Page 380
Podsumowanie......Page 381
Część IV. Instrukcje......Page 383
14.1. Instrukcje, które wymagają określonej kolejności......Page 385
14.2. Instrukcje, których kolejność nie ma znaczenia......Page 388
Podsumowanie......Page 391
15.1. Instrukcje if......Page 393
15.2. Instrukcje case......Page 398
Podsumowanie......Page 403
16.1. Wybieranie rodzaju pętli......Page 405
16.2. Sterowanie pętlą......Page 410
16.3. Łatwe tworzenie pętli — od wewnątrz......Page 422
16.4. Pętle i tablice......Page 424
Podsumowanie......Page 426
17.1. Wiele wyjść z procedury......Page 427
17.2. Rekurencja......Page 429
17.3. Instrukcja goto......Page 434
17.4. Nietypowe struktury sterowania z perspektywy......Page 444
Więcej informacji......Page 445
Podsumowanie......Page 447
18.1. Metody oparte na tabelach — wprowadzenie......Page 449
18.2. Tabele o dostępie bezpośrednim......Page 451
18.3. Tabele o dostępie indeksowym......Page 462
18.4. Tabele o dostępie schodkowym......Page 464
Podsumowanie......Page 467
19.1. Wyrażenia logiczne......Page 469
19.2. Instrukcje złożone (bloki)......Page 480
19.3. Instrukcje puste......Page 481
19.4. Praca z głębokimi zagnieżdżeniami......Page 482
19.5. Programowanie strukturalne......Page 490
19.6. Struktury sterujące i złożoność......Page 493
Podsumowanie......Page 496
Część V. Sprawna praca z kodem......Page 497
20.1. Składowe jakości......Page 499
20.2. Metody podwyższania jakości......Page 502
20.3. Skuteczność metod podwyższania jakości......Page 505
20.5. Ogólna Zasada Jakości Oprogramowania......Page 509
Podsumowanie......Page 512
Rozdział 21. Programowanie zespołowe......Page 513
21.1. Przegląd metod programowania zespołowego......Page 514
21.2. Programowanie w parach......Page 517
21.3. Formalne inspekcje......Page 519
21.4. Inne metody programowania zespołowego......Page 526
Porównanie metod pracy zespołowej......Page 530
Więcej informacji......Page 531
Podsumowanie......Page 532
Rozdział 22. Testowanie......Page 533
22.1. Rola testów programisty......Page 534
22.2. Zalecane podejście do testów programisty......Page 537
22.3. Praktyczne techniki testowania......Page 539
22.4. Typowe błędy......Page 550
22.5. Narzędzia wspomagające testowanie......Page 556
22.6. Usprawnianie testów......Page 561
22.7. Gromadzenie informacji o testach......Page 563
Więcej informacji......Page 564
Podsumowanie......Page 567
23.1. Wprowadzenie......Page 569
23.2. Wyszukiwanie defektu......Page 574
23.3. Usuwanie defektu......Page 585
23.4. Debugowanie a psychologia......Page 588
23.5. Narzędzia debugowania — oczywiste i mniej oczywiste......Page 591
Więcej informacji......Page 595
Podsumowanie......Page 596
Rozdział 24. Refaktoryzacja......Page 597
24.1. Ewolucja oprogramowania i jej odmiany......Page 598
24.2. Refaktoryzacje — wprowadzenie......Page 599
24.3. Wybrane refaktoryzacje......Page 605
24.4. Bezpieczne przekształcanie kodu......Page 613
24.5. Strategie refaktoryzacji......Page 615
Więcej informacji......Page 618
Podsumowanie......Page 619
Rozdział 25. Strategie optymalizacji kodu......Page 621
25.1. Wydajność kodu......Page 622
25.2. Optymalizowanie kodu......Page 625
25.3. Rodzaje otyłości i lenistwa......Page 632
25.4. Pomiary......Page 637
25.5. Iterowanie......Page 639
25.6. Strategie optymalizacji kodu — podsumowanie......Page 640
Więcej informacji......Page 641
Podsumowanie......Page 642
Rozdział 26. Metody optymalizacji kodu......Page 645
26.1. Struktury logiczne......Page 646
26.2. Pętle......Page 651
26.3. Przekształcenia danych......Page 660
26.4. Wyrażenia......Page 665
26.5. Procedury......Page 674
26.6. Reimplementacja w języku niskiego poziomu......Page 675
26.7. Im bardziej świat się zmienia, tym więcej zostaje bez zmian......Page 677
Więcej informacji......Page 679
Podsumowanie......Page 680
Część VI. Środowisko programowania......Page 681
Rozdział 27. Jak rozmiar programu wpływa na jego budowę......Page 683
27.2. Skala rozmiarów projektów......Page 684
27.3. Wpływ wielkości projektu na liczbę błędów......Page 685
27.5. Wpływ wielkości projektu na wykonywaną pracę......Page 687
Więcej informacji......Page 692
Podsumowanie......Page 693
Rozdział 28. Zarządzanie w programowaniu......Page 695
28.1. Zachęcanie do budowy dobrego kodu......Page 696
28.2. Zarządzanie konfiguracją......Page 698
28.3. Budowanie harmonogramu......Page 705
28.4. Pomiary......Page 712
28.5. Ludzkie traktowanie programistów......Page 715
28.6. Współpraca z przełożonymi......Page 721
Podsumowanie......Page 722
29.1. Znaczenie metod integracji......Page 725
29.2. Częstość integracji — końcowa czy przyrostowa?......Page 727
29.3. Przyrostowe strategie integracji......Page 730
29.4. Codzienna kompilacja i test dymowy......Page 738
Podsumowanie......Page 744
Rozdział 30. Narzędzia programowania......Page 747
30.2. Narzędzia do pracy z kodem źródłowym......Page 748
30.3. Narzędzia do pracy z kodem wykonywalnym......Page 754
30.4. Środowiska narzędzi programowania......Page 758
30.5. Budowanie własnych narzędzi......Page 759
30.6. Narzędzia przyszłości......Page 761
Więcej informacji......Page 762
Podsumowanie......Page 763
Część VII. Rzemiosło programisty......Page 765
Rozdział 31. Układ i styl......Page 767
31.1. Wprowadzenie......Page 768
31.2. Techniki formatowania......Page 774
31.3. Style formatowania......Page 776
31.4. Formatowanie struktur sterujących......Page 782
31.5. Formatowanie instrukcji......Page 789
31.6. Formatowanie komentarzy......Page 800
31.7. Formatowanie procedur......Page 802
31.8. Formatowanie klas......Page 804
Więcej informacji......Page 810
Podsumowanie......Page 811
32.1. Zewnętrzna dokumentacja programu......Page 813
32.2. Styl programowania jako dokumentacja......Page 814
32.3. Komentować czy nie komentować......Page 817
32.4. Zasady pisania dobrych komentarzy......Page 821
32.5. Metody pisania komentarzy......Page 828
32.6. Normy IEEE......Page 849
Więcej informacji......Page 851
Podsumowanie......Page 853
Rozdział 33. Cechy charakteru......Page 855
33.1. Czy osobowość jest bez znaczenia?......Page 856
33.2. Inteligencja i skromność......Page 857
33.3. Ciekawość......Page 858
33.4. Uczciwość intelektualna......Page 862
33.6. Kreatywność i dyscyplina......Page 865
33.7. Lenistwo......Page 866
33.8. Cechy, które znaczą mniej, niż myślisz......Page 867
33.9. Nawyki......Page 869
Więcej informacji......Page 870
Podsumowanie......Page 871
34.1. Walka ze złożonością......Page 873
34.2. Wybierz swój proces......Page 875
34.3. Pisz programy dla ludzi, nie tylko dla komputerów......Page 877
34.4. Programuj do języka, a nie w nim......Page 879
34.5. Konwencje jako pomoc w koncentracji uwagi......Page 880
34.6. Programowanie w kategoriach dziedziny problemu......Page 881
34.7. Uwaga, spadające odłamki!......Page 884
34.8. Iteruj, iteruj i jeszcze raz iteruj......Page 886
34.9. Nie będziesz łączył religii z programowaniem......Page 887
Podsumowanie......Page 890
35. Gdzie znaleźć więcej informacji......Page 891
35.1. Programowanie......Page 892
35.2. Szersze spojrzenie na budowę oprogramowania......Page 893
35.3. Periodyki......Page 895
35.4. Plan czytelniczy programisty......Page 896
35.5. Stowarzyszenia zawodowe......Page 898
Bibliografia......Page 899
Skorowidz......Page 919
Steve McConnell......Page 947