Forum PCLab.pl: Przygotowanie do przedmiotu - Forum PCLab.pl

Skocz do zawartości

Otwarty

Ikona Ostatnio dodane tematy

Ikona Najnowsze pliki

Strona 1 z 1
  • Nie możesz rozpocząć nowego tematu
  • Nie możesz odpowiadać w tym temacie

Przygotowanie do przedmiotu Oceń temat: -----

#1 Użytkownik jest niedostępny   martolo 

  • Dyskutant
  • PipPip
  • Grupa: Forumowicze
  • Postów: 14
  • Dołączył: So, 19 Sty 19

Napisany 26 Sierpień 2019 - 01:05

Cześć, zaczynam II rok studiów w październiku tego roku i chciałam zacząć przygotowania już od września. Martwi mnie jeden przedmiot, który nazywa się Pracownia Programowania. Nie będę kłamała - programowanie nie jest moją mocną stroną. Nie chcę spędzić całego semestru przed komputerem wycierając łzy, żeby nie zalały mi laptopa. Problem w tym, że nie wiem jak się do tego zabrać. Biorąc pod uwagę podany niżej sylabus, co proponujecie przygotować? Jakie treści przyswoić? Za przydatne linki będę dozgonnie wdzięczna. :)



Laboratoria:

1. Przygotowanie środowiska programistycznego, wybór edytora, repozytorium kodu, sposobu budowania aplikacji oraz logowania komunikatów. Sugerowana ścieżka: język Java, środowisko IntelliJ, repozytorium Git, manadżer budowania Maven, loger komunikatów log4J.
2. Debuggowanie i testowanie kodu w wybranym środowisku programistycznym. Sugerowana ścieżka: JUnit + IntelliJ
3. Przetwarzanie powtarzane i harmonogrowanie zadań na przykładzie bibliotek symulujących zachowanie CRON-a. Sugerowana ścieżka Quartz.
4. Indywidualna obrona projektu podsumowującego zagadnienia 1-3
5. Mapowanie relacyjno - obiektowe (ORM), praca na modelu obiektowym, zapytania SQL w modelu ORM. Sugerowana ścieżka: Hibernate
6. Serializacja i deserializacja danych w postaci JSON i XML. Sugerowana ścieżka: Jackson.
7. Indywidualna obrona projektu podsumowującego zagadnienia 4-5
8. Serwery aplikacji, osadzanie projektu na serwerze aplikacji, konfiguracja serwera, monitorowanie i debuggowanie osadzonej aplikacji. Sugerowana ścieżka: Tomcat
9. Tworzenie i praca z REST API. Postman jako narzędzie komunikacji z restowym API. Sugerowana ścieżka: Postman + Tomcat
10. Framework do tworzenia serwisu opartego na REST API z przykładową implementacją. Sugerowana ścieżka: Spring Boot.
11. Indywidualna obrona projektu podsumowującego zagadnienia 6-8
12. Tworzenie serwisu WWW dla serwera korzystającego z REST API, przykładowa implementacja. Sugerowana ścieżka: Angular 2
13. Integracja Modułów 1,2,3 oraz implementacja modułu WWW
14. Indywidualna obrona projektu

#2 Użytkownik jest niedostępny   qrek1 

  • Gaduła
  • PipPipPip
  • Grupa: Forumowicze
  • Postów: 399
  • Dołączył: Wed, 19 Lip 17

Napisany 26 Sierpień 2019 - 06:23

Zobacz postmartolo, o 26 Sierpień 2019 - 01:05, napisał(a):

Nie chcę spędzić całego semestru przed komputerem wycierając łzy, żeby nie zalały mi laptopa. Problem w tym, że nie wiem jak się do tego zabrać.


Na zajęciach wszystko ci powiedzą. A jak czegoś nie będziesz rozumieć to chodź na konsultacje i się dopytuj.

#3 Użytkownik jest niedostępny   Splendor_97 

  • Honor ponad wszystko!
  • PipPipPipPipPip
  • Grupa: Forumowicze
  • Postów: 1527
  • Dołączył: Wed, 17 Kwi 19

Napisany 26 Sierpień 2019 - 22:02

Można również dokształcać na własną rękę,ale to dopiero jak trochę wiedzy na zajęciach złapiesz,bez tego raczej ciężko będzie,a programowanie wymaga myślenia.

Zobacz postqrek1, o 26 Sierpień 2019 - 07:23, napisał(a):

A jak czegoś nie będziesz rozumieć to chodź na konsultacje i się dopytuj.

Tak,można przychodzić na konsultacje,lecz sęk w tym że wykładowca non stop nie będzie tłumaczył w kółko to samo

