Als data scientist die op Python vertrouwt, vraag je je misschien af wat de voordelen zijn van een integrated development environment (IDE) zoals PyCharm. Door de leesbaarheid en eenvoud van Python kun je je code makkelijk aanpassen met een simpele teksteditor en vervolgens een Python-interpreter opdracht geven je code uit te voeren. Waarom zou je dan een zware en complexe IDE gebruiken om hetzelfde resultaat te bereiken?
In de volgende secties loodsen we je door deze vraag door uit te pakken welke specifieke problemen PyCharm voor je kan oplossen en hoe jij de voordelen ervan kunt benutten.
Waarom heb je PyCharm nodig?
Een goede ontwikkelomgeving is cruciaal om je productiviteit te verhogen. Er komt bij Python meer kijken dan alleen code schrijven, zoals testen, debuggen, het beheer van omgevingen en pakketten, versiebeheer en veel andere handelingen met veel boilerplate die niet altijd even duidelijk zijn. Een Python-IDE zoals PyCharm helpt je focussen op het ontwikkelproces door de rest te vereenvoudigen. Het wordt geleverd met meerdere functies, waaronder syntaxiskleuring, automatische inspringing en debuggingtools, enzovoort.
PyCharm installeren en configureren
Voordat je PyCharm installeert, moet je controleren of je hardware voldoet aan de gespecificeerde technische vereisten om de software te installeren en uit te voeren. De vereisten staan op de website van JetBrains, maar om er een paar te noemen, je computer moet:
- Minimaal 4 GB RAM hebben (8 GB aanbevolen)
- Minimaal 2,5 GB schijfruimte en 1 GB voor caches hebben
- Python 2.7 of Python 3.6 (of nieuwer) al geïnstalleerd hebben PyCharm installeren lijkt op het installeren van andere software en kan als volgt worden gedaan:
- Ga eerst naar de website van JetBrains, waar je de IDE kunt downloaden. Het scherm ziet er als volgt uit:

- Er zijn verschillende opties afhankelijk van je besturingssysteem. De standaardoptie komt overeen met het besturingssysteem dat je gebruikt, omdat dit wordt gedetecteerd zodra je de website opent (de standaardoptie voor computers met Windows is Windows).

- Klik op de Download-knop van jouw OS. Het kan even duren voordat de download is voltooid.
Als je de Professional-editie downloadt, kun je profiteren van de exclusieve functies tijdens de gratis proefperiode van 30 dagen. Daarna moet je een licentie kopen om de editie te blijven gebruiken, maar als je de Community-editie hebt gedownload, kun je PyCharm direct na installatie gratis gebruiken.
Zodra de download is voltooid, open je de Verkenner in de map waar het bestand is gedownload. Nu kun je het installatieproces starten:
- Voer het bestand pycharm-2021.3.exe uit en volg de stappen van de wizard. Je scherm ziet er als volgt uit:

Kies Next en volg de stappen van de installatiewizard:

- Houd tijdens de installatie rekening met het volgende:
- 64-bit launcher: maakt een startpictogram op je bureaublad.
- Open Folder as Project: voegt een optie toe aan het contextmenu van mappen om de geselecteerde map als een PyCharm-project te openen.
- .py: stelt een associatie in met Python-bestanden om ze in PyCharm te openen.
- Add launchers dir to the PATH: maakt het mogelijk om deze PyCharm-instantie vanaf de console uit te voeren zonder het pad op te geven.
Om je zojuist geïnstalleerde IDE te starten, kun je deze vinden in het Windows Startmenu of de snelkoppeling op je bureaublad gebruiken.
Overzicht van de gebruikersinterface
Wanneer je je IDE start, zou je weergave er ongeveer zo uit moeten zien:

