Первая работа, Делюсь опытом


#1

Всем привет, 4 месяца назад плотно подсел на swift, прям очень плотно, поти месяц назад устроился на работу, и вот ребят, я думал, что готов, но по факту оказалось все наоборот, первую неделю мозг кипел, да и сейчас кипит)
В общем, из важных моментов, это архитектура, паттерны, паттерны, паттерны, до этого писал в испоганенной версии МВС, как сейчас это понимаю, тут советую прям хорошечно разобраться с тем что есть, именно как должно все быть в действительности я понял с помощью чистой архитектуры, андройдовской) ios(MVVM Viper)

Вторым мощным камнем стала функциональщина, а именно реактивное программирование, но если освоите, будет вам счастье, гуглить по RxSwift RxCocoa

Я на самом деле много хотел расписать всяких моментов, так как о них не слышал раньше кому-то будет полезно, а так дерзайте)

И да, я не был прям совсем дауничем), вся база знаний о программирование была построена на плюсах, эт так, на всякий)


#2

Поздравляю вас с получением работы! Что у вас интересного спрашивали на собеседовании? Решали какую-нибудь задачку?

Вообще, какой набор навыков вам удалось освоить за три месяца обучения?

Распишите, пожалуйста.


#3

Спасибо)
По вопросам, ООП(полиморфизм основным вопросом был), утечки памяти (причины и как избегать), что вообще такое swift, по алгоритмам немного, про реактивное(тут я сказал. что даже не слышал о таком), по архитектуре приложений немного, тут мне тоже особо нечего было рассказать, по плюсам вопросы были, но эт я уж сам на себя на кликал, когда рассказывал, что я такое) жизненный цикл, самый такой, интересный вопрос был чем отличается let от const в плюсах)

У меня просто дипломная работа, разработка мессенджера под ios, и мне пришлось поучиться)

Из навыков, ну я в основном вьюшки кодом писал, правда теперь не понимаю зачем)
А так даже не знаю как описать)

Да было тестовое задание, поработать с Api, qrreader, и обеспечить постоянное хранилище)


#4

Спасибо за ответ! А что вы использовали для постоянного хранилища?

Кстати, @ODiN хотел ещё в августе написать статью “начинающий для начинающих”, но её так и не видно до сих пор :frowning:


#5

Учитываю что время было ограничено , решил не запариваться и в плисты пихнуть


#6

А какие алгоритмы у вас спрашивали?


#7

По О нотации, на сколько я понимаю ее, быстрая сортировка)


#9

Автоооор, а можно подробнее про паттерны, где искать, что читать, на русском только, чтобы вот с места сдвинуться, потому что я методом научного тыка могу что-то натыкать и оно даже работает, но в голове вообще никакого адекватного понимания, что и куда и как оно там работает, как говорят “под капотом”. Во всех книжках и уроках (я сразу 4 разных курса смотрела) дают общее представление, не разжовывают, поэтому когда что-то делает = знаешь, что оно выдаст, но почему - я практически ничего не понимаю, изредка мелькают мысли осознания зависимости одного от другого, но это вообще ни о чем. Где подсмотреть, вот чтобы разжевали самое-самое базовое, что с чем взаимодействует и как и тп.? :pray:

вот например методы … все говорят “вызываем такой-то метод и …” а откуда они узнали какой метод что делает. где сборник метод = пояснение … я именно про русский язык, потому что на английском не зашло ((


#10

https://developer.apple.com/documentation/
с пояснениями, со всеми методами, кто и что делает


#11

я там по 10 раз в день бываю, но мне бы на русском всё это, потому что я другой язык ферштейн … и то не очень, а английский … тем более там тоже фиг поймешь, примеров нет, как-то всё для опытных справочник


#12

вот вам ответ по поводу перевода


#13

Есть информация на русском вот здесь:

https://bestkora.com/IosDeveloper/ios-11-swift-4/

Русский неавторизованный конспект лекций Стэнфордского университета " Разработка iOS приложений" 2014, 2015, 2016, 2017 и 2018 гг., сопровождаемый решениями заданий и дополнениями, связанными с адаптацией курсов к новым версиям Swift, Objective-C и iOS.


#14

Так как дополнительная мотивация учить английский, я когда занимался, то звали словарь, слов было прям очень много, но благо они постоянно повторяются, поэтому не нужно избегать официальной документации)
прям сидел и можно сказать перепечатывал, что там есть про месенжер, сейчас правда опять переделываю, только уже все по слоям с rx-м)

по основам хватит и Усова на русском, по uikit от apress книжка была, но там было очень много воды)

но посмотри видео, там правда интерфейс весь программно пишется, без сторибордов, но эт даст хорошую базу)

а по методам наверно только документация, либо Гугл который тебя будет кидать на stack overflow)
можешь по гитхабу поползать, посмотреть чужие работы)


#15

СПАСИБО! :hugs: :hugs:


#16

Мойсол Андрей, конечно молодец, но он тупо переводит ЧУЖОЙ материал и ни где об этом ни слова, что это не его работа - т.е. ворует, прямо скажем! Я его тоже смотрел, но когда наткнулся на ОРИГИНАЛЬНЫЙ материал, прямо как отрезало…При этом ну переводи - полезное дело, но источник то укажи… Да, контента на русском очень мало, но вот так в тихую тырить… ну такое. Ну и по поводу квалификации вопросы, потому как он даже не то что названия переменных не в состоянии был поменять, но и название приложений другие не придумал! Использует, например, в простом примере, протокол, ничего про него не обьясняя (видимо просто не знает, что это :wink: ), при этом он там вообще не нужен в этом небольшом примере - там инициализаторы и так все настроены в модели )))

Да у него даже названия видео такие же и оформление их. Даже подпись у чувака стырил и иконку - ну трэш же ))) там практически весь контент стянут у Брайана


#17

Ахах, не знал, но это лучше чем ничего) но с указанием полнгстью автора согласен)


#18

Я именно про это ))) но тырить иконку и подпись - это конечно топ ))


#19

Да пусть хоть всё друг у друга тырят, лишь бы подавали информацию понято. Вот у этих https://www.raywenderlich.com/ios вообще весь интернет тырит и потом на своем языке выдает


#20

я бы еще рекомендовал www.letsbuildthatapp.com


#21

Ну тогда обобщу:

  1. Основы кода:
    Brian Advent - отличные простые видео на простом, чётком и достаточно понятном английском даже для самого базового знания англ.
    Brian Voong достаточно известный парень, тоже с хорошим и доступным материалом.
  2. Построение дизайна:
    Jared Davidson - очень много видео по реализации различных фишек в дизайне приложения (и не только дизайн). Очень полезно.