Aplikacje rozproszone i wbudowane
Tworzenie zaawansowanego oprogramowania wymaga nie tylko znajomości kilku języków programowania, a zwłaszcza dostępnych w nich bibliotek, ale także wiedzy nt.
budowy sprzętu komputerowego.
Chcąc stworzyć imponujący program, który jest rozproszony i dostępny na wielu współpracujących z sobą komputerach, niezbędna jest dogłębna znajomość sieci komputerowych.
Szczególnie istotną wiedzą z tego zakresu są protokoły sieciowe, które wykorzystuje się do przesyłania danych pomiędzy poszczególnymi programami.
Innym przykładem zaawansowanego oprogramowania są aplikacje wbudowane, które spotkać możemy nie tylko na smartfonie czy netbooku, ale także w telewizorze czy zestawie kina domowego.
Oprogramowanie to tworzone jest indywidualnie dla każdej linii sprzętu RTV.
Ważnym elementem takiego oprogramowania jest dopasowanie do posiadanych zasobów, gdyż nierzadko są one bardzo ograniczone.
Aby stworzyć program wbudowany wysokiej jakości należy dokładnie znać budowę urządzenia.