iSilver dev 🍏
47 subscribers
129 photos
16 videos
1 file
47 links
Переобуваюсь в iOS разработчика в 45.
Swift Xcode SwiftUI
Евгений - @icleverstyle
Download Telegram
После формул в Excel в одну строку код в Swift - прекрасен )))
I am rich - приложение, которое было создано в 2008 году и стоило $999.99!!!

Никакого функционала, только осознание того, что ты можешь себе позволить купить приложение за 1k$.

На скрине - мой вариант, по курсу Angela Yu на Udemy.

#AngelaYuCourse@isilverdev
👍2
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🎉 I just finished Day 15 of the #100daysOfSwiftUI@isilverdev

День повторения пройденного за предыдущие 14 дней.

Некоторые мысли:

- Конспекты, которые веду под каждому дню/теме в Notion очень помогают.

- Есть ощущение, что все что прошел еще не знаю, но познакомился.

- на разных курсах объясняют с разной степенью погружения в тему, поэтому считаю норм проходить 2-3 курса параллельно: и повторение - мать ученья, и открыть для себя тему с других ракурсов.

Далее в курсе проекты = больше практики.

✔️ 15/100
Please open Telegram to view this post
VIEW IN TELEGRAM
Текущий прогресс по курсам Swift

✔️ 15/100 - 100 дней SwiftUI
✔️ 17/39 - Усов книга 1
✔️ 3/29 - Angela Yu

🟩🟩🟩⬜️⬜️⬜️⬜️⬜️⬜️⬜️ - 100 дней
🟩🟩🟩🟩🟩🟩⬜️⬜️⬜️⬜️ - Усов
🟩🟩⬜️⬜️⬜️⬜️⬜️⬜️⬜️⬜️ - Angela Yu
Please open Telegram to view this post
VIEW IN TELEGRAM
Про планирование

Планы на неделю и день удобно вести в календаре

Ранее использовал google календарь, но там не хватало задач, которые пока не привязаны ко времени и/или слишком малы для места в календаре.

Сейчас использую Tick Tick
Как я планирую что и когда учить

В Tick Tick на календаре выделяю временные слоты: утром и вечером по 2-3 часа. (Обычно главу или тему любого курса можно пройти за 2-3 часа).

Получаем ресурс - от 12 до 15 слотов.

В YouGile внес все главы курсов, попытался оценить объем каждой главы/части курса по требуемым времени затратам.

Накидываю примерно главы курсов, которые могу пройти за неделю. Каждый курс на своей доске.

Колонки со всех досок зеркально сведены в одну и я вижу общий объем глав/тем. Тут я корректирую, убираю некоторые главы на потом.

#YouGile@isilverdev
👍1
👀 Открытие дня:

В Playground'е 🔨 XCode можно включить режим:

Automatically Run
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1😁1
Курс Angela Yu
✔️ Раздел 4

Swift UIKit

Приложение Игральные кости

- Клонировал заготовку приложения с GitHub
- IBoutlet
- IBActions

Находка дня:
Выбор картинки прямо в коде:


diceImageViewOne.image = #imageLiteral(resourceName: "DiceSix")


#AngelaYuCourse@isilverdev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Вписался в учебный проект по созданию мобильного приложения

Цель получить навык работы в команде и практический опыт в iOS разработке

Инструменты взаимодействия в команде:
- YouGile
- GitHub

Техническая реализация
- UIKit, Clean Architecture, iOS 16
- сеть: Alamofire, async/await (альтернатива - самописный сетевой сервис)
- карта: YandexMapsMobile (альтернатива MapKit)
- база данных: RealmSwift (альтернатива CoreData)
- загрузка картинок: Alamofire (альтернатива Kingfisher)
- Keychain

Команда 10 человек

Нашли несколько вариантов дизайнов приложений в Figma

Выбрали Food Delivery App
Дизайн оказался далеко не идеальным, но для учебного проекта - норм.

Сейчас этап верстки: разбираем задачи.

Так опыта и знаний пока очень мало, выбрал
- Верстка Онбординга
- Кнопки - сверстать отдельными компонентами, для единообразного использования во всем проекте

Повытаскивал все кнопки в Figma в одну область, чтобы систематизировать и понять какая структура компонентов будет нужна.

Еще ни строчки кода, а уже интересно... мурашки вокруг толпами бегают )))

#iOSпоВзрослому@isilverdev
👍1
⌛️ Что может выбить из настроенного графика самообучения

1. Утренний слот "в топку", когда накануне уходишь в ночь.

У меня это:
- ночерний волейбол, который заканчивается в 1 ночи + дорога домой.
- матчи Ливерпуля ( 🏴󠁧󠁢󠁥󠁮󠁧󠁿YNWA), которые иногда начинаются в полночь.

2. Идея нового приложения.
Пет проекты - самое увлекательное в мобильной разработке. В голове куча идей: функционал, дизайн, технические решения... Когда проваливаешься в эту "кроличью нору", тебя накрывает с головой и ты забиваешь на график обучения.

Вот и у меня накануне произошел прорыв в идее своего приложения: никак не мог придумать идею дизайна, тут вдруг пробило и сел накидывать в Figma.

В результате, выполнено уроков за вчера - 0!

Как с этим быть?

1. Если не так часто, то можно. Жить надо сейчас, важен и спорт, и увлечения - иначе в одной учебе программированию можно выгореть.