Je PyCharm-IDE kan er anders uitzien dan de bovenstaande schermafbeelding, afhankelijk van je plugins, de gekozen editie en je instellingen. Hieronder lichten we de rol van enkele componenten toe:
-
Editor Je kunt deze gebruiken om je code te bewerken (lezen/schrijven/verkennen).
-
Actie-indicators en actielijst De pictogrammen links in de editor helpen je snel oplossingen en andere acties te vinden.
-
Navigatiebalk Dit maakt het eenvoudiger om door de structuur van je project te navigeren en bestanden te openen om te bewerken.
-
Statusbalk Toont recente gebeurtenismeldingen en beschrijvingen van acties wanneer je er met je muis overheen gaat.
-
Hoofdvenster Het hoofdvenster bevat alle informatie voor één project.
Je sneltoetsen aanpassen
Met PyCharm kun je je ontwikkelomgeving snel aanpassen aan je voorkeuren. Je kunt je favoriete sneltoetsen eenvoudig behouden door de sneltoetsen van je IDE te zoeken, te bewerken en te personaliseren. Zo verhoog je je productiviteit en kun je functies sneller benaderen.
Open het dialoogvenster Settings/Preferences met Ctrl+Alt+S om de keymap-configuratie te bekijken en selecteer Keymap.
Deze lijst bevat beschikbare acties en taken waarvoor je sneltoetsen kunt toevoegen of aanpassen; ze zijn geordend zodat je specifieke acties kunt vinden.

Laten we enkele voorbeelden bekijken. Voor de actie Join Lines zie je dat deze is gekoppeld aan de sneltoets (Control + Shift + J) in Windows. Daarnaast staan er in onze actielijst ook items die nog niet aan een sneltoets zijn gekoppeld (bijvoorbeeld Move Caret Backward a Paragraph). Je kunt er echter verschillende toetscombinaties aan toewijzen door met de rechtermuisknop op de acties te klikken en een Keyboard Shortcut of Mouse Shortcut-combinatie te maken.
Je editor-thema aanpassen
Hoe meer je IDE’s gebruikt, hoe efficiënter het wordt om het editor-thema los van het algemene thema van de omgeving aan te passen. De meeste ontwikkelaars passen graag kenmerken van hun code aan, zoals het lettertype. Het schema hieronder (Editor theme) is bijvoorbeeld Darcula (bij veel editors bekend als het donkere thema).

Bovendien kun je je regellengte instellen, die bepaalt hoe lang een coderegel in je editor mag zijn. Volgens de huidige stijlgids voor Python-code, PEP 8, mag een regel in een Python-bestand maximaal 79 tekens lang zijn. Het is dus aan te raden deze instelling op 79 te zetten. Als je dit specificeert, toont je IDE een verticale lijn bij de 79e kolom, als indicatie waar je code over meerdere regels zou moeten worden verdeeld.
Kernfuncties van de editor verkennen
Volgens ontwikkelaar JetBrains werkt PyCharm vanuit de volgende twee kernprincipes:
- Productiviteit verhogen: PyCharm maakt het data scientists makkelijker zich te focussen op het bouwen van hun modellen door de repetitieve, niet-creatieve aspecten van Python-programmeren weg te nemen.
- Realtime ondersteuning: PyCharm biedt data scientists diverse intelligente functies om inconsistenties aan te pakken door in realtime logica op fouten te controleren, PEP 8-codestijlen te bewaken en snelle oplossingen te suggereren, naast andere essentiële functionaliteiten. PyCharm biedt ook verschillende functies op hoger niveau die deze principes ondersteunen:
- Ondersteuning voor scientific computing: PyCharm bevat veel functionaliteit die het werk van data scientists stroomlijnt door scientific computing te faciliteren via IPython-notebook- en interactieve consolefuncties.
- Intelligente code-assistentie: PyCharm biedt code-aanvulopties, syntaxis- en foutanalyses en geautomatiseerde manieren om je code te refactoren.
- Gestroomlijnde programmeertools: PyCharm stelt data scientists in staat om efficiënt te debuggen, testen en hun code te beheren.
- Webontwikkelingsopties: PyCharm ondersteunt webontwikkelingsprojecten, zoals Python-webframeworks, en andere belangrijke onderdelen zoals JavaScript.
Een nieuw project aanmaken
Nu we hebben gezien hoe PyCharm je ontwikkelproces stroomlijnt, is het tijd om ons eerste project aan te maken.
- Als het installatieproces succesvol is verlopen, kun je je IDE nu zonder fouten starten. Je welkomstscherm zou er ongeveer zo uit moeten zien:

- Klik op de knop New Project om het proces af te ronden. PyCharm brengt je naar een nieuw venster om de details van je nieuwe project in te voeren. Standaard worden de parameters voorgesteld zoals in de onderstaande screenshot:

