#naukaswifta
Dzień 38/100 kursu 100 days of SwiftUI

Challenge

Use the user’s preferred currency, rather than always using US dollars.
Modify the expense amounts in ContentView to contain some styling depending on their value – expenses under $10 should have one style, expenses under $100 another, and expenses over $100 a third style. What those styles are depend on you.
For a bigger challenge, try splitting the expenses list into two sections:
#naukaswifta
Dzień (35+36)/100 kursu 100 days of SwiftUI

Dzisiaj odpaliłem omyłkowo 36 dzień zamiast 35. Skapnąłem się jak skończyłem...

Więc zrobiłem 36 dzień a w nim znowu teoria: @StateObject, sheet(), onDelete(), UserDefaults, Codable... kolejna potężna masa wiedzy do przyswojenia...

Postanowiłem więc zrobić też 35 dzień, którym był: Milestone: Projects 4-6.
Duży projekt do wykonania od zera, wszystko ładnie pięknie, zbudowałem cały design, ale jak przyszło do tworzenia funkcji to znowu musiałem
#naukaswifta
Dzień (33+34)/100 kursu 100 days of SwiftUI

Dzień 33 - sama teoria, omówione animacje i kilka przykładów. Kolejny dzień bez pisania czegokolwiek. Było mi mało i postanowiłem , że zacznę kolejny dzień.
Dzień 34 - Challenge! Trzy zadania do wykonania na poprzedniej aplikacji do zgadywania flag.

1. When you tap a flag, make it spin around 360 degrees on the Y axis.
2. Make the other two buttons fade out to
#naukaswifta
Dzień 32/100 kursu 100 days of SwiftUI

Teoria - omówione animacje i pokazane kilka przykładów. Kurs póki co mało stawia na praktykę, bo nie ma prawie w ogóle zadań, no ale to tak chyba musi być - trzeba do czegoś wprowadzić, żebyśmy potem wiedzieli o czym mowa i mieli odniesienie do przykładu który był wcześniej omawiany jako teoria.

Wydaje mi się, że instruktorom ciężko jest przekazywać wiedzę dla początkujących w jak
Hej, są tu jacyś studenci, juniorzy, midy co szukają freelance pracy w iOS? Aplikacje mobilne w SwiftUI, proste projekty bo budujemy MVP żeby testować idee, oferuje wsparcie merytoryczne i code review dla studentów/juniorów.

Potencjalnie dobra okazja dla tych co dopiero zaczynają.

#naukaswifta #swift #ios #programowanie
#naukaswifta
Dzień (30+31)/100 kursu 100 days of SwiftUI

Taki byłem na siebie zły za wczoraj, że nic nie zrobiłem, aż postanowiłem dziś przerobić dwa dni kursu, ale wyszło to tak, że dzień 30 to było klepanie kodu 1:1 jak na wideo z kursu, a w dniu 31 był challenge:

Disallow answers that are shorter than three letters or are just our start word.
Add a toolbar button that calls startGame(), so users
Pobierz hebato - #naukaswifta
Dzień (30+31)/100 kursu 100 days of SwiftUI

Taki byłem na s...
źródło: comment_1667634279Tb2PSPwtsaopTHCOupPht3.jpg
Jeszcze można by się pobawić z wyglądem. Ładny design w tym wypadku jednak nie ma znaczenia - ta appka nigdzie nie będzie publikowana, ona ma działać i to jest najważniejsze
@hebato: praktyczny protip - spróbuj pobrać Xcode nie w wersji appstorowej, tylko po prostu ze strony Apple. Ewentualnie polecam do tego narzędzie o nazwie Xcodes - sam go używam w pracy, bo pozwala wygodnie żonglować różnymi wersjami Xcode i instalacja przez niego jest kilkukrotnie szybsza niż przez AppStore. Niestety te aktualizacje przez AppStore to do siebie mają, że się lubią zwiesić na kilka godzin.
#naukaswifta

Dziś dzień aktualizacji. Nie zrobiłem materiału z dzisiejszego dnia kursu i źle mi z tym. Aktualizacja xcode robiła się ponad 7h, a potem musiałem wyjść bo byłem już umówiony... Jedyne co, to rano przerobiłem sobie kilka kursów w Swift Playgrounds, to taka zabawa, ale idzie się czegoś nauczyć. Nie zaglądałem tam z pół roku, a pojawiło się kilka lekcji dla najnowszego na dziś Swift 5.7. Fajne przykłady dla podstaw SwiftUI, jest
Pobierz hebato - #naukaswifta 

