Numer bieżący | Społeczność | Zamówienia | Reklama | Kontakt

njobs Europe
What:
Where:
Country:
Njobs Netherlands Njobs Deutschland Njobs United Kingdom Njobs Italia Njobs France Njobs Espana Njobs Poland
Njobs Austria Njobs Denmark Njobs Belgium Njobs Czech Republic Njobs Mexico Njobs India Njobs Colombia

Android



2_python1



eSwoi



Nokia_X2








  Jedyny w Polsce magazyn o Linuksie  


Jedyny w Polsce magazyn o Linuksie

Uwaga strona serwisu zawiera pliki cookies (tzw. "ciasteczka"). Dowiedz się więcej.

========================================================

Polecamy e-wydania miesięcznika "Linux Magazine": http://linuxmagazine.pl/index.php/ewydanie

.

========================================================

W tym miesiącu w Linux Magazine

Tworzenie aplikacji

Manifest Reaktywny

W lipcu ubiegłego roku Jonas Bonér wraz z kolegami opublikowali Manifest Reaktywny. Kilka miesięcy później był on na ustach wszystkich. Wydawać by się mogło, rewolucyjna koncepcja programowania nie jest taka nowa. Termin programowanie reaktywne został ukuty jeszcze w 1985 roku przez Davida Harela i Amira Pnueli, którzy prowadzili prace akademickie w zakresie projektowania systemów, muszących stale reagować na dane wejściowe i zmiany. W kolejnych latach znaczenie określenia uległo zmianie. Obecnie aplikacja jest uznawana za reaktywną, gdy potrafi szybko reagować na dane wejściowe i zachodzące w nich zmiany. Jeśli przyjrzymy się istniejącym tekstom poświęconym programowaniu reaktywnemu, napotkamy mieszankę terminów, pojęć i implementacji. Jonas Bonér i pozostali współautorzy Manifestu chcieli zaprowadzić w tym porządek. Manifest Reaktywny definiuje popularne terminy i usprawnia współpracę społeczności programistów. Ułatwia też komunikację użytkowników z producentami. Programowanie reaktywne jest szczególnie przydatne w przypadku aplikacji interaktywnych, kontrolerów w robotyce, aplikacji webowych czy programów analizujących duże ilości danych. Jeśli program musi zwrócić odpowiedź w ciągu kilku milisekund albo operować z wysoką wydajnością na dużych ilościach danych, techniki reaktywne mogą stanowić kuszącą alternatywę. A ponieważ takie wymagania stawia dziś znaczna liczba aplikacji, nie dziwi, że coraz więcej projektów wykorzystuje tę metodę.

Pisanie aplikacji w Clojure

Clojure miał premierę w 2007 roku. Ten funkcyjny język programowania łączy składnię w stylu Lispa z implementacją maszyny wirtualnej Javy (JVM). Udostępniany na licencji Eclipse Public License jest wzbogacony o obszerny ekosystem bibliotek. W pełni korzysta z możliwości, jakie zawdzięcza swojemu pochodzeniu – może dzielić maszynę wirtualną z Javą i Jrubym, a także zachwyca współbieżnością na systemach wieloprocesorowych. Nazwa przypomina koncepcję programowania znaną jako closure (z ang. „domknięcie”) – litera „j” pochodzi od Javy. Zwolennicy Clojure wskazują na zwiększoną produktywność, jaką umożliwia ten bogaty język. Dzięki praktycznym narzędziom i zaawansowanym bibliotekom uzyskujemy podstawę do szybkiego tworzenia nowoczesnych aplikacji webowych.

Nadchodzi Java 8

Po dwóch i pół roku pracy, połowie marca firma Oracle opublikowała ósmą wersję Javy. Oprócz drobnych usprawnień biblioteki wykonawczej, długo wyczekiwane wydanie rozszerza składnię języka poprzez dodanie elementów programowania funkcjonalnego w postaci wyrażeń lambda, co stanowi pierwszą tak rewolucyjną zmianę od czasu Javy 5.

Szybkie i stabilne programy w OCamlu

Statyczne typowanie, sprawdzanie typów i niewielkie zapotrzebowanie na pamięć czynią OCamla doskonałym językiem do tworzenia aplikacji. Nacisk w języku pada na brak błędów i szybkość wykonywania. Po raz pierwszy OCaml pojawił się w 1996 roku jako Objective Caml – wersja języka Caml z rozszerzeniami obiektowymi. Dziś jest dojrzałym, stabilnym i dobrze udokumentowanym rozwiązaniem. Obsługuje zarówno funkcyjny, jak i imperatywny styl programowania, dzięki czemu stanowi dobry wybór dla programistów Pythona, C i Javy zainteresowanych tworzeniem bardziej stabilnego oprogramowania.

Nadchodzi KDE Frameworks 5