Pas de projectinstellingen aan jouw behoeften aan en klik op Create.

Als je een nieuw bestand aan je project wilt toevoegen, kun je met de rechtermuisknop op het project in het linkerpaneel klikken en New | Python File kiezen. Je kunt meerdere typen bestanden aanmaken, maar we kiezen nu voor Python.

Er verschijnt een venster om het bestand te hernoemen en het type bestand te kiezen dat je wilt maken, zoals hieronder weergegeven:

Je kunt elke gewenste naam voor je bestand gebruiken. De ‘.py’ is niet nodig in de bestandsnaam, aangezien je al hebt aangegeven dat je een Python-bestand maakt. Klik op OK om verder te gaan.
Het bestand is nu succesvol aangemaakt en wordt standaard geopend. Laten we wat code schrijven en uitvoeren. We nemen een eenvoudig voorbeeld van het printen van "Hello, World!":

Om dit in PyCharm uit te voeren, kun je naar het tabblad Run gaan en ‘Run’ kiezen, zoals hieronder:

Hierna verschijnt een venster; selecteer first_file (of de naam die jij voor je bestand gebruikt) om je code uit te voeren. Het Run-paneel van PyCharm verschijnt vervolgens en toont diverse informatie zoals locatie, status en uitvoer met betrekking tot het Python-programma dat we zojuist hebben uitgevoerd. Er zijn andere manieren om je programma uit te voeren; je kunt op de groene knop links van het Run-paneel klikken om het bestand opnieuw uit te voeren. Deze actie heeft de standaard-sneltoets Ctrl + Shift + R voor macOS en Ctrl + Shift + F10 voor Windows. Je kunt je sneltoetsen aanpassen via de Keymap-instellingen die we eerder hebben besproken. Deze optie voert het laatst uitgevoerde bestand opnieuw uit, zodat je een bestand meerdere keren achter elkaar kunt draaien. Dit is echter niet mogelijk wanneer je meerdere bestanden uitvoert. PyCharm stroomlijnt veel onderdelen van het ontwikkelproces en wat we tot nu toe hebben gezien, is nog maar het topje van de ijsberg van wat deze krachtige IDE voor jou kan betekenen als data scientist of Python-ontwikkelaar. In de volgende sectie laten we zien hoe je er nog productiever mee kunt werken.
Productief coderen
Er zijn veel aspecten bij softwareontwikkeling of het uitvoeren van een data science-project die verder gaan dan coderen; deze activiteiten kunnen testen, debuggen en profileren omvatten. Door hun complexiteit en de vereiste kennis laten veel ontwikkelaars zich echter afschrikken en slaan ze deze taken in hun projecten over.
Gelukkig is dit waar PyCharm inspringt met een praktische manier om best practices in programmeren in realtime te volgen terwijl je je projecten bouwt. Bovendien worden de saaie beheertaken rond het organiseren van pakketten, interpreters en virtuele omgevingen op een eenvoudige manier geregeld. PyCharm biedt niet alleen intuïtieve en grafische methoden om dit uit te voeren, maar ook intelligente code-assistentie, syntaxiskleuring en suggesties parallel daaraan.
Debuggen
Het doel van debuggen is om de oorzaken van bugs in je programma tijdens het testproces aan te wijzen en je code dienovereenkomstig aan te passen zodat je het juiste, gewenste resultaat krijgt.
Een data scientist of Python-ontwikkelaar bewaakt tijdens het debuggen de interacties tussen en veranderingen in de variabelen van het programma. Je kunt mogelijke oorzaken van fouten in je programma onderzoeken door te zien hoe elke functie, methode of zelfs coderegel de waarde en functionaliteit van de variabelen verandert.
Er zijn verschillende debugaanpakken die programmeurs of data scientists in Python gebruiken:
- Print-debugging: je kunt print-statements toevoegen tussen commando’s in je programma’s om de waarden te tonen van variabelen waarvan jij denkt dat ze de bugs veroorzaken. Door deze waarden en hun verandering in de tijd te bekijken, zie je de uitkomsten van elke coderegel op de variabelen die je onderzoekt.
- Logging: door een logboek bij te houden van de gebeurtenissen tijdens de uitvoering van je programma. Deze aanpak wordt vaak gebruikt door serverbeheerders, die regelmatig te maken hebben met servercrashes en andere sitebetrouwbaarheidsproblemen.
- Tracing: je kunt low-level details op machinetaalniveau volgen met betrekking tot de uitvoering van je programma. Dit is waardevol om de oorzaak van een specifieke bug of fout te achterhalen die in een programmeertaal zit ingebakken.
- Een debugger gebruiken: dit is de minst gebruikte methode en bestaat uit het gebruik van een apart programma, een debugger, om je code te debuggen. Dit is echter over het algemeen de meest robuuste methode, omdat debuggers multifunctioneel zijn en verschillende manieren bieden om veranderingen in je programma’s te volgen.
Print-debugging kan prima zijn in kleine tot middelgrote programma’s. In een groot programma kan het gebruik van een debugger echter helpen om tijd te besparen en je productiviteit te verhogen.
Laten we nu een voorbeeld in PyCharm bekijken. Hier hebben we een Python-bestand gemaakt met de volgende code:

