This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
administrativ:coding_style_ide [2015/11/23 18:37] Adriana Draghici [Recomandări] |
administrativ:coding_style_ide [2019/10/19 20:31] (current) Adriana Draghici |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | = Despre cod și IDE = | + | = Despre cod = |
== Code style == | == Code style == | ||
Line 39: | Line 39: | ||
* Nu este recomandată declararea mai multor variabile pe aceeași linie (e.g. int a, b[], c;) | * Nu este recomandată declararea mai multor variabile pe aceeași linie (e.g. int a, b[], c;) | ||
* Puneți adnotarea @override pentru metodele suprascrise ([[http://stackoverflow.com/questions/94361/when-do-you-use-javas-override-annotation-and-why|exemple de cazuri în care este utilă]]). | * Puneți adnotarea @override pentru metodele suprascrise ([[http://stackoverflow.com/questions/94361/when-do-you-use-javas-override-annotation-and-why|exemple de cazuri în care este utilă]]). | ||
- | == IDE: Eclipse == | ||
- | Pe stațiile din laborator vom avea instalat Eclipse. Bineînțeles, sunteți liberi să folosiți orice tool de dezvoltare (Netbeans, IntelliJ, Notepad/Vim + make, etc), dar pentru ce avem nevoie, Eclipse este arhisuficient. | + | == Recomandări Javadoc == |
- | Prezentăm aici câteva operații frecvente și utile pe care le puteți face rapid: | + | // Trebuie să pun javadoc pentru toate clasele și membrii lor? // |
- | * **contextual autocomplete: Ctrl-Space** | + | Javadoc-ul se face in general pentru clase și membrii lor publici și protected. |
- | * the single most used IDE hotkey | + | |
- | * autocompletează nume de variabile, metode, parametri, clase | + | * Pentru metode simple și cu un rol evident, de genul //getters// si //setters//, puteți __omite__ Javadoc-ul. |
- | * puteți suprascrie metode e.g. ''new Runnable() { /* ru(ctrl-space, enter aici) */ }'' | + | * Pentru metodele private ... depinde de situație. In general nu este recomandată documentarea metodelor private deoarece expun informații care fie nu sunt necesare celor care utilizează clasa respectivă, fie pot fi exploatate în mod malițios (e.g. breșe de securitate). Este insa util de documentat si metodele private pentru o înțelegere mai ușoară a codului de către dezvoltatorii lui, dar în acel caz trebuie avut grijă să nu fie generate fișisierele html și pentru modificatorul 'private'. |
- | * generați metodă main e.g. ''ma(ctrl-space, enter)'' | + | |
- | * **auto-resolver: Ctrl-1** | + | // Există multe taguri @..., care sunt cele mai folosite și utile? // |
- | * nu merge întotdeauna, dar e destul de deștept | + | * @param și @return le folosiți pentru parametrii și variablele returnate. Dacă scopul lor este evident, nu este necesar să le puneți |
- | * **toggle line comment: Ctrl-/** | + | * @author - în javadoc-ul claselor, puteți configura IDE-ul să vi-l genereze |
- | * puteți face pe mai multe linii, nu trebuie să fie selectate complet | + | * {@inheritDoc} - pentru a copia documentația metodei suprascrise |
- | * linia curentă poate să nu fie selectată | + | * @link și @ see - o comparație foarte clară: [[https://stackoverflow.com/a/10097249|link]] |
- | * **line delete: Ctrl-D** | + | |
- | * la fel ca la Ctrl-/ | + | /* |
- | * **optimize imports: Ctrl-Shift-O** | + | Adaugare cheetsheet IDE eclipse, IDE Jetbrains |
- | * auto import pentru exact ce aveți nevoie - folosiți-l la greu | + | */ |
- | * **auto-indent: Ctrl-I** | + | |
- | * **indentare: selectat linii, Tab (indent) / Shift-Tab (unindent)** | + | |
- | * **auto format: Ctrl-Shift-F** | + | |
- | * aveți grijă să vă configurați formatter-ul | + | |
- | * Window - Preferences - Java - Code Style - Formatter, apoi New... , plecați de la formatter-ul default (Eclipse/built-in) și modificați/adăugați regulile voastre (e.g. liniile la 80 chars) | + | |
- | * **mutat cod: selectați linii (sau pe linia curentă), apăsat Alt + săgeți sus/jos** | + | |
- | * **navigare către clasă: Ctrl-Shift-T** | + | |
- | * **navigare în clasă, la o metodă: Ctrl-O** | + |