Software

1. Wstęp.

Hardware. Podpinamy do tego pojęcia wszystkie komponenty które są fizycznie realne. CPU, GPU itd. Natomiast sprzęt to nie wszystko i powoli musimy wejść w sferę Software'u. Czyli rzeczy które nie mają fizycznie bytu lecz istnieją logicznie.

2. Rozwinięcie.

Oprogramowanie - (ang. Software) - jest to zestaw instrukcji, zaimplementowanych interfejsów i zintegrowanych danych przeznaczonych dla komputera do realizacji wyznaczonych celów.

Celem takiego opgrogramowania jest przetwarzanie danych w wyznaczonym przez twórcę zakresie. Zamiast stosować takiej strasznej nazwy jak "opgrogramowanie" możemy zamiennie korzystać z terminów "program komputerowy" lub "aplikacja"

No to jak stworzyć to? W sumie nie stworzyć ale napisać. Takie programy jak zaczynając od prostych zegarów, a kończąc na rozbudowanych systemach operacyjnych piszą programiści w procesie programowania. Należy pamiętać że takie programy podlegają ochronie praw autorskich, chyba że twórca pozwoli korzystać z nich na warunkach określonej licencji.

Jakie zatem mamy rodzaje licencji? GNU jest pierwszą jaką spotykamy przy systemach Linux. Jest to wolna licencja wraz z udostępnionym kodem źródłowym. Dla nas oznacza to, że możemy z nią robić wszystko co nam się żywnie podoba i nikt nam nie zabroni. Kolejnym rodzajem jest Adware. Każdy na pewno się z tą licencją spotkał. Jest to wolne oprogramowanie, ale zawiera reklamy, które generują środki dla twórcy tego oprogramowania. Kolejną i ostatnią na dziś jest licencja "Trial" - oznacza to że dostajemy pełną wersję oprogramowania, ale jest ona ograniczona czasowo. Nie jest taka sama jak "Demo" ponieważ demo jest ograniczone zawartością, niekoniecznie czasem.

W czym napisać program? Niektórzy zapaleńcy to potrafiliby napisać jakiś program w notatniku. Jest to możliwe, ale niewygodne. Dlatego stosuje się edytory tekstu z podświetlaniem składni co daje nam większą przejrzystość.

Kolejnym ważnym aspektem pisania programów jest język programowania. Oprogramowanie może być napisane w kilku językach, nie tylko w jednym. Każdy z tych języków posiada własny zestaw narzędzi programistycznych. Takimi narzędziami mogą być oddzielne programy np. kompilatory, debuggery, interpretery, załączniki i edytory tekstu. Można je ze sobą łączyć w celu wykonania zadania.

Napisane programy należy skompilować, czyli zamienić na język rozumiany na procesor (robią to kompilatory). Taki skompilowany kod jest w postaci kodu maszynowego, który nasz procesor rozumie i wykonuje.

3. Zakończenie.

Jakość oprogramowania jest zróżnicowana jak ilość ludzi którzy piszą oprogramowanie. Software może być ładnie poukładany, czytelny i łatwy do modyfikowania lub ulepszeń, albo może być niepoukładany, łatwo można się w nim odnaleźć, a najgorsze - może nie działać. Dlatego taka rada dla przyszłych programistów - nauczcie się pisać programy, a nie udawać że się pisze.

4. Galeria.