In dit bestand hebben we een functie genaamd assignFirstElement(), die twee parameters accepteert: een lijst en een getal, en uiteindelijk die numerieke waarde toewijst aan het eerste element in de invoerlijst.
In ons programma initialiseren we een lijst van drie getallen (0, 1 en 2) en wijzen die toe aan de variabele. Vervolgens wordt de variabele list toegewezen aan de variabele new_list zodat ze dezelfde waarde hebben. Daarna vragen we de gebruiker om een getal in te voeren en roepen we assignFirstElement() aan op list om het eerste element in de lijst via de console te wijzigen. Tot slot printen we de waarden van zowel list als new_list.
Als je bekend bent met andere programmeertalen zoals C, verwacht je dat je na het aanroepen van assignFirstElement() op list [x,1,2] hebt, en dat new_list [0,1,2] blijft. Als je het programma echter uitvoert, krijg je het volgende:

Dit laat zien dat zowel list als new_list evenzeer zijn gewijzigd, wat niet overeenkomt met onze oorspronkelijke hypothese. Om dit probleem te begrijpen, stroomlijnt PyCharm je debugproces, zodat je fouten snel kunt onderzoeken en oplossen. Je kunt simpelweg breakpoints in je bestand plaatsen zoals volgt:

Voer vervolgens je code uit in de debugmodus om de uitvoering stap voor stap te volgen, zoals jij met je breakpoints hebt bepaald.

Nadat je op de debugmodus hebt geklikt, opent je debugconsole en die ziet er vergelijkbaar uit met de onderstaande schermafbeelding:

De console maakt het eenvoudiger om te onderzoeken wat er misging en om de waarden van je variabelen en de uitvoer van elke coderegel te volgen terwijl je code draait.
Testen
Testen is een van de meest kritieke onderdelen van elk softwareontwikkelproces. Goed geteste code maakt het eenvoudiger om de kwaliteit van productieniveau te bereiken. Testen is niet alleen voor softwareontwikkelaars; ook voor data scientists speelt dit een cruciale rol bij het ontwikkelen van robuuste, performante en nauwkeurige modellen voor je volgende projecten.
Er zijn veel tests die je op code kunt uitvoeren, beginnend met de eerste fase: unit testing. Je hebt er waarschijnlijk vaak over gehoord of het zelfs al gedaan. Unit testing in Python wordt ondersteund door de unittest-module, die vergelijkbare functionaliteit biedt als gangbare unit test-frameworks in andere programmeertalen.
Laten we een voorbeeld bekijken om het concept van unit testing snel te begrijpen:
Maak eerst een unit test-bestand. Klik met de rechtermuisknop op je project en selecteer New Python file.

Er verschijnt een pop-up zoals deze:

Voer de naam van je bestand in en kies Python unit test.
Kopieer en plak vervolgens de onderstaande code in je nieuwe bestand:
from unittest import TestCase
class simpleOperationsTest(TestCase):
def test_div(self):
self.assertEqual(4 / 2, 2)
def test_sub(self):
self.assertEqual(7 - 3, 4)
class StringTest(TestCase):
def test_case(self):
self.assertTrue('Data'.isupper())
self.assertFalse('CAMP'.isupper())
De klassen simpleOperationsTest en StringTest, waarin onze unittests zijn gemaakt, erven beide van de TestCase-klasse van de unittest-module. We zetten simpelweg testmethoden in de betreffende klassen om verschillende unittests te implementeren.
De meest gebruikelijke manier om deze Python-unittests uit te voeren is via de commandoregel. De module kan in een Python-opdracht worden opgenomen om tests uit bestanden, klassen en individuele testmethoden uit te voeren.
Je kunt ofwel het Terminal-paneel van PyCharm gebruiken, of de eigen commandoregel van je systeem openen en naar de map navigeren waarmee je werkt.
Gebruik de volgende opdracht om onze tests uit te voeren:
Python -m unittest TestFile

