Swift architektury, czy koniecznie trzeba wszystko robic od poczatku idealnie?

0

Przegladajac sobie rozne projekty na githubie dochodze do wniosku ze mnie to przeraza, zastanawiam sie czy jesli potrafie cos napisac tak ze w miare to chodzi i wyglada to czy idac do pierwsze pracy tez jest tak ze musisz wsystko tak segregowac jak jest na przykladowych aplikachach z gita? W porownaniu z tym co widze na githubie to moj kod wysdaje sie byc biedny. Warto sie tym od poczatku przejmowac czy nie?

1

Warto. Problem w tym, że twój bylej aki kod będzie obciążeniem dla każdego projektu i takich pracowników nikt nie chce.

0
Meini napisał(a):

Warto. Problem w tym, że twój bylej aki kod będzie obciążeniem dla każdego projektu i takich pracowników nikt nie chce.

Wielkie dzieki za odpowiedz. Moim problemem generalnie jest to, ze nie czaje tego wszystkiego czego wymagaja czyli SOLID itd, kod ewoluowal na tyle ze wymagania sa strasznie wysokie jesli uczysz sie sam. Patrzac na przyklady z neta kazdy ma swoj styl pisania i mega ciezko wyciagnac cos z tego.

1

Dopóki nie robiłeś merga na kilku oddalonych branczach modyfikujących ostro .pbxproj to nie poznasz prawidłowej odpowiedzi na swoje pytanie ;)

0

Warto panie, warto, ja napisałem na początku aplikacje i uczyłem się. Zrobiłem CoreData tabelkę Account i zadeklarowałem w controlerze zmienna Array[AnyObject] Później żeby dostać się do zmiennej to jakieś rzutowanie w stylu

(resData as? AnyObject).value(key: "name") as String.

Chodziło o to, że z listy jak się nacisnęło wybór to leciał do kolejnego widoku. Przesyłałem model więc w nowym widoku nie trzeba było robić kolejnego pobierania z bazy danych. Ale po zmianie danych nie wiedziałem jak zapisać je z dowolnego miejsca w kodzie. Wysłałem zapytanie na stackoverflow swój zacny kod. A tam litania i zjebki. Jakiś magik mówi, żebym zrobił to tak i tak i tamto jeszcze tak.

Wyszło na to że zmienną powinna być nazwą Tabeli (entity)

var account: Account
i potem zamiast resData cast na AnyObject mam zrobić
account.name a jak chce ustawić daną to
account.name = "nowe imie"

i potem z dowolnego miejsca appDelegate context save()

no kuuuurła od razu z funkjic z ifami i letami zrobiły się dosłownie dwie linijki :) wszystko smiga jak należy. No mówię nie, nie no nie może być. A uczyłem się z kursów na Udemy gdzie były pokazywane złe nawyki ale jak nie znasz języka to nie wiesz czy robisz dobrze. Mimo iż mój sposób działał to zmieniłem wszystko. I jestem bogatszy o sporą wiedzę :)

2
jkb91 napisał(a):

Wielkie dzieki za odpowiedz. Moim problemem generalnie jest to, ze nie czaje tego wszystkiego czego wymagaja czyli SOLID itd, kod ewoluowal na tyle ze wymagania sa strasznie wysokie jesli uczysz sie sam.

@jkb91 Wcale nie. Raczej kwestia tego, ile czasu programujesz samemu (ew. ile projektów samemu zrobiłeś, jak bardzo ambitne były to projekty, ile porażek odniosłeś przy okazji itp.). Jak dość długo piszesz samemu, to zasady SOLID wydają się dość logiczne, bo masz punkt odniesienia i możesz stwierdzić, że np. Single Responsibility Principle ma sens, bo próbowałem robić całą apkę w jednej klasie i skończyło się to źle. Open Closed Principle ma sens, bo miałem sytuację, kiedy mój kod był nieelastyczny i nie mogłem czegoś użyć w module X bez modyfikacji modułu Y, a modyfikując moduł Y, zepsułem moduł Z, który też korzystał z modułu Y itp.

Ludzie dzisiaj się chcą "na sucho" czy w przyśpieszonym tempie nauczyć zasad programowania, a nie tędy droga.

(wiem, że to wątek sprzed kilku miesięcy, ale to nie ja go odkopałem. A problem się powtarza cyklicznie).

1 użytkowników online, w tym zalogowanych: 0, gości: 1