Biblioteki KDE łączą funkcje i zadania niezbędne dla aplikacji KDE. Dotychczas były rozwijane w sposób pragmatyczny i rozrastały się w miarę upływu czasu. W efekcie mają wiele zależności między sobą, a także z innymi bibliotekami. Prowadzi to do większego nakładu pracy. Projekt KDE dostarcza wszystkie biblioteki w jednym dużym pakiecie o nazwie kdelibs. Ponadto biblioteki przystosowane są do tradycyjnych aplikacji desktopowych, co utrudnia korzystanie z nich na urządzeniach mobilnych. Jedyne, co się zmieniło, to nazwa bibliotek, obecnie występujących jako KDE Platform 4. Podczas spotkania programistów Platform 11 w Randzie część programistów KDE, zmęczonych ogromną liczbą bibliotek wchodzących w skład środowiska, opracowała plan zmian w kolejnej wersji. Efektem były trwające prawie trzy lata prace rozwojowe dwudziestu programistów. Pierwszy krok do uporządkowania bibliotek to zmniejszenie liczby wzajemnych zależności. Obecnie każda biblioteka wykonuje jedno ściśle określone zadanie. Programiści mogą więc wybierać i korzystać z pojedynczych bibliotek, bez konieczności dołączania wszystkich pozostałych. Kolejny punkt na liście to osiągnięcie niezależności od platformy. Założenie programistów polegało na tym, aby biblioteki działały na pecetach z Linuksem oraz były obsługiwane przez inne urządzenia. Wydanie alfa środowiska, opublikowane w lutym, zawiera liczne nowe funkcje.

Wykrywanie ataków przy użyciu programu Tripwire IDS

Internet stwarza intruzom wiele możliwości. Komputery należące do niczego niepodejrzewających użytkowników i firm mogą stać się roznosicielami spamu, rozsyłającymi szkodliwe programy lub szpiegującymi użytkowników. Jak sprawdzić, czy mamy intruza na komputerze? Jednym ze sposobów jest użycie programu Tripwire, potężnego hostowego systemu wykrywania ataków, który po cichu monitoruje system plików i natychmiast powiadamia użytkownika o wszelkich zmianach. Narzędzie zalicza się do tych systemów IDS, które – obok wykrywających ataki w całej sieci (ang. Network-based Intrusion Detection System, NIDS) – operują w sieciach pojedynczych hostów (ang. Host-based Intrusion Detection System, HIDS). Służy do sprawdzania integralności plików. Powstało w 1992 roku, a jego twórcami są Gene Kim i dr Eugene Spafford z Uniwersytetu Purdue (Indiana w Stanach Zjednoczownych). Od 1999 roku firma Tripwire Inc. kontynuowała rozwój aplikacji pod nazwą Tripwire Enterprise. W 2002 roku rozpoczęty został projekt Tripwire Open Source, który jako podstawę wykorzystuje źródła Tripwire z 2000 roku. Według firmy Tripwire Inc. jest on odpowiedni dla małych sieci, które nie wymagają scentralizowanego zarządzania ani funkcji raportowania.

Projekt ulotki z pomocą Scribusa – wolnej aplikacji DTP

W zestawie aplikacji Linuksa znajdziemy Scribusa, wszechstronny i otwartoźródłowy program DTP, który pomoże nam tworzyć profesjonalne projekty graficzne. By się przekonać, jakie to proste, sprawdzamy, jak przygotować ulotkę z zaproszeniem na przyjęcie. Narzędzie korzysta z pomocy GIMP-a do edycji zdjęć i innych obrazów. Jeśli zamierzamy pracować z grafiką wektorową lub edytować obrazy z innych źródeł, możemy poszerzyć ten tandem o Inkscape’a. Nie potrzebujemy drogiego sprzętu ani jeszcze droższych licencji na oprogramowanie komercyjne: wymienione narzędzia znajdziemy w repozytoriach wszystkich popularnych dystrybucji, wystarczy je zainstalować za pomocą menedżera pakietów.

NixOS i konfiguracja deklaratywna