Zobacz postmartolo, o 26 Sierpień 2019 - 02:05, napisał(a):

Nie będę kłamała - programowanie nie jest moją mocną stroną. Nie chcę spędzić całego semestru przed komputerem wycierając łzy, żeby nie zalały mi laptopa.

Pocieszę ciebie,u mnie programowanie również nie jest mocną stroną.
Wytyczne a rzeczywistość to dwie różne rzeczy,myślę,że nie będzie tak źle,żebyś musiała wycierać łzy

#4 Użytkownik jest niedostępny   kretowicz 

  • Gaduła
  • PipPipPip
  • Grupa: Forumowicze
  • Postów: 253
  • Dołączył: So, 14 Lip 12

Napisany 27 Sierpień 2019 - 13:36

Zabawy jest sporo, zalecam nie skupiać się za mocno nad tym co sugerują i również ja, bo często własne upodobania odmieniają przyjemność z uczenia się. Jeżeli wcześniej miałaś słabe wyniki z programowania to na rok materiału jest całkiem sporo, lecz nie tyle by tego nie ogarnąć. Zalecam siedzenie częste by utrwalać wiedzę, niż zawalać całą sobotę na raz i później tydzień odstępu. Do programowania trzeba podchodzić często do czasu wyrobienia sobie nawyków i logicznego myślenia.
Myślę iż 3 - 4x w tygodniu po 2h spowodowało by, że sama bez szkoły dała byś radę w pół roku starają się ogarnąć temat w podstawowy sposób.

