SpyderStrona domowa Spyder: https://www.spyder-ide.org/. – wieloplatformowe zintegrowane środowisko programistyczne (ang. IDE, Integrated Development Environment), udostępnione na zasadach otwartego oprogramowania (ang. open source) przeznaczone do programowania naukowego w języku Python. Środowisko Spydera również zostało napisane w języku Python. Spyder integruje w sobie wiele istotnych pakietów z naukowego zbioru pakietów Pythona, w tym: NumPyNumPy – podstawowy pakiet dla obliczeń naukowych w języku Python. Strona domowa: http://www.numpy.org/., SciPySciPy – podstawowa biblioteka obejmująca zestaw procedur i funkcji numerycznych z obszarów: interpolacji, całkowania, optymalizacji, algebry liniowej i statystyki. Strona domowa: https://www.scipy.org/scipylib/index.html., matplotlibMatplotlib – biblioteka języka Python zawierająca procedury i funkcje do kreślenia wykresów. Strona domowa: https://matplotlib.org/., pandasPandas – biblioteka języka Python przeznaczona do analizy danych. Strona domowa: https://pandas.pydata.org/index.html., IPythonIPython (ang. Interactive Python)- potężna, interakcyjna powłoka konsolowa dla języka Python. Strona domowa: http://ipython.org/., SymPySymPy – biblioteka języka Python obejmująca funkcje i procedury z zakresu matematyki i obliczeń symbolicznych. Strona domowa: https://www.sympy.org/en/index.html. oraz CythonCython – język programowania ułatwiający pisanie rozszerzeń w języku C dla Pythona. Strona domowa: https://cython.org/., które również są dostępne na zasadach otwartego oprogramowania„Spyder review”. Tech World. 2010-09-08.. Spyder jest wydawany na otwartej licencji MITLicencja MIT dla Spyder na GitHub: https://github.com/spyder-ide/spyder/blob/master/LICENSE.txt..
Spyder został opracowany w 2009 r. przez Pierre’a Rybauta. Od roku 2012 jest utrzymywany i stale ulepszany przez zespół naukowców-programistów Pythona i społeczność.
Środowisko Spyder można rozszerzać poprzez wtyczki dostarczane przez twóców Spydera lub innych programistów code.google.com., zawiera wsparcie dla interaktywnych narzędzi do inspekcji danych oraz instrumenty introspekcyjne i zapewniające jakość kodu Pythona, takie jak: PyflakesPyflakes – analizator programów źródłowych w języku Python pod kątem błędów. Strona domowa: https://github.com/PyCQA/pyflakes., PylintPylint – narzędzie wyszukujące błędy w kodzie w języku Python. Strona domowa: https://www.pylint.org/. i RopeRope – refaktoryzacyjna biblioteka języka Python. Strona domowa: https://github.com/python-rope/rope.. Spyder jest dostępny na różnych platformach systemowych: Windows, Linux, macOS, również poprzez środowiska AnacondaAnaconda – Dystrybucja i środowisko języka Python dedykowane dla naukowców tworzące spójny „ekosystem” zawierające niezbędne biblioteki i przydatne aplikacje (m.in. Spyder, glueviz, IPython, Orange Data Analytics, Visual Studio Editor, Jupyter Notebook). Strona domowa: https://www.anaconda.com/., MacPortsMacPorts – projekt FLOSS upraszczający instalację innego otwartego oprogramowania na systemach OS X i Darwin,. Strona domowa: https://www.macports.org/.,
Spyder wykorzystuje do swojego graficznego interfejsu użytkownika (ang. GUI, Graphical User Interface) bibliotekę Qt i jest zaprojektowany do korzystania z nakładek na tę bibliotekę: PyQtPyQt – nakładka na bibliotekę Qt umożliwiająca tworzenie interfejsu graficznego dla programów komputerowych pisanych w języku Python. Strona domowa: https://www.riverbankcomputing.com/software/pyqt/intro. lub PySidePySide – nakładka na bibliotekę Qt. Strona domowa: https://wiki.qt.io/PySide.„Spyder runtime dependencies”.. QtPy, cienka warstwa abstrakcji opracowana w ramach projektu Spyder, a później zaadaptowana przez wiele innych pakietów, zapewnia elastyczność korzystania z dowolnego backend-u„QtPy: Abtraction layer for PySide/PyQt4/PyQt5”..
Cechy Cechy charakterystyczne środowiska Spyder:
Edytor z podświetlaniem składni, introspekcją, uzupełnianiem kodu. Obsługa wielu konsol IPython. Możliwość przeglądania i edytowania zmiennych z poziomu graficznego interfejsu użytkownika. Okienko pomocy, które może pobierać automatycznie lub na żądanie, teksty pomocy na temat funkcji, klas i metod. Debugger połączony z IPdbIPdb – biblioteka dostarczające funkcje dostępowe do debuggera IPython. Strona domowa: https://github.com/gotcha/ipdb. w celu możliwości wykonywania programu krok po kroku. Statyczna analiza kodu obsługiwana przez Pylint. Profiler działający w czasie rzeczywistym, służący do testowania wydajności kodu. Wsparcie projektu, umożliwiające jednoczesną pracę nad wieloma pracami rozwojowymi. Wbudowany eksplorator plików do interakcji z systemem plików i zarządzania projektami. Funkcja „Znajdź w plikach”, umożliwiająca pełne wyszukiwanie za pomocą wyrażeń regularnych w wybranym zakresie. Przeglądarka pomocy online, umożliwiająca użytkownikom wyszukiwanie i przeglądanie dokumentacji Pythona i pakietów wewnątrz środowiska Spydera. Dziennik historii, rejestrujący każde polecenie użytkownika wprowadzone we wszystkich konsolach. Konsola wewnętrzna, umożliwiająca introspekcję i sterowanie własnymi operacjami Spydera.
Wtyczki Dostępne wtyczki:
Spyder-Unittest – integracja popularnych frameworków testowych Pytest, Unittest i Nose ze Spyderem. Spyder-Notebook – umożliwia przeglądanie i edycję plików notatnika Jupyter wewnątrz środowiska Spydera. Spyder-Reports – umożliwia użycie piśmiennych technik programistycznych w Pythonie. Spyder-Terminal – dodaje możliwość otwierania, sterowania i zarządzania powłokami konsolowymi wielu systemów wewnątrz środowiska Spydera. Spyder-Vim – zawiera komendy i skróty klawiszowe, które emulują edytor tekstowy Vim. Spyder-AutoPEP8 – pozwala na automatyczne formatowanie kodu programu w stylu zgodnym ze standardem PEP8PEP8 – standard stylu kodowania w języku Python:https://www.python.org/dev/peps/pep-0008/.. Spyder-Line-Profiler i Spyder-Memory-Profiler – rozszerzenie wbudowanej funkcjonalności profilowania, w tym testowania pojedynczych linii kodu i pomiaru wykorzystania pamięci.
Przypisy
Kategoria:Python Kategoria:Otwarte oprogramowanie Kategoria:Zintegrowane środowisko programistyczne