Witam.
Na forum pewnie są jacyś programiści, którzy pracują w zawodzie.
Mam takie pytanie, ponieważ mogę dostać pracę na okres próbny 1 miesiąca jako programista C++, ale dowiedziałem się, że nie posiadają dokumentacji. Jest tylko kod źródłowy. Program pewnie już w dosyć poważnym stadium rozwoju i ja muszę w ciągu miesiąca (a nawet krócej, bo z zapowiedzi na rozmowie, może się okazać, że rozwiązanie umowy będzie można się spodziewać w każdej chwili) zrozumieć ten kod i dodawać do niego już gotowe komponenty.
Czy takie praktyki często się zdarzają ? Nie będę miał się nawet kogo wypytać co w tym kodzie się znajduje, bo inni mają inne zadanie i nie są koniecznie w to zaangażowani. Czy da się zrozumieć działanie aplikacji, klas, metod z samego kodu ? Zakładając, że był pisany w jakiejś popularnej notacji nazewniczej. ?
Pozdrawiam.
Forum > Tematy dowolne > Pytanie do programistów
Wysłane 2013-08-10 21:36
Wysłane 2013-08-10 21:53
Normalna rzecz. Kumple ze studiów już pracują jako programiści, akurat w Javie, ale to nie jest istotne. Też dostają kod, czasami nawet z niemieckimi komentarzami do którego muszą dodać nową funkcjonalność. Każdy program musisz prześledzić po kodzie, żeby zrozumieć jak dokładnie działa. Jeżeli jesteś kumaty i znasz C++ to na pewno dasz sobie radę, jeżeli tak jak ja nie masz cierpliwości to będziesz potrzebował sporo samozaparcia.
Wysłane 2013-08-10 22:56
@Inferno
Podstawowe pytanie, to jak wygląda ten kod ? (bo jeśli ktoś stosował jedynie dla siebie zrozumiałe nazywanie metod i zmiennych, to powodzenia życzę w zrozumieniu)
Jeśli stosowany był jakiś sensowny standard w tworzeniu, to kod tłumaczy się sam
Wysłane 2013-08-12 09:24
Generalnie jest zasada, że dobry kod komentuje się sam (komentarza nie wymaga), ale to rzadkość. Jeżeli jest to w miarę sensownie zaprojektowane (struktura klas, może mvc) i są jakieś komentarze to jeżeli znasz wzorce, antywzorce i ogarniasz język to żeby dodawać jakieś gotowe komponenty będziesz gotowy po 1 dniu. Niemniej to C++, więc podejrzewam, że to będzie jednak masakra z użyciem sztuczek i dziur języka (typu int wykorzystywany jako zmienna logiczna), więc może być ciężko: śledzenie linia po linii.
A praktyka że dostaje się kod jaki jest i dokumentacji do tego nie ma, albo co gorsza jest nieaktualna i to bardzo, jest popularna. Szczytem tego co mi osobiście się przytrafiło była wielka kobyła z połową strony "dokumentacji" po angielsku i komentarzami po włosku. Przez 3 miesiące załapałem podstawy włoskiego. Niemniej najczęściej jeżeli nie jest to jakiś system spadkowy, który się dostał firmie po innej, osoba ostatnio odpowiedzialna za aplikacje wprowadza i pomaga. To jest olbrzymia oszczędność czasu i opłaca się również pracodawcy.
Wysłane 2013-08-12 12:34
Jeśli dobrze zrozumiałem to Ty nie masz nic do stracenia. Dostajesz umowę na okres próbny tak czy siak więc w czym problem ?. Najwyżej (czego Ci nie życzę) nic z tego nie będzie - spróbować zawsze możesz. A nóż kod jest napisany czytelnie i intuicyjnie. Zapytaj ile "waży" kod - to da Ci w przybliżeniu poziom złożoności kodu.
Wysłane 2013-08-12 13:31
Po rozmowie kwalifikacyjnej, wywnioskowałem, że było już kilka (kilkanaście) osób, które coś próbowały zrobić. Wierzę w swoje umiejętności i jak się do czegoś przyłożę, to zrobię, ale nie miałbym 3 miesięcy na załapanie tego, a najwyżej kilka dni. Możliwe, że po 2 tygodniach by mnie tam nie było ...
Wysłane 2013-08-12 14:56
@Inferno
Jeśli próbowali już kilkanaście osób, które wywalali po 3 dniach za niezrozumienie kodu bez dokumentacji to olej tą firmę. Nie chcesz dla nich pracować po prostu. Chyba, że naprawdę nie masz co robić nudzisz się i chcesz popróbować, to tak jak @szmalik pisze i tak nic nie tracisz.
Wysłane 2013-08-12 16:58
@szarlih
Nudzę się, bardzo i chcę pracować praktycznie gdzie się da :) Ale mam pomysły co robić aby się nie nudzić i ciągle się uczę programowania, staram się rozwijać.
Z firmy zrezygnowałem z innych powodów. Między innymi, dlatego, że musiałbym dojeżdżać pociągiem, podróż w jedną stronę to około 2 godzin (dojście na stację, pociąg a potem jeszcze do firmy), praca 9 godzin (8 godzin bitej pracy i 1 godzina przerwy). Czyli dziennie byłbym na nogach przynajmniej 13 godzin, a przyszłość niepewna, bo w każdej chwili by mnie wygnano ... Jak bym miał na miejscu, próbowałbym bez wahania w ciemno.
Wysłane 2013-08-12 19:39
@Inferno
Jest duże zapotrzebowanie na programistów, więc jak tylko będziesz miał umiejętności to znajdziesz dużo lepsze warunki nazwijmy to socjalno-atmosferowe.
Wysłane 2013-08-12 19:58 , Edytowane 2013-08-12 20:04
@Inferno
Ja bym na Twoim miejscu pomyślał o innym języku, np. zaczął ogarniać coś z dotneta na którego jest wielki popyt. C# to jest czysta przyjemność w porównaniu z masakrycznym C/++
Wysłane 2013-08-12 21:06
@Netman
to przyjemność nawet w porównaniu z Javą jest, choć niby są bardziej pokrewne
też polecam .NETa. bardzo sobie chwalę taką specjalizację.
Wysłane 2013-08-12 21:35 , Edytowane 2013-08-12 23:56
@Inferno
To jest cała infrastruktura, od aplikacji desktopowych, poprzez serwisy, a na SQL kończąc - tak w bardzo dużym skrócie.
WPF + MVC + WCF + TSQL + [...] = nigdy nie spojrzysz na inną platformę programistyczną.
To co potrafi dotnet, to istna bajka.
Wysłane 2013-08-12 23:25
@Inferno
Do stron internetowych jest tylko część ASP. Porównanie z CMSem jest całkowicie nie trafione. W skrócie to platforma zawierająca środowisko uruchomieniowe i biblioteki klas. Nie jest związana z jakimś konkretnym językiem programowania choć najpopularniejsze są C# i Visual Basic (choć można pisać w C++/CLI, Delphi albo F#). Dzięki przekształcaniu do CIL można mieć jeden program napisany w 3 językach i to działa. A na dodatek waży np. 300 KB (tylko na komputerze docelowym musisz mieć zainstalowany .NET żeby uruchomić)
@Netman
Akurat WPF jest nieco przaśny choć daje duże możliwości tworzenia własnych komponentów. O wiele większa frajda jest po dodaniu do .Neta komponentów Telerika lub DevExpressa. Tyle, że to droższa zabawa, więc spotkać się z tym można w firmach.
Kto jest online: 0 użytkowników, 232 gości