Blog (1)
Komentarze (6)
Recenzje (0)

Od czego zacząć programowanie?

@Grzesieq94Od czego zacząć programowanie?06.04.2011 00:24

Jeśli to czytasz to pozwól, że przejdziemy na Ty. Jestem Grzegorz, mam 17 lat i uczę się w Technikum Informatycznym. Będę tutaj przedstawiał zagadnienia związane z programowaniem jak i też takie luźne newsy, artykuły i poradniki.

Dobra, jeśli wstępik mamy za sobą to czas się wziąć do pracy. Nie zniechęcaj się widząc obszerność tego artykułu. Jest on tylko wstępem do tego co będzie potem ? …

Pytanie zawarte w tytule tego wpisu zadaje sobie wiele ludzi którzy chcą troszkę bardziej zagłębić się w działanie programów i komputera. Ba! Nawet mogę sobie dać głowę uciąć, że wszyscy o to pytają. Często też łączą to pytanie z innym: „Jakiego języka programowania warto się uczyć?”. Jeśli szukasz odpowiedzi na to drugie pytanie w tym artykule to możesz już od razu zamknąć przeglądarkę.

Dalej tu jesteś? Świetnie! No więc zacznijmy od tego drugiego pytania które nurtuje wielu z was. Jeśli myślałeś kiedyś o rozpoczęciu nauki programowania to pewnie pierwsze co zrobiłeś to zapytałeś wujka Google jakiego języka warto się uczyć. Wyświetliły Ci się pewnie linki do stron lub for na których ludzie „programiści” piszą różne zalety i wady języków programowania. Ja powiem tak. Nie zależnie od tego jakiego języka się będziesz uczył to musisz programowanie poczuć i zrozumieć, a nie bezsensownie przepisywać kod z książki za którą zapłaciłeś majątek, a nawet w połowie jej nie przeczytasz bo nie rozumiesz podstawowych zagadnień. W mojej szkole naukę rozpoczyna się od Pascala. Starego, dobrego, DOSowego Pascala. Spytasz DOSowego!?! Przecież to stary system którego nikt już dziś nie używa… Może i nikt lub prawie nikt go nie używa, ale jest on najlepszą podstawą do zrozumienia ogółu programowania. Ze swojego doświadczenia wiem, że te proste zagadnienia z programowania dzięki niemu bardzo łatwo wytłumaczyć i zrozumieć. Ostatnio z ciekawości zakupiłem książkę pt. „Ćwiczenia praktyczne c++” autorstwa Andrzeja Stasiewicza. Nie jest to na pewno książka dla początkującego, ponieważ tu nie są wytłumaczone wszystkie najmniejsze elementy języka. Niektóre rzeczy powinno się już wiedzieć, albo powinno się je wyszukiwać w Internecie. Przeczytałem tę książkę w 3 dni robiąc oczywiście pewne programy na komputerze. I co? Przecież nie znałem C++, nigdy w nim nic nie robiłem i pierwszy raz na oczy język widziałem, ale z tej książki jedyne czego nie zrozumiałem to konstruktory które odwołują się do klas które są dopiero w programowaniu obiektowym. Reszta zagadnień to tylko inaczej wyglądający kod i nic więcej! Ufff! Ale daleko wybrnąłem. No nic to teraz wróćmy się do pierwszego pytania!

Od czego zacząć programowanie? No więc najpierw wytłumaczmy co potrzebujesz do tworzenia programów. No więc musisz mieć komputer (bo bez tego raczej się nie obejdzie), trochę wiedzy i dużo kreatywności. Nie musisz się tu uczyć „na blachę” wszystkich schematów i skryptów. Wystarczy je zrozumieć. Np. sito Eratostenesa można napisać różnie, zależnie od wybranych pętli, ale o tym trochę później, przejdźmy dalej. Na komputerze musisz mieć kompilator czyli program który zamienia kod pisany na kod maszynowy / binarny. Kod pisany to taki który można odczytać i w większości składnie języków programowania opierają się o język angielski. Np. if – jeśli, return – zwróć, Begin – zacznij, break – przerwij itp. Kod binarny natomiast to taki który rozumieją maszyny i składa się on tylko z dwóch znaków 1 i 0. „Komputer to tylko kupa złomu, a my musimy ją nauczyć myśleć” i tego musimy się trzymać.

Tak w kwestii wytłumaczenia. Ten artykuł mówi o ogóle programowania i nie przedstawiam tutaj kompilatorów czy zasad typowych dla danego języka programowania. W przyszłości opublikuje też takie artykuły, ale ten taki nie jest ?

