-
Notifications
You must be signed in to change notification settings - Fork 77
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
creating and formatting RuntimeTerrors' snippet #77
Open
Isakots
wants to merge
4
commits into
bmeaut:master
Choose a base branch
from
Isakots:alkfejl/snippet_42
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from 2 commits
Commits
Show all changes
4 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,38 @@ | ||
# RuntimeTerrors csapat által levont tanulságok | ||
|
||
Csapattagok: | ||
* Csókási Marcell | ||
* Fekete Marcell | ||
* Majer Imre | ||
|
||
## Git megfelelő használata | ||
|
||
A git használatát, aki még nem ismeri, érdemes a legelején elsajátítani és használni a szoftverfejlesztés mindennapjaiban használt koncepciókat. | ||
|
||
Amit egyáltalán ne csináljunk, hogy mindenki ugyanazon a branch-en fejleszt. Sok fejfájástól menthet meg minket, hiszen a folyamatos pull és push-olás ugyanarra a branch-re több mint valószínű, hogy conflictokat fog okozni és ezt itt sokkal nehezebb kijavítani, mint egy másik branch-en. Így célszerű minden csapattagnak létrehoznia egy-egy saját branchet, ahol fejleszti a saját dolgait, majd **PullRequest** formájában merge-elni a **master branch**-re. | ||
|
||
Ezen felül érdemes még az elején letölteni egy olyan **alkalmazást**, ahol egyszerű **verziókezelni** (és merge-elni!). (GitHub Desktop, és VSCode nem annyira alkalmas a merge-re, de az alapműveletekre igen, merge-re én például IntelliJ-t használtam, mivel abban vagyok járatos a mindennapokban) | ||
|
||
## QVector | ||
|
||
Ez egy kis apróság.. Amikor TCP socket-en küldtük át, úgy próbáltuk, hogy először elküldtük a vector méretét és utána a vectort, socketből kiolvasva pedig ugyanez. Ekkor mindenféle memóriaszemetet találtunk.. Mint kiderült a QVector alapból úgy megy át a socketen, hogy elküldi előre a méretét, így nekünk ezt már nem kellett pluszban megtenni. | ||
|
||
## TeamViewer használata | ||
|
||
Az együttműködést és a konzultációkat számunkra jelentősen megkönnyítette a TeamViewer nevű alkalmazás. Ezen keresztül meg tudjuk osztani a képernyőnket több emberrel is, akik még távoli vezérlési jogot is kapnak, így tulajdonképpen online Pair Programmingra is lehet használni (mint ahogy mi használtuk is). Közösen könnyebben lehet hibát keresni, illetve megtervezni egy-egy új feature megvalósítását. Érdemes kombinálva használni valamilyen online beszélgetőplatformmal. | ||
|
||
## Clean Code | ||
|
||
Amikor közösen dolgoztok együtt egy projekten, akkor tűnik ki igazán, hogy mennyire fontos a clean code elvek betartása. Ha esetleg egy csapattársnak bele kell nyúlnia a másik társa kódjába, mert éppen olyasmit fejleszt (ilyen biztos lesz), akkor hálás lesz, ha nem spagetti kódba kell belefejlesztenie, hanem egy jól struktúrált, jó megnevezésekkel teli kódba. | ||
|
||
A legfontosabb dolgok, amiket mindenképp tartsunk szem előtt: | ||
|
||
* Beszédes neveket alkalmazzunk. Ha egy jó nevet találunk ki egy-egy függvénynek vagy változónak, akkor kommentelni sem kell a kódot (sőt zavaró is lesz) | ||
|
||
* Egy függvénynek egyetlen feladata legyen. Ha több dolgot csinál egy függvény, akkor inkább bontsuk fel azt, több, kisebb, de egyetlen feladatot ellátó függvényre (na de túlzásokba sem kell esni). Ezzel elkerüljük, hogy egy-egy függvény 100 sorosra hízzon és átláthatatlan legyen. | ||
|
||
* A közös dolgokat szervezzük ki. Esetünkben például a hibakezelésre egy külön osztályt hoztunk létre a hibakódoknak, amelyet több osztály is használhatott. | ||
|
||
## Változók inicializálása | ||
|
||
Ezt főleg akkor hajlamos elfelejteni az ember, ha valamilyen modernebb programozási nyelvvel dolgozik a mindennapokban. Vissza kell térnünk a C-s világba és mindent inicializálni. Mi egy állapotgép implementálása közben futottunk bele ebbe, elfelejtettünk kezdőállapotot inicializálni és mindenféle furcsaság történt :) |
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nézzétek meg a többi ilyen snippetet, a fájl elejére kell egy header. Pl. "alkfejl afhf skipfromindex" tagekkel. Ezt kérlek, pótoljátok.