Ad 1, 2 i 3 polecam IntelliJ, github Można się zapoznać i pobawić - na początek.
Ad 5 - nie znam jakie są ORM dobre na javie - lecz o Hibernate słyszałem iż sporo wsparcia ma więc powinno być łatwo. Zaczął bym do czego jest ORM i jak się go powinno używać (wchodzi tu zagadnienie modelu (wzorca) MVC.
Ad 8. Polecam iść od razu w docker i docker-compose - przez co znajomość serwerów aplikacji zostaje obniżona do minimum.
9 i 10 jest ok.
Ad 11. Nie polecam Angular 2 - patrz jak coś to nowsze wersje, jak również zalecał bym odejście od Angular X (x- wersja). Jeżeli chcesz strony typu SPA to AngularJS (prosty, chodź nie za czytelny do większych aplikacji), lub też po prostu VueJS - kompromis nad trudnością nauczenia się i jakością architektury (jest setki poradników i tutoriali).

#5 Użytkownik jest niedostępny   szatkus 

  • Orator
  • PipPipPipPip
  • Grupa: Forumowicze
  • Postów: 546
  • Dołączył: Wed, 08 Paź 14

Napisany 03 Wrzesień 2019 - 17:54

Ogólnie to jest niezły hardkor. Jak z programowaniem Ci nie po drodze to dobrze robisz, że zabierasz się do tego wcześniej.

Java jest z reguły przesadnie skomplikowana. Nie mam na myśli samego języka, ale cały ekosystem. Co prawda od paru lat jest trend, żeby upraszczać rzeczy, ale po sylabusie widzę, że do was jeszcze nie dotarł. Tak że paczka chusteczek może przydać, ale damy radę.

Ludzie mają tendencję do odpowiadania na takie pytania jakbyś chciała zostać super programistką, ale ja postaram się przedstawić plan na samo zaliczenie.

Przede wszystkim staraj się trzymać sugerowanych technologii. Na prawie wszystkie rzeczy na liście są prostsze alternatywy, ale wtedy możesz się znaleźć w sytuacji, że nie będziesz miała do kogo zwrócić się o pomoc (zawsze jest internet, ale zawsze lepiej mieć kogoś w realu). Względnie jak jakiś bliski znajomy będzie szedł w innym kierunku to możesz rozważyć użycie innych technologii niż sugerowane.

1.
Java - jak nie umiesz to się naucz. Nie musisz ogarniać jakichś wzorców projektów i innych pierdół, jak jesteś w stanie wykonać proste zadanie (np. ten nieszczęsny kalkulator) to wystarczy.
IntelliJ - to jest niezła kobyła, więc się nie przeraź. Pocieszę Cię, że alternatywy są jeszcze gorsze. Najlepiej ściągnij (wersja community jest za darmo), stwórz jakiś prosty projekt, odpal go i ciesz się, że wyświetlił Ci się hello world. Jak to Ci się uda to możesz wziąć się za naukę Javy. Oczywiście jak chcesz to możesz sobie poklikać i zobaczyć, co robią różne opcje.
git - normalnie to bym sugerował zapoznanie się z command linem, ale chyba będzie lepiej jak skupisz się na wyklikaniu wszystkiego w IntelliJ. Stwórz repozytorium, stwórz plik, coś tam wpisz, stwórz commita, a potem załóż konto na GitHubie, GitLabie albo Bitbuckecie i spróbuj tam swoje repo wgrać. Więcej raczej nie będziesz potrzebować.
Maven - dużo prostszy jest Gradle, ale jak prowadzący będzie cisnął na Mavena to trudno. Z tym raczej poczekaj do zajęć, bo to jest zbyt pokręcone, żeby samemu to ogarniać. Znaczy do zrobienia, ale szkoda czasu.
log4j - to jest raczej prosty temat. Dodaj log4j do projektu, zrób jakąś klasę, podłącz loggera do niej i wyloguj coś na ekran.

2.
debugowanie - ogarnij ogólnie jak się debuguje w IntelliJ, postaw breakpointa, odpal program z debugiem i zobacz, co się wydarzy.
testowanie - stwórz jakąś klasę, która będzie robiła prostą rzecz i klasę testową, która ją wytestuje. Np. zrób klasę, która będzie liczyć deltę, a w klasie testowej stwórz parę metod, które będą dla przykładowych parametrów sprawdzały czy wynik jest poprawny.

3.
Czekaj na zajęcia, nie warto się samemu zabierać za ten temat.

4.
Powodzenia! :E

5.
Przede wszystkim jako bazę użyj Sqlite. Na pewno nie będziesz potrzebowała "poważnej" bazy danych, ale jeśli będziesz to znaczy za bardzo kombinujesz. Co do samego Hibernate to poczekałbym do zajęć. Możesz zainstalować plugin do IntelliJ.

6.
Zrób jakąś prostą klasę z samymi danymi. Potem spróbuj stworzyć instancję tej klasy i zserializuje to do pliku (json, potem xml). Potem spróbuj zdeserializować (utworzyć obiekt na podstawie danych w pliku).

7.
Tutaj pewnie będzie chodziło, żebyś odczytała z bazy danych encję Hibernate, a potem ją zapisała do pliku.

8.
Ogólnie serwerów aplikacji w nowych projektach się nie stosuje (przynajmniej nie wprost), bo okazały się przesadnie skomplikowane dla większości projektów, ale jest w sylabusie, więc cóż. Czekaj do zajęć.

9.
Sugeruję Postmana i Spring Boota, który z jakiegoś powodu jest dopiero w kolejnym punkcie.

10.
Ach, Spring. Magiczny framework. Zaletą tego jest, że zwykle jak coś się wydaje, że zadziała to zwykle zadziała. Wadą, że czasem ta magia się tak zapląta, że można stracić pół dnia szukając w Google, co się zaczarowało.
W IntelliJ można stworzyć przykładowy projekt Spring Boota (może wymagać instalacji pluginu). Tak więc uczyń, a potem zobacz, co się wygenerowało, przejrzyj każdy plik, googlaj rzeczy, których nie rozumiesz. Jak już zrozumiesz tę całą magię to z resztą powinnaś sobie jakoś poradzić.
Poza tym staraj się wszystko konfigurować adnotacjami. Jak trafisz na przykłady w necie z konfiguracją w XML to uciekaj. Oczywiście może się zdarzyć, że prowadzący preferuje konfigurowanie przez XML. Wtedy współczuję.

11.
Ogarnięcie Angulara na jednych zajęciach to trochę dużo, ale ok. Poczekaj lepiej do zajęć. Na ten moment możesz ogarnąć HTML i CSS (w sumie bez tego możesz dać radę) jeśli jeszcze nie znasz i przede wszystkim naucz się Javascriptu.

Chciałbym jakieś linki rzucić, ale to są rzeczy, których uczyłem się ad hoc, więc żadnych konkretnych tutoriali nie kojarzę. Raczej ogranicz się do jakichś getting started, a potem szukaj odpowiedzi na konkretne problemy. Te wszystkie technologie są tak rozbudowane, że możesz spędzić miesiąc na poznawanie każdego. Dlatego starałem się tylko ograniczyć do rzeczy, które na pewno będą na zajęciach.

Poza tym zawsze możesz się pytać w necie. Jak radzisz sobie z angielskim to na StackOverflow powinnaś w miarę szybko dostać odpowiedź (chociaż podobno niektórzy tam źle reagują na pytania o podstawy).

No, i to chyba tyle.

Ten post był edytowany przez szatkus dnia: 03 Wrzesień 2019 - 17:57


Strona 1 z 1
  • Nie możesz rozpocząć nowego tematu
  • Nie możesz odpowiadać w tym temacie

2 Użytkowników czyta ten temat
0 użytkowników, 2 gości, 0 anonimowych