Za każdym razem aktualizacja dystrybucji Linuksa wiąże się z pewnym ryzykiem. Często pojawia się pytanie, czy wszystkie usługi będą działać po przeprowadzeniu tego procesu, czy może demon po raz kolejny zmieni format plików konfiguracyjnych, uniemożliwiając tym samym otwarcie programów? Większość dystrybucji Linuksa jest na tyle inteligentna, aby unikać nadpisywania plików konfiguracyjnych zmodyfikowanych przez użytkownika. Zwykle jednak nie istnieje żadna zdefiniowana ścieżka aktualizacji, która mogłaby zapewnić poprawne działanie zaktualizowanego systemu. Projekt Nix wykorzystuje alternatywne podejście; zasadniczo różni się od zwykłych dystrybucji Linuksa. Innowacyjna dystrybucja NixOS ułatwia testowanie i wdrażanie nowych konfiguracji – zarówno na sprzęcie, jak i w chmurze. Stan systemu nie jest ustawiany imperatywnie, ale deklaratywnieł cały system definiowany jest za jednym zamachem, a nie konfigurowany w serii niezależnych od siebie kroków, z których każdy go modyfikuje. W skład Niksa wchodzi specjalny menedżer pakietów, zbiór pakietów, dystrybucja Linuksa oraz zestaw specjalistycznych narzędzi. Instrukcje menedżera pakietów Niksa przestrzegają zasad funkcjonalnych: stan wejściowy zostaje wprowadzony do funkcji (menedżerze pakietów), a wynik stanowi nowy stan systemowy. Zmiany konfiguracyjne w NixOS są atomowe i transakcyjne, czyli wykonywane prawidłowo albo wcale. Możliwy jest powrót do poprzedniego stanu systemu oraz przetestowanie nowej konfiguracji na obecnym systemie bez konieczności ustawiania jej jako konfiguracji domyślnej. Po udanym zakończeniu transakcji Nix aktualizuje tzw. odniesienia, czyli dowiązania symboliczne, które dostarczają użytkownikowi całkowicie nowe środowisko. Poprzedni stan systemu pozostaje na komputerze, jedynie odnośniki są aktualizowane za pośrednictwem dowiązań symbolicznych. Nix zawsze buduje pakiety z kodu źródłowego w celu dostosowania ich do systemu. Ponieważ jest to jednak czasochłonne, menedżer pakietów Niksa automatycznie ładuje pakiety binarne ze strony NixOS-a, o ile istnieją. NixOS umożliwia instalowanie pakietów w osobnym obszarze przez użytkowników innych niż root. Ponadto w systemie może jednocześnie istnieć kilka wersji jednego programu lub biblioteki.

Śledzenie terminów i zadań za pomocą Calcurse’a

Narzędzia wiersza poleceń mają w środowisku Linuksa doskonałą reputację. Zużywają bardzo niewiele zasobów, są naprawdę szybkie, a praca z nimi wymaga często jedynie wciśnięcia kilku klawiszy. Dobry przykład to Calcurse, który łączy w sobie kalendarz, plan dnia i listę zadań. Aplikacji możemy używać w wierszu poleceń lub za pomocą opartego na ncurses interfejsu użytkownika. Nazwa programu łączy dwa angielskie słowa: calendar i ncurses. Autor narzędzia, Frederic Culot, stworzył je w 2004 roku, początkowo tylko na własne potrzeby. Później zostało ono wydane na wolnej licencji BSD. Obecnie jest dostępne w formie stabilnych pakietów dla kilku dystrybucji: Fedory, Debiana, Ubuntu, a także FreeBSD, NetBSD oraz OpenBSD. Obsługuje między innymi platformy i386, AMD64 oraz Sparc. Artykuł powstał w oparciu o wersje 2.9.2 oraz 3.1.2 pod Debianem i Xubuntu. Zaprojektowany jest z myślą o pojedynczych użytkownikach, a nie zespołach czy grupach roboczych. Oprócz funkcji importu i eksportu nie zawiera żadnych opcji wymiany czy synchronizacji kalendarza i terminów. Przeznaczony jest przede wszystkim dla osób, które wolą pracować przy pomocy klawiatury. Dzięki oszczędnemu korzystaniu z zasobów możemy używać narzędzia na słabszych urządzeniach. Choć zasady działania są czasem dość nietypowe, całość okazuje się bardzo wydajna. Nawet użytkownicy nieprzyzwyczajeni do obsługi programów za pomocą klawiatury z pewnością poradzą sobie z Calcurse’em.

Zabbix 2.2 - bliższy ogląd

Monitorowanie sieci nabiera coraz większego znaczenia w małych przedsiębiorstwach i sektorze SoHo. Wykrywanie problemów na wczesnym etapie pozwala zwiększyć dostępność, co z kolei przekłada się na oszczędności finansowe – niezależnie od istniejących strategii tworzenia kopii zapasowych, odzyskiwania danych i wysokiej dostępności. Zabbix to aplikacja do monitorowania rozwijana od 2001 roku i mająca wiele podobieństw z Nagiosem, który cieszy się ostatnio dużą popularnością, ale to Zabbix wciąż pozostaje najpowszechniejszy. Jego dodatkowe zalety to brak opłat, możliwość konfigurowania hostów, które mają być monitorowane bezpośrednio w interfejsie webowym, a w wersji 2.2 – także monitorowanie maszyn VMware.

Analiza logów przy użyciu programu Simple Event Correlator

SEC to niewielki napisany w Perlu program, który umożliwia analizę logów bezpieczeństwa. Prezentujemy wstęp do reguł i działań wchodzących w jego skład.

