4. IDE - Integrated Development Environment

4.1. What is IDE?

  • Refactoring

  • Syntax helping and highlighting

  • Type hinting and checking

  • VCS support

  • Virtualenv support

  • Debugging

  • Spell checking

  • Running code and inspections

  • File Scopes and views

  • Database explorer

  • Support for testing (doctest, unittest)

  • Jump to line in exceptions

4.2. How to choose?

  • Nie ma znaczenia z jakiego IDE skorzystasz!

  • Do edycji skryptów Pythona wystarczy sam Notatnik lub Jupyter

  • W miarę rośnięcia złożoności projektu oraz ilości plików przyda nam się coś co ułatwi nam pracę

  • Dobre IDE pomoże Ci w Refactoringu, podpowiedziach typów, debuggingu oraz pracy z systemem kontroli wersji

  • PyCharm ma dwie wersję płatną oraz darmową, wersja darmowa w zupełności nam wystarczy

  • Ciekawą alternatywą może być PyDev - plugin do środowiska Eclipse

4.3. Which one is the best?

4.3.1. Open Source

  1. PyCharm Community

  2. PyDev

  3. Spyder

  4. Atom

  5. Jupyter Notebook

  6. Rodeo

4.3.2. Not-free

  1. PyCharm Professional

  2. Visual Studio Code

4.4. PyCharm

4.4.1. Keyboard shortcuts

Table 5. Keyboard shortcuts

Key Combination

Action

ctrl + /

Comment multiple lines

alt + F12

Open Terminal

shift + F6

Refactor... Rename

tab

Indent (also used on multiple lines)

shift + tab

Un-indent (also used on multiple lines)

alt + 1

Show file drawer

Run

Show console

Actions

ctrl + g

Jump to line

ctrl + f

Search in file

ctrl + r

Replace in file

4.5. Assignments

4.5.1. Create Project in Pure Python

  • Lines of code to write: 0 lines

  • Estimated time of completion: 2 min

  1. Stwórz projekt w Twoim IDE

  2. Wybierz "Pure Python" (opcja dostępna tylko w Pycharm Professional)

  3. Rozwiń listę Project Interpreter i ustaw aby korzystać z "Virtualenv"

  4. WAŻNE: Upewnij się, że masz Python 3.7 lub nowszy

  5. Po stworzeniu projektu, załóż katalog o nazwie jak twoje nazwisko i imie nazwisko_imie

  6. WAŻNE: Już do końca książki w nim będą tworzone rozwiązania do wszystkich zadań

4.5.2. Create Project from GIT

  • Lines of code to write: 0 lines

  • Estimated time of completion: 2 min

  1. Stwórz projekt w Twoim IDE

  2. Wykorzystaj opcję 'Create from VCS'

  3. WAŻNE: Upewnij się, że masz Python 3.7 lub nowszy

  4. Stwórz plik .gitignore

  5. Wpisz linię .idea/ do pliku

  6. Po stworzeniu projektu, załóż katalog o nazwie jak twoje nazwisko i imie nazwisko_imie

  7. WAŻNE: Już do końca książki w nim będą tworzone rozwiązania do wszystkich zadań

4.5.3. Check Python Version

  1. Stwórz skrypt o nazwie python_version.py (nazwa skryptu będzie zawsze wpisana w sekcji "About")

  2. Plik ma mieć zawartość:

    import sys
    
    print(sys.version)
    
  3. Uruchom go w swoim IDE (menu Run -> Run... -> nazwa Twojego skryptu)

  4. Jaka wersja Python jest zainstalowana?

The whys and wherefores
  • Czy Python działa

  • Jaka jest wersja Python

  • Korzystanie z print

  • Umiejętność uruchamiania skryptów

  • Szukanie rozwiązań zadań z książki

4.5.4. Check Python Environment

  • Complexity level: easy

  • Lines of code to write: 0 lines

  • Estimated time of completion: 5 min

  • Filename: solution/python_env.py

  1. Stwórz plik o nazwie python_env.py

  2. Plik ma mieć zawartość:

    import sys
    import os
    
    print(f'Installation: {sys.executable}')
    print(f'Virtualenv: {os.getenv("VIRTUAL_ENV")}')
    
  3. Uruchom go w swoim IDE (menu Run -> Run... -> nazwa Twojego skryptu)

  4. Gdzie Python jest zainstalowany?

  5. Czy korzystasz z "Virtualenv"?

  6. Upewnij się, że w linijce z "Virtualenv" nie masz None

The whys and wherefores
  • Czy Python działa

  • Jaka jest wersja Python

  • Czy korzystasz z Virtualenv

  • Korzystanie z print

  • Umiejętność uruchamiania skryptów

  • Szukanie rozwiązań zadań z książki

4.5.5. Know thou IDE

  • Lines of code to write: 0 lines

  • Estimated time of completion: 10 min

  1. Jak zrobić w Twoim IDE:

    • Run...

    • Run in console

    • Debug...

    • Python Console

    • Terminal

    • Full Screen

    • Distraction Free Mode

    • Reformat Code

    • Scope

  2. Jakie są skróty klawiszowe do poszczególnych opcji?

  3. Czym się różni Run... od Debug...?

  4. Czym się różni Python Console od Terminal

  5. Czym się różni Distraction Free Mode od Full Screen

  6. Ustaw Scope tak, aby ukryć katalog z Virtualenv

The whys and wherefores
  • Korzystanie z IDE

  • Uruchamianie debuggera

  • Znajomość różnicy między uruchamianiem i debuggingiem

  • Znajomość różnicy między terminalem i konsolą

4.5.6. Spellchecker

  • Lines of code to write: 0 lines

  • Estimated time of completion: 3 min

  1. Zainstaluj plugin 'Hunspell'

  2. Pobierz z https://github.com/LibreOffice/dictionaries słownik .dic oraz .aff dla języka polskiego

  3. Skonfiguruj IDE do korzystania z tego słownika

The whys and wherefores
  • Korzystanie z IDE

  • Konfiguracja IDE