Плагин eza для терминала
Выводит список папок и файлов в древовидной структуре.
Этот плагин имеет широкие настройки отображения списка файлов и директорий, но мне нужна была только часть с древовидной структурой.
Установка
Настройка алиесов в ~/.zshrc
В результате имеем 4 доп. Команды в терминале:
lt1 - список 1 уровня
lt2 - список 2 уровня вложенности
lt3 - список 3 уровня вложенности
lt4 - список 4 уровня вложенности
Ранее уже писал про кастомизацию терминала здесь
Выводит список папок и файлов в древовидной структуре.
Этот плагин имеет широкие настройки отображения списка файлов и директорий, но мне нужна была только часть с древовидной структурой.
Установка
brew install eza
Настройка алиесов в ~/.zshrc
plugins=(... eza)
alias lt1='eza --tree --level=1 --color=always --group-directories-first --icons'
alias lt2='eza --tree --level=2 --color=always --group-directories-first --icons'
alias lt3='eza --tree --level=3 --color=always --group-directories-first --icons'
alias lt4='eza --tree --level=4 --color=always --group-directories-first --icons'
В результате имеем 4 доп. Команды в терминале:
lt1 - список 1 уровня
lt2 - список 2 уровня вложенности
lt3 - список 3 уровня вложенности
lt4 - список 4 уровня вложенности
Ранее уже писал про кастомизацию терминала здесь
Текущий прогресс по курсам Swift
✔️ +0 16/100 - 100 дней SwiftUI
✔️ +1 18/39 - Усов книга 1
✔️ +2 7/29 - Angela Yu
🟩🟩🟩⬜️⬜️⬜️⬜️⬜️⬜️⬜️ - 100 дней
🟩🟩🟩🟩🟩🟩⬜️⬜️⬜️⬜️ - Усов
🟩🟩🟩⬜️⬜️⬜️⬜️⬜️⬜️⬜️ - Angela Yu
Проект "iOS по взрослому"
- начал таск "Верстка 1.1 Онбординг"
Отправил на первое ревью
Пришлось поразбираться с версткой под разные размеры экранов. У iPhone'ов их так много как у Андройд устройств и это радует.
В курсе Angela Yu скакун с 5 урока сразу на 16 и 18 - работа с терминалом и git (GitHub)
По Усова прошел только 1 главу enum
Подключил Аккаунт разработчика - тоже заняло определенное время, т.к. Пришлось обращаться в техподдержку.
Сейчас пытаюсь оформить Соглашение о платном конвенте, надеюсь получится и смогу публиковать приложения с подпиской.
Сейчас аккаунт позволяет публиковать только бесплатные (без платных подписок и покупок внутри) приложения.
"iOS по взрослому"
- Завершить новый таск "Верстка 1.1 Онбординг" (пройти все ревью)
Усов книга 1
- изучить 2 главы: struct, class (44 стр.)
100 дней SwiftUI
- дни 17-18 App "Чек в кафе"
- день 19 App "Конвертер"
Новый Pet-проект (пока секрет)
- подготовить картинки
- начать верстку основного экрана
Ну что ж: погнали!
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Смотрел утром 100 дней SwiftUI...
и осознал, что распыляюсь между фреймворками.
Сейчас много практики получаю на учебном проекте "iOS по взрослому" - верстка UIkit кодом без сторибордов.
Курс Angela Yu - UIKit с версткой на сторибордах.
100 дней SwiftUI - логично на SwiftUI.
Врезультате, есть практика UIkit без сторибордов, но нет теории (уроков) по такому кодингу.
Надо поискать материалы, курсы по верстке кодом на UIkit и подправить свой roadmap.
и осознал, что распыляюсь между фреймворками.
Сейчас много практики получаю на учебном проекте "iOS по взрослому" - верстка UIkit кодом без сторибордов.
Курс Angela Yu - UIKit с версткой на сторибордах.
100 дней SwiftUI - логично на SwiftUI.
Врезультате, есть практика UIkit без сторибордов, но нет теории (уроков) по такому кодингу.
Надо поискать материалы, курсы по верстке кодом на UIkit и подправить свой roadmap.
Как настроить проект UIKit без сторибордов
1. Удаляем файл main.storyboard
2. В Info.plist ищем строку "Storyboard Name: Main" и удаляем всю строку
3. Настройки проекта / TARGETS / Info /
"Main storyboard file base name: Main"
Удаляем значение Main
4.В SceneDelegate.swift добавляем код в func scene(...)
Всё проект готов для верстки кодом!
1. Удаляем файл main.storyboard
2. В Info.plist ищем строку "Storyboard Name: Main" и удаляем всю строку
3. Настройки проекта / TARGETS / Info /
"Main storyboard file base name: Main"
Удаляем значение Main
4.В SceneDelegate.swift добавляем код в func scene(...)
// меняем _ на windowScene
guard let windowScene = (scene as? UIWindowScene) else { return }
// добавляем
let window = UIWindow(windowScene: windowScene)
let viewController = ViewController()
let navigationController = UINavigationController(rootViewController: viewController)
window.rootViewController = navigationController
window.makeKeyAndVisible()
self.window = window
Всё проект готов для верстки кодом!
👍1🫡1
Решил усложнить прохождение курса Angela Yu и повторить задания на UIKit уже без сторибордов - кодом.
Запилил приложение в которое будут добавлять все мини-проекты (задания) курса
https://github.com/iCleverStyle/studyproject_angelayu.git
Запилил приложение в которое будут добавлять все мини-проекты (задания) курса
https://github.com/iCleverStyle/studyproject_angelayu.git
Как поменять время, сигнал сотовой связи, WiFi и заряд аккумулятора в статусбаре симулятор
Зачем?
- для скриншотов
Для AppStore поставить 9:41 или например если не хочется палить время: вот я сделал вчера в 23:59... )))
1. Получаем список симуляторов
2. Находим нужный нам симулятор и его UUID
3. Запускаем симулятор
4. Настраиваем статус-бар
Где:
-
-
-
-
Сброс настроек
Зачем?
- для скриншотов
Для AppStore поставить 9:41 или например если не хочется палить время: вот я сделал вчера в 23:59... )))
1. Получаем список симуляторов
xcrun simctl list devices
2. Находим нужный нам симулятор и его UUID
iPhone 12 Pro (7808996E-071C-44C5-8C5A-0E6D46755ED1) (Booted)
3. Запускаем симулятор
xcrun simctl boot <UUID>
xcrun simctl boot 7808996E-071C-44C5-8C5A-0E6D46755ED1
4. Настраиваем статус-бар
xcrun simctl status_bar booted override --time "9:41" --batteryState charged --wifiBars 3 --cellularBars 4
Где:
-
-time "9:41" → Sets the clock to 9:41 AM, which is Apple’s standard time in promotional images.-
-batteryState charged → Displays a fully charged battery.-
-wifiBars 3 → Ensures full Wi-Fi signal strength.-
-cellularBars 4 → Sets full cellular signal strength.Сброс настроек
xcrun simctl status_bar booted clear
👍2
Текущий прогресс по курсам Swift
✔️ +1 17/100 - 100 дней SwiftUI
✔️ +0 18/39 - Усов книга 1
✔️ +0 7/29 - Angela Yu
🟩🟩🟩⬜️⬜️⬜️⬜️⬜️⬜️⬜️ - 100 дней
🟩🟩🟩🟩🟩🟩⬜️⬜️⬜️⬜️ - Усов
🟩🟩🟩⬜️⬜️⬜️⬜️⬜️⬜️⬜️ - Angela Yu
Проект "iOS по взрослому"
- делал таск "Верстка 1.1 Онбординг"
Фиксик замечания по 4 ревью
Много работы именно по улучшению кода, сам онбординг и верстка работали что называется "из коробки"
В курсе Angela Yu - повторил уроки 4 и 5, но уже кодом. Как превратить сториборд в о вью, написанный кодом помог канал IOS на практике (следующим постом подробнее напишу)
Книгу Усова на этой неделе не трогал.
Соглашение о платном контенте в аккаунт разработчика Элл - активно!
Pet-проект - буквально начал вчера вечером под бокал вина. Создал проект в XCode, накидал схематично первый экран.
Занимаюсь iOS разработкой так или иначе ежедневно - это очень хорошо!
Роадмап обучения еще не передалал после осознания распыления в обучении.
"iOS по взрослому"
- Завершить таск "Верстка 1.1 Онбординг"
- взять новый таск (буду смотреть доступные на момент завершения предыдущего таска)
Усов книга 1 (перенос с прошлой недели)
- изучить 2 главы: struct, class (44 стр.)
Angela Yu - Автолейауты - мини-приложение "Калькулятор".
Pet-проект (пока секрет)
- сделать MVP
- подготовить к app store
Ну что ж: погнали!
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Как дублировать сверстанный экран строиборда в код
Инструкция от IOS на практике
Скрипт xib to code
Мой вариант App Magic Ball:
2 одинаковых экрана:
- Экран, созданный с использованием Interface Builder (Storyboard)
- Экран, созданный программно с использованием UIKit и Auto Layout
Инструкция от IOS на практике
Скрипт xib to code
Мой вариант App Magic Ball:
2 одинаковых экрана:
- Экран, созданный с использованием Interface Builder (Storyboard)
- Экран, созданный программно с использованием UIKit и Auto Layout
Уже добавили в эпл стор коннект
В ближайшее время обновят XCode
Будем наблюдать.
Please open Telegram to view this post
VIEW IN TELEGRAM
😁1
Различия программиста от разработчика
Мысли в слух
Прочувствовал разный подход при работе в команде над одним проектом и разработка своего приложения.
Программист больше заточен на код: как сделать правильный, чистый код, соответствовать архитектуре, чтобы другие участники или приемники могли легко разобраться и продолжить работу.
Разработчик - больше нацелен на продукт, его функциональность и дизайн, и не так заботится о том, что "под капотом".
Ответ на вопрос: Кем ты хочешь стать iOS программистом или iOS разработчиком? - может сильно повлиять на роадмап обучения.
Мысли в слух
Прочувствовал разный подход при работе в команде над одним проектом и разработка своего приложения.
Программист больше заточен на код: как сделать правильный, чистый код, соответствовать архитектуре, чтобы другие участники или приемники могли легко разобраться и продолжить работу.
Разработчик - больше нацелен на продукт, его функциональность и дизайн, и не так заботится о том, что "под капотом".
Ответ на вопрос: Кем ты хочешь стать iOS программистом или iOS разработчиком? - может сильно повлиять на роадмап обучения.
❤2
📱 Roadmap приложения
Все идеи по приложению от мелких "скруглить углы" до "сверстать онбординг" кидаю во "Входящие".
Потом спокойно разбираю, что когда реализовывать, а что отбросить.
Потом стараюсь группировать по одной теме.
И разбиваю на версии для реализации в 1-2 дня.
Определяю какие задачи должны быть в MVP версии, а какие подождут.
Все сразу не сделаешь. А лучше выпустить в свет минимально рабочую версию, чем вечно пилить идеальное приложение и никогда не опубликовать.
Все идеи по приложению от мелких "скруглить углы" до "сверстать онбординг" кидаю во "Входящие".
Потом спокойно разбираю, что когда реализовывать, а что отбросить.
Потом стараюсь группировать по одной теме.
И разбиваю на версии для реализации в 1-2 дня.
Определяю какие задачи должны быть в MVP версии, а какие подождут.
Все сразу не сделаешь. А лучше выпустить в свет минимально рабочую версию, чем вечно пилить идеальное приложение и никогда не опубликовать.
❤1