Tworzenie migawek „na żywo” za pomocą programu Virtual Machine Manager

Tworzenie migawek maszyn wirtualnych to niemal stała część codziennej pracy administratora systemu. Migawki „zamrażają” stan maszyny wirtualnej i zapisują go na dysku. Służą do różnych celów. Umożliwiają na przykład wielokrotne przywracanie pierwotnego stanu maszyny wirtualnej bez konieczności tworzenia szeregu maszyn wirtualnych. Punkt odzyskiwania wygenerowany przez migawkę zachowuje stan początkowy sprzed wprowadzenia zmian na maszynie wirtualnej. Łatwo więc zrozumieć, dlaczego programiści tak bardzo upodobali sobie korzystanie z migawek. Migawki przydają się także do łatania aplikacji lub serwerów. Administratorzy często je stosują, gdy podejrzewają, błędy w konfiguracji lub awarii komponentów sprzętowych. Ponadto migawki mogą się okazać użyteczne także w sytuacjach, gdy dochodzi do włamania lub potrzebne są dowody na potrzeby analiz kryminalistycznych. Umożliwiają ponadto tworzenie punktów kontrolnych, które pozwalają przygotować tyle migawek maszyny wirtualnej – w tym punktów przywracania – ile to konieczne. W ramach prac nad rozwojem Fedory 20 programiści włączyli do wydania interfejs graficzny z funkcją tworzenia migawek „na żywo”, którą od dawna obsługuje libvirt. Jeśli więc nie odpowiada nam praca z narzędziami wiersza poleceń, jak Virsh, od teraz mamy możliwość zatrzymania maszyny wirtualnej KVM lub Xen w VMM naciśnięciem jednego przycisku.

Rozpoznawanie mowy

Na przestrzeni lat pojawił się przynajmniej tuzin aplikacji implementujących rozpoznawanie mowy. Nawet jednak najbardziej zaawansowane projekty, jak CMU Sphinx czy Festival, są daleko w tyle za odpowiednikami komercyjnymi – głównie ze względu na brak odpowiednich zasobów. Peter Grasch, programista KDE z Austrii, postanowił zaradzić temu problemowi, zakładając w październiku 2013 roku Inicjatywę Otwartej Mowy (ang. Open Speech Initiative, OSI). Jej celem jest „zebranie zespołu programistów, którzy wprowadzą najwyższej klasy przetwarzanie mowy do świata wolnego oprogramowania”. To ambitny projekt, jednak Grasch podkreśla jego ważność. „Rozpoznawanie mowy – twierdzi – to bardzo mało używana metoda wprowadzania danych. W ostatnich latach następuje wzrost jej popularności w zastosowaniach mobilnych i uważam, że ten trend będzie się utrzymywał. Nie twierdzę, że ta metoda wprowadzania danych zastąpi inne, jest jednak wiele sytuacji, w których może znacznie uprościć życie. Wiele osób się z tym zgodzi – zwłaszcza po obejrzeniu obu części Iron Mana”.

Linux Magazine DVD

OpenMandriva LX 2014.0 Phosporus

W tym miesiącu na płycie DVD dołączonej do „Linux Magazine” znajduje się nowa odsłona systemu OpenMandriva LX 2014.0 Phosporus – innowacyjny Linux dla każdego!:

  • Sprawna obsługa UEFI
  • Łatwa i prosta instalacja
  • Zoptymalizowane jądro 3.13.11
  • Przydatne narzędzia konfiguracyjne

**********************************************

Zawartość numeru 125: Lipiec 2014

**********************************************

Za miesiąc – Interoperacyjność

Nasze sieci działają najlepiej wtedy, gdy systemy ze sobą dobrze współpracują. W przyszłym miesiącu przyjrzymy się narzędziom i technikom związanym z interoperacyjnością.

Najnowszy Linux Magazine - Numer 125: Lipiec 2014
Aktualny Numer Android User 2(11) Marzec-Kwiecień 2014
Blog firmowy Linux Magazine
Pakiety Linux & Android Magazine
Następny Linux Magazine- Numer 125: Lipiec 2014

 

In the US and Canada, Linux Magazine is known as Linux Pro Magazine.
Entire contents © 2014 [Linux New Media USA, LLC]
Linux New Media web sites:
North America: [Linux Pro Magazine]
UK/Worldwide: [Linux Magazine]
Germany: [Linux-Magazin] [LinuxUser] [EasyLinux] [Linux-Community] [Linux Technical Review]
Eastern Europe: [Linux Magazine Poland] [Linux Magazine Archive] [Darmowe Programy Poland] [Najlepsze Programy] [Blog.medialinx.pl]
International: [Linux Magazine Spanish]
[Linux Magazine Brazil] [EasyLinux Brazil]
Corporate: [Medialinx AG]