Pokaż wyniki 1 do 1 z 1

Temat: FAQ - Jak zacząć przygodę z programowaniem?

  1. Domyślnie FAQ - Jak zacząć przygodę z programowaniem?

    3rd draft

    Ten FAQ jest przeznaczony dla osób, które chcą nauczyć się programowania. Programowanie nie polega na opanowaniu jednego języka od deski do deski, lecz na zapoznaniu się z zasadami i sposobem działania języków programowania, rozwiązywaniu logicznych problemów oraz elastycznym wykorzystywaniu potencjału środowiska programistycznego do osiągnięcia celu.

    Pamiętaj, że dobierasz narzędzia do problemu, a nie na odwrót.


    Jak zacząć przygodę z programowaniem?

    Po pierwsze - język angielski. Wszystkie dokumentacje języków programowania są napisane w języku angielskim i prędzej, czy później będziesz zmuszony do nich sięgnąć. Nie warto tracić czasu na czytanie tłumaczeń ponieważ istnieje spora szansa na to, że są tam zawarte błędy merytoryczne. Warto też wspomnieć, że języki programowania są w istocie zaprojektowane z wykorzystaniem słów, akronimów i zwrotów po angielsku, więc czytając kod, czyta się go po angielsku i wtedy nabiera on zupełnie innego znaczenia - znacznie łatwiej go zrozumieć.

    Jaki język programowania wybrać na początku?

    Python jest doskonałym punktem wyjścia dla początkującego programisty, ponieważ jest doskonale zaprojektowany, wymusza dobre praktyki programistyczne, ma doskonałą dokumentacje i solidną społeczność, kod jest czytelny. Poza tym Python ma szeroką gamę zastosowań począwszy od prostych skryptów, złożonych programów do obliczeń, poprzez zaawansowane aplikacje okienkowe, na stronach internetowych kończąc.

    Perl jest bardzo elastycznym i wydajnym językiem dostępnym chyba na wszystkich istniejących systemach operacyjnych i jest domyślnie zainstalowany we wszystkich środowiskach UNIX'owych. Perl pozwala na bardzo szybkie prototypowanie kodu i pozwala pisać kod tak czytelny lub tak nieczytelny jak tylko autor zechce. Ponadto ten sam efekt można w Perlu uzyskać na więcej niż jeden sposób a kod można pisać w sposób proceduralny, obiektowy lub mieszany - nic nie jest robione na siłę, programista ma pełnaą swobodę. Ogromnym atutem Perl'a jest doskonały zestaw gotowych modułów ktore umożliwiają szybko wykonać zadania - moduły te można znaleźć w repozytorium CPAN (ang. Comprehensive Perl Archive Network). Swoją elastyczność Perl zawdzięcza bardzo rozbudowanym wyrażeniom regularnym, które z upływem lat pojawiły się też w innych językach w postaci bibliotek PCRE (ang. Perl Compatible Regular Expression).

    Ruby to również dobry język programowania na początek.

    Od jakich języków programowania nie zaczynać?

    Poniżej przedstawione są języki programowania, które błędnie proponowane są początkującym.
    • Pascal - Przestarzały. Jest doskonałym przykładem jak nie należy projektować języków programowania. Wymusza implementację złych praktyk (goto).
    • C/C++ - Niezwykle skomplikowane i zaawansowane środowiska programowania. Doprowadzą do frustracji każdego początkującego kodera. Warto się ich nauczyć ale w drugiej kolejności - po opanowaniu podstaw.
    • Assembler, Cobol, Haskel itd - Specjalistyczne, niszowe języki programowania, które nie ułatwią nauczenia się innych języków. Mają swoje specyficzne cechy, które początkującego uczą technik stosowanych tylko i wyłącznie w danych językach.


    Jaką książkę przeczytać?

    Zabierz się za oficjalne dokumentacje lub cookbook (przewodnik oparty na przykładach napisany przez kogoś bezpośrednio związanego z tworzeniem danego języka programowania), czytaj kody źródłowe, które możesz pobrać z SourceForge lub GitHuba. Książki niosą ze sobą ryzyko, przedawnienia lub pomijania istotnych elementów środowiska programistycznego. Ale jeśli już bardzo musisz usłyszeć tytuł książki, oto lista:

    Python
    Learn Python The Hard Way - Zed Shaw
    Learn Python - Free Interactive Python Tutorial
    Video tutorial

    C
    The C Programming Language - Brian Kernighan

    C++
    Thinking in C++ - Bruce Eckel
    Symfonia C++ standard Programowanie w języku C++ orientowane obiektowo - Jerzy Grębosz

    Perl
    Programming Perl - Larry Wall

    Java
    Thinking in Java - Bruce Eckel
    Java Podstawy wydanie VIII - Cay S. Horstmann, Gary Cornell

    C#
    C# i .NET - Stephen C. Perry

    Obszerny zbiór książek

    Jak zostać dobrym programistą?

    • Pisz dużo kodu,
    • Czytaj dużo. GitHub oraz Google Code w przyjazny sposób udostępnia kody źródłowe.
    • Rozmawiaj z programistami i pytaj ich o opinie,
    • Zanim zapytasz, poszukaj w dokumentacji i na forach,
    • Dobieraj odpowiednie narzędzia do zadania a nie na odwrót,


    Z czym muszę się zapoznać w pierwszej kolejności?

    Warto przestudiować poniższe zagadnienia, aby nie odkrywać koła na nowo.

    • T-SQL - prędzej, czy później będziesz musiał zaimplementować obsługę bazy danych.
    • UML - pomaga w projektowaniu a zatem przewidywaniu i unikaniu błędów podczas procesu programowania.
    • Version Control - zarządzanie wersjami oprogramowania jest niezbędne. Korzystaj z Git SVG lub innego narzędzia.
    • Metodologie tworzenia oprogramowania - zrozum, jak wygląda proces tworzenia oprogramowania i kiedy daną metodologię się stosuje. Scrum, Agile, Spiral, Waterfall, XP itd.


    Autorzy
    • Mad_Dud,
    • Herki,
    • TQM,
    Ostatnio edytowane przez Mad_Dud : 03-03-2012 - 14:07

Zasady Postowania

  • Nie możesz zakładać nowych tematów
  • Nie możesz pisać wiadomości
  • Nie możesz dodawać załączników
  • Nie możesz edytować swoich postów
  •  
Subskrybuj