Już jesteśmy więc przygotowani sprzętowo, więc musimy zadbać o nasz mózg. Zacznijmy od tego z czego składa się program? Program składa się zazwyczaj z danych wejściowych, algorytmów i danych wyjściowych. Dane wejściowe w programie mogą być zapisane na stałe, ale to w 95% przypadkach nie ma sensu. Wyobraź sobie np. program kalkulatora w 100 wersjach. Pierwszy dodaje 1+1, drugi 1+2, trzeci 1+3 itd. Wiadomo, że lepiej jest zrobić jeden program kalkulatora do którego możemy wpisać sami te dane. Więc dane wejściowe to inaczej mówiąc te dane które użytkownik programu wpisuje do algorytmu ale nie ingerując w kod programu do którego zwykły laik nie ma dostępu. Algorytm to skrawek kodu który robi coś z danymi które otrzymał np. otrzymał a, b i h, i oblicza z nich pole trapezu. Algorytmu wysyła wynik na ekran komputera lub w inne wyznaczone miejsce i są to dane wyjściowe, które użytkownik otrzymuje bo zakończeniu wykonywania kodu.

Teraz na przykładzie. Tworzymy program do obliczenia pola trójkąta. Prosimy użytkownika aby wpisał on długości boków a i h. To są nasze dane wejściowe. Są one przesyłane do algorytmu który ze wzoru ah/2 obliczy pole trapezu. To pole trapezu jest naszą daną wyjściową.

Ogólną zasadę działania programów znamy więc zabierzmy się za ich konstruowanie. Więc jak zacząć? Po pierwsze musimy sformułować problem do rozwiązania czyli musimy się zastanowić co tak naprawdę ma robić nasz program. Później musimy problem zanalizować czyli zastanowić się jakie dane mogą być przydatne, czy które wzory matematyczne ułatwią nam zadanie. W wielu przypadkach tutaj trzeba zadawać wiele pytań bo przecież nie na wszystkim programista musi się znać np. Dostajesz w pracy zlecenie na program który ma za zadanie rozszyfrować czy wpisany związek chemiczny jest kwasem, solą, tlenkiem czy zupełnie innym typem związku chemicznego. Czysto teoretycznie załóżmy, że o tym nic nie wiesz. Więc musisz zdobyć informacje na temat jak zbudowany jest tlenek, kwas i sól, czym się wyróżniają, jak łatwo je rozpoznać itp. Zazwyczaj zadawanie takich pytań okaże się niezbędne w pracy z komputerem i to nie tylko przy programowaniu. Następnym naszym zadaniem będzie utworzenie algorytmu. Jest to chyba najcięższe i zarazem najważniejsze zadanie. Rozwinę je później lub w następnym artykule, zobaczę jak wyrobię się z czasem :D Następnie przystępujemy już do pisania programu na podstawie danego algorytmu który już stworzyliśmy. Gdy już się trochę wprawisz w pisaniu programów to nie będziesz musiał pisać na sucho schematów blokowych algorytmów, ale będziesz je tworzył przy pisaniu programu, więc jak widzisz to są podstawy i potem możesz niektóre rzeczy z którymi radzisz sobie lepiej omijać. Ostatecznym punktem opcjonalnym jest sporządzenie dokumentacji programu jeśli jest ona konieczna. Oczywiście przy tworzeniu aplikacji dla siebie omiń ten punkt bo przecież będziesz wiedział jak dany program działa ?

Co to jest algorytm? Regułkowo to: szczegółowy przepis określający rodzaj i kolejność działań niezbędnych do uzyskania wymaganych wyników na podstawie danych wejściowych. Należy podkreślić, że opracowany algorytm musi uwzględniać wszystkie możliwe przypadki jakie mogą się zdarzyć podczas obliczeń. Prościej to po prostu kawałek kodu, opisu słownego który mówi nam jak rozwiązać dany problem. Jednak regułka ma w sobie coś ważnego. „Należy podkreślić, że opracowany algorytm musi uwzględniać wszystkie możliwe przypadki jakie mogą się zdarzyć podczas obliczeń.” Tutaj trzeba uważać. Np. gdy prosisz użytkownika o wprowadzenie przedziału liczbowego z którego program ma wypisać tylko te które są liczbami parzystymi. No więc użytkownik wpisuje jako początek przedziału 10, a jako koniec 5. Program się rozsypuje. Trzeba więc zrobić pewne zabezpieczenia przed takimi sytuacjami, ale to tylko wzmianka reszta potem.