Dziś dzień aktualizacji. Nie zrobiłem materiału z dzisiejsz...
źródło: comment_1667595677oHoF6Q62ztj04fd5eHoiau.jpg
@hebato: Instalacja XCode to najlepszy benchmark kompów :D
Zazwyczaj po AppStore to jest patologia, ale tak długo nie powinno trwać, chociaż jak czytałem, mają na M1 jakieś problemy ostatnio.
Możesz sobie prześledzić stan instalacji tym sposobem
https://stackoverflow.com/questions/67900692/latest-version-of-xcode-stuck-on-installation-12-5
Lub użyć tego
https://github.com/RobotsAndPencils/xcodes
No i oczywiście wspomniany developer.apple.com, to też jest bardzo dobra opcja
#naukaswifta
Dzień 29/100 kursu 100 days of SwiftUI

Dzisiaj wstęp - teoria do ostatniego "łatwego" projektu, potem ma być trudniej.

Posłuchałem na temat: List, Bundle, UITextChecker. Szczerze to po dzisiejszej godzinie nic zbytnio z tego nie rozumiem, ale przypominam sobie czasy studiów, gdy chodziłem na wykłady z różnych przedmiotów, które na początku wydawały mi się czarną magią, ale jak tak przez rok się o tym słuchało, czytało to w końcu człowiek się
#naukaswifta
Dzień 28/100 kursu 100 days of SwiftUI

Dzisiaj review - test A/B do poprzedniego projektu i challenge - 3 zadania do wykonania. Nie zajęło mi to zbyt dużo czasu.

Update do całości: Przerabianie kursu Angeli Yu z udemy zawieszam. Nie robię go więcej, troszkę mi nie pasuje.

Wczoraj i dziś zrobiłem pierwsze 2h materiału stąd (ktoś polecał na wykopie, dzięki!):

