Jump to content
  • Chmurka
  • Boróweczka
  • Jabłuszko
  • Limonka
  • Czekoladka
  • Węgielek

Vasto_Lorde

Moderator
  • Content Count

    358
  • Joined

  • Last visited

  • Days Won

    55

Vasto_Lorde last won the day on September 12

Vasto_Lorde had the most liked content!

Community Reputation

324 Programista

2 Followers

About Vasto_Lorde

  • Birthday 11/01/1995

Recent Profile Visitors

1,117 profile views
  1. Usuwanie niepotrzebnego, zbędnego kodu z naszego projektu jest istotnym elementem dobrej opieki nad nim. Ale są ludzie, którzy powiedzą "Hej! Panie! Ja tu się namęczyłem z pisaniem tego kodu i NIE MA OPCJI żebym go teraz kasował nawet jeśli już go nie używam". Ten artykuł ma wszystkich upartych przekonać, dlaczego martwy kod trzeba zakopywać głęboko klawiszem backspace. Nad projektem może pracować więcej niż jedna osoba. A jeśli produkujesz oprogramowanie open-source, to kod będzie przeglądać o wiele więcej ludzi niż Twój zespół programistyczny. Jak dobrze wiemy kod jest przede wszystkim komunikacją między programistami, a to, że działa i spełnia swoje zadania jest sprawą drugorzędną. Obca osoba czytając martwy kod musi poświęcić dwa razy więcej czasu niż w przypadku kodu który jest w użytku ponieważ a) Musi zrozumieć jak działa b) Musi zrozumieć dlaczego ten kod nie jest używany i czy na pewno nie jest nigdzie używany i może go usunąć; Za każdym razem przeglądając kod po raz dziesiąty czy setny, ktoś spędzi dłuuugie sekundy myśląc sobie "ah, to tu jest martwy kod, moje oczy muszą go ominąć". Taki kod to po prostu hałas dla oczu. Niepotrzebny żwir na naszym asfalcie. Dlaczego na naszym płaskim, idealnym asfalcie jest wysypany żwir? To na pewno nie jest sposób w jaki chcemy produkować a tym bardziej przeglądać kod; Martwy kod jest martwy. Nie jest rozwijany. Został pozostawiony sam sobie kilka, kilkadziesiąt, kilkaset iteracji temu. Programista może użyć go bez wiedzy, że jest martwy. "Jest tam, więc czemu miałby być źle napisany?" Otóż nierozwijany kod zostawiony sam sobie może już nie spełniać obecnych standardów projektu, lub nawet jego autor mógł go nie dokończyć. Wtedy przy jego użyciu mogą wystąpić konsekwencje - bugi Jeśli używasz jakiegokolwiek systemu kontroli wersji kodu i to na Ciebie spada odpowiedzialność za utrzymanie i konserwację kodu (zachowując jednocześnie martwy kod w projekcie), to masz więcej linii kodu do przejrzenia, więcej odpowiedzialności na Twoich barkach oraz większe pole do popisu dla błędów w zarządzaniu kodem Konsekwencją chomikowania martwego kodu jest to, że ten kod się kumuluje. Normalnie, zachowuje się tylko najpotrzebniejsze rzeczy, tylko rzeczy używane, tylko rzeczy które spełniają jakąś rolę w naszym programie. Dlatego opiekujemy się nim, optymalizujemy go, refaktorujemy. W przeciwieństwie do martwego kodu. Ten, kumuluje się i zbiera, rosnąc diametralnie, a swoim rozmiarem zniechęca maksymalnie kogokolwiek, żeby zrobił co trzeba - przejrzał jeszcze raz kod, zrozumiał go i wyrzucił do kosza Nie martw się, że kod który napisałeś zostanie skasowany, bo nie jest już potrzebny. W dzisiejszych czasach praktycznie zawsze używa się systemu kontroli wersji (np. GIT). Twój kod, który kiedyś w swojej świetności działał idealnie, jest zakopany gdzieś w commitach. Nie ma powodu żeby za nim płakać. Z czasem, szansa na ponowne użycie nieużywanego kodu maleje. Nie musisz go trzymać w każdej iteracji. Odpuść, zrób przysługę sobie w przyszłości i skasuj go. Jeśli był naprawdę ważny i kiedyś zdarzy się sytuacja, gdzie będziesz potrzebował tego kodu, odkopiesz go z czeluści GITa. Tutaj widzę dobrą okazję na przedstawienie jednej z reguły tworzenia oprogramowania w trybie extreme programming: YAGNI (ang. You aren't gonna need it). Mówi nam ona o tym, że mamy pisać tylko i wyłącznie funkcjonalności których potrzebujemy teraz. Nie mamy przewidywać jakich funkcjonalności będziemy potrzebować. Skupiamy się na chwili obecnej. Można to też interpretować w drugą stronę - jeśli czegoś już nie potrzebujesz to skasuj to natychmiast Bibliografia https://stackoverflow.com/questions/15699995/why-unused-code-should-be-deleted https://en.wikipedia.org/wiki/You_aren't_gonna_need_it https://www.infoq.com/news/2017/02/dead-code/
  2. Tak, trudno, ponieważ nie każdy posiada tą samą wiedzę co Ty i może nie wiedzieć jak czytać kod pluginu. Polecam przeczytać regulamin naszego forum, szczególnie "Główne zasady na których opiera się nasza społeczność"
  3. Wiadomość wygenerowana automatycznie Temat został zamknięty. Powodem jest całkowite rozwiązanie problemu zawartego w temacie. Jeśli się z tym nie zgadzasz, zaraportuj ten post z prośbą o ponowne otwarcie i kontynuację dyskusji.
  4. Opis Komenda survival_equip powoduje crash serwera Jak działa zabezpieczenie? Plugin kompletnie blokuje użycie podanej komendy Download dz_fix.sp Źródło https://forums.alliedmods.net/showthread.php?p=2665522
  5. Wiadomość wygenerowana automatycznie Temat został zamknięty. Powodem jest całkowite rozwiązanie problemu zawartego w temacie. Jeśli się z tym nie zgadzasz, zaraportuj ten post z prośbą o ponowne otwarcie i kontynuację dyskusji.
  6. Mamy tutaj wiadomość: zombiereloaded.smx (Zombie:Reloaded): Error detected in plugin startup (see error logs) mapchooser_extended_sounds.smx (Mapchooser Extended Sounds): Error detected in plugin startup (see error logs) Więc wnioskuję, że pojawią się errorlogi w sourcemodzie, możesz też je podesłać?
  7. Odpowiedzią dlaczego Twoje testy się nie udają może być również to, że jeśli wstawiasz cvar w jeden plik jednocześnie gdy ma on inną wartość w innym pliku (załóżmy że edytujesz na raz gamemode_competitive.cfg oraz server.cfg) to wartość cvara będzie zależna od tego który config jest wywołany przez serwer najpóźniej. Więc jeśli cały czas zmieniasz wartości w server.cfg i nie działa a te same cvary są wpisane w jakiś gamemode_, to zapewne cvary z gamemode_ są później wczytywane i dlatego nie zauważasz zmian
  8. @masnuwa_ni bo znowu mi przyślą pismo że mam iść do więzienia że nie mamy licencji tutaj :(((
  9. Wiadomość wygenerowana automatycznie Temat został zamknięty. Powodem jest całkowite rozwiązanie problemu zawartego w temacie. Jeśli się z tym nie zgadzasz, zaraportuj ten post z prośbą o ponowne otwarcie i kontynuację dyskusji.
  10. Hej! Preferujemy tutaj zasadę "jeden problem = jeden temat", postaraj się proszę następnym razem pisać osobne tematy dla każdego pytania które są tak odległe od siebie tematycznie. Powodem dla którego nie możesz odczytać żadnego pluginu jest to, że próbujesz odczytać skompilowane pluginy o rozszerzeniu ".smx", których człowiek nie zrozumie. Jest to kod maszynowy. Jeśli chcesz edytować plugin, musisz znaleźć jego kod źródłowy będący w pliku z rozszerzeniem ".sp"
  11. Wiadomość wygenerowana automatycznie Temat został zamknięty i przeniesiony do działu "Przestarzałe tematy". Powodem jest brak rozwiązania problemu zawartego w temacie lub brak zainteresowania autora w jego rozwiązaniu. Jeśli się z tym nie zgadzasz, zaraportuj ten post z prośbą o ponowne otwarcie i kontynuację dyskusji.
  12. Hej! @Shadow jeśli nie wiesz co może posiadać VIP na cod modzie, najpierw możesz napisać temat w hyde parku żeby zapytać innych użytkowników czy mają jakieś pomysły. Drugim rozwiązaniem jest wejście na jakiegoś cod moda i zainspirowanie się tamtejszym vipem. Bo jeśli powiesz komukolwiek z branży programistycznej lub designerskiej "wymyśl coś swojego" to wymyśli coś swojego i na 99% Ci się to nie spodoba. Bo każdy ma subiektywne zdanie na temat tego co potrzebuje VIP. Yamakashi może sobie dorobić do Twojego VIPa dodatkowe +10 obrażeń za każdym razem gdy VIP jest Na FreeDayu w JailBreaku... dlaczego? Bo autorowi spodobał się ten pomysł. Bo mu powiedziałeś "rób co chcesz". Ale Ty powiesz "nie, weź coś innego zrób" bo w ogóle nie prowadzisz serwera jailbreak+codmod. Wiesz jak się druga osoba wtedy poczuje? Nie dość że zmarnował kilkadziesiąt minut roboty, to jego dobrowolna, bezinteresowna pomoc została wyrzucona w błoto, bo dosłownie pomiatasz jego chęcią niesienia pomocy i go wykorzystujesz A wszystkim innym przypominam, że istnieje punkt w regulaminie o treści: Wiem że trudno się do tego punktu przyzwyczaić zważywszy na standardy pomocy na dużej ilości innych for, ale nasze forum będzie się tego ściśle trzymać. Mam nadzieję że to jedyny raz kiedy to komukolwiek przypominam
  13. Takie cvary są globalne, to znaczy że albo cały serwer je ma albo nikt
  14. Wiadomość wygenerowana automatycznie Temat został zamknięty i przeniesiony do działu "Kosz". Powodem jest złamanie regulaminu naszego forum. Jeśli się z tym nie zgadzasz, zaraportuj ten post z prośbą o ponowne otwarcie i kontynuację dyskusji.
  15. Wiadomość wygenerowana automatycznie Temat został zamknięty i przeniesiony do działu "Kosz". Powodem jest złamanie regulaminu naszego forum. Jeśli się z tym nie zgadzasz, zaraportuj ten post z prośbą o ponowne otwarcie i kontynuację dyskusji.

Nasza historia

Na początku byliśmy małą grupą internetowych znajomych, którzy stwierdzili, że potrzebne jest solidne forum, na którym znajdą się ludzie z dużą wiedzą programistyczną ukierunkowaną na CS:GO. Pomysł powstał na początku 2018 roku, a parę miesięcy później, 19 kwietnia, powstała ta strona internetowa. Jako alternatywna odpowiedź na inne tego typu miejsca, poważnie podeszliśmy do tematu, najpierw tłumacząc angielską dokumentację SourceMod'a na język polski, a potem pisząc rozległe poradniki i wypełniając forum najpotrzebniejszymi rzeczami dla właścicieli serwerów i programistów. Cała nasza Ekipa jest dumna z pracy jaką w to włożyliśmy i cieszymy się że zbierają się wokół nas zarówno ludzie znający tematy sourcepawn'a i konfiguracji, jak i również nowe twarze w tym "biznesie", którym z chęcią niesiemy wiedzę oraz pomoc w rozwiązywaniu problemów.

Największe modyfikacje serwerowe

×
×
  • Create New...