Dobra, jednak czas mnie nagli, a muszę jeszcze to przeczytać, skorygować to i tamto a potem opublikować, więc przepraszam jeśli chciałeś więcej. Będzie jutro, Ew. pojutrze :] Jeśli jednak jesteś bardzo spragniony wiedzy to poszukaj w Internecie już coś o schematach blokowych algorytmów, blokada początku i końca przedziału (pisałem o tym wcześniej) oraz poczytaj o zmiennych i ich typach w Pascalu bo na nim się będę opierał czy się komuś to podoba czy nie :P. Na dziś to koniec. Mam nadzieję, że pierwszy mój artykuł na tym blogu Cię nie rozczarował i jesteś zadowolony z czasu który poświęciłeś na jego czytanie… Pozdrawiam

Szanowna Użytkowniczko! Szanowny Użytkowniku!
×
Aby dalej móc dostarczać coraz lepsze materiały redakcyjne i udostępniać coraz lepsze usługi, potrzebujemy zgody na dopasowanie treści marketingowych do Twojego zachowania. Twoje dane są u nas bezpieczne, a zgodę możesz wycofać w każdej chwili na podstronie polityka prywatności.

Kliknij "PRZECHODZĘ DO SERWISU" lub na symbol "X" w górnym rogu tej planszy, jeżeli zgadzasz się na przetwarzanie przez Wirtualną Polskę i naszych Zaufanych Partnerów Twoich danych osobowych, zbieranych w ramach korzystania przez Ciebie z usług, portali i serwisów internetowych Wirtualnej Polski (w tym danych zapisywanych w plikach cookies) w celach marketingowych realizowanych na zlecenie naszych Zaufanych Partnerów. Jeśli nie zgadzasz się na przetwarzanie Twoich danych osobowych skorzystaj z ustawień w polityce prywatności. Zgoda jest dobrowolna i możesz ją w dowolnym momencie wycofać zmieniając ustawienia w polityce prywatności (w której znajdziesz odpowiedzi na wszystkie pytania związane z przetwarzaniem Twoich danych osobowych).

Od 25 maja 2018 roku obowiązuje Rozporządzenie Parlamentu Europejskiego i Rady (UE) 2016/679 (określane jako "RODO"). W związku z tym chcielibyśmy poinformować o przetwarzaniu Twoich danych oraz zasadach, na jakich odbywa się to po dniu 25 maja 2018 roku.

Kto będzie administratorem Twoich danych?

Administratorami Twoich danych będzie Wirtualna Polska Media Spółka Akcyjna z siedzibą w Warszawie, oraz pozostałe spółki z grupy Wirtualna Polska, jak również nasi Zaufani Partnerzy, z którymi stale współpracujemy. Szczegółowe informacje dotyczące administratorów znajdują się w polityce prywatności.

O jakich danych mówimy?

Chodzi o dane osobowe, które są zbierane w ramach korzystania przez Ciebie z naszych usług, portali i serwisów internetowych udostępnianych przez Wirtualną Polskę, w tym zapisywanych w plikach cookies, które są instalowane na naszych stronach przez Wirtualną Polskę oraz naszych Zaufanych Partnerów.

Dlaczego chcemy przetwarzać Twoje dane?

Przetwarzamy je dostarczać coraz lepsze materiały redakcyjne, dopasować ich tematykę do Twoich zainteresowań, tworzyć portale i serwisy internetowe, z których będziesz korzystać z przyjemnością, zapewniać większe bezpieczeństwo usług, udoskonalać nasze usługi i maksymalnie dopasować je do Twoich zainteresowań, pokazywać reklamy dopasowane do Twoich potrzeb. Szczegółowe informacje dotyczące celów przetwarzania Twoich danych znajdują się w polityce prywatności.

Komu możemy przekazać dane?

Twoje dane możemy przekazywać podmiotom przetwarzającym je na nasze zlecenie oraz podmiotom uprawnionym do uzyskania danych na podstawie obowiązującego prawa – oczywiście tylko, gdy wystąpią z żądaniem w oparciu o stosowną podstawę prawną.

Jakie masz prawa w stosunku do Twoich danych?

Masz prawo żądania dostępu, sprostowania, usunięcia lub ograniczenia przetwarzania danych. Możesz wycofać zgodę na przetwarzanie, zgłosić sprzeciw oraz skorzystać z innych praw wymienionych szczegółowo w polityce prywatności.

Jakie są podstawy prawne przetwarzania Twoich danych?

Podstawą prawną przetwarzania Twoich danych w celu świadczenia usług jest niezbędność do wykonania umów o ich świadczenie (tymi umowami są zazwyczaj regulaminy). Podstawą prawną przetwarzania danych w celu pomiarów statystycznych i marketingu własnego administratorów jest tzw. uzasadniony interes administratora. Przetwarzanie Twoich danych w celach marketingowych realizowanych przez Wirtualną Polskę na zlecenie Zaufanych Partnerów i bezpośrednio przez Zaufanych Partnerów będzie odbywać się na podstawie Twojej dobrowolnej zgody.