2. То же нормально. После "вспышки" надо перепланировать график, включить - работу над пет-проектом. Он и будет одним из мотивирующих локомотивов.

Как вы справляетесь?
Please open Telegram to view this post
VIEW IN TELEGRAM
🔋 Мак стал греться

Ничего энергоемкого запущено не было.

Мониторинг системы указал на DeepL 😳

Потребление более 2000 ед. за последние 12ч. при 40 ед. У cледующего в списке - браузер Arc!

🤒 DeepL и раньше шалил - зависал на ровном месте. Сейчас он не был даже в списке запущенных приложений.

Пришлось повозиться, чтобы его остановить и удалить.

(Настройки / Основные / Хранилище / Приложения ( i ) )

Сразу стала заметна разница:
- бук холодный,
- разряд батареи медленный!

Заодно немного прибрался в приложениях:
- удалил дубликаты и не используемые приложения;
- установил AlDente App (free plan) - для контроля зарядки аккумулятора
Скачать с сайта

❗️Поделюсь списком приложений, которые использую на macbook'е:

- Loop - менеджер окон
Горячими клавишами размещаю окно: 1/2, 2/3, 1/3 (слева/справа), центр и на весь экран.
Скачать на GitHub

- Punto Switcher - смена языка раскраски клавиатуры
Авто смену отключил, особенно бесило во время работы с кодом. Настроил смену языка и транслитерацию текущего набранного слова по клавише ⌃ Control
Скачать с сайта

- KeyClu - окно с горячими клавишами активного приложения
По двойному нажатию и удерживаю кнопки ⌘ Command Появляется окно со всеми горячими клавиша активного приложения.
Скачать на GitHub

- Shottr - скриншотер
Анализ сриншотеров не проводил, этот поставил и он устраивает всем
Скачать с сайта

- Quitter - закрывает программы по таймер
Настроил некоторые программы на закрытие через 5-10 минут бездействия. Снижается потребление ресурсов Mac и меньше моя расфокусировка.
Скачать с сайта

Есть ли у вас интересные утилиты или приложения для Mac?

#ПриложенияДляМака@isilverdev
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Работа над учебным проектом началась (см. пост выше)

Выполнил самую джунскую задачу - сделал кнопочку )))

Кнопочка одна, но с разными параметрами:

- цвет фона
- текст
- иконка
- расположение иконки
- активна / не активна

Клонировал проект с GitHub
Создал ветку под задачу (task)
Написал код
Закоммитил
Отправил Pull request в GitHub
Жду code-review.

...сплошные "ругательства")))

#iOSпоВзрослому@isilverdev
Курс Angela Yu

Выполнил Раздел 5
Приложение 🎱 "Magic Ball"

Приложение простое:
- label
- imageView
- Button

Верстка и код аналогичны приложению из Раздела 4 "Игральные кости" - который был разжеван по шагам.

Больше заморочился на документировании работы с ветками git.

Разделил проект на мелкие задачи;
Под каждую задачу своя git ветка
Потом слияние веток

Долго решал проблему мусорных файлов:
.DS_Store
.xcworkspace

Надо было в начале создать .gitignore файл

#AngelaYuCourse@isilverdev
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Код-ревью # 1 к таску учебного проекта

✖️// Убрать комментарии из кода

Код должен хорошо читаться без комментариев.

Если они нужны в сложном коде, то может лучше упростить код?!

✖️➡️ Не использовать SF Sombols

Брать то, что нарисовал дизайнер - сохранить иконку из фигмы и использовать ее на проекте.

📱 Добавить .DS_Store в .gitignore

Чтобы в репозиторий не валилось ненужное.

Хорошо бы еще после создания реквеста проверять какие файлы и какие изменения попали в реквест, нет ли там чего ненужного и сразу корректировать.

📝 Нейминг

Допустим, у нас компонента, реализующая круглую кнопку.

Если в проекте всего один тип круглых кнопок, то RoundButton вполне подойдет. Но если в проекте, например, два типа круглых кнопок, одна кнопка это "i" в кружочке, другая это кнопка для категорий, то тут круглота уже не сильно важна, и можно использовать InfoButton и CategoryButton, а если круглота важна, то InfoRoundButton.

То есть, нужно придумать название такое, чтобы прочитав только название было примерно понятно что это за кнопка такая, для чего она нужна.

Если компонента оформлена как вью, внутри сложная верстка из других элементов, но эта компонента по сути - кнопка, то нет особо смысла называть ее, например, InfoButtonView, "view" - тут лишнее.

Точно также с другими компонентами, если суть компоненты - текстфилд, то нет смысла называть ее SomeTextFieldView, достаточно SomeTexField.

Компонента с ...View на конце уместна, когда она сложное вью содержащее в себе кучу функционала, и нет возможности выделить ее главную особенность.

#iOSпоВзрослому@isilverdev
Please open Telegram to view this post
VIEW IN TELEGRAM
iSilver dev 🍏 pinned «⬇️ НАВИГАЦИЯ ПО КАНАЛУ ⬇️ Как я начинал изучать Swift / iOS dev Как я выбирал Mac для изучения iOS dev Подборка курсов по iOS разработке Про Apple Developer Account - Регистрация - Enrolment - Оплатил аккаунт разработчика $99 - Полная история подключения…»