You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
> I do not know really, it's maybe my habit taken from python, to have commas also in the last element of enum/collection, because if I add new element in the future, i didn't have to worry about some errors in regards to missing comma :)
114
121
115
-
---
122
+
___
123
+
<!-- .slide: style="font-size: 0.75em" -->
116
124
117
125
> A: You can specify a size of vector in constructor :)
> B: Yes, but what about situation, when count is negative value? I donot think such value should be used in the vector constructor, that's why I do such check first.
@@ -150,8 +165,10 @@ int superFunction(std::vector<std::shared_ptr<int>> vectorOfSharedPointers, std:
150
165
// usage
151
166
auto result = superFunction(mySuperVector, myMiniMap, myGreatHashTable, [](const auto & lhs, const auto & rhs) { return lhs >= rhs;})
152
167
```
168
+
<!-- .element: class="fragment fade-in" -->
153
169
154
170
Better formatting:
171
+
<!-- .element: class="fragment fade-in" -->
155
172
156
173
```cpp
157
174
int superFunction(std::vector<std::shared_ptr<int>> vectorOfSharedPointers,
@@ -167,6 +184,9 @@ auto result = superFunction(mySuperVector,
167
184
myGreatHashTable,
168
185
[](const auto & lhs, const auto & rhs) { return lhs >= rhs;});
169
186
```
187
+
<!-- .element: class="fragment fade-in" -->
188
+
189
+
___
170
190
171
191
Or for longer lambdas / too long first parameter which exceeds line limit:
172
192
@@ -176,7 +196,8 @@ int superFunction(
176
196
std::map<std::string, int> miniMap,
177
197
std::unordered_set<int> hashes,
178
198
std::function<void(int, int)> compareFunction) {
179
-
// two levels of indentation above to avoid confusion. The function body below will be indented with one level
199
+
// two levels of indentation above to avoid confusion.
200
+
// The function body below will be indented with one level
180
201
// do sth
181
202
}
182
203
@@ -188,24 +209,29 @@ auto result = superFunction(mySuperVector,
188
209
return lhs >= rhs;
189
210
});
190
211
```
191
-
192
-
---
193
-
194
-
* [Nice usage of std::map instead of ifs' ladder](https://github.com/coders-school/kurs_cpp_podstawowy/pull/252/files)
195
-
* Zwracajcie uwagę na znaki końca linii na końcu dokumentu.
196
-
* `enum` lub `enumclass` są pod spodem wartościami całkowitymi (jakiś rodzaj inta). Nie warto przekazywać ich przez const& w celu optymalizacji.
197
-
* Max 2 puste linie. Zazwyczaj wystarcza jedna. 2 puste linie nie mogą wystąpić wewnątrz żadnych bloków (zakresów), jak funkcje, klasy, enumy.
198
-
* Dobra praktyka - alokowanie pojemności wektora, gdy jest z góry znana.
199
-
* Kiedy stosujemy konwencje?
200
-
* Współpraca grupowa - obowiązkowo. Nie ma nic gorszego niż niejednolite formatowanie w projekcie. Narzucamy wam styl zmodyfikowany styl Chromium, aby nie było przepychanek. Możecie go egzekwować do woli, w szczególności w Internal Code Review (czyli wewnątrz grupy, zanim zgłosicie nam Pull Request do sprawdzenia)
201
-
* Praca indywidualna - można stosować własne upodobania, ważne żeby było jednolicie.
202
-
* Nie bądźcie "code style nazi" i nie wymuszajcie na innych osobach waszego stylu formatowania, jeśli komentujecie indywidualne PR. Oczywiście fajnie gdyby wszystko było tak samo wszędzie, ale tak naprawdę co firma/projekt to spotkacie się z innym formatowaniem. Warto przywyknąć, że nie zawsze wam pasuje to co sprawdzacie. Głównie odnosi się to do nowych linii i nawiasów {}.
203
-
*`#include` - ja (Łukasz) nie jestem zbyt nazistowski z komentowaniem wam że:
204
-
* jest nieposortowane
205
-
* nie ma nowej linii
206
-
* żeby to przenosić do cpp zamiast trzymać w hpp
207
-
* usunąć, bo nieużywane.
212
+
<!-- .element: class="fragment fade-in" -->
213
+
214
+
___
215
+
216
+
* <!-- .element: class="fragment fade-in" --> <a href="https://github.com/coders-school/kurs_cpp_podstawowy/pull/252/files">Nice usage of std::map instead of ifs' ladder</a>
217
+
* <!-- .element: class="fragment fade-in" --> Zwracajcie uwagę na znaki końca linii na końcu dokumentu.
218
+
* <!-- .element: class="fragment fade-in" --> <code>enum</code> lub <code>enumclass</code> są pod spodem wartościami całkowitymi (jakiś rodzaj inta). Nie warto przekazywać ich przez const& w celu optymalizacji.
219
+
*<!-- .element: class="fragment fade-in" --> Max 2 puste linie. Zazwyczaj wystarcza jedna. 2 puste linie nie mogą wystąpić wewnątrz żadnych bloków (zakresów), jak funkcje, klasy, enumy.
220
+
*<!-- .element: class="fragment fade-in" --> Dobra praktyka - alokowanie pojemności wektora, gdy jest z góry znana.
221
+
*<!-- .element: class="fragment fade-in" --> Kiedy stosujemy konwencje?
222
+
*<!-- .element: class="fragment fade-in" --> Współpraca grupowa - obowiązkowo. Nie ma nic gorszego niż niejednolite formatowanie w projekcie. Narzucamy wam styl zmodyfikowany styl Chromium, aby nie było przepychanek. Możecie go egzekwować do woli, w szczególności w Internal Code Review (czyli wewnątrz grupy, zanim zgłosicie nam Pull Request do sprawdzenia)
223
+
*<!-- .element: class="fragment fade-in" --> Praca indywidualna - można stosować własne upodobania, ważne żeby było jednolicie.
224
+
*<!-- .element: class="fragment fade-in" --> Nie bądźcie "code style nazi" i nie wymuszajcie na innych osobach waszego stylu formatowania, jeśli komentujecie indywidualne PR. Oczywiście fajnie gdyby wszystko było tak samo wszędzie, ale tak naprawdę co firma/projekt to spotkacie się z innym formatowaniem. Warto przywyknąć, że nie zawsze wam pasuje to co sprawdzacie. Głównie odnosi się to do nowych linii i nawiasów {}.
225
+
226
+
___
227
+
228
+
*<!-- .element: class="fragment fade-in" --> <code>#include</code> - ja (Łukasz) nie jestem zbyt nazistowski z komentowaniem wam że:
229
+
*<!-- .element: class="fragment fade-in" --> jest nieposortowane
230
+
*<!-- .element: class="fragment fade-in" --> nie ma nowej linii
231
+
*<!-- .element: class="fragment fade-in" --> żeby to przenosić do cpp zamiast trzymać w hpp
232
+
*<!-- .element: class="fragment fade-in" --> usunąć, bo nieużywane.
208
233
209
234
Tylko jak mi się rzuci w oczy to daję taki komentarz. Ale wiedzcie, że to są dobre praktyki i warto je stosować.
235
+
<!-- .element: class="fragment fade-in" -->
210
236
211
-
* Też nie bądźcie nazistami i nie róbcie całego code review tylko po to, żeby komuś wytknąć nieposortowane headery lub brakujące {} w jednym miejscu. Podczas projektów grupowych takie rzeczy sobie nawytykacie wewnątrz grup i tak się najszybciej nauczycie :) Na zewnątrz do sprawdzenia ma wychodzić kod przejrzany przez pozostałe osoby z grupy. Nie ma zwalania winy, że to pisał X i on nie dopilnował. Cała grupa obrywa równo ;)
237
+
*<!-- .element: class="fragment fade-in" -->Też nie bądźcie nazistami i nie róbcie całego code review tylko po to, żeby komuś wytknąć nieposortowane headery lub brakujące {} w jednym miejscu. Podczas projektów grupowych takie rzeczy sobie nawytykacie wewnątrz grup i tak się najszybciej nauczycie :) Na zewnątrz do sprawdzenia ma wychodzić kod przejrzany przez pozostałe osoby z grupy. Nie ma zwalania winy, że to pisał X i on nie dopilnował. Cała grupa obrywa równo ;)
0 commit comments