[KURS SEAN ALLENA - 10h 32 min](https://www.youtube.com/watch?v=CwA1VWP0Ldw
w tych 2
Pobierz hebato - #naukaswifta
Dzień 28/100 kursu 100 days of SwiftUI

Dzisiaj review - tes...
źródło: comment_1667391733sHkdC1C8V6x4hTRGrgfly7.jpg
#naukaswifta
Dzień 27/100 kursu 100 days of SwiftUI

Zbudowałem, a dokładniej przepisywałem aplikację z dzisiejszych 3 lekcji. Praca z CoreML to dla mnie nowość, użyłem go do wyliczenia czasu potrzebnego na sen w zależności od ustawionej godziny, czasu potrzebnego na sen i ilości kawy (czas wylicza się automatycznie na podstawie wczorajszego Trainingu). Jak wcześniej - gdy piszę to razem z kursem to wydaje się logiczne, zrozumiałe, ale potrzebuję praktyki, żeby się z
Pobierz hebato - #naukaswifta
Dzień 27/100 kursu 100 days of SwiftUI

Zbudowałem, a dokład...
źródło: comment_1667295056xyCgTlWLjxQaiU4wOqFuKc.jpg
#naukaswifta
Dzień 26/100 kursu 100 days of SwiftUI

Teoria - zapoznanie z nowymi dla mnie Stepper, DatePicker, DateFormatter (daty są czasami mega skomplikowane jak to mówi na kursie Paul Hudson).
Oprócz tego wykonałem pierwszy testowy Training w Create ML na testowych plikach dołączonych do kursu. Powiem szczerze - jestem zaskoczony jaki ogrom możliwości zawiera się w całym Machine Learning. Nigdy z tym nie miałem styczności.

Poza tym zrobiłem dziś update systemu do
#naukaswifta
Dzień 25/100 kursu 100 days of SwiftUI

Challenge!!! Zadanie polega na samodzielnym wykonaniu appki od zera. Należy ustawić, aby cpu wybierał Kamień, Papier lub Nożyce, potem aby wylosowało losowo - czy mamy wygrać czy przegrać i w odniesieniu do dwóch powyższych wybrać odpowiedź na dwa wybory cpu. Jeśli odpowiemy dobrze - zdobywamy +1 punkt, remis = 0, przegrana -1. Po 10-ciu pytaniach alert i przycisk do restartu.

Robiłem to kilka godzin,
@Prism2772: tak mi było najłatwiej to zrobić. chyba nie mam jeszcze w sobie takiego myślenia nt. pracy kodu, tzn jak to zrobić żeby było wydajniejsze. w ogóle o tym nie myślę przy pisaniu... :( póki co ważne żeby działało.
dzięki za wskazówki
@hebato: Dlatego też jakiś czas temu Ci pisałem, że warto wrzucić kod, bo wtedy właśnie takie rzeczy można wychwycić i Ci podpowiedzieć, na co fajnie zwrócić uwagę. Jeśli chodzi o formę wrzucania kodu, najbardziej polecam https://pastebin.com
Wtedy łatwiej by było ten kod lekko zmienić, bez przepisywania.
Zwracaj też uwagi na entery, w odpowiednich miejscach. Tak jak wcześniej miałeś default switcha za wysoko, tak teraz brakuje entera w 73 linijce.
Jak wrzucisz
#naukaswifta
Dzień 24/100 kursu 100 days of SwiftUI

Dzisiaj nic wielkiego nie było, 3 zadania testowe do poprzednich projektów:

-Go back to project 1 and use a conditional modifier to change the total amount text view to red if the user selects a 0% tip.
-Go back to project 2 and replace the Image view used for flags with a new FlagImage() view that renders one flag image using the specific set
@Insiders: Wydaje mi się, że tak, ale musisz sprawdzić sam - odpal sobie jakąś lekcję i zobacz. Ja czasami jak czegoś nie wyłapię bo np. za szybko jest mówione i w tym czasie piszę na klawiaturze to zatrzymuję i cofam się 20-30 sekund.
#naukaswifta
Dzień (21+22)/100 kursu 100 days of SwiftUI

Dziś zrobiłem dwa dni kursu, wyjaśniło się jaka jest różnica między foregroundStyle/Color.
Cała aplikacja nie była jakoś skomplikowana, aczkolwiek najgorsze jest to, że jak robię to razem z instruktorem z kursu to wydaje mi się, że wszystko rozumiem, a jak bym miał teraz zrobić to sam od początku to by mi ciężko było nawet ruszyć. Ale jestem dobrej myśli, trzeba się z tym po
@hebato: z tego co widzę po api to różnica jest taka, że foregroundColor jako arugment przyjmuje Color czyli tylko jeden kolor. A foregroundStyle przyjmuje ShapeStale, dzięki czemu możesz robić różne gradienty i jakieś inne bardziej wymyślne style.

Wydaje mi się że koleś w ogóle tego nie wytłumaczył albo nawet sam tego nie rozumie, tylko zobaczył że jak zmieni te metody to jest minimalna różnica w wyglądzie.
#naukaswifta
Dzień (18+19)/100 kursu 100 days of SwiftUI
Dzień 18 to podsumowanie skończonego projektu + trzy krótkie zadania. Zrobiłem w miarę szybko, więc postanowiłem przejść do następnego dnia.
Dzień 19 to Challenge day - stworzenie własnego konwertera na bazie zebranej dotychczas wiedzy. W pewnym momencie troszkę stanąłem, przy wyciągnięciu .rawValue, jakoś wcześniej tego nie było albo zapomniałem, ale udało się(pomogłem sobie innym projektem).

#naukaprogramowania #ios #swift
#naukaswifta

Informacje „startowe” - o sprzęcie i przygotowaniu do nauki (swiftplaygrounds oraz dwie książki):

Sprzęt:
-Nie chciałem się bawić w emulowanie maca, a zawsze miałem windowsy, więc kupiłem najzwyklejszego MacBook Air M1 od polecanego tutaj na wykopie CAR4VIP z allegro. Na początek wystarczy.
-Do tego dokupiłem HUB 5in1 Baseusa - działa super
-Podłączyłem drugi monitor, miałem starego BENQ GW2250, wystarczy.
-Na ekranie macbooka wyświetlam kursy, drugi monitor jest "roboczy"
-Klawiatura Magic Keyboard,
Jeszcze mały dopisek, zapomniałem napisać. Jak ktoś pierwszy raz siada do MacBooka jak ja pół roku temu to warto przerobić ten materiał:
[