Of je benut de kracht van PyCharm door de run-pijlen te gebruiken zoals hieronder:

PyCharm-integraties voor versiebeheer
Om versiebeheer met PyCharm te integreren, klik je op VCS en kies je Enable Version Control. Er verschijnt een venster zoals hieronder:

Er zijn veel tools voor versiebeheer waarmee PyCharm integreert, maar voor nu kiezen we Git in de vervolgkeuzelijst en klikken we op OK. Je ziet nu dat VCS is ingeschakeld voor je project.
Na het aanmaken van de Git-repository verschijnt het paneel Version Control in je projectvenster:

Als je nu naar het menu bovenaan gaat, zie je verschillende opties onder Git die je kunt gebruiken: git add, git stash, git branch, git commit, git push en meer.

Om een specifiek bestand aan Git toe te voegen, kun je in de menubalk naar VCS | Git | Add gaan of de bijbehorende sneltoets gebruiken.

Je kunt ook meerdere bestanden tegelijk selecteren in het paneel Version Control en ze toevoegen aan Git. Om alle onversieerde bestanden aan Git toe te voegen, kun je ook de sectie met onversieerde bestanden zelf selecteren en de add-actie oproepen.
Vervolgens merk je dat het committen van een bestand naar je repository ook vrij eenvoudig is en erg lijkt op wat we zojuist zagen bij het toevoegen. Om de in groen gemarkeerde bestanden in de sectie Default Change list te committen, klik je er met de rechtermuisknop op en selecteer je Commit, of gebruik je de bijbehorende sneltoets.

Je kunt ook een commit-bericht typen over het doel van de commit, dat op GitHub wordt weergegeven.

De laatste stap is nu om de in de vorige stap gecommitte code naar onze GitHub te pushen. Ga daarvoor naar VCS | Git | Push. Er verschijnt een pop-upvenster zoals hieronder. Selecteer Push om de bewerking te voltooien.

Veelgestelde vragen
Is PyCharm de beste IDE voor Python-ontwikkeling?
PyCharm is een veelgebruikte IDE voor Python. Volgens JetBrains is het gecombineerde aandeel van de Community- en Professional-edities van PyCharm 33%, in lijn met de resultaten van vorig jaar. VS Code blijft groeien en wint 5% ten opzichte van vorig jaar. Daarentegen zijn de gebruikscijfers van de meeste teksteditors zoals Vim of Sublime Text gedaald. Het aandeel webontwikkelaars dat PyCharm gebruikt is bijna twee keer zo groot als dat van gebruikers die met data werken, en het verschil is vooral uitgesproken voor PyCharm Professional Edition.
Is PyCharm gratis?
Het is belangrijk om te weten welke editie je op je computer gebruikt. PyCharm Community-editie is gratis en vereist geen licentie. De Professional-editie biedt echter slechts een proefperiode van 30 dagen en daarna moet je een licentie kopen om deze te gebruiken.
Integreert PyCharm met plugins?
PyCharm biedt een groot aantal plugins voor meerdere doeleinden en toepassingen. Een van de bekendste plugins is de AWS Toolkit voor PyCharm, een open-sourceplug-in voor de PyCharm-IDE die het eenvoudiger maakt om Python-applicaties te bouwen, debuggen en deployen op Amazon Web Services.
Conclusie
PyCharm is een van de krachtigste IDE’s voor data science. Het maakt het voor data scientists eenvoudiger om zich te richten op taken met hogere prioriteit, zoals het bouwen en finetunen van hun modellen. Het stroomlijnt taken die door ontwikkelaars of data scientists vaak als complex of tijdrovend worden gezien, zoals testen, debuggen en profileren. De tool biedt toegang tot veel integraties en aanpassingen voor een betere gebruikerservaring.
